Բովանդակություն:
- Քայլ 1: Տեղադրեք Raspbian և տեղադրեք ստատիկ IP հասցե
- Քայլ 2: Տեղադրեք և կազմաձևեք շարժումը
- Քայլ 3: Տեղադրեք Apache և կարգավորեք վեբ կառավարման էջը
- Քայլ 4: Կարգավորեք և փորձարկեք ծածկագիրը
- Քայլ 5: Հավաքում
- Քայլ 6. Գործարկել Python ծածկագիրը Boot / Finishing Up
Video: Դիտարկիչով վերահսկվող Roomba ռոբոտը Raspberry Pi Model 3 A+: 6 քայլով (նկարներով)
2024 Հեղինակ: John Day | [email protected]. Վերջին փոփոխված: 2024-01-30 09:49
Ակնարկ
Այս Instructable- ը կկենտրոնանա, թե ինչպես մահացած Roomba- ին տալ նոր ուղեղ (Raspberry Pi), աչքեր (Webcam) և վեբ դիտարկիչից ամեն ինչ վերահսկելու միջոց:
Կան շատ Roomba հաքեր, որոնք թույլ են տալիս վերահսկել սերիական ինտերֆեյսի միջոցով: Ինձ այնքան բախտ չի վիճակվել հանդիպել Roomba- ին, որն ունի ընթացիկ որոնվածը կամ աշխատող մայր տախտակ: Կամ Roomba- ն շատ հին է, կամ Roomba- ն մահացած է: Այս նախագծի համար օգտագործած Roomba- ն գտա տեղական մանրածախ առևտրի աղբարկղում ՝ 5 դոլարով: Այն դեռ ուներ արժանապատիվ մարտկոց, բայց մեռած մայր տախտակ: (Ես գտա նաև տեսախցիկը նույն խնայողությունների խանութում ՝ մոտ 5 դոլարով): Օրիգինալ Roomba- ից ես օգտագործում եմ շարժիչները, շասսին և մարտկոցը: Այս նախագծի համար պարտադիր չէ Roomba օգտագործել: Եթե ցանկանում եք, կարող եք օգտագործել տարբեր շարժիչներ, անիվներ և շասսի: Ես պարզապես նախընտրում եմ աղբի մի կտոր դարձնել օգտագործելի բանի:
Այս կառուցվածքի համար ես օգտագործեցի Raspberry Pi Model 3 A+ և Riorand շարժիչի վերահսկիչ: Ես օգտագործում եմ Dexter Industries Browser Controlled Robot- ի կոդը, որը ես փոփոխել եմ: Dexter Industries- ի տարբերակը ստեղծում է Pi- ն որպես ցանցային սերվեր, որը թույլ է տալիս վերահսկել իրենց ռոբոտը (brick pi հարթակ) հաճախորդի այլ համակարգչով աշխատող html ֆայլից:
Ես փոխել եմ GPIO կապում օգտագործված ծածկագիրը և ավելացրել եմ, որ Pi- ն կարող է անջատվել, երբ կոճակը սեղմվում է / երբ փախուստի բանալին սեղմվում է բրաուզերում: Ես նաև որոշ փոփոխություններ կատարեցի կառավարման վեբ էջում ՝ թույլ տալով դիտել շարժման հոսք iframe- ի միջոցով ՝ միաժամանակ վերահսկելով ռոբոտին մեկ էջում: Ես Pi- ն ստեղծեցի ստատիկ IP- ով ՝ հաճախորդի ֆայլը հյուրընկալելու համար, որպեսզի կարողանամ միանալ ՝ օգտագործելով իմ ցանցի ցանկացած համակարգիչ կամ սարք:
Ես այստեղ փաստագրում եմ գործընթացը `հույս ունենալով ցույց տալ, թե ինչպես ստեղծել պարզ, էժան բազային ռոբոտ:
Օգտագործված մասեր
Raspberry Pi 3 A+ (Adafruit Link) 30 դոլար
Riorand Dual Motor Driver Controller H-Bridge (Amazon Link) 22 դոլար
12 Վ մարտկոց շարժիչների համար (Amazon Link) 19 դոլար
5V մարտկոց Raspberry Pi- ի համար (Amazon Link) 10 դոլար
8 ԳԲ Micro SD քարտ (Amazon Link) $ 5
Jumper Wires (Amazon Link) 7 դոլար
Roomba 500 սերիա
. Բոլորն ընդամենը 100 դոլարից պակաս:
Քայլ 1: Տեղադրեք Raspbian և տեղադրեք ստատիկ IP հասցե
Ես օգտագործեցի Raspbian Stretch Lite- ը: Ես աշխատասեղանի կարիք չեմ տեսել, բայց եթե նախընտրում եք, կարող եք տեղադրել աշխատասեղանի տարբերակը:
Ես պատրաստվում եմ ենթադրել, որ դուք արդեն գիտեք, թե ինչպես տեղադրել Raspbian- ը: Եթե օգնության կարիք ունեք, կարող եք գտնել Raspberry Pi Foundation- ի ուղեցույցը այստեղ:
Երբ Raspbian- ը գործարկվի, մուտք գործեք և գործարկեք raspi-config ծրագիրը:
pi@raspberrypi: su $ sudo raspi-config
Կարգավորեք ձեր WiFi կապը raspi-config- ում
Ընտրել
2 Networkանցի ընտրանքներ
Ընտրել
N2 Wi-Fi
Ընտրեք երկիր, մուտքագրեք ձեր SSID- ը և մուտքագրեք ձեր անցաբառը
SSH- ի տեղադրում raspi-config- ում
Երբ ես կատարեցի սկզբնական կազմաձևը, ես SSH- ի միջոցով ամեն ինչ անգլուխ կարգաբերեցի: (Դուք կարող եք բաց թողնել սա, եթե օգտագործում եք մոնիտոր: Ինձ համար ավելի հեշտ էր փոփոխություններ կատարել ծածկագրում ՝ առանց ռոբոտին կանգնեցնելու և այն մոնիտորի մեջ միացնելու):
Վերադառնալ raspi-config հիմնական ընտրացանկին
Ընտրել
5 Ինտերֆեյսերի ընտրանքներ
Ընտրել
P2 SSH
Ընտրել
Այո
Վերադառնալով raspi-config հիմնական ընտրացանկին, ընտրեք
Հաստատեք, որ միացված եք ձեր ցանցին
pi@raspberrypi: ~ $ ifconfig
Դուք պետք է ստանաք նման ելք: (Նկատի ունեցեք IP հասցեն. Ձեզ կարող է դա անհրաժեշտ լինել ավելի ուշ: օր. 192.168.1.18)
wlan0: դրոշներ = 4163 mtu 1500
inet 192.168.1.18 ցանցային դիմակ 255.255.255.0 հեռարձակում 192.168.1.255 inet6 fe80:: c74f: 42ec: 8cd3: 2fda նախածանց 64 շրջանակ 0x20 եթեր b8: 27: եբ: 6a: a4: 95 txqueuelen 1000 (Ethernet) RX փաթեթներ 44396 բայթ 5.5 MiB) RX սխալներ 0 նվազել են 0 գերազանցում են 0 շրջանակներ 0 TX փաթեթներ 30530 բայթ 39740576 (37.8 MiB) TX սխալներ 0 նվազել են 0 գերազանցում են 0 կրիչ 0 բախումներ 0
Ստուգեք, որ կարող եք միանալ ինտերնետին:
pi@raspberrypi: ~ $ ping google.com
Դուք պետք է ստանաք նման ելք:
PING google.com (216.58.194.110) 56 (84) բայթ տվյալներ:
64 բայթ dfw06s48-in-f14.1e100.net (216.58.194.110). Icmp_seq = 1 ttl = 54 ժամանակ = 18.2 ms 64 բայթ dfw06s48-in-f14.1e100.net (216.58.194.110). Icmp_seq = 2 ttl = 54 անգամ = 19.4 մս 64 բայթ dfw06s48-in-f14.1e100.net (216.58.194.110.net): icmp_seq = 3 ttl = 54 ժամանակ = 23.6 ms 64 բայթ dfw06s48-in-f14.1e100.net (216.58.194.110): icmp_seq = 4 ttl = 54 անգամ = 30.2 ms ^C --- google.com պինգ վիճակագրություն --- 4 փաթեթ փոխանցված, 4 ստացված, 0% փաթեթների կորուստ, ժամանակ 3004ms rtt min/avg/max/mdev = 18.209/ 22.901/30.267/4.715 ms
Ստեղծեք ստատիկ IP
Որպեսզի կարողանաք հետևողականորեն միանալ ձեր ռոբոտին ՝ օգտագործելով ձեր ցանցի նույն հասցեն, կցանկանաք ստեղծել ստատիկ IP:
Ստացեք ձեր ընթացիկ ցանցի հասցեն, օրինակ ՝ 192.168.1.18
Ես օգտագործում եմ հասցեն, որը ավտոմատ կերպով նշանակվել էր DHCP- ի կողմից, երբ Pi- ն միանում էր իմ ցանցին: Դուք կարող եք փոխել այն, ինչ ցանկանում եք, քանի դեռ այն համընկնում է ձեր ցանցի հետ և չի հակասում այլ նշանակված հասցեներին:
Բացեք dhcp.conf տեքստային խմբագրիչում: (Ես օգտագործում եմ նանո)
pi@raspberrypi: su $ sudo nano /etc/dhcpcd.conf
Ոլորեք ներքև դեպի #Օրինակ ստատիկ IP կազմաձևում և փոխեք հետևյալ տողերը:
#միջերես eth0
#static ip_address = 192.168.11.13 #static routers = 192.168.11.1 #static domain_name_servers = 192.168.11.1 8.8.8.8
Փոփոխեք ՝ ձեր ցանցին համապատասխանելու համար և հեռացրեք # -ը յուրաքանչյուր տողի սկզբում:
Օրինակ:
wlan0 ինտերֆեյս
ստատիկ ip_address = 192.168.1.18 ստատիկ երթուղիչներ = 192.168.1.1 ստատիկ տիրույթի_անուն_ սերվերներ = 192.168.1.1 8.8.8.8
Պահել և դուրս գալ:
Վերագործարկեք և միացեք Pi- ին SSH- ի միջոցով
pi@raspberrypi: su $ sudo վերագործարկում
Միացեք այլ համակարգչից ՝ օգտագործելով SSH: Windows- ի օգտվողները կարող են օգտագործել PuTTY- ը կամ Windows- ի Linux- ի ենթահամակարգը (Windows10):
ian@համակարգիչ ՝ ~ $ ssh [email protected]
Մուտքագրեք ձեր գաղտնաբառը (կանխադրվածը ազնվամորին է):
[email protected] գաղտնաբառը:
Դուք այժմ պետք է լինեք ձեր Pi- ի հրամանի հուշում:
pi@raspberrypi: ~ $
Քայլ 2: Տեղադրեք և կազմաձևեք շարժումը
Motion- ը ծրագիր է, որն օգտագործվում է անվտանգության տեսախցիկների / տեսախցիկների նախագծերում: Շարժումը ունի բազմաթիվ առանձնահատկություններ: Այնուամենայնիվ, մենք այն կարգավորում ենք ՝ վեբ տեսախցիկից տեսանյութը պարզապես հոսելու համար դեպի 8081 նավահանգիստ:
Փորձարկեք ձեր տեսախցիկը
Միացրեք ձեր տեսախցիկը և նշեք միացված USB սարքերը (միացումից հետո գուցե անհրաժեշտ լինի վերագործարկել):
pi@raspberrypi: ~ $ lsusb
Դուք պետք է ստանաք նման ելք: Ուշադրություն դարձրեք Logitech C210- ին:
Ավտոբուս 001 Սարքը 002: ID 046d: 0819 Logitech, Inc. Տեսախցիկ C210
Ավտոբուս 001 Սարքը 001: ID 1d6b: 0002 Linux Foundation 2.0 արմատային հանգույց
Եթե ձեր տեսախցիկը չի երևում, այն կարող է համատեղելի չլինել կամ ձեզ անհրաժեշտ լինի տեղադրել լրացուցիչ վարորդներ:
Տեղադրեք շարժում
Թարմացրեք փաթեթները:
pi@raspberrypi: su $ sudo apt-get թարմացում
Տեղադրեք շարժում:
pi@raspberrypi: su $ sudo apt -get install motion -y
Երբ Motion- ը տեղադրվի, խմբագրեք կազմաձևման ֆայլը:
pi@raspberrypi: ~ $ sudo nano /etc/motion/motion.conf
Փոխեք հետևյալ տողերը, որպեսզի դրանք համապատասխանեն ստորև:
դեյմոնը միացված է
լայնություն 640 բարձրություն 480 շրջանակի արագություն 100 ելքային_պատկեր ՝ անջատված ffmpeg_output_movies անջատված text_right stream_port 8081 հոսքի_ որակ
Սկսեք Motion Daemon- ը Boot- ում
Բացեք/etc/default/motion ֆայլը:
pi@raspberrypi: ~ $ sudo nano/etc/default/motion
Փոխել
start_motion_daemon = այո
Պահպանեք ֆայլը և դուրս եկեք
Վերագործարկել
pi@raspberrypi: su $ sudo վերագործարկում
Pi- ի վերագործարկումից հետո բացեք զննարկիչը և հաստատեք, որ ձեր տեսանյութը դիտվում է դիտարկիչում 8081 նավահանգստում
Օրինակ:
192.168.1.18:8081
Motion Daemon- ի անսարքությունների վերացում
Ես բախվեցի այն բանին, որ շարժման դեմոն սկսվի բեռնախցիկից, մինչդեռ ես փորձում էի տարբեր տարբերակներ motion.conf ֆայլում:
Եթե դուք շարժում սկսեք Raspian Stretch- ում շարժման դեմոնից առաջ, ապա, ամենայն հավանականությամբ, խնդիրներ կունենաք, երբ այն ավելի ուշ սկսվի բեռնաթափման ժամանակ: «Sudo motion» - ի գործարկումը ՝ առանց դաոն կազմաձևելու, նախ ստեղծում է գրացուցակը/var/log/motion ՝ առանց օգտվողին գրելու թույլտվություն տալու:
Քայլ 3: Տեղադրեք Apache և կարգավորեք վեբ կառավարման էջը
Apache- ը ռոբոտի կառավարման վեբ էջի վեբ սերվեր է: Մենք պատրաստվում ենք փոխարինել կանխադրված Apache index.html ֆայլը github- ից ներբեռնված ֆայլով: Դուք նաև կփոխեք մի քանի տող ծածկագիր ՝ շարժման տեսահոսքը ցուցադրելու և նշանակելու, թե որտեղ պետք է ուղարկվեն ռոբոտին կառավարելու հրամանները:
Տեղադրեք Apache և Git
pi@raspberrypi: su $ sudo apt -get տեղադրել apache2 git -y
Apache- ի և git- ի տեղադրումից հետո ներբեռնեք ֆայլերը:
pi@raspberrypi: ~ $ git clone
Բացեք roombarobot գրացուցակը:
pi@raspberrypi: ~ $ cd roombarobot
Փոխարինեք index.html ֆայլը/var/www/html թղթապանակում index.html ֆայլով/home/pi/roombarobot- ում
pi@raspberrypi: ~/roombarobot $ sudo cp index.html/var/www/html
Խմբագրել index.html ֆայլը
Բացեք index.html ֆայլը տեքստային խմբագրիչով:
pi@raspberrypi: ~/roombarobot $ sudo nano /var/www/html/index.html
Տեղադրեք այս երկու տողերը
var host = "ws: // YOURIPADRESS: 9093/ws";
Փոխեք «YOURIPADDRESS» - ը ստատիկ IP հասցեին, որը դուք կարգավորել եք Քայլ 1 -ում և պահպանեք ֆայլը:
Օրինակ:
var host = "ws: //192.168.1.18: 9093/ws";
Մեկ այլ համակարգչի վրա բացեք զննարկիչը և մուտքագրեք ձեր Pi- ի IP հասցեն: Դուք պետք է տեսնեք կառավարման վեբ էջը, որի ձախ կողմում կա տուփ, ձեր տեսախցիկից տեսանյութեր են հոսում, իսկ աջ կողմում ՝ վեբ կառավարման կոճակները:
Քայլ 4: Կարգավորեք և փորձարկեք ծածկագիրը
Այս կոդը գրված է պիթոնում և պահանջում է տորնադոյի գրադարան: Կոդն օգտագործում է գրադարանը `սերվեր ստեղծելու համար` 9093 նավահանգստի վեբ ցանցերի միջոցով կառավարման կայքէջից հրամաններ լսելու համար:
Տեղադրեք PIP- ը և Tornado գրադարանը
Տեղադրեք pip
pi@raspberrypi: su $ sudo apt-get տեղադրել python-pip
Տեղադրեք tornado գրադարան
pi@raspberrypi: ~ $ sudo pip տեղադրել tornado
Սկսեք Roombabot ծրագիրը և փորձարկեք կապը
Սկսեք roombabot.py ծրագիրը
pi@raspberrypi: ~ $ sudo python /home/pi/roombarobot/roombabot.py
Վազելուց հետո տերմինալում պետք է տեսնեք «Պատրաստ է»: Բացեք կառավարման վեբ էջը դիտարկիչում և կտտացրեք միանալ: Այնուհետև կտտացրեք էջի ցանկացած ուղղորդված կոճակ: Կարող եք նաև օգտագործել ստեղնաշարի սլաքների ստեղները:
Նման տերմինալում դուք պետք է տեսնեք ելք:
Պատրաստ է
կապը բացվեց… կապը բացվեց… ստացվեց ՝ u 8 Գործարկում Առաջ կապը բացվեց… ստացվեց. l 6 Շրջվեց Ձախ կապը բացվեց… ստացվեց: d 2 Գործարկեց Հակադարձ կապը բացվեց… ստացվեց. r 4 Աջ թեքում
Սեղմեք ctrl+c ծրագիրը դադարեցնելու համար:
Երբ ավարտեք Pi- ի հզորությունը փորձարկելը:
pi@raspberrypi: su $ sudo poweroff
Վրիպակներ
Ես նկատել եմ կառավարման վեբ էջի անջատման կոճակի խնդիր: Երբեմն անջատման կոճակը ոչինչ չի անում, երբ այն կտտացվում կամ թակվում է: Ես չեմ կարողացել պարզել, թե ինչն է դա պատճառում, բայց կա մի լուծում: Եթե ցանկանում եք անջատել ռոբոտը, և անջատման կոճակը չի աշխատում, վերաբեռնեք էջը, կտտացրեք / հպեք միացման կոճակին, այնուհետև կտտացրեք / հպեք անջատման կոճակին: Այն պետք է անջատվի:
Քայլ 5: Հավաքում
Ինչպես արդեն նշվեց, այս նախագծի համար պարտադիր չէ Roomba օգտագործել: Երկու շարժիչ, երկու անիվ և շրջանակ ունեցող ցանկացած բան կաշխատի: Ես վերցրեցի Roomba- ն և հանեցի ամեն ինչ, բացի անիվի մոդուլներից և մարտկոցից:
Անիվի մոդուլներ
Roomba- ի անիվներն ու շարժիչները միասին տեղակայված են շարժական մոդուլում: Յուրաքանչյուր մոդուլ ունի կապույտ արտաքին պատյան, որը պարունակում է շարժիչը, փոխանցման տուփը, անիվը, կախոցի զսպանակը և միջերեսային տախտակը:
Ինտերֆեյսի տախտակ
Յուրաքանչյուր ինտերֆեյսի տախտակ ունի վեց լար, որոնք անցնում են դրան: Գոյություն ունեն երկու լարեր (Կարմիր [+], Սև [-]), որոնք պտտեցնում են շարժիչը, մեկ հաղորդալար ՝ սրահի էֆեկտի սենսորի համար, մեկ մետաղալար ՝ անիվի անկման անջատիչի համար, մեկ 5 Վ լար և մեկ GND մետաղալար ՝ սենսորը սնուցելու համար: Ինտերֆեյսի տախտակին մուտք գործելու համար դուք պետք է անջատեք մոդուլը: Ես ամեն ինչ ետ հանեցի շարժիչին և նոր [+] և [-] լարեր կպցրի շարժիչին (տես լուսանկարները): Ձեզանից է կախված ՝ ցանկանու՞մ եք պահպանել տվիչները, թե ոչ:
Կասեցման աղբյուրներ
Երբ հեռացնում եք վակուումային հատվածը, Roomba- ի քաշը նետվում է: Եթե դուք չեք հեռացնում աղբյուրները, Roomba- ն նստած կլինի անկյան տակ: Սկզբում ես դրանք հանեցի, բայց հետո նորից ավելացրի, երբ գտա, որ դժվարանում եմ գորգը գլորել: Springսպանակը հետ դնելով ՝ խնդիրը լուծվեց:
Շարժիչների միացում Motor Controller- ին
Շարժիչներն ուղղված են միմյանցից: Դա նշանակում է, որ Roomba- ն առաջ տանելու համար մեկ շարժիչը պետք է պտտվի առաջ, իսկ մյուսը ՝ հետ: Ես այնքան էլ չէի մտածում այս մասին, մինչև որ ամեն ինչ լարեցի: Ես ավարտեցի պարզապես կոդը գրել այն մասին, թե ինչպես եմ սկզբում միացրել շարժիչները: Սա ուրախալի պատահար էր, քանի որ երբ Raspberry Pi- ն միանում/անջատվում է, GPIO կապում լարման ելք կա: Ինչպես ես կարգավորում եմ ամեն ինչ, Roomba- ն պտտվում է մինչև Raspberry Pi- ի գործարկումը (մոտ երեսուն վայրկյան) և պտտվում է անջատումից հետո մինչև հոսանքի անջատումը: Եթե այլ կերպ լարված լիներ, այն պոտենցիալ կերպով կշրջվեր առաջ / հետ, ինչը նյարդայնացնող կլիներ: Ես նախատեսում եմ, ի վերջո, դա շտկել շարժիչի վերահսկիչի պարզ անջատիչով:
Շարժիչներն ու մարտկոցը միացրեք շարժիչի վերահսկիչին
Հզորություն - - - - - - - - - - - - - - - - 12V [+] - - - - - - - - - - - - - Ռոմբա մարտկոց [+]
Շարժիչ 2- - - - - - - - - - - - - - - - Սև- - - - - - - - - - - - - - ձախ շարժիչ [-] շարժիչ 2- - - - - - - - - - - - - - - Կարմիր- - - - - - - - - - - - - - - - Ձախ շարժիչ [+] Շարժիչ 1- - - - - - - - - - - - - - - - Սև - - - - - - - - - - - - - - Աջ շարժիչ [-] Շարժիչ 1- - - - - - - - - - - - - - - - կարմիր - - - - - - - - - - - - - - աջ շարժիչ [+] GND- - - - - - - - - - - - - - - - - - 12V [-] - - - - - - - - - - - - - - - Ռոմբայի մարտկոց [-]
Շարժիչի վերահսկիչի միացում Raspberry Pi- ին
Motor Controller Pins Wire Color (տես լուսանկարները) Ազնվամորի Pi կապում
GND- - - - - - - - - - - - - - - - - - Սև - - - - - - - - - - - - - GND PWM 2- - - - - - - - - - - - - - - - կապույտ - - - - - - - - - - - - - - GPIO 18 DIR 2- - - - - - - - - - - - - - - - - - կանաչ - - - - - - - - - - - - -GPIO 23 PWM 1- - - - - - - - - - - - - - - - - դեղին - - - - - - - - - - - - - - GPIO 24 DIR 1- - - - - - - - - - - - - - - - - Նարնջագույն - - - - - - - - - - - - - -GPIO 25 5V - - - - - - - - - - - - - - - - - - կարմիր - - - - - - - - - - - - - - -5 Վ
Էլեկտրոնիկայի տեղադրում
Շատ բան չկա, որ ամեն ինչ համատեղում է: Ես սենյակը հանեցի շասսիից: Հեռացնելով ծածկը, դուք հեշտությամբ կարող եք կտրել գոյություն ունեցող պլաստմասե փակուղիները և անցքեր փորել էլեկտրոնիկայի տեղադրման համար: Կան գոյություն ունեցող նավահանգիստներ շարժիչներից մալուխներ վարելու համար: Եթե դուք օգտագործում եք Roomba մարտկոցը, մարտկոցի տերմինալներին մուտք գործելու համար արդեն կա անջատում:
Մարտկոցներ
Ես առանձին մարտկոցներ օգտագործեցի Raspberry Pi- ի և շարժիչի վերահսկիչի համար: Pi- ի մարտկոցը ընդամենը 5 Վ մարտկոց է, որն օգտագործվում է բջջային հեռախոսների հզորացման համար: Շարժիչային վերահսկիչի համար ես օգտագործել եմ Roomba- ի օրիգինալ մարտկոցը, որն ուղեկցվել է դրանով: Մարտկոցի տերմինալները պիտակավորված չեն, ուստի ամենալավն այն է, որ լարումը ստուգեք վոլտմետրով, նախքան այն միացնելով շարժիչի վերահսկիչին: Roomba մարտկոցին լարերը ամրացնելու համար ես օգտագործեցի չորս նեոդիմի մագնիս (տես լուսանկարները): Ես մագնիսներից երկուսը կպցրի լարերին, իսկ մյուս երկուսը կպցրի մարտկոցի տերմինալներին: Sոդումը ապամագնիսացնում է մագնիսները: Այնուամենայնիվ, արտաքին ծածկույթը դեռ կարող է կցվել տերմինալների մագնիսներին և անցկացնել էլեկտրաէներգիա: Սա մարտկոցը միացնելն ու անջատելը դարձնում է տորթի կտոր:
Փորձարկում
Երբ ամեն ինչ միասին ունենաք, ստուգեք, որ ամեն ինչ ճիշտ է միացված, ձեր ռոբոտին հենեք ինչ -որ բանի վրա (այնպես, որ այն չի գլորվում) և միացրեք այն:
Մուտք գործեք և սկսեք roombabot.py ծրագիրը
pi@raspberrypi: ~ $ sudo python /home/pi/roombarobot/roombabot.py
Գնացեք վեբ կառավարման էջ և փորձարկեք այն: Եթե ամեն ինչ ճիշտ է միացված, անիվները պետք է պտտվեն համապատասխան ուղղությամբ, երբ կոճակները սեղմվում են / սլաքների ստեղները սեղմվում են (մի մոռացեք սեղմել միացնել):
Քայլ 6. Գործարկել Python ծածկագիրը Boot / Finishing Up
Վերջին բանը, որ մենք պետք է անենք, դա Raspbian- ին ասել, որ սկսի python ծրագիրը boot- ով: Դա անելու համար մենք պատրաստվում ենք սցենար կազմել և ժամանակացույց անել, որ այն գործի վերագործարկման ժամանակ ՝ օգտագործելով crontab:
Ստեղծեք Script
Pi օգտվողների գրացուցակում ստեղծեք նոր սցենարային ֆայլ ՝ startrobot.sh անունով
pi@raspberrypi: su $ sudo nano startrobot.sh
Պատճենեք հետևյալ տողերը ֆայլում
#!/bin/sh
#startrobot.sh cd /cd /home /pi /roombarobot sudo python roombabot.py cd /
Պահպանեք ֆայլը և դուրս եկեք
Ստեղծեք startrobot.sh ֆայլը գործարկելի
pi@raspberrypi: su $ sudo chmod 755 startrobot.sh
Փորձարկեք (դադարեցնելու համար սեղմեք ctrl + c)
pi@raspberrypi: ~ $ sh startrobot.sh
Խմբագրել crontab ֆայլը
pi@raspberrypi: ~ $ sudo crontab -e
Ֆայլի ներքևում ավելացրեք հետևյալ տողը
# m h dom mon dow հրաման
@reboot sh /home/pi/startrobot.sh
Պահել և դուրս գալ
Roombabot.py ծրագիրը այժմ պետք է սկսվի, երբ Pi- ն վերագործարկվի կամ հոսանքը միացված լինի:
Ավարտելով վեր
Այս պահին դուք պետք է ունենաք ֆունկցիոնալ ռոբոտ, որը կարող եք կառավարել ՝ օգտագործելով զննարկիչը ձեր ցանցի ցանկացած սարքից: Ես սա մի փոքր ավելի առաջ եմ տարել ՝ VPN- ի սկզբնական կառուցումից և տեղադրումից ի վեր, որպեսզի կարողանամ մուտք գործել ռոբոտ, երբ տնից բացակայեմ: Ես մտադիր եմ ապագայում կատարել որոշ լրացուցիչ փոփոխություններ: Ես նախատեսում եմ այն դարձնել ինքնավար և, հնարավոր է, հետևել շարժմանը, մինչդեռ դեռ կարող եմ վերահսկողություն վերցնել, երբ ուզում եմ:
Խորհուրդ ենք տալիս:
Կառուցեք ձեր ինտերնետով վերահսկվող վիդեո-հոսքային ռոբոտը Arduino- ով և Raspberry Pi- ով. 15 քայլ (նկարներով)
Կառուցեք ձեր ինտերնետով վերահսկվող վիդեո-հոսքային ռոբոտը Arduino- ի և Raspberry Pi- ի միջոցով. Ես պատրաստում եմ այս նախագիծը, որպեսզի բոլորը կարողանան սովորել և կիսվել: Դուք կարող եք ունենալ
Կարագի ռոբոտը. Arduino ռոբոտը `գոյություն ունեցող ճգնաժամով. 6 քայլ (նկարներով)
The Butter Robot: Arduino Robot With Existential Crisis: Այս նախագիծը հիմնված է «Rick and Morty» անիմացիոն շարքի վրա: Դրվագներից մեկում Ռիկը պատրաստում է ռոբոտ, որի միակ նպատակը կարագ բերելն է: Որպես Bruface- ի (Բրյուսելի ճարտարագիտական ֆակուլտետի) ուսանողներ, մենք առաջադրանք ունենք մեխանիկա
RasbperryPi ավտոմեքենա FPV տեսախցիկով: Կառավարում վեբ դիտարկիչով. 31 քայլ (նկարներով)
RasbperryPi ավտոմեքենա FPV տեսախցիկով: Կառավարում վեբ դիտարկիչով. Մեքենայի մոտ տեսախցիկը կտեղադրվի հատուկ ամրակի վրա, որտեղ մենք կարող ենք փոխել տեսախցիկի դիրքը: Ռոբոտը կլինի
Gեստերով վերահսկվող մարզվող ռոբոտը ՝ Bluetooth- ով Arduino- ի միջոցով. 4 քայլ
Gեստերով վերահսկվող մարզվող ռոբոտի ձեռքը Bluetooth- ով Arduino- ի միջոցով. Թևում կան երկու ռեժիմ: Նախ ՝ ձեռքով ռեժիմն է, որը կարող եք բջջային հեռախոսի մեջ թևը շարժել Bluetooth- ով ՝ տեղափոխելով սահիչները ծրագրի վրա: Միևնույն ժամանակ, դուք կարող եք պահպանել ձեր դիրքերը և կարող եք խաղալ … Երկրորդը ժեստի ռեժիմն է, որն օգտագործում է ձեր ph
Ինչպես կառուցել Gripper Arm Tracked վերահսկվող ռոբոտը Nrf24l01 Arduino- ի միջոցով. 3 քայլ (նկարներով)
Ինչպես կառուցել Gripper Arm- ով վերահսկվող ռոբոտ, որը վերահսկվում է Nrf24l01 Arduino- ի միջոցով. Հրահանգը " Ինչպես կառուցել բռնակով բռնակով վերահսկվող ռոբոտը վերահսկվում է Nrf24l01 Arduino- ի միջոցով " կբացատրի, թե ինչպես կարելի է կառուցել երեք աստիճանի ազատության բռնիչ ՝ տեղադրված հետագծված անիվի վրա, որը շարժվում է L298N երկշարժիչ մոդուլով ՝ օգտագործելով MEG