Мазмұны:
- 1 -қадам: бөлшектер
- 2 -қадам: аппараттық құралдарды жинау
- 3 -қадам: Сымдарды жалғау
- 4 -қадам: MicroPython орнату
- 5 -қадам: Желіні орнату
- 6 -қадам: Негізгі бағдарламаны орнатыңыз
- 7 -қадам: Болашақ жақсартулар
Бейне: MicroPython IoT Rover WEMOS D1 (ESP-8266EX) негізінде: 7 қадам (суреттермен)
2024 Автор: John Day | [email protected]. Соңғы өзгертілген: 2024-01-30 10:25
** Жаңарту: Мен v2 -ге арналған жаңа бейне түсірдім.
Мен кішкентай балаларға арналған робототехника бойынша семинарларды өткіземін және мен әрқашан қызықты жобалар жасау үшін үнемді платформаларды іздеймін. Arduino клондары арзан болғанымен, ол балалар білмейтін C/C ++ тілін қолданады. Сонымен қатар, IoT жобалары үшін қажет кіріктірілген WiFi жоқ. Екінші жағынан, Raspberry Pi -де WIFI бар және оны балалар Python көмегімен бағдарламалай алады, алайда бұл құрылғыны қосу және өшіру үшін бірнеше GPIO портын басқаратын қымбат платформа. Маған WIFI мен Python мүмкіндіктері бар бір нәрсе керек. Менің жауапымды MicroPython-да арзан ESP8266 негізіндегі тақтаға түсіргендей болдым.
Micropython дегеніміз не?
Өз веб -сайтына сәйкес, MicroPython - бұл Python 3 стандартты кітапханасының кіші жиынтығын қамтитын Python 3 бағдарламалау тілдерінің ұтымды және тиімді іске асырылуы, ол микроконтроллерлерде және шектеулі ортада (мысалы, ESP8266) жұмыс істеуге оңтайландырылған. Бұл чипте Python IDE. Бір басты артықшылығы-Webrepl деп аталатын веб-браузер клиентінің көмегімен кодты құруға және оны тез өзгертуге болады. (Мұны Arduino-да орындап көріңіз.) Сіз деректерді тіркеуге немесе Arduino-дағы жарықдиодты экранға емес, Webrepl-де сенсорлық деректерді нақты уақытта көре аласыз.
ESP8266 дегеніміз не?
Қысқаша айтқанда, бұл кіріктірілген желі мүмкіндігі бар Arduino деп ойлаңыз. Arduino IDE көмегімен ESP8266 тақталарын C/C ++ тілінде бағдарламалауға болады немесе оны NodeMCU немесе MicroPython көмегімен жыпылықтауға болады. Бұл жобада мен MicroPython -ды ESP8266 тақтасына қосамын.
Мен осы қарапайым жоба үшін ESP8266-12EX негізіндегі WEMOS D1 алуды шештім, онда мен 2WD көлікті веб-браузер арқылы басқаратын боламын. MicroPython -ға арналған басқа да тақталар бар, бірақ егер олар менің критерийлеріме сәйкес келмесе, мен тастай алатын арзан нәрсе алғым келді. Күтілгендей, бұл менің барлық талаптарыма жауап берді және мен болашақтағы жобаларға WeMos пен Micropython -ды қосатын шығармын.
1 -қадам: бөлшектер
- Wemos D1 немесе кез келген ESP8266 негізіндегі тақталар
- Мотор қалқаны (мен AliExpress -тен арзан L293D қолданамын)
- 4 x AA және 9V аккумуляторлық ұстағыштар (4 x AA батареялары қозғалтқыштарға арналған және 9V Wemos тақтасына арналған)
- 2WD автомобиль шассиі
- Дюпон кабельдері
Барлығын біріктіру үшін дәнекерлегіш, бұрағыш және желім пистолеті қажет болуы мүмкін.
2 -қадам: аппараттық құралдарды жинау
Алдымен нұсқаулыққа сәйкес шассиді жинаңыз.
Содан кейін, суретте көрсетілгендей, басқа компоненттерді ыстық желіммен жабыстырыңыз.
Қозғалтқыш сымдары қозғалтқыш терминалдарына дәнекерленген болуы керек және терминалдардың қосылыстарын нығайту үшін ыстық желімді қолданыңыз.
Кішкене қосқыш 4АА батарея ұстағышына бекітілген. Бұл мотор қалқанының қуатын қосады/өшіреді.
3 -қадам: Сымдарды жалғау
Менің қосылу схемасын суретте көрсетілгендей орындаңыз.
Қозғалтқыш қалқандары:
D1 IN2
D2 IN1 D3 IN4 ** өткізіп жіберу D4 D5 IN3 GND -> GND
Қозғалтқыштан қозғалтқышқа/қуатқа:
Терминал -> Сол жақ мотор
B терминалы -> Оң моторлы VCC -> Батарея (+) GND -> Батарея (-)
4 -қадам: MicroPython орнату
Біріншіден, Wemos -та CH304G негізіндегі сериялық/USB чипі бар. Бұл арзан Arduino-клондарында кездесетін чип және сіз Mac немесе компьютерге сәйкес драйверді орнатуыңыз керек. Драйверді орнату үшін осы сайттағы нұсқауларды орындаңыз.
Wemos -ты компьютерге қосыңыз және компьютер Wemos -ты анықтай алатынын растаңыз. Mac жүйесінде келесі пәрменді орындаңыз және сіз /dev/tty.wchusbserial640 деп аталатын құрылғыны көресіз.
$ ls -lt /dev /tty* | бас
crw-rw-rw- 1 түбірлік дөңгелек 17, 4 наурыз 2 23:31 /dev/tty.wchusbserial640
Егер сіз компьютерде болсаңыз, сіз осы нұсқаулықты сілтеме ретінде пайдалана аласыз.
Содан кейін сізге компьютерде Python 2 немесе 3 орнату қажет, себебі esptool.py флэш құралы Python -ға негізделген. MicroPython нұсқаулығы бұл құрал тек Python 2.7 -мен жұмыс істейтінін айтуы мүмкін, бірақ мен оны Python 3 -те еш қиындықсыз іске қоса алдым. Https://www.python.org сайтынан соңғы Python жүктеп алыңыз және компьютерге немесе Mac компьютеріне орнату нұсқауларын орындаңыз.
Ақырында, сізге MicroPython -ді Wemos -қа орнату қажет болады. MicroPython сайтында ESP8266 -де MicroPython -ды қалай орнату керектігі туралы тамаша нұсқаулық бар. ESP8266 -де MicroPython -ды іске қосудағы орнату нұсқауларын орындаңыз.
Төменде мен қолданған командалар:
$ esptool.py --port /dev/tty.wchusbserial640 erase_flash
esptool.py v1.3 Қосылуда…. Cesanta флэш -стопын іске қосу… Жарқылды өшіру (бұл біраз уақыт алуы мүмкін)… Өшіру 10,5 секундқа созылды
$ 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 Қосылуда…. Cesanta жарқ еткізгіші жұмыс істеп тұр… 0x0240 флэш -параметрлері 0x0 кезінде 589824 байтты 50,8 секундта (92,8 кбит/с) жазды… Шығу…
MicroPython енді тақтаға орнатылды!
5 -қадам: Желіні орнату
MicroPython қазір Wemos -қа орнатылғанмен, ол сіздің желіге әлі қосылмаған. Алдымен сіз желіні қосуыңыз керек. Mac жүйесінде, Wemos жүйесіне сериялық терминалды сеансты бастау үшін SCREEN командасын орындаңыз.
$ экран /dev/tty.wchusbserial640 115200
Бос экранды көргенде, шақыруды көру үшін RETURN түймесін басыңыз:
>>
(Ескерту: Шығу үшін CTRL-A CTRL- / теріңіз.)
Енді веб -клиенттерге қатынауды қосайық. Орнату бағдарламасын іске қосу үшін «import webrepl_setup» теріңіз. WebREPL қосу үшін E енгізіңіз, содан кейін құпия сөзді орнатыңыз. Өзгерістерді белсендіру үшін қайта жүктеңіз.
>> webrepl_setup импорттау
WebREPL демонның автоматты түрде басталу күйі: өшірілген (E) қосуды немесе (D) жүктеу кезінде іске қосуды қалайсыз ба? (Шығу үшін бос жол)> E WebREPL қосу үшін оған құпия сөз орнату қажет Жаңа құпия сөз: xxxxx Құпия сөзді растау: xxxxx Қайта жүктеуден кейін өзгертулер қосылады Қазір қайта жүктегіңіз келе ме? (у/н) ж
Соңында Webrepl клиентін компьютерге жүктеңіз. Бұл міндетті емес, бірақ клиент кейінірек қолданғыңыз келетін басқа пайдалы құралдармен бірге келеді. Мысалы, webrepl_cli.py-бұл файлдарды Wemos-қа scp тәрізді синтаксисте көшіру командасы. Клиентті жүктеу үшін git пайдаланыңыз. (Егер сізде әлі жоқ болса, git құралын орнатыңыз.)
git клоны
Веб -шолғышты ашыңыз және URL өрісіне жүктелген webrepl клиент файлының орналасқан жерін енгізіңіз, мысалы:
файл: ///Users/xxxxx/wemos/webrepl/webrepl.html
Бұл шолғышта webrepl клиентін көрсетуі керек. Оған қосылмас бұрын, алдымен оның WIFi кіру нүктесіне қосылу керек. Егер сіз компьютер үшін қол жетімді WIFI-ге қарасаңыз, MicroPython-xxxx-тен басталатын желіні көресіз. Сол желіге қосылыңыз. (Ескерту: Сіз желіге қосылғаннан кейін Интернетке кіру мүмкіндігін жоғалтасыз.)
Webrepl клиентіне оралыңыз және Қосылу түймесін басыңыз. Ол құпия сөзді сұрауы керек. Wemos құпия сөзін енгізіңіз, сіз қосылуыңыз керек.
MicroPython -ға қош келдіңіз!
Құпия сөз: WebREPL қосылған >>>
Сіздің Wemos әлі де AccessPoint режимінде жұмыс істейді. Бұл жақсы болса да, мен оны үйдегі WIFI -ге қосылатын станция режимінде жұмыс істегенді жөн көремін, осылайша менің компьютерім оған үйдегі WIFI арқылы қол жеткізе алады және Интернетке әлі де кіре алады. Мұны істеу үшін сізге желі конфигурациясы бар boot.py деп аталатын файлды құру және оны Wemos -қа жүктеу қажет болады.
Міне boot.py үлгісі. SSID пен құпия сөзді үйдегі WIFI желісіне өзгертіңіз. Сонымен қатар, мен оған 192.168.0.32 статикалық IP бергім келеді. Оны үйдегі WIFI қол жетімді IP мекенжайына өзгертіңіз.
boot.py (сіз оны төменнен жүктей аласыз)
gc импорттау
webrepl def do_connect (): импорттау желісі sta_if = network. WLAN (network. STA_IF) егер sta_if.isconnected (): басып шығару ('желіге қосылу…') 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 (' ',' ') sta_if.isconnected () емес: басып шығаруды рұқсат етіңіз (' желі конфигурациясы: ', sta_if).ifconfig ()) do_connect () webrepl.start () gc.collect ()
Boot.py файлын Wemos -қа жіберу үшін Webrepl клиентінің «Файл жіберу» формасын пайдаланыңыз. Қайта жүктеу үшін қалпына келтіру түймесін басыңыз. Егер сіз әлі де SCREEN пәрменін пайдаланып USB арқылы қосылсаңыз, сіз мынаны көресіз:
желіге қосылу… желінің конфигурациясы: ('192.168.0.32', '255.255.255.0', '192.168.0.1', '192.168.0.1') WebREPL демоны ws -те іске қосылды: //192.168.4.1: 8266 WebREPL демоны w -те іске қосылды: //192.168.0.32: 8266 Қалыпты режимде іске қосылған webrepl 2017-01-09 күні MicroPython v1.8.7-7-gb5a1a20a3 оқу үшін 'main.py' файлын аша алмады; ESP8266 бар ESP модулі Қосымша ақпарат алу үшін «help ()» теріңіз. >>>
Бұл сіздің Wemos үйдегі WIFI -ге 192.168.0.32 IP мекенжайы арқылы қосылғанын растайды.
Тексеру үшін IP мекенжайын жіберуге болады.
$ ping 192.168.0.32
PING 192.168.0.32 (192.168.0.32): 56 байт деректер
192.168.0.32 -ден 64 байт: icmp_seq = 0 ttl = 255 уақыт = 9.334 мс 192.168.0.32 -ден 64 байт: icmp_seq = 1 ttl = 255 уақыт = 11.071 мс..
6 -қадам: Негізгі бағдарламаны орнатыңыз
Ақырында, сіз Wemos -та жұмыс істей беретін негізгі бағдарламаны орнатуыңыз керек.
Веб -шолғышқа оралып, webrepl клиенттік бағдарламасын іске қосыңыз. IP мекенжайын Wemos IP мекенжайына өзгертіңіз. Менің жағдайда бұл қазір 192.168.0.32. Wemos құпия сөзін енгізіңіз, енді сіз Wemos -қа қосылуыңыз керек.
Қосылған main.py бағдарламасын жүктейік. Қосылған файлды компьютерге жүктеңіз. Жүктелген main.py файлын таңдау үшін Файлды таңдау түймесін басыңыз, содан кейін Құрылғыға жіберілген түймесін басыңыз.
Main.py бағдарламасын жүктеу үшін Қалдыру түймесін басу қажет. Қалпына келтіру түймесін басқаннан кейін сіз көресіз:
желіге қосылуда…
желі конфигурациясы: ('192.168.0.32', '255.255.255.0', '192.168.0.1', '192.168.0.1')
WebREPL демоны ws: //192.168.4.1: 8266 -де басталды WebREPL демоны ws: //192.168.0.32: 8266 -де басталды webrepl қалыпты режимде іске қосылды Тыңдалуда, шолғышты келесіге қосыңыз …
Бұл сіздің main.py бағдарламасы белсендірілгенін және 80 портқа енгізілгенін білдіреді.
Тексеру үшін веб -шолғышты ашып, https:// енгізіңіз.
Бұл бейнеде көрсетілгендей көлікті басқару экранын көрсетуі керек. Егер сымдар дұрыс қосылған болса, басқару түймелері көлікті жылжыту үшін GPIO порттарына тиісті сигналдарды жібереді.
7 -қадам: Болашақ жақсартулар
Келесі тапсырмалар менің v2 тізімімде:
- Қозғалтқыш жылдамдығын басқару үшін PWM пайдаланыңыз
- Веб -интерфейсті жақсарту. Мүмкін aREST құрылымын қолданыңыз. Мен aREST lib MicroPython -да қол жетімді емес деп ойлаймын, сондықтан оны бұзуға тура келуі мүмкін.
Бұл нұсқаулықты оқығаныңыз үшін рахмет. Болашақта басқа жобалар үшін мені Facebook, Youtube және Instructables -те қадағалаңыз.
Ұсынылған:
DIY Chewie Monsta Looper (Эд Ширанның негізінде): 7 қадам
DIY Chewie Monsta Looper (Эд Ширанға негізделген): Сондықтан мен Эд Ширан туралы бірнеше жыл бұрын естігенмін және оған онша мән бермедім. Маған радиодағы бұл әндердің кейбірі ұнады, бірақ мен оған «Сенің пішінің» әнін айтпайынша, ол басқа поп -әртіс деп ойладым. 2017 Грэммиде. Мен
Apple HomeKit Wi-Fi дымқылдатқышы ESP8266 негізінде: 6 қадам (суреттермен)
ESP8266 негізіндегі Apple HomeKit Wi-Fi дымқылдатқышы?: Өкінішке орай, Apple HomeKit қолдайтын бір немесе екі дымқылдатқыш бар, бірақ олардың бағасы өте жоғары (300 $+). Мен Wi-Fi-мен жұмыс істейтін Apple HomeKit ылғалдандырғышын менде бар арзан қондырғы негізінде жасауды шештім. Мен
[15мин] Уизли сағаты / Үй көрсеткіші кім - TR -064 негізінде (бета): 4 қадам (суреттермен)
[15мин] Уизли сағаты / Үй көрсеткіші кім-TR-064 негізінде (бета): ЖАҢАРТУ: 3-қадамды қараңыз. Ұзақ әңгіме (TL; DR төменде): Біраз уақыт бұрын мен компьютерде шағын bash-сценарий жаздым. тіркелген құрылғылар үшін желіні сканерлеңіз және олардың хост атауларын байланысты атаулармен тізіммен салыстырыңыз. Құрылғы журналға кірген сайын
MQTT & AWS негізінде виндсерфингке арналған жел станциясы: 3 қадам (суреттермен)
MQTT & AWS негізінде виндсерфингке арналған жел станциясы: Шэньчжэньде көптеген әдемі жағажайлар бар. Жазғы күндерде мен ең жақсы көретін спорт - бұл желкенділік. Мен жүзу спорты үшін әлі де бастаушымын, теңіз суының бетіме тигенін жақсы көремін және тағы басқалармен, бұл спортпен көптеген жаңа достар таптым
Қарапайым және қуатты тұтқаны қалай жинауға болады- Micro негізінде: Бит: 10 қадам (суреттермен)
Қарапайым және қуатты тұтқаны басқару құралын қалай жинауға болады- Micro негізделген: Бит: Тұтқаның аты- Handlebit. Пішіні- тұтқасы және өте керемет көрінеді! Енді біз Handlebit туралы кіріспе жасай аламыз, оған көшейік