Daftar Isi:

Dispenser Anjing Otomatis: 10 Langkah
Dispenser Anjing Otomatis: 10 Langkah

Video: Dispenser Anjing Otomatis: 10 Langkah

Video: Dispenser Anjing Otomatis: 10 Langkah
Video: Dog Pet Drinking Dispenser 3.8L Tempat Minum Anjing Kucing Besar 2024, November
Anonim
Dispenser Anjing Otomatis
Dispenser Anjing Otomatis
Dispenser Anjing Otomatis
Dispenser Anjing Otomatis
Dispenser Anjing Otomatis
Dispenser Anjing Otomatis

Dengan proyek saya, saya memastikan bahwa ketika Anda meninggalkan anjing Anda sendirian di rumah, dia tidak akan pernah kekurangan makanan.

Pengumpan otomatis akan "diretas" dari dispenser cornflakes. Dispenser adalah penampung makanan anjing, roda di bagian bawah akan terhubung ke motor servo yang secara otomatis menjatuhkan makanan saat boks hampir kosong dan saat anjing cukup dekat. Di bagian bawah dispenser akan ada tabung PVC terpasang yang akan menjatuhkan makanan anjing dengan baik ke dalam boks. Oleh karena itu, proyek ini akan memiliki 3 sensor, 2 di antaranya tidak tercakup dalam kelas dan 1 di antaranya adalah aktuator.

Sensor pertama adalah pembaca RFID. Sensor ini memeriksa ketika anjing mendekati buaian. RFID akan dimasukkan ke dalam kalung anjing. Jika sensor ini memperhatikan bahwa anjing cukup dekat, ia akan mengirimkan sinyal ke sensor kedua. Sensor kedua adalah sensor berat (tidak tercakup dalam kelas) yang mengukur makanan di boks, jika sensor ini mendeteksi bahwa beratnya terlalu rendah, maka akan mengirimkan sinyal ke motor servo yang akan menjatuhkan makanan ke dalam boks (dengan konfirmasi RFID dan sensor berat). Singkatnya, anjing hanya mendapat makanan tambahan ketika dia cukup dekat dengan boksnya dan ketika boksnya hampir kosong. Tentu saja ada juga batasan yang dapat Anda atur sendiri melalui server web; agar anjing tidak mendapatkan terlalu banyak makanan per hari. Sensor ketiga adalah sensor cahaya yang menerangi lampu sorot LED ketika terlalu gelap di sekitar boks bayi. Aktuator karena itu akan menjadi motor servo yang terhubung ke roda di dispenser.

Proyek ini dimaksudkan untuk anjing, Anda juga dapat menggunakannya untuk hewan peliharaan kecil lainnya.

Perlengkapan

Raspberry Pi 3

Sel beban (1KG)

Penguat sel beban HX711

Mangkuk makanan

Dispenser sereal

Kayu (+ sekrup dan obeng)

Sensor cahaya

LED

Pembaca RFID rc522

Kabel jumper

16*2 LCD (tampilan)

Motor servo

Adaptor daya 5V

Resistor 470 Ohm

tabung PVC

Breadbord

Potensiometer

Gergaji

Kertas pengamplasan

pistol silikon

Langkah 1: Pengaturan Pi

Pengaturan Pi
Pengaturan Pi

Mempersiapkan

Untuk memulai, pertama-tama kita harus menyiapkan Pi Anda.

Anda akan membutuhkan dua hal:

- Win32 Disk Imager dari

- Gambar OS Raspbian dari

Unduh file ZIP dan ekstrak ke mana pun Anda inginkan.

Instalasi

1. Pilih gambar Anda melalui ikon folder

2. Pilih kartu SD Anda melalui dropdown

3. Klik tulis

Sekarang kita perlu melakukan beberapa penyesuaian ekstra dengan beberapa pengaturan sehingga kita dapat mengakses Pi.

1. Buka direktori boot kartu SD

2. Buka file "cmdline.txt"

3. Tambahkan ip=169.254.10.1 Di akhir baris panjang teks dipisahkan dengan spasi (pada baris yang sama).

4. Simpan file.

5. Buat file bernama ssh tanpa ekstensi di direktori yang sama

Sekarang Anda dapat mengeluarkan kartu SD dan memasukkannya ke dalam Pi Anda.

Menghubungkan

Sekarang kita perlu mengatur perangkat lunak.

Pertama pasang kabel LAN, satu ujung di desktop/laptop dan ujung lainnya di Pi.

Sekarang boot Raspberry Pi.

1. Instal Putty dari

2. Masukkan 169.254.10.1 di kotak IP.

3. Pastikan SSH dipilih dan port 22 terisi.

4. Klik buka

5. Isikan nama pengguna: pi

6. Isi kata sandi: raspberry

Raspi-config

Buka utilitas Raspi-config dengan menggunakan:

sudo raspi-config

Aktifkan opsi berikut dalam kategori antarmuka

- 1-Kawat

- SPI

Nonaktifkan opsi berikut dalam kategori opsi boot

- Layar percikan

Terakhir atur pengaturan Desktop/CLI di kategori opsi boot ke Desktop Autologin.

Wifi

Untuk pengumpan anjing, kami harus memiliki koneksi wifi jadi pastikan Anda menutup kredensial wifi Anda.

1. Masuk ke mode root

sudo -i

2. Tempel baris ini tetapi pastikan SSID dan Kata Sandi keduanya terisi

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

3. Masukkan Klien WPA.

wpa_cli

4. Pilih antarmuka

Antarmuka wlan0

5. Muat ulang konfigurasi

Konfigurasi ulang

Pastikan Anda terhubung dengan benar dengan mengetik ip a dan melihat apakah Anda memiliki IP pada antarmuka WLAN0.

Paket

Sekarang kita terhubung ke internet kita harus menginstal beberapa paket.

Pertama kita perlu me-refresh daftar paket untuk yang terbaru.

sudo apt update

Python

Kami akan memaksa Raspbian untuk menggunakan Python 3

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

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

MariaDB

Rekatkan baris berikut untuk menginstal database.

sudo apt install mariadb-server

Kemudian kita harus mengamankan instalasi kita.

mysql_secure_installation

Ini akan meminta kami untuk kata sandi root saat ini karena kami tidak memilikinya, cukup tekan enter.

Selanjutnya menanyakan apakah kita menginginkan kata sandi root ketik y karena kita menginginkannya.

Untuk pertanyaan selanjutnya cukup masukkan Y.

Selanjutnya kita akan membuat pengguna yang dapat kita gunakan untuk mirror.

Masukkan shell mysql dengan melakukan:

- Tinggikan diri kita ke root

Sudo -i

- Masukkan shell mysql

Mysql

- Ganti dengan nama pengguna Anda sendiri dan sama dengan

berikan semua hak istimewa pada *.* ke ''@'%' yang diidentifikasi oleh '';

- berikan semua hak istimewa pada *.* ke ''@'%' yang diidentifikasi oleh '';

Selanjutnya kita akan menambahkan database kita.

Server Web Apache

Untuk menginstal Webserver jalankan baris di bawah ini.

sudo apt install apache2 -y

Paket Python

Kami akan menginstal paket-paket ini

- Labu

- Flask-Cors

- Flask-MySQL

- Flask-SocketIO

- PyMySQL

- Gevent

- Gevent-websocket

-

- Python-socketio

- Permintaan

- Wsaccel

- Ujson

Dengan melakukan

pip install Flask Flask-Cors Flask-MySQL Flask-SocketIO PyMySQL gevent gevent-websocket httplib2 permintaan python-socketio wsaccel ujson mfrc522 hx711 Adafruit-CharLCD

Langkah 2: Led dan Sensor Cahaya

Led dan Sensor Cahaya
Led dan Sensor Cahaya
Led dan Sensor Cahaya
Led dan Sensor Cahaya

Menghubungkan led

  1. S -> GPIO15 (rxd0)
  2. + -> 5V
  3. G -> Resistor 470 ohm dan GND

Menghubungkan sensor cahaya

  1. KELUAR -> GPIO17
  2. VCC -> 3.3V
  3. GND -> GND

Sekarang kita dapat menguji apakah sensor led dan cahaya kita bekerja dengan skrip kecil ini

impor RPi. GPIO sebagai GPIO GPIO.setmode(GPIO. BCM)

GPIO.setup(15, GPIO. OUT)

GPIO.setup(17, GPIO. IN)

coba: sementara Benar:

jika GPIO.input(17) == 0:

GPIO.output(15, GPIO. HIGH)

jika GPIO.input(17) == 1:

GPIO.output(15, GPIO. LOW)

kecuali KeyboardInterrupt: GPIO.cleanup()

Langkah 3: Motor Servo

Motor servo
Motor servo

Menghubungkan motor servo

  1. KELUAR -> GPIO18
  2. VCC -> 5V
  3. GND -> GND

Sekarang kita dapat menguji apakah sensor led dan cahaya kita bekerja dengan skrip kecil ini

impor RPi. GPIO sebagai GPIOimpor waktu

GPIO.setmode(GPIO. BCM)

GPIO.setup(18, GPIO. OUT)

p = GPIO. PWM(18, 50)

p.mulai(12.5)

mencoba:

sementara Benar:

p. ChangeDutyCycle(12.5)

waktu.tidur(1)

p. ChangeDutyCycle(2.5)

waktu.tidur(1)

kecuali KeyboardInterrupt:

hal.stop()

GPIO.pembersihan()

Langkah 4: Pembaca RFID RC522

Pembaca RFID RC522
Pembaca RFID RC522

Menghubungkan RFID

  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

Sekarang kami dapat menguji apakah pembaca RFID kami berfungsi dengan skrip kecil ini

impor RPi. GPIO sebagai GPIO

dari mfrc522 impor SimpleMFRC522

pembaca = SederhanaMFRC522()

teks = input('Data baru:')

print("Sekarang tempatkan tag Anda untuk menulis")

pembaca.tulis(teks)

print("Tertulis")

Langkah 5: Muat Sel HX711

Muat Sel HX711
Muat Sel HX711

Menghubungkan sel Muat ke papan driver HX711

  1. Merah -> E+
  2. Hitam -> E-
  3. Hijau -> A+
  4. Putih -> A-

Menghubungkan sel beban

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

Sekarang kita dapat menguji apakah sel beban kita berfungsi dengan skrip kecil ini

impor RPi. GPIO sebagai GPIOimpor waktu impor sys dari klasses. HX711 impor HX711

def cleanAndExit(): print("Membersihkan…") GPIO.cleanup() print("Bye!") sys.exit()

hx = HX711 (22, 27)

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

hx.set_reference_unit (2167)

hx.reset()

hx.tare()

sementara Benar:

mencoba:

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

cetak (val)

hx.power_down()

hx.power_up()

waktu.tidur(0.5)

kecuali (KeyboardInterrupt, SystemExit): cleanAndExit()

Langkah 6: LCD (16*2)

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

Menghubungkan LCD

  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 -> pin potensi tengah

Sekarang kita dapat menguji apakah layar LCD kita berfungsi dengan skrip kecil ini

impor Adafruit_CharLCD sebagai LCDlcd_rs = 21

lcd_en = 20

lcd_d4 = 23

lcd_d5 = 26

lcd_d6 = 19

lcd_d7 = 13

lcd_columns = 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')

Langkah 7: Sirkuit Penuh

Sirkuit Penuh
Sirkuit Penuh

di sini Anda dapat memeriksa lagi apakah seluruh rangkaian sudah benar

Langkah 8: Mulai Kasus

Awal Kasus
Awal Kasus
Awal Kasus
Awal Kasus
Awal Kasus
Awal Kasus
Awal Kasus
Awal Kasus

Saya menggunakan dispenser cornflake sebagai reservoir untuk makanan anjing

Saya menghubungkan roda di dispenser ke motor servo saya

Sekarang saya dapat mengontrol roda dengan motor servo saya dan menjatuhkan makanan dari reservoir

Di ujung reservoir ada tabung PVC yang terhubung yang menjatuhkan makanan dengan baik ke dalam buaian

Saya menggunakan kayu sebagai casing

Langkah 9: Menyatukannya

Menyatukannya
Menyatukannya
Menyatukannya
Menyatukannya
Menyatukannya
Menyatukannya

Langkah 10: Situs Web

Situs Web
Situs Web
Situs Web
Situs Web
Situs Web
Situs Web
Situs Web
Situs Web

Sekarang mesin kami berfungsi, kami perlu memasukkan situs web ke pi. Sekarang semuanya sudah berjalan dan menjalankan beberapa instruksi tentang cara kerja situs.

Anda dapat menghubungkan pi Anda ke wifi dengan mencolokkan kabel HDMI dan mengaktifkannya dengan cara ini

Halaman pertama adalah halaman rumah, di sini Anda dapat melihat:

  • Info waktu nyata tentang cahaya
  • Info realtime tentang makanan yang tersisa di mangkuk
  • Anda bisa menjatuhkan makanan
  • Info tentang anjing

Halaman kedua adalah halaman edit, di sini Anda dapat mengedit:

  • nama hewan peliharaanmu
  • usia hewan peliharaan Anda
  • berat hewan peliharaan Anda
  • foto hewan peliharaan Anda

Halaman ketiga adalah halaman history, di sini Anda dapat melihat:

  • saat lampu menyala
  • ketika anjing sudah makan
  • ketika makanan telah jatuh

Halaman keempat adalah halaman pengaturan, di sini Anda dapat mengedit:

  • ketika makanan harus dijatuhkan
  • jumlah makanan yang harus dijatuhkan
  • makanan maksimal/hari
  • cahaya

Direkomendasikan: