Satura rādītājs:

Projekta padevējs: 14 soļi
Projekta padevējs: 14 soļi

Video: Projekta padevējs: 14 soļi

Video: Projekta padevējs: 14 soļi
Video: Я хотел меч Джедая, а жена пылесос. 2024, Novembris
Anonim
Projekta padevējs
Projekta padevējs

Vai esat kādreiz gribējuši pabarot savus mājdzīvniekus, atrodoties prom no mājām vai vienkārši no sava dīvāna? Ja tā, tad šis projekts ir domāts jums! Project Feeder ir atvērtā koda projekts, kas ļauj barot savus mājdzīvniekus automātiski vai manuāli no tālruņa vai datora. Varat arī sekot tiešraidei un sekot līdzi sava mājdzīvnieka ēšanas uzvedībai.

Pirms sākat!

Šis projekts ir uzdevums koledžai un bija saistīts ar laiku, tāpēc tas ir ļoti "nepabeigts darbs". Tāpēc es apzinos, ka ir lietas, kuras var uzlabot un kuras var atjaunināt nākotnē. Es aicinu jūs būt radošiem, uzlabot un paplašināt šo koncepciju.

Lai sāktu, mēs izskatīsim šī projekta izveidošanas prasības. Jums patiešām būs nepieciešamas tālāk uzskaitītās prasmes un rīki.

Maker prasmes:

  • 3D drukāšana vai piekļuve drukas pakalpojumam
  • Lodēšana
  • Pamatzināšanas par elektroniku

Rīki:

  • 3D printeris
  • Lodāmurs
  • Karstās līmes pistole vai cita līme, kas darbojas ar 3D printera pavedienu savienojumiem
  • Skrūvgrieži

Piegādes

Šī projekta būvniecības kopējās izmaksas ir aptuveni 120 eiro atkarībā no tā, kur jūs pērkat daļu un kādas atlaides saņemat.

Svarīgs:

Dažas detaļas ir apzīmētas ar "Unikāls", tas nozīmē, ka tās ir raksturīgas būves konstrukcijas projektam, un jums ir nepieciešama precīza šīs daļas kopija.

Raspberry Pi 4 modelis B / 2 GB + 16 GB (minimālā prasība) Micro SD karte

Pašlaik Rasberry Pi krājumi ir ļoti ierobežoti, tāpēc būs nepieciešams nedaudz paskatīties.

12V 60W barošanas avota adapteris

www.banggood.com/AC-100-240V-to-DC-12V-5A-…

5,5 mm x 2,1 mm līdzstrāvas barošanas avota ligzda (unikāla)

www.banggood.com/10pcs-5_5-x-2_1mm-DC-Powe…

DC-DC 12V līdz 5V 3A Buck atkāpšanās barošanas modulis (unikāls)

www.banggood.com/LM2596-DC-DC-Voltage-Regu…

42 mm 12 V Nema 17 divfāžu pakāpju motors

www.banggood.com/42mm-12V-Nema-17-Two-Phas…

L298N Dual H tilta modulis

www.banggood.com/Wholesale-L298N-Dual-H-Br…

GY6180 VL6180X Lidojuma attāluma sensors

www.banggood.com/GY6180-VL6180X-Time-Of-Fl…

Infrasarkano staru novēršanas sensors (x3)

www.banggood.com/3Pcs-Infrared-Obstacle-Av…

USB kamera

www.banggood.com/Electronic-Camera-Module-…

Fona apgaismojums 16 × 2 LCD, 8051 mikrokontrolleris I2C

www.hobbyelectronica.nl/product/1602-lcd-d…

Divvirzienu līmeņa pārslēdzējs

www.banggood.com/nl/Two-Channel-IIC-I2C-Lo…

Kopējās vērtības rezistori (10k, 220R, 470R)

www.banggood.com/Wholesale-Geekcreit-600pc…

LED (x2)

Diodes (x2)

12V ON/OFF slēdzis (unikāls)

www.banggood.com/5pcs-12V-Round-Rocker-Tog…

Uzgriežņi: 3x8mm, 3x10mm, 3x12mm

1. darbība: SD kartes mirgošana

Mirgo SD karte
Mirgo SD karte

Lai to izdarītu, SD karte ir jāatspīd ar norādīto attēlu:

thomy.stackstorage.com/s/KbCfVgoU0t8gU3C

Attēls ir aprīkots ar iepriekš izveidotu apache tīmekļa serveri, datu bāzi un kodu saskarnei ar padevēju. Tātad jums nav jādara nekas, kas saistīts ar programmatūras iestatīšanu.

Ja vēlaties apskatīt kodu, visu nepieciešamo kodu varat iegūt no:

github.com/VanIseghemThomas/ProjectFeeder

Pārliecinieties, vai zināt, kā pareizi mirgot SD karti, vai nepārtrauciet procesu, jo tas var izraisīt kartes bojājumu. Kartes mirgošanai es izmantoju programmatūru ar nosaukumu Win32DiskManager. Cita programma, kuru es zinu, darbojas un ir nedaudz lietotājdraudzīgāka, saucas Ethcer. Abi darbojas vienlīdz labi.

2. solis: SSH Pi

SSH Into the Pi
SSH Into the Pi

Kad mirgošana ir pabeigta, tagad varat ievietot SD karti pi un ieslēgt to. Pārliecinieties, vai esat pievienojis savu pi, izmantojot Ethernet kabeli. Tagad jums vajadzētu būt iespējai izveidot savienojumu ar to, izmantojot SSH ar ip 169.254.10.1. Es izmantoju programmu ar nosaukumu PuTTY, bet, ja nevēlaties instalēt programmatūru, komandu uzvednē vienmēr varat ierakstīt šādu komandu:

ssh [email protected]

Tagad atveriet sesiju. Pirmo reizi izveidojot savienojumu, jūs redzēsit brīdinājumu, varat to ignorēt un vienkārši turpināt. Jums tiks lūgts pieteikties kā lietotājs un pēc tam parole šim attēlam, izmantojot šādus akreditācijas datus:

  • Lietotājs: feederpi
  • Parole: Atjaunot1

Lietotājs “pi” ir arī aktīvs, taču jūs nevarēsit tajā pieteikties. Tas ir tāpēc, ka tas ir iestatīts, lai automātiski pierakstītos, ieslēdzot strāvu un palaistu programmu. Tāpēc, piesakoties, jūs saskarsities ar sekojošo:

[sudo] parole feederpi:

Vienkārši nospiediet crtl+c, un jums tagad vajadzētu būt apvalkam.

Tagad ierakstiet šādu:

sudo -i

Tagad jūs esat pieteicies kā root.

3. darbība. Wifi iestatīšana

Wifi iestatīšana
Wifi iestatīšana

Tagad jūs esat pieteicies kā root un varat ierakstīt:

wpa_passphrase "Jūsu SSID" "Jūsu parole" >> /etc/wpa_supplicant/wpa_supplicant.conf

Lai pārbaudītu, vai konfigurācija ir pievienota pareizi, ierakstiet tālāk norādīto. Ja vēlaties, drošības nolūkos varat arī izdzēst vienkāršā teksta paroli, taču, izejot, noteikti saglabājiet izmaiņas.

nano /etc/wpa_supplicant/wpa_supplicant.conf

Tagad jūs varat atsāknēt savu pi, ierakstot:

restartēt tagad

Tagad dodiet pi kādu laiku, lai sāktu un atkal pierakstītos, izmantojot SSH, kā iepriekš, lai redzētu, vai jums ir izveidots savienojums ar ievadīto wifi:

ip a

Zem wlan0 interace jums vajadzētu redzēt kaut ko līdzīgu ar ip adresi, tas nozīmē, ka esat veiksmīgi izveidojis savienojumu ar savu wifi. Vēlāk, kad viss ir savienots, programmatūra to parādīs LCD.

4. solis: detaļu drukāšana

Šim projektam nepieciešamās detaļas ir atrodamas šeit:

www.thingiverse.com/thing:4459996

Visu šo daļu drukāšana prasīs kādu laiku, tāpēc jums būs nepieciešama pacietība.

Šie ir mani izmantotie iestatījumi (PLA):

  • Slāņa augstums: 0,3 mm
  • Drukas ātrums: 50-60 mm/s
  • Sprauslas temperatūra: 200 ° C
  • Gultas temperatūra: 60 ° C

Par to nav daudz ko teikt, izņemot prieku drukāšanai.

5. darbība: detaļu salikšana (ievads)

Detaļu salikšana (ievads)
Detaļu salikšana (ievads)
Detaļu salikšana (ievads)
Detaļu salikšana (ievads)

Labi, tagad mēs turpinām visu salikt. Pirms es visu izskaidrošu, es apskatīšu dažas lietas, kas jāpatur prātā, un tas palīdzēs jums to paveikt.

PADOMS 1:

Es nolēmu visus caurumus izgatavot 2,5 mm, izņemot 3 mm, piemēram, skrūves. Tas ir tāpēc, lai jūs varētu pieskrūvēt vītni, ieskrūvējot skrūves, un nav vajadzīgi uzgriežņi. Ieskrūvēt skrūvi ir diezgan sarežģīti, izmantojiet lodāmuru, lai paplašinātu augšpusi, tas ļaus viegli ievilkt skrūvi un sākt skrūvēšanu.

PADOMS 2:

Ja, tāpat kā es, jums trūkst skrūvju, ieskrūvējiet tikai diagonālos pārus. Tas ietaupa daudz no tiem un darbojas labi.

6. darbība: augšdaļas salikšana (dozators)

Augšdaļas salikšana (dozators)
Augšdaļas salikšana (dozators)
Augšdaļas salikšana (dozators)
Augšdaļas salikšana (dozators)
Augšdaļas salikšana (dozators)
Augšdaļas salikšana (dozators)

Daļas ir izkārtotas, kā parādīts attēlā.

Viņus tur kopā ar tā sauktajām “plāksnēm”. Viena no plāksnēm ir piestiprināta pie jūsu pakāpju motora.

Pārliecinieties, ka skrūvju augšdaļa ir vienā līmenī ar virsmu, pretējā gadījumā padeve tiks bloķēta. Jums vajadzētu izmantot 3x8 mm skrūves šim un "Stepper_offset" modelim starp pakāpienu un plāksnes ārpusi.

Tagad uzvelciet dzirnavas uz pakāpiena, tam vajadzētu turpināties diezgan viegli. Ja nē, varat izmantot vazelīnu.

Pārējais ir diezgan taisni uz priekšu, vienkārši paņemiet skrūvi, kur atrodat caurumu.

7. solis: augšdaļas (konteinera) salikšana

Virsmas (konteinera) salikšana
Virsmas (konteinera) salikšana
Virsmas (konteinera) salikšana
Virsmas (konteinera) salikšana
Virsmas (konteinera) salikšana
Virsmas (konteinera) salikšana

Šeit jūs redzat, kā es izveidoju savu konteineru. Kannu sākotnēji izmanto žāvētiem savienotājelementiem.

Augšpusē vēlaties piestiprināt TOF sensoru, kas tiks izmantots, lai izmērītu, cik daudz pārtikas ir atlicis traukā. Attēlos var redzēt, kā es to pievienoju. Vispirms ar lodāmuru izkausēju tapas caurumus, pēc tam līmēju sensoru vietā ar kādu karstu līmi, kamēr kabeļi ir savienoti.

Tvertnes aizvēršanai ar lodāmuru izveidoju 2 caurumus un ieskrūvēju 2 skrūves. Lai to aizvērtu, var izmantot gumiju, rāvējslēdzēju vai stiepli.

8. solis: apakšas montāža

Apakšdaļas salikšana
Apakšdaļas salikšana
Apakšdaļas salikšana
Apakšdaļas salikšana
Apakšdaļas salikšana
Apakšdaļas salikšana

Attiecībā uz dažādu moduļu izvietojumu, kas atsaucas uz attēliem, tie ir diezgan pašsaprotami. Daļai šo attēlu jau ir elektroinstalācija, pagaidām jums vajadzētu paskatīties garām. Attēli tika uzņemti šī projekta izstrādes vidū. Sākotnēji plānā bija ievietot slodzes mērierīci un nosvērt pārtiku, taču, ņemot vērā to, ka pēdējā mirklī salūza pastiprinātāja pastiprinātājs, man nācās atcelt šo funkciju un aizstāt to ar video tiešraidi, kas arī ir diezgan glīta. Opcija vienmēr ir pieejama, lai pievienotu slodzes šūnu, taču jums būs jāiedziļinās kodā un jārediģē daži materiāli.

9. solis: elektronika, sensori un izpildmehānismi

Elektronika, sensori un izpildmehānismi
Elektronika, sensori un izpildmehānismi
Elektronika, sensori un izpildmehānismi
Elektronika, sensori un izpildmehānismi
Elektronika, sensori un izpildmehānismi
Elektronika, sensori un izpildmehānismi
Elektronika, sensori un izpildmehānismi
Elektronika, sensori un izpildmehānismi

Tagad ir pienācis laiks uzlikt lodāmuru. Esmu sniedzis 2 attēlus par to, kas jums jādara, vienu standarta elektrisko shēmu, vienu vizuālo attēlojumu. Es ļoti iesaku jums izmantot elektrisko shēmu, jo tas, manuprāt, sniedz daudz plašāku ieskatu par to, kā viss darbojas un ir savstarpēji saistīts. Vienīgais iemesls, kāpēc otrs ir šeit, ir tāpēc, ka tas bija obligāti. Iemesls, kāpēc es to saku, ir tāpēc, ka kabeļiem nav daudz vietas, tāpēc jums būs jābūt efektīvam ar GND, +5 V uc vadiem, kas ir atkarīgs no tā, kā vēlaties vadīt kabeļus. Tāpēc nevadiet visu tieši savā starpā, piemēram, shematiski, tas darbosies, bet nederēs.

Slēdzim jūs varat redzēt, ka esmu savienojis visus 3 vadus, jo slēdzim ir iebūvēta gaismas diode, kas norāda, vai barošana ir ieslēgta. 2 nekrāsoti vadi darbojas kā slēdzis, krāsainais vads iet uz GND.

Kopumā šādā secībā es vadīju visu:

  1. Barošanas sadaļa: strāvas ligzda, h-tilts, pastiprinātāja pārveidotājs, slēdzis
  2. Raspberry Pi (lai iegūtu vairāk informācijas, skatiet nākamo soli)
  3. IR sensori
  4. LED
  5. Stepper ieejas
  6. I2C daļa: 3.3V, SDA, SCL

Tas nav būtiski, bet noderīgi, ja tiek izgatavots PCB prototips, lai pielodētu, kā es to darīju.

Neaizmirstiet arī savienot kameru ar pi USB portu.

Svarīgs:

Pirms ķēdes 5V daļas pievienošanas noteikti noregulējiet palielinājuma buck pārveidotāju uz 5V. Pretējā gadījumā jūs varētu riskēt visu apcept. Lai to pielāgotu, pagrieziet potenciometru un apskatiet sprieguma rādījumu ekrānā.

10. solis: elektronika, Raspberry Pi

Elektronika, Raspberry Pi
Elektronika, Raspberry Pi

Sakarā ar shematiskās zīmēšanas programmatūras ierobežojumiem, es nevarēju uzzīmēt, kā pieslēgt aveņu pi.

Ja izmantojat +5 V, jūs varat vienkārši pieslēgt pie 5V tapas, taču tas apiet drošību, piemēram, drošinātāju. Ja paskatās apakšā, jums vajadzētu redzēt dažus spilventiņus, kas apzīmēti kā TPxx, mūsu gadījumā mēs meklējam TP1 vai TP2. Lodējiet savu +5V vadu pie viena no tiem, bet esiet piesardzīgs, lai netiktu savienots ar citām pēdām. Tas, visticamāk, arī anulēs garantiju. Es personīgi esmu mēģinājis to savienot ar abiem testa spilventiņiem un nonācu pie secinājuma, ka tas, iespējams, ir vienkāršākais un drošākais TP2 lietošanā, tā atrodas prom no citiem atklātiem spilventiņiem, un tajā nav daudz pēdu.

Attiecībā uz GND vienkārši paņemiet vienu no tapām uz augšu, piemēram, shematiski, tas ir pilnīgi labi tagad.

11. darbība. Elektronikas pārbaude

Kad viss ir pareizi savienots, ir laba prakse vispirms visu pārbaudīt, pirms visu pilnībā salikt.

Šeit ir kontrolsaraksts:

  • LCD ekrānā tiek parādīta IPV4 adrese
  • Spēj izveidot savienojumu ar IP, izmantojot pārlūkprogrammu
  • Spēj pagriezt pakāpienu, "barojot" un redzēt, kā iedegas gaismas diodes
  • Konteinera statuss tiek nolasīts un atjaunināts
  • Tiešraide no kameras
  • Ēšanas notikumu noteikšana

Problēmu novēršana:

Šeit es uzskaitīju dažas problēmas, ar kurām es nonācu, un kā tās novērst.

- Mans LCD iedegas, bet neko nerāda:

1) Šī raksta rakstīšanas laikā pi ir nepieciešamas apmēram 2 minūtes, lai pilnībā sāknētu, tāpēc jums ir jāpiešķir tam papildu laiks.

2) Jūs neesat pareizi pievienojis LCD. Jūs varat redzēt, vai esat to pareizi pievienojis, čaulā ierakstot šādu komandu:

sudo i2cdetect -y 1

Tam ir jāatgriež 2 adreses: 0x27 (= LCD) un 0x29 (= TOF sensors). Ja 0x27 neparādās, jums jāpārbauda LCD vadi. Ja abi neparādās, jums jāpārbauda SDA un SCL kontaktu vadi. Piem. pārbaudiet, vai nejauši nemainījāt abus. Sliktākajā gadījumā jūs izdarījāt kaut ko nepareizi ar 2 atsevišķām sastāvdaļām vai kaut kas salūza.

- Mans LCD ekrāns ir iestrēdzis sadaļā "Savienojuma izveide ar WiFi"

Tas nozīmē, ka jūsu pi ir iestrēdzis, mēģinot izveidot savienojumu ar kādu no tīkliem, ar kuriem konfigurējāt savienojumu. Tas nozīmē, ka vai nu neesat piekļuves punkta diapazonā, vai arī kaut ko darījāt nepareizi, konfigurējot, piem. drukas kļūda. Tādā gadījumā atgriezieties sadaļā "WiFi iestatīšana" un vēlreiz to apskatiet.

Programmatūra ir arī izveidota, lai izveidotu savienojumu ar mājas tīkliem ar IP adresi, kas sākas ar "192.168". Ja jūsu tīkls ir iestatīts ar citu privātu diapazonu, piemēram, "10.0" vai "172.16", jums būs jāiet uz /home/pi/project/main.py un funkcijā get_ips () jāmaina: ja "192.168" ip, ja ip "Šeit ir jūsu privātais diapazons".

- Mans LCD displejs parāda ip, bet es nevaru izveidot savienojumu:

1) Pārliecinieties, ka izveidojat savienojumu ar 192.168. X. X ip, bet otrs ip 169.254.10.1 vienmēr ir konfigurēts, lai izveidotu savienojumu tieši ar datoru, izmantojot Ethernet. Tas nedarbosies, ja neesat pievienots elektrotīklam.

2) Pārliecinieties, vai atrodaties tajā pašā tīklā, vai arī esat iespējojis portu pāradresāciju savā tīklā, ja vēlaties piekļūt padevējam no tā tīkla.

- Steperis satricina un nepagriežas:

Tas nozīmē, ka neesat pareizi pievienojis duālā H-tilta ieejas vai izejas. Mēģiniet tos apmainīt, līdz tas darbojas.

12. solis: pabeigšana

Pabeigšana
Pabeigšana
Pabeigšana
Pabeigšana
Pabeigšana
Pabeigšana
Pabeigšana
Pabeigšana

Tagad jūs esat sapratuši, kā visu palaist, ir pienācis laiks visu salikt kopā. Man bija jāsaliek 2 daļas kopā ar lenti, jo caurumu dizains nav pietiekami izturīgs, lai noturētu spriedzi, un tas man saplaisāja. Šī ir viena būtiska lieta, kas nākotnē jāuzlabo. Tīrāka iespēja ir vienkārši salīmēt abas daļas kopā, taču tā var būt problēma, ja kaut kas iekšā salūst un vēlaties piekļūt iekšpusei. Tāpēc es devos ar veco labo elektrisko lenti.

Dodoties uz vietni, jums vajadzētu sagaidīt informācijas paneli, kurā varat veikt tādas darbības kā manuāla barošana, pārbaudīt statusu, apskatīt datus un pievienot sākotnējos iestatījumus.

13. darbība. Papildus: Chrome paplašinājums

Papildus: Chrome paplašinājums
Papildus: Chrome paplašinājums
Papildus: Chrome paplašinājums
Papildus: Chrome paplašinājums
Papildus: Chrome paplašinājums
Papildus: Chrome paplašinājums

Ja nevēlaties pārlūkot informācijas paneli un vēlaties ātri pārbaudīt statusu vai plūsmu, varat izmantot Chrome paplašinājumu. Tā kā tas neatrodas oficiālajā Chrome interneta veikalā, tas būs jāielādē tā, it kā jūs izstrādātu šādu paketi.

Vispirms noteikti lejupielādējiet mapi Padevēja paplašinājums no direktorija github:

github.com/VanIseghemThomas/ProjectFeeder

Dodieties uz šādu URL:

chrome: // extensions/

Kad esat tur, iespējojiet izstrādātāja režīmu un ielādējiet paplašinājuma mapi. Tagad tam vajadzētu parādīties kā paplašinājumam.

Ja tas nav redzams jūsu Chrome joslā, to varat atrast Chrome izvēlnē.

14. darbība: programmatūra

Programmatūra
Programmatūra

Ja jums patīk rūpēties par programmatūru vai kāda iemesla dēļ nepieciešama jauna faila kopija, visi nepieciešamie faili ir atrodami manis izveidotajā GitHub krātuvē:

Es arī nodrošināju datu bāzei EER shēmu, ja jums šķiet, ka vēlaties pievienot funkcijas API. Datu bāzes izgāztuvi var atrast arī GitHub repozitorijā. Viss aizmugures kods ir rakstīts Python. Maršrutēšanai tiek izmantota kolba, bet tīmekļa ligzdām - Socket.io.

Ieteicams: