Mündəricat:
2025 Müəllif: John Day | [email protected]. Son dəyişdirildi: 2025-01-23 12:54
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ı
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 bağlamaq
- S -> GPIO15 (rxd0)
- + -> 5V
- G -> Rezistor 470 ohm və GND
İşıq sensoru bağlanır
- Çıxış -> GPIO17
- VCC -> 3.3V
- 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 motorun bağlanması
- Çıxış -> GPIO18
- VCC -> 5V
- 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 bağlanır
- RST -> GPIO6
- MISO -> GPIO9 (MISO)
- MOSI -> GPIO10 (MOSI)
- SCK -> GPIO11 (SPISCLK)
- SDA -> GPIO8 (SPICS0)
- 3.3V -> 3.3V
- 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
Yük hüceyrəsini HX711 sürücü lövhəsinə bağlamaq
- Qırmızı -> E+
- Qara -> E-
- Yaşıl -> A+
- Ağ -> A-
Yük hüceyrəsinin bağlanması
- DT-> GPIO27
- SCK -> GPIO22
- QIRMIZI -> 3.3V
- 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 -nin bağlanması
- RS -> GPIO21
- RW -> GND
- E-> GPIO20
- D0 -> GPIO16
- D1 -> GPIO12
- D2 -> GPIO6
- D3 -> GPIO24
- D4 -> GPIO23
- D5 -> GPIO26
- D6 -> GPIO19
- D7 -> GPIO13
- VSS -> GND
- VDD -> 5V
- A -> 5V
- K -> GND
- 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ə
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ı
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
Addım 10: Veb sayt
İ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ə:
Esp32: 9 Addımlı Avtomatik Gel Alkol Dağıtıcı
Esp32 ilə Avtomatik Gel Alkol Dağıtıcı: Dərslikdə, esp32 ilə avtomatik gel spirtli dispenserin necə yığılacağını, addım-addım montaj, elektron dövrəni və həmçinin hər addımda izah olunan mənbə kodunu necə tamamlayacağımızı görəcəyik. addım
Avtomatik Əl Dezinfeksiyaedici Dağıtıcı: 3 addım
Avtomatik Əl Dezinfeksiyaedici Dağıtıcı: Bu avtomatik əl dezinfeksiyaedici dispenser, yığılması asan olan nisbətən aşağı qiymətli bir variant olaraq dizayn edilmişdir. Lazımi əşyaların çoxunu yerli hardware və elektronika satıcılarından almaq olar. 3D çap etmək imkanı var
Arduino ilə Avtomatik Alkoqol Dağıtıcı: 6 addım
Arduino ilə Avtomatik Alkoqol Dağıtıcı: Bu arduino layihəsi, Avtomatik spirt paylayıcısının necə hazırlanacağını sizə göstərəcək. İstifadəçinin alkoqol əldə etmək üçün heç bir şeyə toxunmasına ehtiyac yoxdur, sadəcə ultrasəs sensoruna yaxınlaşın, spirt sıxışdırılacaq, sonra istifadəçiyə məlumat verməsi üçün bir audio fayl səsləndiriləcək
İstehlakatı izləmək üçün Avtomatik Su Dağıtıcı: 6 addım
İstehlakçılığı İzləmək üçün Avtomatik Su Dağıtıcı: Salam, bir neçə ay əvvəl, otağımda bir məktəb tapşırığı üçün hansı layihə etmək istədiyimi düşünürdüm. Özümə uyğun və gələcəkdə mənə fayda verəcək bir şey etmək istəyirdim. Birdən anam otağa girdi və
Avtomatik Pişik Yem Dağıtıcı: 7 Adım (Şəkillərlə birlikdə)
Avtomatik Pişik Yem Dispenseri: Pişiyinizin yeyəcəyi yemək miqdarına nəzarət etməsəniz, bu, çox yemək və artıq çəki problemlərinə səbəb ola bilər. Bu, evdən kənarda olsanız və pişiyinizin öz cədvəlində istehlak etməsi üçün əlavə yemək buraxsanız, bu xüsusilə doğrudur. Digər vaxtlarda edə bilərsiniz