A távirányítós autó felújításáról szóló postom megihlette Lacit is, aki szeretett lemezárugyári Rába Steigerébe lehelt új életet. Rendhagyó módon most egy vendég poszt következik.
Maga a traktor fémlemezből készült, vezetékes (bowden-es) távirányítóval rendelkezett. A távirányítóján két gomb volt: előre, illetve hátra.
A hátsó részben egy elemtartó 2 db 4,5V-os laposelemet fogadott, a meghajtó motor az első részben egy áttételen keresztül hajtja meg a differenciálművel(!) rendelkező első tengelyt.
A hátsó részbe az átalakítás után egy 4 db AA méretű elemet fogadó kapcsolós elemtartó került. A tápellátást 4 db 2450 mAh-s NiMh akku látja el.
A WiFi-s vezérlő és a motormeghajtó az első részbe került. Mivel az eredeti motor benne maradt, az pedig 9V-os, így szükségem volt még egy feszültségnövelő modulra is, ami az akkuk kb. 4,8V feszültségéből 9V-ot állít elő.
Az ESP8266 nodeMCU modul PWM jellel vezérli a motort, így 0-100% között változtatható a sebesség.
A traktor középcsuklós kormányzású, így a fordulást egy szervo segítségével viszonylag egyszerűen meg lehetett oldani. A szervo 3-7V közötti tápfeszültségről működik, közvetlenül az akkukról kapja a feszültséget.
A lehető legegyszerűbb és átláthatóbb vezérlést szerettem volna megalkotni, így nem a Mr. Big által alkotott forráskódot hanem az "eredeti" RoboRemo példakódot használtam kiindulási alapnak.
A szoftveres PWM-et én is lecseréltem hardveres PWM-re, és kiegészítettem egy akkumulátor védelemmel is és egy akku feszültség visszajelzéssel is.
Az alkalmazott NiMh akkukat 1V alatt nem tanácsos használni, 0,9V alá pedig semmiképp sem szabad meríteni, így 4V-os feszültség alatt a motor és szervó tiltva vannak.
A WiFi-s modul ettől függetlenül még működik, így az okostelefonon látható a leállás oka és fel lehet tölteni az akkukat.
Ahhoz hogy a nodeMCU mérni tudja a tápfeszültséget egy 330k ellenállást kellett forrasztani a Vin és az A0 lábak közé. A mérhető feszültség tartomány 0-6,5V közötti.
A motor PWM vezérlése miatt, alacsony sebességtartományban a feszültségnövelő DC-DC átalakító kimenete 9V-ról akár 15V-ig is felment, így a motorra egy 33nF/100V fóliakondenzátor,a DC-DC modul kimenetére pedig egy 4,7uF/50V elektrolit kondenzátor került.
A vezérlő szoftver mindössze egyetlen init.lua file-ból áll, a könnyű kezelhetőség miatt a nodeMCU Wifi hotspot-ként (Access Point-ként) működik. (az egyszerűség kedvéért a jelszó ugyanaz, mint az SSID: RabaSteiger) Mindössze kétféle utasítást fogad: sebesség és kormányzás, valamint egy információt ad: mért akku feszültség.
Rövid kis videó az elkészült traktorról:
Felhasznált alkatrészek:
- ESP8266-12E nodeMCU
- nodeMCU motor shield
- 2A adjustable step up module
- 330k 0,6W ellenállás
- 33nF / 50V fóliakondenzátor
- 10uF / 50V elektrolit kondenzátor
- 4AA battery holder switch
- 4 db AA méretű NiMh akkumulátor
- TowerPro SG90 servo
- Rába traktor
A traktor újra életre kelt, szépen teszi a dolgát, jár-kel, de a sebességét kicsit korlátozni kellett, így a motor 9V-os tápfeszültsége 7,3V-ra csökkent.
A kezdéshez egy kis segítség, mert én is nehezen szedtem össze az infókat:
A NodeMCU készhezvételét követően AT módban van, először firmware-t kell rá tenni. Ehhez az ESP8266Flasher.exe-t használtam.
Ezután készíttettem egy firmware-t a https://nodemcu-build.com/ oldal segítségével. Ezután két firmware-t kaptam, egyik nevének végén integer van, a másiknak float, én a float-ot használtam.
A firmware feltöltéséhez nem szükséges semmilyen I/O-t összekötni, a nodeMCU (ESP8266-12E) (és a wemos D1 mini is) áramköri kialakítása megoldja ezt helyettünk, egyszerűen csak a Flash(F) gombra kell kattintani.
Végül az ESP chip explorer-t kell letölteni a https://esp8266.ru/esplorer/ oldalról.
A program elindítása után COM port nyitás jön (nagy Open gomb megnyomás 115200 baud sebesség mellett), meg kell nyitni az init.lua file-t és a Save to ESP gombra kell kattintani.
A programozás ezzel kész is.
A program sok comment-et tartalmaz, további kérdésekre ott található a válasz, letöltéséhez kattinst ide.
Laci