Բովանդակություն:
- Պարագաներ
- Քայլ 1. Rover հավաքում
- Քայլ 2: Raspbian
- Քայլ 3: OpenVino
- Քայլ 4: Ներբեռնեք ծածկագիրը
- Քայլ 5: FollowMe (Python)
- Քայլ 6: Ներբեռնեք մոդելները
- Քայլ 7: Arduino
- Քայլ 8: GUI
- Քայլ 9: Serviceառայություն:
- Քայլ 10: Դա այդպես է: Զվարճանալ
Video: MyPetBot (Բոտ, որը հետևում է ձեզ). 10 քայլ (նկարներով)
2024 Հեղինակ: John Day | [email protected]. Վերջին փոփոխված: 2024-01-30 09:46
Ai- ը մաթեմատիկայի ամենագեղեցիկ կիրառումներից մեկն է: Հիմնականում դա մի շարք մատրիցային գործողություններ են, որոնք օպտիմիզացված են `ձեր փնտրած արդյունքին համապատասխանելու համար: Բարեբախտաբար, կան բազմաթիվ բաց կոդով գործիքներ, որոնք թույլ են տալիս մեզ օգտագործել այն:
Ես ի սկզբանե գաղափար ունեի շատ վաղուց, երբ աշխատում էի ջրվեժի վրա, որն ակտիվացրել էին նետող մարդկանց կողմից: Ես օգտագործում էի ուլտրաձայնային տվիչներ և շատ ուշ հայտնաբերեցի, որ դրանք թաց վիճակում շատ չեն աշխատում… Դա հաճելի փորձ չէր: Մենք վերջացրեցինք մի մեծ կոճակով, որը մարդիկ կսեղմեին, եթե ցանկանային անցնել: Ամեն ինչ լավ ստացվեց, քանի որ շոգ էր, և մարդիկ սիրում էին թրջվել, բայց խնդիրը մնաց իմ գլխում… Ինչպես հայտնաբերել մարդկանց և ակտիվացնել ռեակցիան:
Ես պատմում եմ այս պատմությունը, որովհետև ուզում եմ նշել, որ այս սկզբունքը կարող է օգտագործվել տոննա այլ ծրագրերի համար: Խաղալիքով դեմքին հետևելը դրանցից մեկն է: Ինտերակտիվ տեղակայանքների համար կարող եք անել ցանկացած բան: Դուք կարող եք օգտագործել մոդել ՝ որոշելու, թե արդյոք դեմքը ժպտում է: Դուք կարող եք հաշվել այգու շների թիվը: Դուք կարող եք փակել ձեր վարագույրները, երբ մարդիկ անցնում են կողքով: Կամ… պատրաստեք ձեր նինդենդոյի բազայի վերահսկիչ ձեր մարմնի դիրքի վրա…. Դուք կարող եք ներբեռնել Ai- ի շատ այլ մոդելներ, որոնք կատարում են ցանկացած տեսակի աշխատանք:
Կան մի քանի ձեռնարկ, թե ինչպես անել, որ Ai եզրակացությունն աշխատի ազնվամորու pi- ի հետ: Ես այստեղ եմ ձեզ սովորեցնելու, թե ինչպես կարելի է անցքերի ինտեգրումը կատարել ինքնաշխատ միավորի մեջ: Հենց ձեր ռոբոտը բեռնաթափվի, այն կսկսի անհրաժեշտ ծրագրերը:
Պարագաներ
- Parallax ռոբոտ. Ես ընտրեցի այս ռոբոտը, քանի որ այն ունեի կողքին, բայց ցանկացած ռոբոտ, որը կարելի է կառավարել arduino- ով, կանի աշխատանքը:
- Ազնվամորի պի. Ես խորհուրդ եմ տալիս գոնե ազնվամորի պի 3 Բ+:
- Intel Neural Stick. Եզրակացության տոկոսադրույքը մեկ վայրկյանից հասնում է 8. Դուք իսկապես դրա կարիքն ունեք, եթե ցանկանում եք Ai- ն անել ազնվամորու pi- ով:
- Power Bank. Էլեկտրաէներգիան կառավարելու ամենահեշտ ձևը: Աշխատում է ազնվամորի pi 3B+ - ով, գուցե ցանկանաք ստուգել, որ այն աշխատում է pi 4 -ով:
- Picamera: Ինձ դուր է գալիս picamera- ի օգտագործումը USB- ի փոխարեն:
Քայլ 1. Rover հավաքում
Ձեռնարկի նպատակը հիմնականում ծրագրային ապահովման մասին է, ուստի ես չեմ ուզում շատ մխրճվել ռովերի մասին մանրամասների մեջ: Այն աշխատում է այս ռոբոտի հետ, բայց այն իսկապես կարող է աշխատել ցանկացած այլ սարքավորման հետ: Նույնիսկ պարտադիր չէ, որ այն լինի ռովերի համար, կարող եք օգտագործել այն շարժման սենսորային տեսախցիկի համար:
- Գտեք ձեզ Arduino վերահսկվող մեքենա:
- Սերտորեն փաթեթավորեք դրանով էներգիայի բանկը:
- Ամուր փաթաթեք ազնվամորու պիով դրան:
- Կպչեք լուսանկարչական ապարատը մի փոքր անկյան տակ դեպի վերև:
- Միացրեք ամեն ինչ միասին:
- Վոյա!
Քայլ 2: Raspbian
Ես օգտագործում եմ ազնվամորի պի, բայց ոչ մի պատճառ չկա չօգտագործել այլ Linux … կախված ձեզանից: Ես կարող եմ թողարկել plug and play պատկեր sd քարտը այրելու համար: Ես դրան կհասնեմ, եթե բավականաչափ մարդիկ հետաքրքրվեն:
Տեղադրեք Raspbian- ը. Կարող եք տեղադրել Raspbian Buster Lite- ը: Մենք չենք պատրաստվում օգտագործել աշխատասեղանը … Միայն ssh Secure Shell կապը:
Միացեք ձեր Pi- ին. Նախ կարող եք միանալ ձեր ազնվամորի pi- ին Ethernet կապով
Սահմանեք ձեր wifi- ն: Այժմ կարող եք կարգավորել ձեր անլար կապը
Քայլ 3: OpenVino
OpenVino- ն Intel- ի կողմից աջակցվող հիանալի գրադարան է: Նրանք հիանալի աշխատանք են կատարել օրինակելի մոդելներ կազմելիս և նրանք դարձրել են ai շրջանակի մեծ մասը համատեղելի: Ձեզ անհրաժեշտ է այս գրադարանը Intel Neural Stick- ի համար:
Python3 տեղադրում. Դուք պետք է տեղադրեք python 3:
OpenVino- ի տեղադրում. Երբ դա արվի, դուք կտեսնեք մի գիծ «[setupvars.sh] OpenVINO միջավայրը նախաստորագրված» ամեն անգամ, երբ միանում եք ազնվամորի պիին:
OpenVino- ն opencv- ի ընդլայնումն է: Այն փորձարկելու համար կարող եք գործարկել python3 և ներմուծել cv2:
մուտքագրեք պատյանում.
պիթոն 3
մուտքագրեք python:
- ներմուծել cv2
- cv2._ տարբերակ_
Վերջին տողը պետք է վերադարձնի «4.1.2-openvino» կամ openvino- ի ցանկացած տարբերակ: եթե եթե ասում է opencv ձեր տեղադրումը չի աշխատում…
Քայլ 4: Ներբեռնեք ծածկագիրը
Նախ, մենք տեղադրում ենք git- ը: Մուտքագրեք պատյանում.
sudo apt-get install git
Այնուհետև մենք կարող ենք տեղափոխվել Փաստաթղթերի թղթապանակ և ներբեռնել ծածկագիրը.
- cd ~/Փաստաթղթեր/
- git կլոն
Քայլ 5: FollowMe (Python)
Սա այն մասն է, որի հետ ցանկանում եք խաղալ: Ստեղծեք, եթե հետևեք ձեզ: Վախեցրեք ձեզանից: Հետևեք ձեր շանը: Ստիպեք ճանաչել դեմքի արտահայտությունները !! Հալածեք ձեր կատուն !!! Ինչ ուզում ես:
Դուք կգտնեք չորս հիմնական թղթապանակ ՝ Arduino, Deployment, Player և FollowMe:
Արդուինո. Դրա մասին ավելին ՝ հաջորդ բաժնում
Տեղակայումը. Այստեղ ես դնում եմ ինտերֆեյսը: Հենց հիմա ես կոդավորեցի միացման/դադարեցման պարզ կոճակը և մի փոքր տեսախցիկի դիտիչ ՝ վերահսկելով միայն մորթուց հաճույք:
Նվագարկիչ. Նախատեսված է օգտագործել ձեր աշխատասեղանի համակարգչում: Բոտի ելքը վերանայելու համար:
FollowMe. Մոդուլ, որը իրական հաճույք է պատճառում
Ես ավելի շատ մանրամասներ կներկայացնեմ github- ի վրա, որպեսզի թարմացման համար միայն մեկ տեղ լինի: Սա ծածկագրի տեղն է
Քայլ 6: Ներբեռնեք մոդելները
Եզրակացության մոդելները ծածկագրում ներառված չեն, քանի որ դրանք բավականին մեծ են: Բայց դուք կարող եք գտնել բազմաթիվ օրինակներ ՝ օգտագործելով OpenVino մոդելի Կենդանաբանական այգին
Կարող եք օգտագործել բեռնիչ մոդելը կամ ուղղակիորեն նետել այս հղումը: Իմ դեպքում ես չկարողացա օգտագործել բեռնիչ մոդելը իմ ազնվամորու pi տեղադրումից…
Այնուհետեւ պատճենեք մոդելը Models անունով թղթապանակի մեջ `
- cd ~/Փաստաթղթեր/FollowMe
- mkdir Մոդելներ
- cd մոդելներ
- wget
- wget
Ձեզ միշտ պետք է.xml և.bin.
Դուք կարող եք ներբեռնել ձեր ուզած մոդելը… Բայց դուք ստիպված կլինեք փոխել կոդը: Զվարճանալ!
Քայլ 7: Arduino
Մենք պետք է ներբեռնենք կոդը նախորդ քայլի վրա: Արդուինոյի կոդը դրա մեջ է:
Կոդը նախատեսված է երկու շարունակական սերվո վարելու համար, եթե այլ կոնֆիգուրացիա եք ընտրել, պետք է փոփոխեք կոդը:
Այն հիմնականում երկու բան է անում. Այն շփվում է համակարգչի հետ և այն ակտիվացնում է սերվերը ընտրված արագությամբ:
Ես կարող էի մեզ տալ ազնվամորի pi- ի ելքը `շարժիչները վերահսկելու համար … բայց arduinos- ն ավելի լավ է աշխատում (նրանք ունեն իրական հաճախականությունների գեներատոր): Բացի այդ, ես ուզում էի հնարավորինս բեռնաթափել ազնվամորու pi- ն ՝ եզրակացությունն ավելի արագ դարձնելու համար:
Քայլ 8: GUI
Ոչ մի շքեղ բան … Դեռևս: Կարող եմ ավելացնել այլ նյութեր, ինչպիսիք են ուղիղ դիտման կամ շարժման կառավարման տարրերը: Բայց միևնույն ժամանակ, պարզ սկիզբն ու կանգառը գլուխ կհանեն:
Եթե ցանկանում եք փորձարկել այն, դուք պետք է այն գործարկեք FollowMe Level գրացուցակից, այնուհետև զանգահարեք այն python3- ից.
- cd ~/Փաստաթղթեր/FollowMe
- python3 Տեղակայում/FollowMe.py
Այնուհետև կարող եք մուտք գործել ձեր դիտարկիչի միջերես ՝ մուտքագրելով.
192.168.0.113:8000
իհարկե, ճիշտ IP հասցեով:
Կա նաև վիդեո դիտիչ ՝ վերահսկիչներով … բայց ոչ աշխատանքային եզրակացությամբ
python3 Տեղակայում/StreamVideo.py
Քայլ 9: Serviceառայություն:
Սա այն է, ինչը ստիպում է Rover- ին աշխատել ինքնուրույն: Serviceառայությունը համակարգչի ֆոնին աշխատող ծրագիր է ՝ առանց օգտագործողի: Համոզվեք, որ ձեր բոլոր ուղիները բացարձակ են և որ դուք ունեք ճիշտ իրավունքներ, եթե օգտագործում եք որևէ ֆայլ, և ծառայությունը լավ կաշխատի:
Python- ի սցենարը որպես ծառայություն գործարկելու համար հարկավոր է սցենարը հղել ծառայության ֆայլում: Serviceառայության ֆայլը գտնվում է տեղակայման թղթապանակում git- ից ներբեռնված կոդի մեջ: Անունը FollowMe.service է:
Այն պատճենելու համար պատյանում մուտքագրեք հետևյալը.
sudo cp ~/Փաստաթղթեր/FollowMe/Տեղակայում/FollowMe.service/etc/systemd/system/
Առաջին անգամ ֆայլը պատճենելիս անհրաժեշտ է թարմացնել systemctl… կամ վերագործարկել ՝
sudo systemctl daemon-reload
Եվ սկսելու համար.
sudo systemctl սկսել FollowMe- ն
Կարող եք նաև օգտագործել կանգառ, միացնել և անջատել հրամանները: Վերջին երկուսը համառ պետական փոփոխության համար են:
Փոքրիկ բացատրություն…
Openvino- ին անհրաժեշտ է համակարգի փոփոխականներում լրացուցիչ ուղիներ աշխատելու համար: Unfortunatelyավոք, սովորական տեղադրումը չի աշխատի որպես ծառայություն: Այսպիսով, ձեզ հարկավոր է այս ֆայլը `փոփոխականները սահմանելու համար:
Ուշադրություն դարձրեք, որ իմ տեղադրումը Python 3.7 -ի համար է, ուստի կա մի փոփոխական, որը կարող է անհրաժեշտ լինել հարմարեցնելու համար … Հաջողություն:
Այս ֆայլը բացարձակ ճանապարհով հղում է կատարում պիթոնի սցենարին.
/home/pi/Documents/FollowMe/Deployment/FollowMe.py
Քայլ 10: Դա այդպես է: Զվարճանալ
Մեկնաբանությու՞ն: միշտ բարի գալուստ
Խորհուրդ ենք տալիս:
Ռոբոտ, որը կասի ՝ էլեկտրոնիկայի վաճառողը խաբում է ձեզ, թե ոչ. 6 քայլ
Ռոբոտ, որը կասի ՝ էլեկտրոնիկայի վաճառողը խաբում է ձեզ, թե ոչ. Անցյալ տարի ես և հայրս գնացինք նորաբաց ռոբոտաշինության/էլեկտրոնիկայի խանութ, որը շատ մոտ է մեր բնակավայրին: Երբ ես մտա այնտեղ, այն լի էր էլեկտրոնիկայով, սերով, սենսորներով, ազնվամորու պիսով և Արդուինոսով: Հաջորդ օրը մենք գնացինք նույն խանութը և գնեցինք
Covid-19 դիմակ, որը գոռում է ձեզ վրա, եթե դիպչեք ձեր դեմքին ՝ 4 քայլ
Covid-19 դիմակ, որը գոռում է ձեզ վրա, եթե դիպչեք ձեր դեմքին. Չե՞ք կարող դադարել դիպչել ձեր դեմքին: Կպչեք այս էլեկտրոնիկան ձեր ունեցած դիմակի վրա և ձեզ անընդհատ կհիշեցնեն դա չանել
Hydrator - սարք, որը դրդում է ձեզ խմել ջուր. 8 քայլ (նկարներով)
Հիդրատոր - սարք, որը դրդում է ձեզ խմել ջուր. Բավականաչափ ջուր խմելը շատ կարևոր է բոլորի համար: Բայց ամեն օր ես ավելի քիչ ջուր եմ խմում, քան պետք է: Ես գիտեմ, որ ինձ նման մարդիկ կան, որոնց պետք է հիշեցնել ջուր խմելու մասին: Եթե դուք մեզանից մեկն եք, ապա այս նախագիծը կփոխի ձեր
Keyminder! այն սարքը, որը ստիպում է ձեզ չկորցնել ձեր բանալիները: 3 քայլ (նկարներով)
Keyminder! այն սարքը, որը ստիպում է ձեզ չկորցնել ձեր բանալիները. այս սարքը օգնում է ձեզ չկորցնել ձեր բանալիները: Եթե դու ինձ նման ես, երբ աշխատանքից տուն ես վերադառնում, դուռը բացելուց հետո անմիջապես կորցնում ես քո բանալիները և սպասում ես մինչև հաջորդ օրը, մինչև որ ստիպված լինես հեռանալ դրանք փնտրելու համար: Այո, դուք կարող եք ունենալ
24 - խայթող ռումբ, որը խնդրում է ձեզ վայր դնել հեռախոսը. 5 քայլ
24 -ը ՝ խայթող ռումբ, որը խնդրում է ձեզ վայր դնել հեռախոսը. Այն նախագծված էր ռումբի պես ՝ վարքի փոփոխության ավելի լավ արդյունք ապահովելու համար ՝ դրա ներսում