Mündəricat:

Avtomatik toyuq yemi: 11 addım
Avtomatik toyuq yemi: 11 addım

Video: Avtomatik toyuq yemi: 11 addım

Video: Avtomatik toyuq yemi: 11 addım
Video: Toyuğun dərisinin altında bu varsa... #tavuk #toyuq #elçinəlibəyli #elinsozu #elingözü #qida 2024, Iyul
Anonim
Avtomatik Toyuq Bəsləyicisi
Avtomatik Toyuq Bəsləyicisi

Bəlkə də artıq bu hissləri yaşamısınız, işinizə gedirsiniz və sonra toyuqlarınıza bir az səhər yeməyi verməyi necə unutduğunuzu düşünürsünüz. Düşünürəm ki, ehtimal ki, avtomatik toyuq yemindən istifadə edə bilərsiniz! Bu IoT cihazı ilə toyuqlarınız həmişə səhər yeməyini vaxtında edəcək!

Bu möhtəşəm şeyi qurmağa başlamazdan əvvəl əvvəlcə özümü təqdim edəcəyəm. Mən Bertil Vandekerkhove (qəribə bir ad olduğunu bilirəm, ancaq Google Translate -ə qulaq asın. Bu işi demək olar ki mükəmməl edir) və Howest -in NMCT -də oxuyan tələbəsiyəm! Bu təlimat, ilk illərimin son layihəsini necə quracağımla bağlı addım-addım bələdçidir. Ümid edirəm zövq alacaqsınız və başlayaq!

Addım 1: Lazımi materialları əldə edin

Lazımi materialların alınması
Lazımi materialların alınması

Yuxarıdakı siyahıda bu layihə üçün lazım olan bütün materialları görə bilərsiniz.

Addım 2: Korpusun qurulması

Korpusun qurulması
Korpusun qurulması
Korpusun qurulması
Korpusun qurulması
Korpusun qurulması
Korpusun qurulması
Korpusun qurulması
Korpusun qurulması

Həqiqətən korpusu qurmadan əvvəl onu tikmək üçün bəzi materiallar almalıyıq. 8 mm MDF istifadə edirəm, çünki olduqca ucuz və istifadəsi asandır. Bunu yenidən qurmaq istəsəniz, istədiyiniz ağac növünü seçə və hətta metaldan hazırlaya bilərsiniz. Ancaq ağacın qalınlığına görə ölçmələrin düzgün olduğundan əmin olun.

Ehtiyacınız olan taxta təbəqələr (sm):

  • 2 x (100, 8 x 44, 6) - yan panellər
  • 1 x (50, 8 x 100) - arxa panel
  • 1 x (50 x 80) - ön panel
  • 1 x (50 x 40) - daxili ön panel
  • 1 x (51, 6 x 50) - üst panel
  • 2 x (3.6 x 8) - daha kiçik yan panellər
  • 1 x (8 x 51, 6) - daha kiçik ön panel
  • 1 x (11, 4 x 49, 8) - tərəzi üçün taxta
  • 1 x (50 x 20) - raf üçün ön panel
  • 2 x (50 x 25) - huni
  • 2 x (30 x 35) - huni
  • 1 x (50 x 38) - rəf üçün üst panel
  • 1 x (18 x 5) - motor üçün raf

Sonra qida slaydına ehtiyacımız olacaq (sm):

  • 1 x (30 x 16)
  • 2 x (20 x 16)
  • 1 x (30 x 21, 6)

Yan panellərdən başlayırıq, hər panelə iki kömək bloku bağlayırıq. Panelin yuxarısında yardım blokunu yan tərəfdən 13 sm, alt tərəfdən isə 8 sm məsafədə yerləşdirirsiniz. Digər yan panel üçün bunu təkrarlayın

Bundan sonra arxa paneli götürün və dörd küncdə bir yardım bloku əlavə edin.

İndi yan panelləri və arxa paneli götürün və 3, 5 mm vintlərdən istifadə edərək vidalayın, sonra alt köməkçi blokdan istifadə edərək rəf panellərini vidalayın. Sonra daxili ön paneli götürün və üst kömək bloklarına vidalayın. İndi hər şeyi düzgün etdinizsə, şəkil 3 kimi görünməlidir.

Bundan sonra yeməyin huni edəcəyik. Doğru panelləri üçbucaq halına gətirin, 50x25 panellər 50x24 üçbucaqlar və 30x35 panellər 30x32 üçbucaqlar olmalıdır. Üçbucaqların bir nöqtədə bitmədiyinə əmin olun, lakin tərəfi 2 sm -dir.

Huni etmək üçün parçaları bir -birinin yanına qoyun və bir neçə yapışan bantla bağlayın.

Huni qəfəsə bağlamaq üçün, şəkil 7 -də göstərildiyi kimi içəridən 22 sm yuxarıdan bir neçə köməkçi blok bağlayın. Bundan sonra huni yerə qoyun və kömək bloklarına vidalayın. Boşluqları bir yapışqan bantla doldura bilərsiniz.

Sonra motor rəfini, pvc borusunu və motorun özünü götürürsünüz. Pvc borusunun çuxurunu huni altına yerləşdirin və bir az fermuarla rafa bağlayın, motor üçün də eyni şeyi edin. Bundan sonra rəfi arxa panelə bağlamaq üçün köməkçi bloklardan istifadə edin.

Bundan sonra yeməkləri sürüşdürmək üçün panelləri götürün və arxa panelini motor rəfinə, alt lövhəni isə kasaya bağlayın.

İndi böyük ön paneli götürün və onu bəzi menteşələrlə korpusa bağlayın və maqnit kilidi quraşdırın, üst panel üçün də eyni şeyi edin.

Addım 3: Ölçü hazırlayın

Ölçü hazırlayın
Ölçü hazırlayın
Ölçü hazırlayın
Ölçü hazırlayın

Qidalanma otağında nə qədər qida qaldığını ölçmək üçün yük hücrəsindən hazırlanmış bir tərəziyə ehtiyacımız var. Yük hücrəsini götürün və kiçik bir taxta parçasına vidalayın, sonra taxtanı götürün və bəzi boltlar və qoz -fındıqlarla yük hücrəsinin digər tərəfinə yapışdırın. Mərkəzləşdirilmiş və düzəldilmiş olduğundan əmin olun. Bundan sonra tərəzi korpusa yerləşdirin və ətrafındakı daha kiçik yan və ön paneli istifadə edin.

Addım 4: Raspberry PI (RPi) qurmaq

Rpi istifadə etmək üçün RPi üçün bir OS lazımdır, mən Rapsbian istifadə etməyi seçdim. Veb saytdan faylı yükləyin və sonra SD karta yükləmək üçün Etcher istifadə edin. Bunu etdikdən sonra SC kartına gedin və "cmdline.txt" faylını axtarın və sətrin sonuna əlavə edin: "ip = 169.254.10.1". Sonra Putty-dən istifadə edərək, Host Adında Putty-ə 169.254.10.1 yazaraq Open düyməsini basaraq RPi ilə SSH bağlantısı qura bilərsiniz. RPi -nizi ilk dəfə açdığınız zaman növbəti etimadnamələri ilə daxil olmalısınız: istifadəçi adı = pi və parol = moruq.

Ev şəbəkəsinə qoşulmaq üçün aşağıdakı kodu yazmalısınız:

sudo -i

echo "parol" | wpa_passphrase "SSID" >> /etc/wpa_supplicant/wpa_supplicant.conf

Sudo nano /etc/wpa_supplicant/wpa_supplicant.conf yazın və şəbəkənizin orada olub olmadığını yoxlayın.

sudo wpa_cli

wlan0 interfeysi

tarama

yenidən qurmaq

Wpa_cli -ni çıxın və ya Ctrl+D ilə bağlayın.

Aşağıdakılarla gizli bir IP ünvanınız olub olmadığını yoxlayın.

ip addr show dev wlan0

Bağlantınızı yekunlaşdırmaq üçün:

wget google.com

Addım 5: Dövrə qurun

Dövr qurmaq
Dövr qurmaq
Dövr qurmaq
Dövr qurmaq

Yuxarıdakı şəkillərdə çap lövhələrinin düzülüşünü görə bilərsiniz, bunları düzəltdiyiniz zaman heç bir şeyin qısa olmadığından əmin olun. T-cobbler, DRV8825 və HX711-i qadın başlıqlarına taxmağı seçdim, buna görə lazım olsa dəyişdirə bilərsiniz, amma bunu etmək məcburiyyətində deyilsiniz.

Addım 6: HX711

HX711
HX711

Yük hüceyrəsinin ölçüsünü əldə etmək üçün bir çəki sensoru istifadə etməlisiniz. HX711 istifadə edirəm.

HX711 üçün bağlantılar:

  • E+: qırmızı tel.
  • E-: qara tel.
  • A+: ağ tel.
  • A-: yaşıl tel.
  • VCC: 5V.
  • SCK: GPIO22.
  • DOUT: GPIO23.
  • GND: GND.

Hər şeyi bağladıqdan sonra əvvəlcə ölçəni kalibr etməlisiniz. HX711 sinifini və sonra aşağıdakı kodu istifadə edin:

hx = HX711 (23, 24) hx.set_reading_format ("LSB", "MSB") #hx.set_reference_unit (327) -> bu şərhdə olmalıdır hx.reset () hx.tare () val = hx.get_weight (5) yuxu (0.5) hx.power_down () hx.power_up () çap (val)

İndi kod işləsin və miqyasda bir şey qoysun. Bunun dəqiq çəkisini bildiyinizə əmin olun. 20 -yə yaxın dəyər əldə edənə qədər gözləyin və sonra ortalamasını götürün. Sonra bu nömrəni istifadə etdiyiniz maddənin ağırlığına bölün. İndi bu nömrəni hx.set_reference_unit (nömrə) ilə doldurun və şərhdən çıxarın. Ölçüyə fərqli bir obyekt qoyaraq sınayın.

Addım 7: Step Motor

Step Motor
Step Motor

Aydındır ki, bütün sistemin işləməsi üçün bəzi elektronikaya ehtiyacımız var. Step motorunu idarə etmək üçün bir step sürücüyə ehtiyacımız var, DRV8825'i seçdim.

DRV8825 ilə əlaqələr:

  • VMOT: +12V (DC-DC çeviricisindən gəlir).
  • GND: GND (DC-DC çeviricisindən gəlir).

Bunların arasına bir kondansatör yerləşdirdiyinizə əmin olun.

  • 2B: qırmızı addım tel.
  • 2A: mavi addım tel.
  • 1B: qara addım tel.
  • 1A: yaşıl step tel.
  • HATA: bunu kabelsiz buraxa bilərsiniz, ancaq 5V -ə asa bilərsiniz.
  • GND: GDN (Raspberry PI (RPi) -dən gəlir).
  • ETKİN: telə ehtiyac yoxdur.
  • MS1-MS2-MS3: telə ehtiyac yoxdur.
  • SIFIRLA - YATA: bir -birinizə, sonra 3, 3V -ə bağlayın.
  • ADIM: GPIO20.
  • DIR: GPIO21.

Hər şeyi bağlamadan əvvəl, VMOT+GND, GND-ni Rpi, RESET-SLEEP və STEP-DIR-ə əlavə edin. Əvvəlcə step sürücüsü üçün Vref qurmalıyıq. Vref, step motora lazım olan cərəyanın yarısı olmalıdır. Bu motor üçün təxminən 600 mV -dir, gərginliyi və kiçik vintləri ölçün və təxminən 600 mV -ə qədər çevirin. Bundan sonra digər telləri bağlaya bilərsiniz.

Addım 8: 3D Çap Turbini

3D Çap Turbini
3D Çap Turbini

Yeməyi su anbarından qidalanma yerinə aparmaq üçün bu turbinə ehtiyacınız olacaq. 3D printerə çıxışı olmayan insanlar üçün hər zaman belə bir 3D hub istifadə edə bilərsiniz -> HUB

Addım 9: MySQL -in quraşdırılması

Sistemdən məlumatları saxlamaq üçün ona inteqrasiya edilmiş bir verilənlər bazası var. Verilənlər bazasının işləməsinə icazə vermək üçün əvvəlcə RPi -də MySQL qurmalıyıq.

Putty bağlantınıza aşağıdakı əmrləri daxil edin:

sudo apt yeniləmə

sudo apt install -y python3-mysqldb mariadb-server uwsgi nginx uwsgi-plugin-python3

MariaDB -nin işlədiyini yoxlayın:

sudo systemctl status mysql

Bundan sonra, aşağıdakı əmrlərlə verilənlər bazamıza bir neçə istifadəçi daxil edəcəyik:

CREATE USER 'project-admin'@'localhost' 'adminpassword' tərəfindən müəyyən edilir;

İstifadəçi 'layihə-veb'@'localhost' yarat 'veb parol ilə' TANIŞDIR;

DATABASE layihəsi yaradın;

Layihədə BÜTÜN İSTİFADƏLƏR VERİN.* QRANT SEÇİMİ İLƏ 'project-admin'@'localhost' a;

GRANT SELECT, INSERT, UPDATE, DELETE ON project.* TO 'project-web'@'localhost';

YENİLƏNİB mysql.user SET Super_Priv = 'Y' WHERE user = 'project-web' AND host = '%';

FLUSH İSTİFADƏLƏRİ;

İndi verilənlər bazası mövcuddur ki, verilənlər bazasını lazımi cədvəllər və saxlanılan prosedurlar ilə dolduraq.

Birinci növ:

sudo -i

daha sonra:

mariadb

bundan sonra kodu Projectdb.sql -də mariadb -ə kopyalayın.

Bu işləyirsə, digər üç.sql faylı üçün də eyni şeyi edirsiniz və bununla bitirirsiniz:

FLUSH İSTİFADƏLƏRİ;

Hər şey qaydasındadırsa, verilənlər bazanız artıq hazırdır!

PS: Bir şey işləmirsə, unutmayın … Google sizin dostunuzdur;-)!

Addım 10: Kodun quraşdırılması

İndi nəhayət kodu RPi -yə quraşdıra bilərik, kodu github -dan yükləyə və Pycharm istifadə edərək RPi -yə quraşdıra bilərik. Bunun necə ediləcəyi ilə bağlı gözəl bir dərs tapa bilərsiniz -> təlimat.

Kodu buradan əldə edin: Kod

Addım 11: İstifadə qaydası

  1. İki fişi yerə qoyun.
  2. Veb serverinin başlamasını bir az gözləyin.
  3. RPi -nin IP -ni brauzerə daxil edin.
  4. 'Ev' ekranında ölçülmüş qidaların bir cədvəlini görə bilərsiniz.
  5. 'Qidalanma vaxtları' ekranında qidalanma vaxtlarını təyin edə bilərsiniz.
  6. 'Tarix' səhifəsində depozit tarixçəsinə baxa bilərsiniz.

Tövsiyə: