Mục lục:
- Quân nhu
- Bước 1: Thiết lập Pi
- Bước 2: Đèn Led và Cảm biến ánh sáng
- Bước 3: Động cơ Servo
- Bước 4: Đầu đọc RFID RC522
- Bước 5: Load Cell HX711
- Bước 6: LCD (16 * 2)
- Bước 7: Toàn mạch
- Bước 8: Bắt đầu trường hợp
- Bước 9: Kết hợp nó lại với nhau
- Bước 10: Trang web
Video: Máy phân phối chó tự động: 10 bước
2024 Tác giả: John Day | [email protected]. Sửa đổi lần cuối: 2024-01-30 13:32
Với dự án của mình, tôi đảm bảo rằng khi bạn để chó ở nhà một mình, chúng sẽ không bao giờ thiếu thức ăn.
Bộ nạp tự động sẽ bị "tấn công" từ máy phân phối bánh bông lan ngô. Bộ phân phối là nơi chứa thức ăn cho chó, bánh xe ở phía dưới sẽ được kết nối với một động cơ servo giúp tự động đổ thức ăn xuống khi nôi gần hết và khi chó đến gần đủ. Ở dưới đáy của khay đựng thức ăn sẽ có một ống nhựa PVC gắn vào để thả thức ăn cho chó vào cũi một cách độc đáo. Do đó, dự án này sẽ có 3 cảm biến, 2 trong số đó không được đề cập trong lớp và 1 trong số đó là thiết bị truyền động.
Cảm biến đầu tiên là đầu đọc RFID. Cảm biến này kiểm tra khi con chó đến gần cũi. RFID sẽ được tích hợp trong vòng cổ của con chó. Nếu cảm biến này nhận thấy rằng con chó ở đủ gần, nó sẽ truyền tín hiệu đến cảm biến thứ hai. Cảm biến thứ hai là cảm biến trọng lượng (không được phủ lớp) đo thực phẩm trong nôi, nếu cảm biến này phát hiện trọng lượng quá thấp, nó sẽ gửi tín hiệu đến động cơ servo sẽ thả thức ăn vào cũi (với xác nhận của RFID và cảm biến trọng lượng). Nói tóm lại, con chó chỉ kiếm thêm thức ăn khi chúng đã đủ gần cũi và khi cũi gần như trống rỗng. Tất nhiên cũng có một bộ giới hạn mà bạn có thể tự đặt thông qua máy chủ web; để con chó không nhận được quá nhiều thức ăn mỗi ngày. Cảm biến thứ ba là cảm biến ánh sáng chiếu sáng đèn pha LED khi xung quanh nôi quá tối. Do đó, bộ truyền động sẽ là một động cơ servo được kết nối với bánh xe trong bộ phân phối.
Dự án này dành cho chó, bạn cũng có thể sử dụng nó cho các vật nuôi nhỏ khác.
Quân nhu
Raspberry Pi 3
Cảm biến lực (1KG)
Bộ khuếch đại cảm biến lực HX711
Bát thực phẩm
Máy phân phối ngũ cốc
Gỗ (+ vít và tuốc nơ vít)
Cảm biến ánh sáng
Dẫn đến
Đầu đọc RFID rc522
Dây nhảy
16 * 2 LCD (màn hình)
Động cơ servo
Bộ đổi nguồn 5V
Điện trở 470 Ohm
Ống nhựa PVC
Breadbord
Chiết áp
Nhìn thấy
Giấy nhám
Súng silicon
Bước 1: Thiết lập Pi
Cài đặt
Để bắt đầu, trước tiên, chúng tôi cần thiết lập Pi của bạn.
Bạn sẽ cần hai thứ:
- Win32 Disk Imager từ
- Hình ảnh hệ điều hành Raspbian từ
Tải xuống tệp ZIP và giải nén nó vào bất cứ nơi nào bạn muốn.
Việc cài đặt
1. Chọn hình ảnh của bạn qua biểu tượng thư mục
2. Chọn thẻ SD của bạn qua menu thả xuống
3. Nhấp vào ghi
Bây giờ chúng tôi sẽ cần phải thực hiện thêm một số cài đặt với một số cài đặt để có thể truy cập Pi.
1. Đi tới thư mục khởi động của thẻ SD
2. Mở tệp "cmdline.txt"
3. Thêm ip = 169.254.10.1 vào cuối dòng văn bản dài được phân cách bằng dấu cách (trên cùng một dòng).
4. Lưu tệp.
5. Tạo một tệp có tên ssh không có phần mở rộng trong cùng một thư mục
Bây giờ bạn có thể tháo thẻ SD và đặt nó vào Pi của mình.
Đang kết nối
Bây giờ chúng ta sẽ cần thiết lập phần mềm.
Đầu tiên hãy cắm cáp LAN, một đầu vào máy tính để bàn / máy tính xách tay của bạn và đầu kia vào Pi của bạn.
Bây giờ khởi động Raspberry Pi.
1. Cài đặt Putty từ
2. Nhập 169.254.10.1 vào hộp IP.
3. Đảm bảo rằng SSH được chọn và cổng 22 đã được điền.
4. Bấm mở
5. Điền tên người dùng: pi
6. Điền mật khẩu: raspberry
Raspi-config
Mở tiện ích Raspi-config bằng cách sử dụng:
sudo raspi-config
Bật các tùy chọn sau trong danh mục giao diện
- 1 dây
- SPI
Tắt các tùy chọn sau trong danh mục tùy chọn khởi động
- Màn hình giật gân
Cuối cùng đặt cài đặt Desktop / CLI trong danh mục tùy chọn khởi động thành Desktop Autologin.
Wifi
Đối với máng ăn cho chó, chúng ta cần có kết nối wifi, vì vậy hãy đảm bảo rằng bạn đã đóng thông tin đăng nhập wifi của mình.
1. Đi vào chế độ gốc
sudo -i
2. Dán dòng này nhưng đảm bảo rằng cả SSID và Mật khẩu đều được điền
wpa_passphrase "SSID" "MẬT KHẨU" >> /etc/wpa_supplicant/wpa_supplicant.conf
3. Nhập WPA Client.
Wpa_cli
4. Chọn giao diện
Giao diện wlan0
5. Tải lại cấu hình
Cấu hình lại
Đảm bảo rằng bạn được kết nối chính xác bằng cách nhập ip a và xem liệu bạn có IP trên giao diện WLAN0 hay không.
Các gói
Bây giờ chúng tôi đã kết nối với internet, chúng tôi sẽ phải cài đặt một số gói.
Trước tiên, chúng tôi sẽ cần làm mới danh sách gói cho danh sách mới nhất.
cập nhật apt sudo
Python
Chúng tôi sẽ buộc Raspbian sử dụng 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
Dán dòng sau để cài đặt cơ sở dữ liệu.
sudo apt cài đặt mariadb-server
Sau đó, chúng tôi sẽ cần bảo mật cài đặt của mình.
mysql_secure_installation
Nó sẽ yêu cầu chúng tôi nhập mật khẩu gốc hiện tại vì chúng tôi không có mật khẩu chỉ cần nhấn enter.
Tiếp theo, nó hỏi liệu chúng ta có muốn nhập mật khẩu gốc bằng y vì chúng ta muốn một mật khẩu.
Đối với các câu hỏi tiếp theo, chỉ cần nhập Y.
Tiếp theo, chúng tôi sẽ tạo một người dùng mà chúng tôi có thể sử dụng cho máy nhân bản.
Nhập shell mysql bằng cách thực hiện:
- Nâng cao bản thân để root
Sudo -i
- Nhập shell mysql
Mysql
- Thay thế bằng tên người dùng của riêng bạn và tương tự bằng
cấp tất cả các đặc quyền trên *. * cho '' @ '%' được xác định bởi '';
- cấp tất cả các đặc quyền trên *. * cho '' @ '%' được xác định bởi '';
Tiếp theo, chúng tôi sẽ thêm cơ sở dữ liệu của mình.
Máy chủ web Apache
Để cài đặt Webserver chạy dòng bên dưới.
sudo apt install apache2 -y
Các gói Python
Chúng tôi sẽ cài đặt các gói này
- Bình giữ nhiệt
- Cors bình
- Flask-MySQL
- Bình-SocketIO
- PyMySQL
- Gevent
- Gevent-websocket
-
- Python-socketio
- Yêu cầu
- Wsaccel
- Ujson
Bằng cách làm
pip install Flask Flask-Cors Flask-MySQL Flask-SocketIO PyMySQL gevent gevent-websocket httplib2 python-socketio request wsaccel ujson mfrc522 hx711 Adafruit-CharLCD
Bước 2: Đèn Led và Cảm biến ánh sáng
Nối dây dẫn
- S -> GPIO15 (rxd0)
- + -> 5V
- G -> Điện trở 470 ohm và GND
Kết nối cảm biến ánh sáng
- RA -> GPIO17
- VCC -> 3.3V
- GND -> GND
Bây giờ chúng tôi có thể kiểm tra xem đèn led và cảm biến ánh sáng của chúng tôi có hoạt động với tập lệnh nhỏ này không
nhập RPi. GPIO dưới dạng GPIO GPIO.setmode (GPIO. BCM)
GPIO.setup (15, GPIO. OUT)
GPIO.setup (17, GPIO. IN)
try: while True:
nếu GPIO.input (17) == 0:
GPIO.output (15, GPIO. HIGH)
nếu GPIO.input (17) == 1:
GPIO.output (15, GPIO. LOW)
ngoại trừ KeyboardInterrupt: GPIO.cleanup ()
Bước 3: Động cơ Servo
Kết nối động cơ servo
- RA -> GPIO18
- VCC -> 5V
- GND -> GND
Bây giờ chúng tôi có thể kiểm tra xem đèn led và cảm biến ánh sáng của chúng tôi có hoạt động với tập lệnh nhỏ này không
nhập RPi. GPIO dưới dạng thời gian nhập GPIO
GPIO.setmode (GPIO. BCM)
GPIO.setup (18, GPIO. OUT)
p = GPIO. PWM (18, 50)
p.start (12,5)
cố gắng:
trong khi Đúng:
p. ChangeDutyCycle (12.5)
time.sleep (1)
p. ChangeDutyCycle (2.5)
time.sleep (1)
ngoại trừ KeyboardInterrupt:
p.stop ()
GPIO.cleanup ()
Bước 4: Đầu đọc RFID RC522
Kết nối RFID
- RST -> GPIO6
- MISO -> GPIO9 (MISO)
- MOSI -> GPIO10 (MOSI)
- SCK -> GPIO11 (SPISCLK)
- SDA -> GPIO8 (SPICS0)
- 3,3V -> 3,3V
- GND -> GND
Bây giờ chúng tôi có thể kiểm tra xem trình đọc RFID của chúng tôi có hoạt động với tập lệnh nhỏ này không
nhập RPi. GPIO dưới dạng GPIO
from mfrc522 import SimpleMFRC522
reader = SimpleMFRC522 ()
text = input ('Dữ liệu mới:')
print ("Bây giờ hãy đặt thẻ của bạn để viết")
reader.write (văn bản)
print ("Đã viết")
Bước 5: Load Cell HX711
Kết nối cảm biến lực với bảng trình điều khiển HX711
- Đỏ -> E +
- Đen -> E-
- Màu xanh lá cây -> A +
- Trắng -> A-
Kết nối cảm biến lực
- DT-> GPIO27
- SCK -> GPIO22
- ĐỎ -> 3.3V
- GND -> GND
Bây giờ chúng ta có thể kiểm tra xem cảm biến lực của chúng ta có hoạt động với tập lệnh nhỏ này không
nhập RPi. GPIO dưới dạng GPIO nhập hệ thống nhập thời gian từ klasses. HX711 nhập HX711
def cleanAndExit (): print ("Cleaning…") 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 ()
trong khi Đúng:
cố gắng:
val = max (0, int (hx.get_weight (5)))
in (val)
hx.power_down ()
hx.power_up ()
time.sleep (0,5)
ngoại trừ (KeyboardInterrupt, SystemExit): cleanAndExit ()
Bước 6: LCD (16 * 2)
Kết nối màn hình LCD
- 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 -> chân potentio giữa
Bây giờ chúng ta có thể kiểm tra xem màn hình LCD của chúng ta có hoạt động với tập lệnh nhỏ này không
nhập Adafruit_CharLCD dưới dạng 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')
Bước 7: Toàn mạch
ở đây bạn có thể kiểm tra lại xem toàn bộ mạch đã chính xác chưa
Bước 8: Bắt đầu trường hợp
Tôi đã sử dụng dụng cụ phân phối bông ngô làm nơi chứa thức ăn cho chó
Tôi đã kết nối bánh xe trong bộ phân phối với động cơ servo của mình
Giờ đây, tôi có thể điều khiển bánh xe bằng động cơ servo của mình và thả thức ăn ra khỏi bể chứa
Ở cuối ngăn chứa có một ống PVC được kết nối để thả thức ăn vào cũi một cách độc đáo
Tôi sử dụng gỗ làm vỏ bọc
Bước 9: Kết hợp nó lại với nhau
Bước 10: Trang web
Bây giờ máy của chúng tôi hoạt động, chúng tôi cần đưa trang web lên pi. Bây giờ mọi thứ đã bắt đầu và chạy một số hướng dẫn về cách trang web hoạt động.
Bạn có thể kết nối pi của bạn với wifi bằng cách cắm cáp hdmi và kích hoạt theo cách này
Trang đầu tiên là trang chủ, tại đây bạn có thể xem:
- Thông tin thời gian thực về ánh sáng
- Thông tin thời gian thực về thức ăn còn lại trong bát
- Bạn có thể làm rơi đồ ăn
- Thông tin về con chó
Trang thứ hai là trang chỉnh sửa, tại đây bạn có thể chỉnh sửa:
- tên của con vật cưng của bạn
- tuổi của thú cưng của bạn
- trọng lượng của thú cưng của bạn
- bức ảnh của thú cưng của bạn
Trang thứ ba là trang lịch sử, ở đây bạn có thể xem:
- khi đèn bật sáng
- khi con chó đã ăn
- khi thức ăn đã rơi
Trang thứ tư là trang cài đặt, tại đây bạn có thể chỉnh sửa:
- khi thức ăn cần giảm xuống
- số lượng thức ăn để giảm
- thức ăn tối đa / ngày
- ánh sáng
Đề xuất:
Máy phân phối rượu dạng gel tự động với Esp32: 9 bước
Máy rút rượu gel tự động với Esp32: Trong hướng dẫn, chúng ta sẽ xem cách tạo một nguyên mẫu hoàn chỉnh, để lắp ráp máy phân phối rượu gel tự động với esp32, nó sẽ bao gồm lắp ráp từng bước, mạch điện tử và mã nguồn được giải thích tất cả từng bước bươc chân
Máy phân phối nước rửa tay tự động: 3 bước
Hộp đựng nước rửa tay tự động: Hộp đựng nước rửa tay tự động này được thiết kế để trở thành một lựa chọn có chi phí tương đối thấp và dễ lắp ráp. Hầu hết các mặt hàng bắt buộc có thể được mua từ các nhà bán lẻ phần cứng và điện tử tại địa phương của bạn. Có tùy chọn để in 3D một
Dự án Arduino: Máy phân phối thức ăn cho mèo: 6 bước
Dự án Arduino: Máy phân phối thức ăn cho mèo: Hướng dẫn này được tạo ra để đáp ứng yêu cầu dự án của Makecourse tại Đại học Nam Florida (www.makecourse.com)
Bộ phân phối thức ăn cho mèo tự động: 7 bước (có hình ảnh)
Máy phân phối thức ăn cho mèo tự động: Nếu bạn không kiểm soát lượng thức ăn mà mèo ăn, điều này có thể dẫn đến các vấn đề về ăn quá nhiều và thừa cân. Điều này đặc biệt đúng nếu bạn vắng nhà và để lại thức ăn thừa cho mèo ăn theo lịch trình riêng của chúng. Những lúc khác, bạn có thể r
Bộ phân phối thức ăn cho chó được hỗ trợ bởi Arduino: 10 bước (có hình ảnh)
Arduino Powered Dog Food Dispenser: Nếu ngôi nhà của bạn giống như của tôi, một số nhiệm vụ có thể bị quên khi đang gấp. Đừng để nó trở thành thú cưng của bạn bị lãng quên! Máy phân phối thức ăn cho chó tự động này sử dụng Arduino để phân phối đúng lượng thức ăn cho chó vào đúng thời điểm. Tất cả