Բովանդակություն:

IoT Treat դիսպենսեր ընտանի կենդանիների համար. 7 քայլ (նկարներով)
IoT Treat դիսպենսեր ընտանի կենդանիների համար. 7 քայլ (նկարներով)

Video: IoT Treat դիսպենսեր ընտանի կենդանիների համար. 7 քայլ (նկարներով)

Video: IoT Treat դիսպենսեր ընտանի կենդանիների համար. 7 քայլ (նկարներով)
Video: ԻՆՉՔԱՆ ԺԱՄԱՆԱԿ ԿԱՐՈՂ ԵՔ ՇԱՐԺՎԵԼ: Կառուցեք ձեր տունը Ճապոնիայում և ապրեք Ֆուկուոկայում 2024, Նոյեմբեր
Anonim
Image
Image
IoT Treat դիսպենսեր ընտանի կենդանիների համար
IoT Treat դիսպենսեր ընտանի կենդանիների համար

Ես երկու կատու ունեմ, և օրական մոտ 3 անգամ նրանց հյուրասիրել տալը բավականին տհաճություն պատճառեց: Նրանք ինձ էին նայում իրենց սրամիտ դեմքերով և սաստիկ հայացքներով, այնուհետև վազում էին դեպի կատվի կանաչիով լի տուփը, հաչում և մուրում նրանց համար: Ես որոշել էի, որ բավական է բավական: Այլևս արթնանալ ՝ պարզապես կատուին մի քանի ուտելիք տալու համար: Այժմ ժամանակն էր պաղպաղակ տարածող մեքենայի համար, քանի որ ինչպես ասում են ասացվածքները. «Mersրագրավորողները գոյություն ունեն բարդ գործեր պատրաստելու համար, որպեսզի պարզ բաներն ավելի քիչ անեն»:

DFRobot- ը հովանավորել է այս նախագիծը:

Մասերի ցուցակ.

  • DFRobot Ազնվամորի Pi 3
  • DFRobot ազնվամորի Pi տեսախցիկի մոդուլ
  • DFRobot Stepper Motor with Planetary Gear
  • I2C LCD 16x2
  • Barrel Jack դեպի տերմինալ
  • DRV8825 Stepper Motor Driver
  • Կոնդենսատոր 100 μF
  • Arduino UNO և Genuino UNO
  • Թռիչքային լարեր (ընդհանուր)

Քայլ 1: Դիզայնի ստեղծում

Դիզայնի ստեղծում
Դիզայնի ստեղծում

Առաջինը ընտրությունն էր, թե ինչպես կառավարել իմ նոր մտածած մեքենան: Bluetooth- ը շատ կարճ տիրույթ կունենար ՝ ընդամենը 30 ոտնաչափ առանց խոչընդոտների: Այս տեղեկատվությամբ ես որոշեցի օգտագործել WiFi- ն: Բայց հիմա, ինչպես կարող եմ WiFi- ն օգտագործել մեքենան վերահսկելու համար: Raspberry Pi 3 -ն ունի ներկառուցված WiFi հնարավորություններ, ինչը թույլ է տալիս ինձ օգտագործել Flask- ը ՝ վեբ էջ հյուրընկալելու համար: Հաջորդը պարիսպի թեման էր և ինչպես բաժանել հյուրասիրությունները: Ես որոշեցի պտտվող անիվի ձևավորում, որտեղ հյուրասիրությունները ընկնում էին փոքր հատվածների մեջ, պտտվում շուրջը, այնուհետև հյուրասիրությունները իջնում էին թեքահարթակի վրա և շարժվում դեպի մեքենայի առջև:

Քայլ 2. Fusion 360 մոդելի պատրաստում

Fusion 360 մոդելի պատրաստում
Fusion 360 մոդելի պատրաստում
Fusion 360 մոդելի պատրաստում
Fusion 360 մոդելի պատրաստում
Fusion 360 մոդելի պատրաստում
Fusion 360 մոդելի պատրաստում

Ես սկսեցի ՝ հիմքի մոդել ստեղծելով բուժման համար նախատեսված պահարանի համար: Խորտիկները ընկնում են մինի-բուֆի մեջ, որտեղից հետո դրանք տեղափոխվում են պտտվող անիվի մեջ:

Հաջորդը ես ավելացրեցի Raspberry Pi 3 -ը Fusion դիզայնին, մյուս էլեկտրոնիկայի հետ միասին, ներառյալ LCD և Raspberry Pi տեսախցիկի մոդուլը: Ես պատրաստեցի նաև մի բուֆեր, որը կարող էր լրացուցիչ ուտելիքներ պահել:

Ենթադրվում է, որ դիսպենսերների պատերը կտրված են 1/4 դյույմ նրբատախտակից `CNC երթուղիչով: Նրա մեջ կա 7 կտոր, 4 պատ, հատակ և վերևի և կափարիչի կտոր, որոնք կարող են բացվել և փակվել ՝ հյուրասիրությունները բացահայտելու համար:

Վերջապես, ես ստեղծեցի «շքեղ» բռնակ ՝ կափարիչը բացելու համար:

Քայլ 3: Pi- ի կարգավորում

DFRobot- ը օգնեց ինձ և ուղարկեց նրանց Raspberry Pi 3 և Raspberry Pi Camera Module- ը: Այսպիսով, արկղերը բացելուց հետո ես իրավունք ստացա աշխատել ՝ տեղադրելով SD քարտը: Սկզբում ես գնացի Raspberry Pi Ներլցումների էջ և ներբեռնեցի Raspbian- ի վերջին տարբերակը: Այնուհետև ես հանեցի ֆայլը և դրեցի այն հարմար գրացուցակում: Դուք չեք կարող պարզապես պատճենել/տեղադրել.img ֆայլը SD քարտի վրա, այլ պետք է «այրել» այն քարտի վրա: ՕՀ -ի պատկերը հեշտությամբ փոխանցելու համար կարող եք ներբեռնել Etcher.io- ի նման այրվող օգտակար ծրագիր:. Img ֆայլը իմ SD քարտի վրա լինելուց հետո այն տեղադրեցի Raspberry Pi- ի մեջ և ուժ տվեցի: Մոտ 50 վայրկյան հետո ես անջատեցի լարը և հանեցի SD քարտը: Հաջորդը ես նորից տեղադրեցի SD քարտը իմ համակարգչի մեջ և գնացի «boot» գրացուցակին: Ես բացեցի Գրառման գրքույկը և այն պահեցի որպես «ssh» անունով դատարկ ֆայլ ՝ առանց ընդլայնման: Նաև կար մի ֆայլ, որը ես ավելացրել էի «wpa_supplicant.conf» անունով և դրել այս տեքստը դրա մեջ. SSH- ի օգտագործումը և WiFi- ին միանալը:

Քայլ 4: Softwareրագրակազմի տեղադրում

Կան մի քանի տարբեր ծրագրակազմեր, որոնք կարող են հոսել տեսանյութեր, ինչպիսիք են VLC- ն և շարժումը, բայց ես որոշեցի օգտագործել mjpeg-streamer- ը ՝ դրա ցածր ուշացման և հեշտ տեղադրման պատճառով: Կայքի հրահանգների համաձայն ՝ կատարեք ՝ git clone https://github.com/jacksonliam/mjpg-streamer.git թղթապանակի մեջ, այնուհետև մուտքագրեք ՝ Փոխեք ձեր գրացուցակը ձեր ներբեռնած թղթապանակի մեջ և այնուհետև մուտքագրեք ՝ make Followed by: sudo make install theրագրակազմը կազմելու համար: Վերջապես մուտքագրեք. Արտահանել LD_LIBRARY_PATH =. Իսկ այն գործարկելու համար մուտքագրեք. html Հոսքը դիտելու համար:

Քայլ 5: Վեբ սերվերի ստեղծում

Որպեսզի մեքենան արտաքինով վերահսկվի WiFi- ի միջոցով, ինձ անհրաժեշտ էր վեբ սերվեր: Վեբ սերվերը հիմնականում մատուցում է վեբ էջեր, երբ դա պահանջվում է, սովորաբար բրաուզերի կողմից: Ես ուզում էի ինչ -որ արագ և պարզ բան ստեղծել և օգտագործել ՝ հանելով Apache- ն սեղանից: Ես նաև ցանկանում էի վեբ սերվերը միացնել Python- ի հետ, որպեսզի կարողանամ կառավարել Arduino Uno- ն PySerial- ի հետ: Այս որոնումը, ի վերջո, ինձ տարավ դեպի Flask, գեղեցիկ Python գրադարան, որը թույլ է տալիս օգտվողներին արագ ստեղծել վեբ սերվեր: Ամբողջական ծածկագիրը կցված է այս ծրագրի էջին: Պիթոնի սցենարը հիմնականում ստեղծում է 2 վեբ էջ, մեկը `տեղակայված արմատային գրացուցակում '/', իսկ մյուսը '/dispense- ում: Ինդեքսի էջն ունի HTML ձև, որը ներկայացնելիս ուղարկում է հաղորդագրության տրամադրման էջ: Այնուհետև բաշխման էջը ստուգում է, արդյոք գրառման արժեքը ճիշտ է, և արդյոք դա «D / n» հաղորդագրությունն ուղարկվում է սերիայի միջոցով Arduino Uno- ին:

Քայլ 6: IO- ի վերահսկում

IO- ի վերահսկում
IO- ի վերահսկում
IO- ի վերահսկում
IO- ի վերահսկում
IO- ի վերահսկում
IO- ի վերահսկում
IO- ի վերահսկում
IO- ի վերահսկում

Ես որոշեցի DRV8825- ով օգտվել իմ սլաքային շարժիչը քշելու համար, հիմնականում այն պատճառով, որ այն կարիք ունի միայն 2 IO կապի, ինչպես նաև կարգավորելի ընթացիկ սահմանափակում ունենալու հետ: Ես փորձեցի օգտագործել L293D- ը, բայց այն չկարողացավ հաղթահարել քայլող շարժիչի բեռը: DRV8825- ը կառավարվում է PEP- ի միջոցով STEP- ի քորոցը զարկելով, իսկ ուղղությունը `DIR- ի քորոցը բարձր կամ ցածր քաշելով: Այն stepper շարժիչը, որը ես օգտագործում եմ, ունի 1.2 ամպեր խաղարկություն, ուստի ես VREF լարումը կարգավորեցի.6V- ի: Հաջորդը LCD- ն էր: Ես ուզում էի օգտագործել I2C- ն `IO- ի անհրաժեշտ քանակությունը նվազեցնելու և ծածկագիրը պարզեցնելու համար: Գրադարանը տեղադրելու համար պարզապես որոնեք «LiquidCrystal_I2C» և տեղադրեք այն: Վերջապես, Arduino Uno- ն ստուգում է նոր տեղեկությունները սերիական բուֆերում և արդյոք այն համապատասխանում է «D» - ին: Եթե դա տեղի ունենա, ապա Uno- ն առաջացնում է քայլող շարժիչի շարժում 180 աստիճանով, այնուհետև `-72 աստիճանով` կանխելու հյուրասիրության տեղավորումը:

Խորհուրդ ենք տալիս: