Mündəricat:

Avtomatik İt Dağıtıcı: 10 addım
Avtomatik İt Dağıtıcı: 10 addım

Video: Avtomatik İt Dağıtıcı: 10 addım

Video: Avtomatik İt Dağıtıcı: 10 addım
Video: ARABALARIN 10 GİZLİ ÖZELLİĞİ! 2024, Iyul
Anonim
Avtomatik İt Dağıtıcı
Avtomatik İt Dağıtıcı
Avtomatik İt Dağıtıcı
Avtomatik İt Dağıtıcı
Avtomatik İt Dağıtıcı
Avtomatik İt Dağıtıcı

Layihəmlə köpeğinizi evdə tək buraxdığınızda heç vaxt yeməksiz qalacağına əminəm.

Avtomatik qidalanma mısır gevreği dispenserindən "sındırılacaq". Dağıtıcı, it yemi üçün su anbarıdır, altdakı təkər beşik demək olar ki, boş olduqda və it kifayət qədər yaxın olduqda yeməyi avtomatik olaraq atan servo mühərrikə qoşulacaq. Dağıtıcının altındakı köpək yeməyini yatağa gözəl bir şəkildə atacaq bir PVC boru bağlanacaq. Bu səbəbdən bu layihədə 2 -si sinifdə olmayan və 1 -i aktuator olan 3 sensor olacaq.

İlk sensor RFID oxuyucusudur. Bu sensor köpəyin beşiyə yaxınlaşdığını yoxlayır. RFID itin yaxasına daxil ediləcək. Bu sensor itin kifayət qədər yaxın olduğunu fərq edərsə, ikinci sensora bir siqnal ötürəcək. İkinci sensor, beşikdə olan yeməyi ölçən çəki sensoru (sinifdə əhatə olunmur), əgər bu sensor çəkinin çox aşağı olduğunu algılarsa, servo motora yeməyi beşiyə atacaq bir siqnal göndərəcək (RFID və çəki sensoru ilə). Bir sözlə, it yalnız beşiyə kifayət qədər yaxın olduqda və beşik demək olar ki, boş qaldıqda əlavə yemək alır. Əlbəttə ki, veb server vasitəsilə özünüzü təyin edə biləcəyiniz bir məhdudiyyət dəsti də var; itin gündə çox yemək almaması üçün. Üçüncü sensor, beşik ətrafında çox qaranlıq olduqda, LED projektorunu yandıran bir işıq sensoru. Aktuator, buna görə də dispenserdəki təkərə bağlı bir servo motor olacaq.

Bu layihə itlər üçündür, digər kiçik ev heyvanları üçün də istifadə edə bilərsiniz.

Təchizat

Moruq Pi 3

Yük hücrəsi (1KG)

HX711 yük hüceyrə gücləndiricisi

Yemək qabı

Taxıl paylayıcı

Taxta (+ vintlər və tornavida)

İşıq sensoru

Led

RFID oxucu rc522

Jumper telləri

16*2 LCD (ekran)

Servo motor

5V güc adapteri

Rezistor 470 Ohm

PVC boru

Breadbord

Potensialiometr

Gördüm

Zımpara kağızı

Silikon silah

Addım 1: Pi qurulması

Pi Quraşdırma
Pi Quraşdırma

Qurmaq

Başlamaq üçün əvvəlcə Pi -ni qurmalıyıq.

İki şeyə ehtiyacınız olacaq:

- Win32 Disk Görüntüleyicisi

- Raspbian OS görüntüsü

ZIP faylını yükləyin və istədiyiniz yerə çıxarın.

Quraşdırma

1. Qovluq işarəsi vasitəsilə şəklinizi seçin

2. Açılan menyudan SD kartınızı seçin

3. Yazın düyməsini basın

İndi Pi -yə daxil ola biləcəyimiz üçün bəzi parametrlərlə əlavə bir iş görməliyik.

1. SD kartın açılış qovluğuna gedin

2. "cmdline.txt" faylını açın

3. İp əlavə edin = 169.254.10.1 Mətnin uzun xəttinin sonunda boşluqla ayrılmış (eyni sətirdə).

4. Faylı qeyd edin.

5. Eyni qovluqda uzantısı olmayan ssh adlı bir fayl yaradın

İndi SD kartı çıxarıb Pi -yə qoya bilərsiniz.

Bağlanır

İndi proqramı qurmalıyıq.

Əvvəlcə bir ucunu masaüstünüzdə/dizüstü kompüterinizdə, digər ucunuzda isə LAN kabelini bağlayın.

İndi Raspberry Pi -ni yükləyin.

1. https://www.putty.org/ saytından Putty quraşdırın

2. IP qutusuna 169.254.10.1 daxil edin.

3. SSH -nin seçildiyindən və 22 portunun doldurulduğundan əmin olun.

4. Aç düyməsini basın

5. İstifadəçi adını daxil edin: pi

6. Şifrəni daxil edin: moruq

Raspi-konfiqurasiya

Raspi-config yardım proqramını açın:

sudo raspi-config

İnterfeyslər kateqoriyasında aşağıdakı variantları aktiv edin

- 1 telli

- SPI

Yükləmə seçimləri kateqoriyasında aşağıdakı variantları deaktiv edin

- Sıçrayış ekranı

Nəhayət, açılış seçimləri kateqoriyasındakı Masaüstü/CLI parametrlərini Masaüstü Avtomatlaşdırma olaraq təyin edin.

WiFi

Köpək yemi üçün bir wifi bağlantımız olmalıdır, buna görə də WiFi məlumatlarınızın yaxın olduğundan əmin olun.

1. Kök rejiminə keçin

sudo -i

2. Bu xətti yapışdırın, ancaq SSID və Şifrənin doldurulduğundan əmin olun

wpa_passphrase "SSID" "PAROLA" >> /etc/wpa_supplicant/wpa_supplicant.conf

3. WPA Müştəri daxil edin.

Wpa_cli

4. Arayüzü seçin

İnterfeys wlan0

5. Konfiqurasiyanı yenidən yükləyin

Yenidən qurun

IP a yazaraq və WLAN0 interfeyslərində bir IP -nin olub olmadığını yoxlayaraq düzgün bağlı olduğunuzdan əmin olun.

Paketlər

İndi İnternetə qoşulduqdan sonra bəzi paketlər quraşdırmalıyıq.

Əvvəlcə son siyahı üçün paket siyahılarını yeniləməliyik.

sudo apt yeniləmə

Python

Raspbianı Python 3 istifadə etməyə məcbur edəcəyik

update-alternatives-install/usr/bin/python python /usr/bin/python2.7 1

update-alternatives-install/usr/bin/python python/usr/bin/python3 2

MariaDB

Verilənlər bazasını qurmaq üçün aşağıdakı sətri yapışdırın.

sudo apt install mariadb-server

Sonra quraşdırmamızı təmin etməliyik.

mysql_secure_installation

Bizdən cari kök şifrənizi istəyəcək.

Daha sonra y istədiyimiz üçün y -də bir kök parol növü istəməyimizi soruşur.

Növbəti suallar üçün Y daxil edin.

Sonra güzgü üçün istifadə edə biləcəyimiz bir istifadəçi yaradacağıq.

Bunu etməklə mysql qabığına daxil olun:

- Özümüzü kök salmaq üçün qaldırırıq

Sudo -i

- MySQL qabığına daxil olun

Mysql

- Öz istifadəçi adınızla və eyni ilə dəyişdirin

*. * üzərindəki bütün imtiyazları '' ilə təyin olunan ''@'%' 'ə verin;

- '. ilə müəyyən edilmiş' '@'%'işarəsinə *. * üzərindəki bütün imtiyazları verin;

Sonra verilənlər bazamızı əlavə edəcəyik.

Apache veb server

Veb serveri qurmaq üçün aşağıdakı xətti işlədin.

sudo apt install apache2 -y

Python paketləri

Bu paketləri quraşdıracağıq

- Şüşə

- Flask-Cors

- Flask-MySQL

- Flask-SocketIO

- PyMySQL

- Gevent

- Gevent-internet yuvası

-

- Python yuvası

- İstək

- Wsaccel

- Ujson

Etməklə

pip quraşdırma Flask Flask-Cors Flask-MySQL Flask-SocketIO PyMySQL gevent gevent-websocket httplib2 python-socketio wsaccel ujson mfrc522 hx711 Adafruit-CharLCD

Addım 2: Led və İşıq Sensoru

Led və İşıq Sensoru
Led və İşıq Sensoru
Led və İşıq Sensoru
Led və İşıq Sensoru

Led bağlamaq

  1. S -> GPIO15 (rxd0)
  2. + -> 5V
  3. G -> Rezistor 470 ohm və GND

İşıq sensoru bağlanır

  1. Çıxış -> GPIO17
  2. VCC -> 3.3V
  3. GND -> GND

İndi led və işıq sensorumuzun bu kiçik skriptlə işlədiyini yoxlaya bilərik

GPIO GPIO.setmode (GPIO. BCM) olaraq RPi. GPIO idxal edin

GPIO. quraşdırma (15, GPIO. OUT)

GPIO. quraşdırma (17, GPIO. IN)

cəhd edin: True isə:

əgər GPIO.input (17) == 0:

GPIO.çıxış (15, GPIO. HIGH)

əgər GPIO.input (17) == 1:

GPIO.çıxış (15, GPIO. LOW)

KeyboardInterrupt istisna olmaqla: GPIO.cleanup ()

Addım 3: Servo Motor

Servo Motor
Servo Motor

Servo motorun bağlanması

  1. Çıxış -> GPIO18
  2. VCC -> 5V
  3. GND -> GND

İndi LED və işıq sensorumuzun bu kiçik skriptlə işlədiyini yoxlaya bilərik

GPIOimport zamanı olaraq RPi. GPIO idxal edin

GPIO.setmode (GPIO. BCM)

GPIO.setup (18, GPIO. OUT)

p = GPIO. PWM (18, 50)

s.başla (12.5)

cəhd edin:

Doğru halda:

p. DəyişdirDutyCycle (12.5)

vaxt.yuxu (1)

p. DəyişdirDutyCycle (2.5)

vaxt.yuxu (1)

KeyboardInterrupt istisna olmaqla:

p.stop ()

GPIO.cleanup ()

Addım 4: RFID Reader RC522

RFID oxucu RC522
RFID oxucu RC522

RFID bağlanır

  1. RST -> GPIO6
  2. MISO -> GPIO9 (MISO)
  3. MOSI -> GPIO10 (MOSI)
  4. SCK -> GPIO11 (SPISCLK)
  5. SDA -> GPIO8 (SPICS0)
  6. 3.3V -> 3.3V
  7. GND -> GND

İndi RFID oxuyucumuzun bu kiçik skriptlə işlədiyini yoxlaya bilərik

GPO olaraq RPi. GPIO idxal edin

mfrc522 idxalından SimpleMFRC522

oxucu = SimpleMFRC522 ()

mətn = giriş ('Yeni məlumatlar:')

çap et ("İndi yazmaq üçün etiketinizi qoyun")

oxucu. yaz (mətn)

çap ("Yazılı")

Addım 5: Cell HX711 yükləyin

Cell HX711 yükləyin
Cell HX711 yükləyin

Yük hüceyrəsini HX711 sürücü lövhəsinə bağlamaq

  1. Qırmızı -> E+
  2. Qara -> E-
  3. Yaşıl -> A+
  4. Ağ -> A-

Yük hüceyrəsinin bağlanması

  1. DT-> GPIO27
  2. SCK -> GPIO22
  3. QIRMIZI -> 3.3V
  4. GND -> GND

İndi yük hüceyrəmizin bu kiçik skriptlə işlədiyini yoxlaya bilərik

GPIO olaraq RPi. GPIO idxal edin klasses. HX711 idxal HX711 -dən vaxt idxal edin.

def cleanAndExit (): print ("Təmizləmə …") GPIO.cleanup () çap ("Əlvida!") sys.exit ()

hx = HX711 (22, 27)

hx.set_reading_format ("LSB", "MSB")

hx.set_reference_unit (2167)

hx.reset ()

hx.tare ()

Doğru halda:

cəhd edin:

val = max (0, int (hx.get_weight (5)))

çap (val)

hx.power_down ()

hx.power_up ()

vaxt.yuxu (0.5)

(KeyboardInterrupt, SystemExit) istisna olmaqla: cleanAndExit ()

Addım 6: LCD (16*2)

LCD (16*2)
LCD (16*2)

LCD -nin bağlanması

  1. RS -> GPIO21
  2. RW -> GND
  3. E-> GPIO20
  4. D0 -> GPIO16
  5. D1 -> GPIO12
  6. D2 -> GPIO6
  7. D3 -> GPIO24
  8. D4 -> GPIO23
  9. D5 -> GPIO26
  10. D6 -> GPIO19
  11. D7 -> GPIO13
  12. VSS -> GND
  13. VDD -> 5V
  14. A -> 5V
  15. K -> GND
  16. V0 -> orta potensial pin

İndi LCD ekranımızın bu kiçik skriptlə işlədiyini yoxlaya bilərik

Adafruit_CharLCD -ni LCDlcd_rs = 21 olaraq idxal edin

lcd_en = 20

lcd_d4 = 23

lcd_d5 = 26

lcd_d6 = 19

lcd_d7 = 13

lcd_cütbələri = 16

lcd_rows = 2

lcd = LCD. Adafruit_CharLCD (lcd_rs, lcd_en, lcd_d4, lcd_d5, lcd_d6, lcd_d7, lcd_columns, lcd_rows)

lcd.message ('169.254.10.1')

Addım 7: Tam Dövrə

Tam Dövrə
Tam Dövrə

burada bütün dövrənin düzgün olub olmadığını yenidən yoxlaya bilərsiniz

Addım 8: Davanın başlanması

Davanın başlanğıcı
Davanın başlanğıcı
Davanın başlanğıcı
Davanın başlanğıcı
Davanın başlanğıcı
Davanın başlanğıcı
Davanın başlanğıcı
Davanın başlanğıcı

Köpək yeməyi üçün su anbarı olaraq qarğıdalı dənəciyi dispenserindən istifadə etdim

Dağıtıcıdakı təkəri servo motoruma bağladım

İndi servo motorumla təkəri idarə edə bilərəm və yeməyi su anbarından ata bilərəm

Su anbarının sonunda yeməyi yatağa gözəl bir şəkildə atan bir PVC boru bağlanmışdır

Qutu kimi taxtadan istifadə edirəm

Addım 9: Bir yerdə qoyun

Birlikdə qoyulması
Birlikdə qoyulması
Birlikdə qoyulması
Birlikdə qoyulması
Birlikdə qoyulması
Birlikdə qoyulması

Addım 10: Veb sayt

Veb səhifə
Veb səhifə
Veb səhifə
Veb səhifə
Veb səhifə
Veb səhifə
Veb səhifə
Veb səhifə

İndi maşınımız işləyir, veb saytı pi üzərinə götürməliyik. İndi hər şey hazırdır və saytın necə işlədiyinə dair bir neçə təlimat verilmişdir.

Bir HDMI kabelini bağlayaraq Wi -Fi -ya qoşula və bu şəkildə aktivləşdirə bilərsiniz

İlk səhifə ana səhifədir, burada görə bilərsiniz:

  • İşıq haqqında real vaxt məlumat
  • Qabda qalan yeməklər haqqında real vaxt məlumatı
  • Yeməyi ata bilərsiniz
  • Köpək haqqında məlumat

İkinci səhifə redaktə səhifəsidir, burada redaktə edə bilərsiniz:

  • ev heyvanınızın adı
  • ev heyvanınızın yaşı
  • ev heyvanınızın çəkisi
  • ev heyvanınızın şəkli

Üçüncü səhifə tarix səhifəsidir, burada görə bilərsiniz:

  • işıq yananda
  • it yeyəndə
  • yemək düşəndə

Dördüncü səhifə, ayarlar səhifəsidir, burada redaktə edə bilərsiniz:

  • Yeməyin düşməsi lazım olduqda
  • düşəcək yemək miqdarı
  • maksimum yemək/gün
  • yüngül

Tövsiyə: