Tartalomjegyzék:
- 1. lépés: Alkatrészek
- 2. lépés: A hardver összeszerelése
- 3. lépés: huzalozás
- 4. lépés: A MicroPython telepítése
- 5. lépés: A hálózat beállítása
- 6. lépés: Telepítse a főprogramot
- 7. lépés: Jövőbeni fejlesztések
Videó: MicroPython IoT Rover WEMOS D1 (ESP-8266EX) alapján: 7 lépés (képekkel)
2024 Szerző: John Day | [email protected]. Utoljára módosítva: 2024-01-30 09:42
** Frissítés: Új videót tettem közzé a v2 -hez, lándzsával **
Robotika műhelyeket szervezek kisgyermekek számára, és mindig gazdaságos platformokat keresek érdekes projektek készítéséhez. Míg az Arduino klónok olcsók, a C/C ++ nyelvet használja, amelyet a gyerekek nem ismernek. Ezenkívül nem rendelkezik beépített WiFi-vel, amely elengedhetetlen az IoT-projektekhez. Másrészről, bár a Raspberry Pi rendelkezik WIFI -vel, és a gyerekek programozhatják a Python segítségével, még mindig drága platform, amely csak néhány GPIO -port vezérlését teszi lehetővé az eszközök be- és kikapcsolásához. Szükségem van valamire, ami WIFI és Python képességekkel is rendelkezik. Úgy tűnik, hogy a válaszomat a MicroPythonban találtam egy olcsó ESP8266-alapú táblára villogva.
Mi a Micropython?
Webhelye szerint a MicroPython a Python 3 programozási nyelvek sovány és hatékony megvalósítása, amely a Python szabványos könyvtár egy kis részhalmazát tartalmazza, és mikrokontrollereken és korlátozott környezetben (például ESP8266) való futtatásra van optimalizálva. Ez lényegében Python IDE egy chipen. Az egyik fő előny az, hogy létrehozhat kódot, és menet közben megváltoztathatja azt a Webrepl nevű webböngésző kliens segítségével. (Próbálja ezt megtenni az Arduino-ban.) Az érzékelők adatait valós időben is láthatja a Webrepl webhelyen, ahelyett, hogy az adatnaplózásra vagy egy LED-képernyőre támaszkodna az Arduino-ban.
Mi az ESP8266?
Röviden, gondoljon rá, mint egy beépített hálózati képességgel rendelkező Arduino-ra. Az Arduino IDE segítségével programozhatja az ESP8266 kártyákat C/C ++ nyelven, vagy villoghat NodeMCU vagy MicroPython segítségével. Ebben a projektben a MicroPython -t villogom egy ESP8266 táblára.
Úgy döntöttem, hogy veszek egy WEMOS D1-et, amely az ESP8266-12EX-en alapul ehhez az egyszerű projekthez, ahol egy 2WD-s autót böngészek egy webböngészővel. Vannak más táblák is, amelyeket MicroPythonra terveztek, de valami olcsót szerettem volna, amit eldobhatok, ha nem felel meg a kritériumaimnak. A várakozásoknak megfelelően minden igényemet kielégítette, és valószínűleg a WeMos -t és a Micropython -t beépítem a jövőbeli projektekbe.
1. lépés: Alkatrészek
- Wemos D1 vagy bármely ESP8266 alapú kártya
- Motorpajzs (az AliExpress olcsó L293D -jét használom)
- Elemtartók 4 x AA és 9 V -hoz (4 x AA elem motorokhoz és 9 V a Wemos kártyához)
- 2WD autó alváz
- Dupont kábelek
Lehet, hogy forrasztópáka, csavarhúzó és ragasztópisztoly szükséges az összes összeállításához.
2. lépés: A hardver összeszerelése
Először szerelje össze az alvázat az utasításoknak megfelelően.
Ezután az ábrán látható módon ragasztja fel a többi alkatrészt.
A motorhuzalokat a motor kapcsaihoz kell forrasztani, és forró ragasztóval kell erősíteni a kapocscsuklókat.
Egy kis kapcsolót rögzített a 4AA elemtartóhoz. Ez be-/kikapcsolja a motorpajzs áramellátását.
3. lépés: huzalozás
Kövesse a kapcsolási rajzomat az ábrán látható módon.
Wemos a motorpajzshoz:
D1 IN2
D2 IN1 D3 IN4 ** ugrás D4 D5 IN3 GND -> GND
Motorpajzs motorhoz/teljesítményhez:
Egy terminál -> Bal motor
B csatlakozó -> Jobb motor VCC -> Akkumulátor (+) GND -> Akkumulátor (-)
4. lépés: A MicroPython telepítése
Először is, a Wemos rendelkezik egy CH304G -n alapuló soros/USB lapkával. Ugyanaz a chip található az olcsó Arduino-klónokban, és telepítenie kell egy megfelelő illesztőprogramot Mac vagy PC számára. Az illesztőprogram telepítéséhez kövesse az ezen az oldalon található utasításokat.
Csatlakoztassa a Wemos -t a számítógépéhez, és győződjön meg arról, hogy számítógépe észleli a Wemos -t. Mac rendszeren futtassa a következő parancsot, és megjelenik egy /dev/tty.wchusbserial640 nevű eszköz.
$ ls -lt /dev /tty* | fej
crw-rw-rw- 1 gyökérkerék 17, 4. március 23. 23:31 /dev/tty.wchusbserial640
Ha PC -n dolgozik, akkor ezt az Instructable -t használhatja referenciaként.
Ezután be kell állítania a Python 2 vagy 3 alkalmazást a számítógépén, mivel a flash eszköz, az esptool.py Pythonon alapul. Míg a MicroPython útmutató kijelenti, hogy az eszköz csak a Python 2.7 -vel működik, ezt a Python 3 -ban minden probléma nélkül le tudtam futtatni. Töltse le a legújabb Python -t a https://www.python.org webhelyről, és kövesse a PC vagy a Mac telepítési utasításait.
Végül telepítenie kell a MicroPython programot a Wemos rendszerre. A MicroPython webhely kiváló oktatóanyaggal rendelkezik a MicroPython ESP8266 rendszeren történő beállításáról. Csak kövesse a telepítési utasításokat a MicroPython használatának megkezdése című részben az ESP8266 készüléken.
Az alábbi parancsokat használom:
$ esptool.py --port /dev/tty.wchusbserial640 erase_flash
esptool.py v1.3 Csatlakozás…. A Cesanta villogó csonkja fut … A vaku törlése (ez eltarthat egy ideig)… A törlés 10,5 másodpercig tartott
$ esptool.py --port /dev/tty.wchusbserial640 write_flash -fm dio -fs 32m -ff 40m 0x00000 esp8266-20170108 -v1.8.7.bin
esptool.py v1.3 Csatlakozás…. A Cesanta villogó csonkja fut … A vaku paraméterei 0x0240 -re állítva Írt 589824 bájt 0x0 -ra 50,8 másodperc alatt (92,8 kbit/s)… Kilépés…
A MicroPython már telepítve van az alaplapra!
5. lépés: A hálózat beállítása
Miközben a MicroPython most telepítve van a Wemos készülékére, még nem csatlakozik a hálózathoz. Először engedélyeznie kell a hálózatot. Mac számítógépen hajtsa végre a SCREEN parancsot a Wemos soros terminál munkamenetének elindításához.
$ screen /dev/tty.wchusbserial640 115200
Ha üres képernyőt lát, nyomja meg a RETURN gombot, hogy megjelenjen a prompt:
>>
(Megjegyzés: A kilépéshez írja be a CTRL-A CTRL- / billentyűt)
Most engedélyezzük a webkliens -hozzáférést. A telepítőprogram futtatásához írja be az "import webrepl_setup" parancsot. Írja be az E gombot a WebREPL engedélyezéséhez, majd állítsa be a jelszót. Indítsa újra a módosítások aktiválásához.
>> webrepl_setup importálása
WebREPL démon automatikus indítás állapota: letiltva Szeretné (E) letiltani vagy (D) letiltani, hogy rendszerindításkor futjon? (Üres sor a kilépéshez)> E A WebREPL engedélyezéséhez meg kell adnia a jelszót. Új jelszó: xxxxx Jelszó megerősítése: xxxxx A módosítások aktiválódnak az újraindítás után. Szeretné most újraindítani? (y/n) y
Végül töltse le a Webrepl klienst a számítógépére. Ez opcionális, de az ügyfél más hasznos eszközöket is tartalmaz, amelyeket később érdemes használni. Például a webrepl_cli.py egy parancs, amely fájlokat másol a Wemos-ba scp-szerű szintaxisban. A git segítségével töltse le az ügyfelet. (Telepítse a git eszközt, ha még nem rendelkezik vele.)
git klón
Nyissa meg a webböngészőt, és az URL mezőbe írja be a letöltött webrepl ügyfélfájl helyét, például:
fájl: ///Users/xxxxx/wemos/webrepl/webrepl.html
Ennek a webrepl ügyfelet kell megjelenítenie a böngészőben. Mielőtt hozzá tudna csatlakozni, először csatlakoznia kell a WIFi hozzáférési ponthoz. Ha megnézi a számítógépéhez rendelkezésre álló WIFI-t, látni fogja, hogy a hálózat MicroPython-xxxx-el kezdődik. Csatlakozzon ehhez a hálózathoz. (Figyelmeztetés: Miután csatlakozott ehhez a hálózathoz, elveszíti internet -hozzáférését.)
Menjen vissza a webrepl ügyfélhez, és kattintson a Csatlakozás gombra. Jelszót kell kérnie. Írja be Wemos jelszavát, és csatlakoznia kell.
Üdvözli a MicroPython!
Jelszó: WebREPL csatlakoztatva >>>
A Wemos továbbra is AccessPoint módban fut. Bár ez rendben van, inkább állomás módban futtassam, ahol csatlakozik az otthoni WIFI -hez, hogy a számítógépem hozzáférhessen az otthoni WIFI -n keresztül, és továbbra is rendelkezzen internet -hozzáféréssel. Ehhez létre kell hoznia egy boot.py nevű fájlt hálózati konfigurációval, és fel kell töltenie a Wemos -ra.
Itt egy minta boot.py. Módosítsa az SSID -t és a jelszót az otthoni WIFI -hálózatra. Továbbá szeretnék 192.168.0.32 statikus IP -t adni neki. Módosítsa az otthoni WIFI elérhető IP -címére.
boot.py (letöltheti alulról)
import gc
import webrepl def do_connect (): import hálózat sta_if = network. WLAN (network. STA_IF) ha nem sta_if.isconnected (): print ('csatlakozás a hálózathoz …') sta_if.active (True) sta_if.ifconfig (('192.168. 0.32 ',' 255.255.255.0 ',' 192.168.0.1 ',' 192.168.0.1 ')) sta_if.connect (' ',' '), míg nincs sta_if.isconnected (): pass print (' network config: ', sta_if.ifconfig ()) do_connect () webrepl.start () gc.collect ()
Használja a Webrepl kliens "Fájl küldése" űrlapját a boot.py fájl Wemos -ba küldéséhez. Az újraindításhoz nyomja meg a reset gombot. Ha továbbra is USB -n keresztül csatlakozik a SCREEN paranccsal, akkor a következőket fogja látni:
csatlakozás a hálózathoz… hálózati konfiguráció: ('192.168.0.32', '255.255.255.0', '192.168.0.1', '192.168.0.1') A WebREPL démon elindult a ws: //192.168.4.1: 8266 webrepl démonon: //192.168.0.32: 8266 Az elindított webrepl normál módban nem tudta megnyitni a "main.py" fájlt a MicroPython v1.8.7-7-gb5a1a20a3 olvasásához 2017-01-09; ESP modul ESP8266 -tal Típus "help ()" további információkért. >>>
Ez igazolja, hogy a Wemos a 192.168.0.32 ipaddress használatával csatlakozik az otthoni WIFI -hez.
Az IP -címet pingelve ellenőrizheti.
$ ping 192.168.0.32
PING 192.168.0.32 (192.168.0.32): 56 adatbájt
64 bájt a 192.168.0.32 -ből: icmp_seq = 0 ttl = 255 time = 9.334 ms 64 byte from 192.168.0.32: icmp_seq = 1 ttl = 255 time = 11.071 ms..
6. lépés: Telepítse a főprogramot
Végül telepítenie kell a fő programot, amely továbbra is fut a Wemos készüléken.
Menjen vissza a böngészőbe, és futtassa a webrepl ügyfélprogramot. Módosítsa az ip -címet a Wemos IP -címére. Esetemben ez most 192.168.0.32. Írja be Wemos jelszavát, és most csatlakoznia kell a Wemos szolgáltatáshoz.
Töltsük fel a mellékelt main.py programot. Töltse le a csatolt fájlt a számítógépére. Kattintson a Fájl kiválasztása gombra a letöltött main.py kiválasztásához, majd kattintson az Elküldve az eszközre elemre.
A main.py program betöltéséhez meg kell nyomnia a Pihenés gombot. A Reset gomb megnyomása után látni fogja:
csatlakozás a hálózathoz…
hálózati konfiguráció: ('192.168.0.32', '255.255.255.0', '192.168.0.1', '192.168.0.1')
A WebREPL démon a ws: //192.168.4.1: 8266 webhelyen indult
Ez azt jelenti, hogy a main.py program aktiválva van, és a 80 -as portra kerül.
A teszteléshez nyissa meg a webböngészőt, és írja be a
Ennek meg kell jelennie az autó vezérlőképernyőjén, ahogy a videó is mutatja. Ha a vezetékek megfelelően vannak csatlakoztatva, a vezérlőgombok megfelelő jeleket küldenek a GPIO -portokra az autó mozgatásához.
7. lépés: Jövőbeni fejlesztések
A következő teendők szerepelnek a v2 listámban:
- A motor fordulatszámának szabályozásához használja a PWM -et
- A webes felület javítása. Esetleg használjon aREST keretrendszert. Nem hiszem, hogy az aREST lib jelenleg elérhető a MicroPythonon, így lehet, hogy feltörnöm kell.
Köszönjük, hogy elolvasta ezt az utasítást. Kövess engem a Facebookon, a Youtube -on és az Instructables -ben, hogy további projekteket kapj a jövőben.
Ajánlott:
Magasságmérő (magasságmérő) Légköri nyomás alapján: 7 lépés (képekkel)
Magasságmérő (magasságmérő) Légköri nyomás alapján: [Szerkesztés]; Lásd a 2. verziót a 6. lépésben, kézi alapszintű magasságbevitellel. Ez az Arduino Nano és a Bosch BMP180 légnyomás -érzékelő alapján épített magasságmérő (magasságmérő) épületleírása. A kialakítás egyszerű, de a mérések
Apple HomeKit Wi-Fi párátlanító ESP8266 alapján?: 6 lépés (képekkel)
Apple HomeKit Wi-Fi párátlanító ESP8266 alapján?: Sajnos csak egy vagy két párátlanító létezik, amelyek támogatják az Apple HomeKit szolgáltatást, de ezeknek nagyon magas árai vannak (300 USD+). Tehát úgy döntöttem, hogy saját, Wi-Fi-kompatibilis Apple HomeKit párátlanítót készítek egy már meglévő olcsó készülék alapján? ÉN
MQTT A MicroPython ESP32 alapján: 5 lépés
MQTT A MicroPython ESP32 alapján: Szeretek házi macskákat tartani. Egy intenzív munka után a macska pihentethet, amikor hazaérek. Kemény edzés után ennek a macskának jó szokása, hogy rendszeresen eszik az " étteremben " minden nap. De mostanában néhány napot utaznom kell, és
Lora átjáró a MicroPython ESP32 alapján: 10 lépés (képekkel)
Lora átjáró a MicroPython ESP32 alapján: A Lora nagyon népszerű volt az elmúlt években. Az ezt a technológiát használó vezeték nélküli kommunikációs modul általában olcsó (szabad spektrumot használva), kicsi, energiatakarékos és nagy kommunikációs távolsággal rendelkezik, és főleg kölcsönös kommunikációra használják
PWM szabályozott ventilátor a CPU hőmérséklete alapján a Raspberry Pi esetében: 4 lépés (képekkel)
PWM szabályozott ventilátor a Raspberry Pi CPU hőmérséklete alapján: A Raspberry Pi sok esetben egy 5 V -os ventilátorral van felszerelve, hogy segítse a CPU hűtését. Ezek a ventilátorok azonban általában elég zajosak, és sokan a 3V3 -as csatlakozóra dugják, hogy csökkentsék a zajt. Ezek a ventilátorok általában 200 mA -es teljesítményre vannak méretezve, ami elég nagy