Мазмұны:

Таңқурай тыңшы роботы: 8 қадам (суреттермен)
Таңқурай тыңшы роботы: 8 қадам (суреттермен)

Бейне: Таңқурай тыңшы роботы: 8 қадам (суреттермен)

Бейне: Таңқурай тыңшы роботы: 8 қадам (суреттермен)
Бейне: Шоколадный пирог сникерс рецепт. Пирог сникерс казакша рецепт. Snickers chocolate pie recipe. 2024, Шілде
Anonim
Image
Image
Таңқурай тыңшы роботы
Таңқурай тыңшы роботы

Бұл жоба роботты веб -бет арқылы жүргізуге және тікелей эфирді қарауға мүмкіндік береді. Оны үй жануарларын шпиондау үшін қолдануға болады, пеште ештеңе жанбайтынына көз жеткізіңіз, тіпті құс сағаты! DFRobot Raspberry Pi 3 пен Raspberry Pi камералық модулін ұсынды.

1 -қадам: Robot Electronics

Роботтық электроника
Роботтық электроника

Мен DWRobot -тан 2WD MiniQ шасси жинағын жинай бастадым. Мен дөңгелектерді қозғалтқыш біліктеріне сырғыттым, содан кейін оларды кронштейндерге кіргізіп, шассиге бекіттім. Ақырында мен металл тіректерді қостым. Енді негізгі тақтаны салу уақыты келді. L293d мотор драйвері Raspberry Pi GPIO түйреуіштеріне өтетін сымдармен бірге дәнекерленген. Содан кейін мен батареяға қосқышты дәнекерледім, себебі бұл негізгі қуатты қамтамасыз етеді. Қуат көзі қосылғаннан кейін мен 5В реттегішті орнаттым.

2 -қадам: Pi орнату

Pi орнату
Pi орнату

DFRobot маған хабарласып, Raspberry Pi 3 және Raspberry Pi камера модулін жіберді. Мен қораптарды ашқаннан кейін мен SD картасын орнату арқылы жұмысқа кірдім. Алдымен мен Raspberry Pi жүктеулер бетіне кірдім және Raspbian -ның соңғы нұсқасын жүктедім. Содан кейін мен файлды шығарып, оны ыңғайлы каталогқа қойдым. SD картасына.img файлын көшіру/қою мүмкін емес, оны картаға «жазу» керек. ОЖ кескінін оңай тасымалдау үшін Etcher.io сияқты жанып тұрған утилитаны жүктеуге болады. SD картасында.img файлы болғаннан кейін мен оны Raspberry Pi -ге салып, оған қуат бердім. Шамамен 50 секундтан кейін мен сымды ажыратып, SD картасын алып тастадым. Содан кейін мен SD картасын компьютерге қайта салып, «жүктеу» каталогына кірдім. Мен блокнотты ашып, оны NO кеңейтімі бар «ssh» деп аталатын бос файл ретінде сақтадым. Мен қосқан «wpa_supplicant.conf» деп аталатын файл болды және оған осы мәтінді қойдым:

желі = {ssid = psk =}

Содан кейін мен картаны сақтап, шығардым және оны қайтадан Raspberry Pi 3 -ке қойдым. Бұл енді SSH -ді қолдануға және WiFi -ге қосылуға мүмкіндік беруі керек.

3 -қадам: камераны дайындау

Камераны дайындау
Камераны дайындау

Әдепкі бойынша, камерада Pi-де өшірілген, сондықтан мәзірді шығару үшін sudo raspi-config түріндегі терминалды ашу керек. «Интерфейс опцияларына» өтіңіз, содан кейін камераны қосыңыз. Енді «Аяқтауды» таңдап, камераның модулінің таспалы кабелін Pi -нің дұрыс аймағына енгізіңіз.

4 -қадам: Бағдарламалық жасақтаманы орнату

Бейнені ағынмен жіберуге болатын бірнеше түрлі бағдарламалар бар, мысалы, vlc және motion, бірақ мен mjpeg-стримерді оның кідірісі мен орнатудың қарапайымдылығына байланысты қолдануды шештім. Сайттағы нұсқауларға сәйкес, қалтаға https://github.com/jacksonliam/mjpg-streamer.git git клонын енгізіңіз, содан кейін қажетті кітапханаларды орнату үшін sudo apt-get install cmake libjpeg8-dev теріңіз. Каталогты жүктелген қалтаға өзгертіңіз, содан кейін бағдарламалық жасақтаманы құрастыру үшін make, содан кейін sudo make install теріңіз. Соңында экспортты енгізіңіз LD_LIBRARY_PATH =. және оны іске қосу үшін./mjpg_streamer -o «output_http.so -w./www» -i «input_raspicam.so» теріңіз. Ағынды көру үшін https://: 8080/stream.html сілтемесі бойынша ағынға қол жеткізе аласыз.

5 -қадам: Контроллер

Контроллер
Контроллер
Контроллер
Контроллер

Содан кейін WiFi арқылы Raspberry Pi -ді қалай басқаруға болады, себебі Bluetooth -дың ауқымы өте аз. Мен деректерді жіберу үшін Raspberry PI мен ESP8266 ESP12E модулінде жұмыс істейтін Flask серверін қолдануды шештім. ESP8266 -де тек бір аналогтық кіріс бар, яғни мен джойстикті тікелей қолдана алмадым, себебі ол екі аналогты кірісті қажет етеді. Ең жақсы нұсқа ADS1115 болды, бұл I2C құрылғысы, аналогтық сигналдарды 16 бит ажыратымдылықта оқиды. Мен жай ғана SDA -ны 4 -ке, SCL -ді 5 -ке, VCC және GND -мен байланыстырдым. Джойстик X осі ADS1115 құрылғысында A0 -ге, ал Y осі A1 -ге қосылады. БІРАҚ, мен ADS1115-ті кездейсоқ өртеп жібердім, сондықтан келесі ең жақсы нәрсеге жүгінуге тура келді: түймелер! Енді менің конфигурациям- бұл ESP8266 Sparkfun Thing Dev тақтасы, 3 түймесі бар- алға, оңға және солға. Енді басылған сайын, ол дөңгелектерді сол жаққа бұру үшін деректерді жібереді.

6 -қадам: Роботқа арналған код

Роботқа арналған код
Роботқа арналған код

Мен қозғалтқышты json арқылы басқару үшін Pi GPIO PWM кітапханасын қолданған алдыңғы жобаны жасадым, сондықтан мен оның орнына Flask қосымшасы арқылы деректерді қабылдау үшін кодты қайта құрдым. Flask - бұл сіздің Pi -ді деректерді жіберуге және қабылдауға қабілетті веб -серверге айналдыратын Python кітапханасы. PWM көмегімен қозғалтқыштарды танк жетегімен салыстырғанда дәлірек басқаруға болады. Бұл сонымен қатар робот тұрақты емес, айнымалы жылдамдықпен жүре алатынын білдіреді. Менің колбамдағы қолданба ESP12e -ден http арқылы GET сұрауынан деректерді алғаннан кейін қозғалтқыштардың PWM -ін өзгертуге арналған. Ол сондай -ақ ішкі процесс сценарийін өңде іске қосу үшін subprocess. Popen кітапханасын пайдаланады. Мен кодты жоба бетіне қостым, сондықтан жүктеу қажет.

7 -қадам: Контроллер коды

Код өте қарапайым болды, тек 3 түйреуіштен оқуды алыңыз, оларды дөңгелектің бағытын анықтау үшін кейбір if операторларынан өткізіңіз және ақырында бұл мәндерді Raspberry Pi -ге жіберіңіз. Arduino IDE үшін ESP8266 тақтасы HTTPClient кітапханасымен бірге келеді, ол тақырыптар мен деректерді жібереді. Flask сервері POST қоңырауы арқылы деректерді қабылдауы керек, сондықтан код Raspberry Pi веб -серверімен байланысты бастайды, содан кейін JSON кодталғанын білдіретін деректерге тақырып қосады және ақырында ол деректерді JSON нысаны түрінде жібереді.. Мен Raspberry Pi -дің деректермен шамадан тыс жүктелуіне жол бермеу үшін 40 мс кешіктіруді қостым.

8 -қадам: Таңқурай тыңшысын іске қосу

Таңқурай тыңшысын іске қосу
Таңқурай тыңшысын іске қосу
Таңқурай тыңшысын іске қосу
Таңқурай тыңшысын іске қосу

Тек sudo python.py теру қажет! Сіз камераның жанып тұрғанын көруіңіз керек және 8080 порты бар pi веб -мекенжайына өту арқылы ағын көрінуі керек. Енді сіз контроллерді үйдің кез келген жерінде қолдана аласыз және тірі жемге ие бола аласыз.

Ұсынылған: