Мазмуну:
- 1 -кадам: Бөлүктөр
- 2 -кадам: Аппараттык жыйын
- 3 -кадам: Кабелдөө
- 4 -кадам: MicroPython орнотуу
- 5 -кадам: Тармакты орнотуу
- 6 -кадам: Негизги программаны орнотуңуз
- 7 -кадам: Келечектеги жакшыртуулар
Video: MicroPython IoT Rover WEMOS D1ге негизделген (ESP-8266EX): 7 кадам (сүрөттөр менен)
2024 Автор: John Day | [email protected]. Акыркы өзгөртүү: 2024-01-30 10:41
** Жаңыртуу: Мен v2 үчүн найза менен жаңы видео жарыяладым **
Мен жаш балдар үчүн робототехника боюнча семинарларды өткөрөм жана ар дайым кызыктуу долбоорлорду куруу үчүн экономикалык платформаларды издейм. Arduino клондору арзан болгону менен, балдар билбеген C/C ++ тилин колдонот. Ошондой эле, IoT долбоорлору үчүн зарыл болгон орнотулган WiFi жок. Башка жагынан алганда, Raspberry Pi WIFIге ээ болсо жана балдар аны Python аркылуу программаласа, ал дагы эле GPIO портторун башкарып, түзмөктөрдү күйгүзүү жана өчүрүү үчүн кымбат платформа. Мага WIFI жана Python мүмкүнчүлүктөрү бар бир нерсе керек. Мен жоопумду MicroPythonдон таптым окшойт, арзан ESP8266 негизделген тактага.
Micropython деген эмне?
Анын веб -сайтына ылайык, MicroPython - Python 3 программалоо тилдеринин Python стандарттык китепканасынын чакан бөлүгүн камтыган ийкемдүү жана эффективдүү ишке ашыруу жана ал микроконтроллерлерде жана чектелген чөйрөдө иштөө үчүн оптималдаштырылган (мисалы, ESP8266). Бул чипте негизинен Python IDE. Бир чоң артыкчылык-бул Webrepl деп аталган веб-браузердин кардарын колдонуу менен кодду түзүп, аны дароо өзгөртө аласыз. (Муну Arduinoдо жасоого аракет кылыңыз.) Ошондой эле сенсордук маалыматтарды Arduinoдогу маалыматтарды жазууга же LED экранга таянуунун ордуна Webreplде реалдуу убакытта көрө аласыз.
ESP8266 деген эмне?
Кыскача айтканда, муну камтылган тармак жөндөмү бар Arduino деп ойлоңуз. Сиз C/C ++ тилинде ESP8266 такталарын программалоо үчүн Arduino IDE колдоно аласыз же аны NodeMCU же MicroPython менен жаркырата аласыз. Бул долбоордо мен MicroPythonду ESP8266 тактасына жаркыратып коём.
Мен веб-браузерди колдонуп, 2WD унаасын башкара турган ушул жөнөкөй долбоор үчүн ESP8266-12EXке негизделген WEMOS D1ди алууну чечтим. MicroPython үчүн иштелип чыккан башка такталар бар, бирок менин критерийлериме жооп бербесе, ыргытып жибере турган арзан нерсени кааладым. Күтүлгөндөй эле, ал менин бардык талаптарыма жооп берди жана мен келечектеги долбоорлорго WeMos жана Micropythonду киргизем.
1 -кадам: Бөлүктөр
- Wemos D1 же кандайдыр бир ESP8266 негизделген такталар
- Мотор калканы (мен AliExpressтан арзан L293D колдонуп жатам)
- 4 x AA жана 9V үчүн батарея кармагычтар (4 x AA батареялары моторлор үчүн, 9V Wemos тактасы үчүн)
- 2WD унаа шасси
- Dupont кабелдери
Бардыгын бириктирүү үчүн ширетүүчү, бурагыч жана желим тапанча керек болушу мүмкүн.
2 -кадам: Аппараттык жыйын
Биринчиден, көрсөтмөсүнө ылайык шассини чогултуп.
Андан кийин, көрсөтүлгөндөй ысык клей башка компоненттерди.
Мотор зымдары мотор терминалдарына ширетилип, терминалдын муундарын бекемдөө үчүн ысык желимди колдонушу керек.
4АА батарейка кармагычка кичинекей которуштуруу орнотулду. Бул мотор калканчынын кубатын күйгүзөт/өчүрөт.
3 -кадам: Кабелдөө
Көрсөтүлгөндөй менин туташуу схемамды ээрчиңиз.
Wemos to Motor Shield:
D1 IN2
D2 IN1 D3 IN4 ** өткөрүп D4 D5 IN3 GND -> GND
Мотор Калканга/Калкка:
Терминал -> Сол мотор
B терминалы -> Оң мотор VCC -> Батарея (+) GND -> Батарея (-)
4 -кадам: MicroPython орнотуу
Биринчиден, Wemos CH304Gге негизделген сериялык/USB чипке ээ. Бул арзан Arduino-клондорунда табылган чип жана сиз Mac же PC үчүн туура драйверди орнотушуңуз керек. Драйверди орнотуу үчүн бул сайттагы көрсөтмөлөрдү аткарыңыз.
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те эч кандай көйгөйсүз иштете алдым. Акыркы Python'ду https://www.python.org сайтынан жүктөп алыңыз жана PC же Mac үчүн орнотуу көрсөтмөлөрүн аткарыңыз.
Акырында, MicroPythonду Wemosко орнотушуңуз керек болот. MicroPython сайтында ESP8266 боюнча MicroPython орнотуу боюнча эң сонун окуу куралы бар. ESP8266 боюнча MicroPython менен иштөөнү баштоо жөнүндөгү нускамаларды аткарыңыз.
Төмөндө мен колдонгон буйруктар:
$ esptool.py --port /dev/tty.wchusbserial640 erase_flash
esptool.py v1.3 туташууда…. Чезантанын жарк этмесин иштетүү… Жарк өчүрүү (бул бир аз убакыт кетиши мүмкүн)… Тазалоо 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 жаркылдаган стубу иштетилүүдө… Flash параметрлери 0x0240 деп коюлду 588824 байтты 0x0де 50,8 секундада (92,8 кбит/с) жазды… Чыгууда…
MicroPython азыр тактаңызга орнотулду!
5 -кадам: Тармакты орнотуу
MicroPython азыр Wemosко орнотулганда, ал азырынча тармагыңызга туташа элек. Алгач тармакты иштетишиңиз керек. Macта, Wemosко сериялык терминалдык сеансты баштоо үчүн SCREEN буйругун аткарыңыз.
$ screen /dev/tty.wchusbserial640 115200
Бош экранды көргөндө, чакырыкты көрүү үчүн RETURN баскычын басыңыз:
>>
(Эскертүү: Чыгуу үчүн CTRL-A CTRL- / териңиз)
Эми, webclient кирүүсүн иштетели. Орнотуу программасын иштетүү үчүн "import webrepl_setup" териңиз. WebREPLди иштетүү үчүн E киргизип, андан кийин сырсөздү коюңуз. Өзгөртүүлөрдү иштетүү үчүн өчүрүп күйгүзүңүз.
>> webrepl_setup импорттоо
WebREPL демонунун автоматтык түрдө башталуу абалы: өчүрүлгөн (E) иштетүүнү же (D) жүктөөдө иштетүүнү каалайсызбы? (Чыгуу үчүн бош сызык)> E WebREPLди иштетүү үчүн, ага сырсөздү коюшуңуз керек Жаңы сырсөз: xxxxx Сырсөздү ырастаңыз: xxxxx Өзгөрүүлөр кайра жүктөлгөндөн кийин активдештирилет Азыр кайра жүктөөнү каалайсызбы? (y/n) y
Акырында, Webrepl кардарын машинаңызга жүктөп алыңыз. Бул милдеттүү эмес, бирок кардар кийинчерээк колдонууну каалаган башка пайдалуу куралдар менен келет. Мисалы, webrepl_cli.py-файлдарды Wemosко скп сыяктуу синтаксисте көчүрүү буйругу. Клиентти жүктөө үчүн git колдонуңуз. (Эгерде сизде азырынча жок болсо, git куралын орнотуңуз.)
git clone
Веб -браузериңизди ачыңыз жана URL талаасында, жүктөлүп алынган webrepl кардар файлынын жайгашкан жерин киргизиңиз, мисалы:
файл: ///Users/xxxxx/wemos/webrepl/webrepl.html
Бул браузериңизде webrepl кардарын көрсөтүшү керек. Ага туташуудан мурун, анын WIFi кирүү чекитине туташууңуз керек. Эгер сиз компьютериңиз үчүн жеткиликтүү WIFIди карасаңыз, MicroPython-xxxx менен башталган тармакты көрөсүз. Ошол тармакка туташыңыз. (Эскертүү: Ошол тармакка туташкандан кийин, Интернетке кирүү мүмкүнчүлүгүңүздү жоготосуз.)
Кайра вебрепл кардарына кайтып, Байланышты чыкылдатыңыз. Ал сырсөздү сурашы керек. 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 демон wsте башталды: //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 дарегин текшерүү үчүн пингге коюңуз.
$ 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 аркылуу ээрчиңиз.
Сунушталууда:
Alexa негизделген үн менен башкарылуучу ракета учуруучу: 9 кадам (сүрөттөр менен)
Alexa негизделген үн менен башкарылуучу ракета учуруучу: Кыш мезгили жакындаган сайын; жарыктар майрамы майрамдалган жылдын ошол убагы келет. Ооба, биз дүйнө жүзү боюнча майрамдалган чыныгы Индия фестивалы болгон Дивали жөнүндө айтып жатабыз. Бул жылы Дивали бүтүп калды жана элди көрүп жатат
Ардуиного негизделген байланышсыз инфракызыл термометр - IR негизделген термометр Arduino колдонуу: 4 кадам
Ардуиного негизделген байланышсыз инфракызыл термометр | IR негизделген термометр Arduino колдонуу: Салам балдар бул көрсөтмөлөрдө биз ардуинону колдонобуз. ошол сахнада температура
Аба ырайына негизделген музыка генератору (ESP8266 негизделген Midi генератору): 4 кадам (сүрөттөр менен)
Аба ырайына негизделген музыка генератору (ESP8266 негизделген Midi генератору): Саламатсызбы, мен бүгүн өзүңүздүн кичинекей аба ырайына негизделген музыкалык генераторду кантип жасоону түшүндүрүп берем. жана жарыктын интенсивдүүлүгү. Бул бүтүндөй ырларды же аккорд программасын түзөт деп күтпөңүз
Esp 8266 Esp-01 менен Arduino IDE менен баштоо - Esp такталарын Arduino Ideде орнотуу жана Esp программалоо: 4 кадам
Esp 8266 Esp-01 менен Arduino IDE менен баштоо | Эсеп такталарын Arduino Ideде орнотуу жана программалоо Esp: Бул көрсөтмөлөрдө биз esp8266 такталарын Arduino IDEде кантип орнотууну жана esp-01ди кантип программалоону жана ага кодду жүктөөнү үйрөнөбүз. бул жана адамдардын көбү көйгөйгө туш болушат
ESP8266 негизделген Sonoff Smart Switchте MicroPython жабдыктарын кантип жаркыратуу керек: 3 кадам (сүрөттөр менен)
MicroPython Firmware программасын ESP8266 негизделген Sonoff Smart Switchке кантип Flash кылса болот: Sonoff деген эмне? Sonoff ITEAD тарабынан иштелип чыккан Smart Home үчүн түзмөк линиясы. Бул линиядагы эң ийкемдүү жана арзан түзмөктөрдүн бири - Sonoff Basic жана Sonoff Dual. Бул улуу чипке негизделген Wi-Fi иштетилген которгучтар, ESP8266. Ал эми