Мазмұны:

Иттерді автоматты тарату: 10 қадам
Иттерді автоматты тарату: 10 қадам

Бейне: Иттерді автоматты тарату: 10 қадам

Бейне: Иттерді автоматты тарату: 10 қадам
Бейне: Өлді деп жерлемек болған еді. Бірақ Алланың қалауымен тірілген Бала 2024, Шілде
Anonim
Иттерге арналған автоматты таратқыш
Иттерге арналған автоматты таратқыш
Иттерге арналған автоматты таратқыш
Иттерге арналған автоматты таратқыш
Иттерге арналған автоматты таратқыш
Иттерге арналған автоматты таратқыш

Менің жобаммен сіз итіңізді үйде жалғыз қалдырсаңыз, ол ешқашан тамақсыз қалмайтынына сенімдімін.

Автоматты беру құралы жүгері үлпектерінен «бұзылады». Диспенсер - бұл ит тағамына арналған резервуар, төменгі бөлігіндегі дөңгелек бесік бос қалған кезде және ит жеткілікті жақын болған кезде автоматты түрде тамақты тастайтын серво қозғалтқышына қосылады. Диспенсердің төменгі жағында поливинилхлоридті түтік бекітіледі, ол ит тағамдарын бесікке жақсы түсіреді. Бұл жобада 3 сенсор болады, олардың 2 -сі сыныпта қамтылмаған, ал 1 -і - жетегі.

Бірінші сенсор - RFID оқу құралы. Бұл сенсор ит бесікке жақындағанда тексереді. RFID иттің жағасына қосылады. Егер бұл сенсор иттің жеткілікті жақын екенін байқаса, ол екінші сенсорға сигнал береді. Екінші сенсор - бұл бесіктегі тағамды өлшейтін салмақ сенсоры (сыныпта қамтылмаған), егер бұл сенсор салмақтың тым төмен екенін анықтаса, ол серво қозғалтқышына тағамды бесікке тастайтын сигнал жібереді (RFID және салмақ сенсорының растауымен). Қысқаша айтқанда, ит бесікке жақын болғанда және бесік бос болған кезде ғана қосымша тамақ алады. Әрине, веб -сервер арқылы орнатуға болатын шектеулер жиынтығы бар; ит тәулігіне көп тамақ алмауы үшін. Үшінші сенсор - бесіктің айналасы тым қараңғы болған кезде жарық диодты прожекторды жарықтандыратын жарық сенсоры. Жетек диспенсердегі доңғалаққа қосылған серво қозғалтқышы болады.

Бұл жоба иттерге арналған, оны басқа кішкентай үй жануарларына да қолдануға болады.

Жабдықтар

Таңқурай Pi 3

Ұяшық жүктеу (1 кг)

HX711 жүктеу ұяшығының күшейткіші

Тағамдық ыдыс

Дәнді дақылдарға арналған диспенсер

Ағаш (+ бұрандалар мен бұрағыш)

Жарық сенсоры

Жарық диодты индикатор

Rc522 RFID оқу құралы

Өткізгіш сымдар

16*2 СКД (дисплей)

Серво қозғалтқышы

5В қуат адаптері

Резистор 470 Ом

ПВХ құбыры

Breadbord

Потенциометр

Көрдім

Қағазды тегістеу

Кремний қаруы

1 -қадам: Pi орнату

Pi орнату
Pi орнату

Орнату

Жұмысты бастау үшін алдымен Pi -ді орнату керек.

Сізге екі нәрсе қажет:

- Win32 Disk Imager

- Raspbian OS суреті

ZIP файлын жүктеңіз және оны қалаған жерге шығарыңыз.

Орнату

1. Қалта белгішесі арқылы суретті таңдаңыз

2. Ашылмалы тізім арқылы SD картасын таңдаңыз

3. Жазу түймесін басыңыз

Енді біз Pi -ге кіру үшін кейбір параметрлермен қосымша жұмыс жасауымыз керек.

1. SD картаның жүктеу каталогына өтіңіз

2. «cmdline.txt» файлын ашыңыз

3. Қосу ip = 169.254.10.1 Мәтіннің ұзын жолының соңында бос орынмен бөлінген (сол жолда).

4. Файлды сақтаңыз.

5. Бір каталогта кеңейтімі жоқ ssh атты файл жасаңыз

Енді сіз SD картаны шығарып, оны Pi -ге енгізе аласыз.

Қосылуда

Енді біз бағдарламалық жасақтаманы орнатуымыз керек.

Алдымен LAN кабелін қосыңыз, оның бір ұшы жұмыс үстелінде/ноутбукте, екіншісі Pi -де.

Енді Raspberry Pi жүктеңіз.

1. Putty бағдарламасын https://www.putty.org/ сайтынан орнатыңыз.

2. IP жолағына 169.254.10.1 енгізіңіз.

3. SSH таңдалғанын және 22 порт толтырылғанын тексеріңіз.

4. Ашу түймесін басыңыз

5. Пайдаланушы атын енгізіңіз: pi

6. Құпия сөзді толтырыңыз: таңқурай

Raspi-config

Raspi-config қызметтік бағдарламасын ашыңыз:

sudo raspi-config

Интерфейстер санатындағы келесі опцияларды қосыңыз

- 1 сымды

- SPI

Жүктеу опциялары санатындағы келесі опцияларды өшіріңіз

- Экран

Ақырында жүктеу опциялары санатындағы Desktop/CLI параметрін Desktop Autologin күйіне орнатыңыз.

Сымсыз дәлдiк

Иттерді тамақтандыру үшін бізде Wi -Fi байланысы болуы керек, сондықтан сіздің Wi -Fi тіркелгі деректері жақын екеніне көз жеткізіңіз.

1. Түбірлік режимге өтіңіз

sudo -i

2. Бұл жолды қойыңыз, бірақ SSID мен құпия сөздің екеуі де толтырылғанына көз жеткізіңіз

wpa_passphrase «SSID» «PASSWORD» >> /etc/wpa_supplicant/wpa_supplicant.conf

3. WPA клиентін енгізіңіз.

Wpa_cli

4. Интерфейсті таңдаңыз

Интерфейс wlan0

5. Конфигурацияны қайта жүктеңіз

Қайта конфигурациялау

IP a теріп, WLAN0 интерфейстерінде IP бар -жоғын білу арқылы дұрыс қосылғаныңызға көз жеткізіңіз.

Пакеттер

Енді біз Интернетке қосылғаннан кейін бірнеше пакеттерді орнатуымыз керек.

Алдымен бізге пакеттер тізімін жаңарту қажет.

sudo apt жаңарту

Python

Біз Raspbian -ды 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

Дерекқорды орнату үшін келесі жолды қойыңыз.

sudo apt install mariadb-server

Содан кейін біз орнатуды қамтамасыз етуіміз керек.

mysql_secure_installation

Ол бізден ағымдағы түбірлік құпия сөзді сұрайды, өйткені бізде тек enter пернесін басу қажет.

Әрі қарай, біз y -де түбірлік құпия сөзді алғымыз келе ме, жоқ па деп сұрайды.

Келесі сұрақтар үшін Y әріпін енгізіңіз.

Содан кейін біз айна үшін қолдануға болатын пайдаланушы жасаймыз.

MySQL қабығын келесі әрекеттерді орындау арқылы енгізіңіз:

- Біз өзімізді тамырға көтереміз

Судо -и

- MySQL қабығын енгізіңіз

Mysql

- Өзіңіздің жеке атыңызбен ауыстырыңыз және сол сияқты

*. * бойынша барлық артықшылықтарды '' '@'%'белгісімен анықтаңыз;

- '.' '@'%'белгісіне *. * бойынша барлық артықшылықтарды беріңіз;

Содан кейін біз мәліметтер базасын қосамыз.

Apache веб -сервері

Веб -серверді орнату үшін төмендегі жолды іске қосыңыз.

sudo apt install apache2 -y

Python пакеттері

Біз бұл пакеттерді орнатамыз

- Колба

- Flask-Cors

- Flask-MySQL

- Flask-SocketIO

- PyMySQL

- Гевент

- Gevent-веб-ұясы

-

- Python-сокет

- Өтініштер

- Wsaccel

- Уйсон

Жасау арқылы

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

2 -қадам: жарық және жарық сенсоры

Жарық және жарық сенсоры
Жарық және жарық сенсоры
Жарық және жарық сенсоры
Жарық және жарық сенсоры

Лидканы қосу

  1. S -> GPIO15 (rxd0)
  2. + -> 5В
  3. G -> 470 Ом резисторы мен GND

Жарық сенсорының қосылуы

  1. Шығу -> GPIO17
  2. VCC -> 3.3V
  3. GND -> GND

Енді біз шам мен жарық сенсорының осы шағын сценариймен жұмыс істейтінін тексере аламыз

GPO GPIO.setmode (GPIO. BCM) ретінде RPi. GPIO импорттау

GPIO.setup (15, GPIO. OUT)

GPIO.setup (17, GPIO. IN)

көріңіз: ал True:

егер GPIO.input (17) == 0:

GPIO. шығысы (15, GPIO. HIGH)

егер GPIO.input (17) == 1:

GPIO. шығысы (15, GPIO. LOW)

KeyboardInterrupt қоспағанда: GPIO.cleanup ()

3 -қадам: Серво моторы

Серво моторы
Серво моторы

Серво қозғалтқышты қосу

  1. Шығу -> GPIO18
  2. VCC -> 5V
  3. GND -> GND

Енді біз шам мен жарық сенсоры осы шағын сценариймен жұмыс істейтінін тексере аламыз

GPO импорт уақыты ретінде RPi. GPIO импорттау

GPIO.setmode (GPIO. BCM)

GPIO.setup (18, GPIO. OUT)

p = GPIO. PWM (18, 50)

б. бастау (12.5)

тырысу:

шындық кезінде:

p. ChangeDutyCycle (12.5)

уақыт.ұйқы (1)

p. ChangeDutyCycle (2.5)

уақыт.ұйқы (1)

KeyboardInterrupt қоспағанда:

p.stop ()

GPIO.cleanup ()

4 -қадам: RFID оқу құралы RC522

RFID оқу құралы RC522
RFID оқу құралы RC522

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

Енді біз RFID оқырманы осы шағын сценариймен жұмыс істейтінін тексере аламыз

GPO ретінде RPi. GPIO импорттау

mfrc522 импорттау SimpleMFRC522

оқырман = SimpleMFRC522 ()

мәтін = енгізу ('Жаңа деректер:')

басып шығару («Енді жазуға тегіңізді қойыңыз»)

оқырман.жазу (мәтін)

басып шығару («Жазбаша»)

5 -қадам: HX711 ұяшығын жүктеңіз

HX711 ұяшығын жүктеу
HX711 ұяшығын жүктеу

HX711 драйверлер тақтасына Load ұяшығын қосу

  1. Қызыл -> E+
  2. Қара -> E-
  3. Жасыл -> A+
  4. Ақ -> A-

Жүктеу ұяшығын қосу

  1. DT-> GPIO27
  2. SCK -> GPIO22
  3. ҚЫЗЫЛ -> 3,3 В
  4. GND -> GND

Енді біз жүктеу ұяшығының осы кішкентай сценариймен жұмыс істейтінін тексере аламыз

RPi. GPIO -ны GPIO ретінде импорттау klasses. HX711 импорттау жүйесі HX711 -ден импорттау.

def cleanAndExit (): басып шығару («Тазалау…») GPIO.cleanup () басып шығару («Қош!») sys.exit ()

hx = HX711 (22, 27)

hx.set_reading_format («LSB», «MSB»)

hx.set_reference_unit (2167)

hx.reset ()

hx.tare ()

шындық кезінде:

тырысу:

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

басып шығару (вал)

hx.power_down ()

hx.power_up ()

уақыт.ұйқы (0.5)

(KeyboardInterrupt, SystemExit) қоспағанда: cleanAndExit ()

6 -қадам: СКД (16*2)

СКД (16*2)
СКД (16*2)

СКД қосу

  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. ВД -> 5В
  14. А -> 5В
  15. K -> GND
  16. V0 -> орта потенциалды түйреуіш

Енді біз СКД экранымыз осы кішкентай сценариймен жұмыс істейтінін тексере аламыз

Adafruit_CharLCD импорттау LCDlcd_rs = 21

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

7 -қадам: Толық тізбек

Толық схема
Толық схема

мұнда сіз бүкіл схеманың дұрыстығын тексере аласыз

8 -қадам: Істің басталуы

Істің басталуы
Істің басталуы
Істің басталуы
Істің басталуы
Істің басталуы
Істің басталуы
Істің басталуы
Істің басталуы

Мен жүгері үлпек диспенсерін ит тағамына арналған резервуар ретінде қолдандым

Мен диспенсердегі дөңгелекті серво моторыма қостым

Енді мен серво моторыммен дөңгелекті басқара аламын және резервуардағы тамақты тастай аламын

Су қоймасының соңында ПВХ түтігі бар, ол тағамды бесікке жақсы түсіреді

Мен ағашты қаптама ретінде қолданамын

9 -қадам: оны біріктіру

Оны біріктіру
Оны біріктіру
Оны біріктіру
Оны біріктіру
Оны біріктіру
Оны біріктіру

10 -қадам: веб -сайт

Веб -сайт
Веб -сайт
Веб -сайт
Веб -сайт
Веб -сайт
Веб -сайт
Веб -сайт
Веб -сайт

Енді біздің машина жұмыс істейді, біз веб -сайтты pi -ге алуымыз керек, енді бәрі дайын және сайттың қалай жұмыс істейтіні туралы бірнеше нұсқаулар бар.

Сіз Wi -Fi желісіне HDMI кабелін қосу арқылы қосылуға және осылайша белсендіруге болады

Бірінші бет - бұл басты бет, мұнда көруге болады:

  • Жарық туралы нақты ақпарат
  • Ыдыста қалған тағамдар туралы нақты ақпарат
  • Тамақты тастауға болады
  • Ит туралы ақпарат

Екінші бет - өңдеу беті, мұнда өңдеуге болады:

  • сіздің үй жануарыңыздың аты
  • сіздің үй жануарыңыздың жасы
  • сіздің үй жануарыңыздың салмағы
  • сіздің үй жануарыңыздың суреті

Үшінші бет - тарих беті, мұнда көруге болады:

  • жарық жанған кезде
  • ит жеп болған кезде
  • тағам төмендеген кезде

Төртінші бет - бұл параметрлер беті, мұнда өңдеуге болады:

  • тамақты тастау қажет болғанда
  • түсетін тағам мөлшері
  • максималды тамақ/тәул
  • жарық

Ұсынылған: