Мазмұны:

Үй жануарларын ақылды тамақтандырушы: 9 қадам
Үй жануарларын ақылды тамақтандырушы: 9 қадам

Бейне: Үй жануарларын ақылды тамақтандырушы: 9 қадам

Бейне: Үй жануарларын ақылды тамақтандырушы: 9 қадам
Бейне: Үй жануарлары балаларға. Үй жануарларының дауыстары. 2024, Шілде
Anonim
Image
Image
Ақылды үй жануарларына арналған тамақтандырғыш
Ақылды үй жануарларына арналған тамақтандырғыш

Сіздің үй жануарыңыз бар ма?

  • Жоқ: біреуін асырап ал! (және осы нұсқаулыққа оралыңыз).
  • Иә: жақсы жұмыс!

Үйге уақытында жету үшін жоспарларынан бас тартпай, сүйікті адамыңызға тамақ беріп, су берсеңіз жақсы болмас па еді? Біз енді алаңдамаймыз дейміз.

Бұл жобада біз қашықтықтан басқарылатын (веб арқылы) тамақ пен су диспенсерлерін жасадық.

Интернеттегі бақылау тақтасы арқылы деректерді көруге және диспенсерлерді басқаруға болады:

  • Резервуарлардағы тамақ пен су деңгейін қараңыз.
  • Ыдыстардағы тамақ пен су деңгейін қараңыз.
  • Бұл кезде жануар жейді ме, әлде ішеді ме?
  • Тамақтандыруды жоспарлаңыз (егер ыдыста тамақ жеткілікті болса, құрылғы тамақ таратпайды).
  • Ыдыс бос болған кезде суды автоматты түрде құйыңыз.
  • Тамақты/суды түймені басу арқылы таратыңыз.
  • Телефоныңызға push хабарландыруларын алыңыз (Telegram қосымшасы арқылы).

Біз кімбіз?

IDC Herzliya информатика факультетінің студенттері Том Кауфман мен Катя Фичман жасаған.

Бұл жоба IOT курсына арналған.

Жабдықтар

Электроника

  • 2 X ESP8266 (Wemos d1 mini).
  • Өткізгіш сымдар.
  • 2 X Нан тақтасы.
  • 4 X ультрадыбыстық сенсор.
  • 2 X жүктеу ұяшығы.
  • 2 X жүктеме ұяшығының күшейткіші (HX711).
  • Серво (180 °).
  • Серво (үздіксіз айналу).
  • 2 X 6В қуат көзі.

Бөлшектер

  • Cornflakes диспенсері (Amazon сілтемесі).
  • 3D басып шығарылған тағам диспенсерінің шұңқыры (https://www.thingiverse.com/thing:3998805).
  • 3D басып шығарылған тағамдық диспенсердің серво қондырмасы (https://www.thingiverse.com/thing:3269637).
  • 3D басып шығарылған тағамдық диспенсердің стенді (бұл жобаға арналған:
  • 3D басып шығарылған ұяшық негізі мен табақшасы (бұл жобаға арналған:
  • Су диспенсері (ұқсас нәрсеге Amazon сілтемесі).
  • Сым (су диспенсерінің тұтқасын сервоға қосу үшін).
  • 3 X ультрадыбыстық сенсордың тірегі.

1 -қадам: Бұл қалай жұмыс істейді?

Бұл қалай жұмыс істейді?
Бұл қалай жұмыс істейді?

ESP8266 тақталары сенсорлардың көрсеткіштерін Node-RED-ке Mosquitto (MQTT брокері) арқылы жібереді.

Node-RED деректерді өңдейді, сәйкесінше әрекеттер жасайды (сонымен қатар Mosquitto арқылы ESP8266 тақталарына тарату командаларын жібереді) және бақылау тақтасында ақпаратты көрсетеді.

Барлық есептеулер Node-RED-те орындалады, сондықтан кодты қолдан ластамай, бұл жобаны қайталау және деректерді өңдеуді параметрлер мен қалауыңызға сәйкес өзгерту оңай болар еді.

2 -қадам: Бағдарламалық жасақтама

Бағдарламалық қамтамасыз ету
Бағдарламалық қамтамасыз ету

Arduino IDE

Жүктеу және орнату (сілтеме:

Маса

Жүктеу және орнату (сілтеме:

Node.js

Жүктеу және орнату (сілтеме:

Түйін-ҚЫЗЫЛ

Нұсқауларды орындаңыз:

ngrok

Жүктеу:

Telegram

Қолданбаны смартфонға орнатыңыз.

3 -қадам: схеманың орналасуы

Схеманың орналасуы
Схеманың орналасуы

* Екі құрылғыда бірдей схемалар бар

Су диспенсері

  • Ультрадыбыстық сенсор (су ыдысы үшін)

    • GND - Г.
    • VCC - 5В
    • ЭХО - D5
    • ҚОСУШЫ - D0
  • Ультрадыбыстық сенсор (үй жануарларының тостағаннан қашықтығы үшін)

    • GND - Г.
    • VCC - 5В
    • ЭХО - D6
    • ҚОСУШЫ - D7
  • Ұяшықты жүктеу

    • ЖАСЫЛ - А+ (HX711)
    • Ақ - A- (HX711)
    • ҚАРА - Е- (HX711)
    • ҚЫЗЫЛ - E+ (HX711)
  • HX711 (жүктеме ұяшығының күшейткіші)

    • GND - Г.
    • VCC - 5В
    • DT - D4
    • SCK - D3
  • Серво (180 °)

    • GND - Г.
    • VCC - 5В

Тағам диспенсері

  • Ультрадыбыстық сенсор (азық -түлік ыдысы үшін)

    • GND - Г.
    • VCC - 5В
    • ЭХО - D5
    • ҚОСУШЫ - D0
  • Ультрадыбыстық сенсор (үй жануарларының тостағаннан қашықтығы үшін)

    • GND - Г.
    • VCC - 5В
    • ЭХО - D6
    • ҚОСУШЫ - D7
  • Ұяшықты жүктеу

    • ЖАСЫЛ - А+ (HX711)
    • АҚ - А- (HX711)
    • ҚАРА - Е- (HX711)
    • ҚЫЗЫЛ - E+ (HX711)
  • HX711 (жүктеме ұяшығының күшейткіші)

    • GND - Г.
    • VCC - 5В
    • DT - D4
    • SCK - D3
  • Серво (үздіксіз айналу)

    • GND - Г.
    • VCC - 5В
    • БАСҚАРУ - D8

4 -қадам: қолөнер

Қолөнер
Қолөнер
Қолөнер
Қолөнер
Қолөнер
Қолөнер

Су диспенсері

  1. Сервоны диспенсердің төменгі бөлігінің жоғарғы жағына жабыстырыңыз (суретте көрсетілгендей).
  2. Су диспенсерінің тұтқасында кішкене тесік бұрғылаңыз.
  3. Серво басын тұтқаға сыммен қосыңыз (серво басының 0 күйінде тұрғанына көз жеткізіңіз және сымның тығыз екеніне көз жеткізіңіз).
  4. Бір ультрадыбыстық сенсорды резервуардың ішкі жағына, оның жоғарғы жағына жабыстырыңыз (сенсор төмен қараған).
  5. Су тұтқасының астына бір ультрадыбыстық сенсорды сыртқа жабыстырыңыз (су ыдысы оның көрсеткіштеріне әсер етпейтіндей етіп жеткілікті жоғары екеніне көз жеткізіңіз).

Тағам диспенсері

  1. Сервоны ұстағышқа бұраңыз (3D басып шығарылған бөлігі).
  2. Шұңқырды (3D басып шығарылған бөлігі) резервуар ұстағышына (3D басып шығарылған бөлігі) жабыстырыңыз.
  3. Резервуар ұстағышты диспенсердің тірегіне қосыңыз (3D басып шығарылған бөлігі) және резервуарды орнына қойыңыз.
  4. Айналатын бөлікті (3D басып шығарылған) орнына және диспенсердің айналдыратын резеңке бөлігі арқылы салыңыз.
  5. Серво ұстағыш бөлігін диспенсердің тірегіне бұраңыз.
  6. Резервуар қақпағының ішкі жағына бір ультрадыбыстық сенсорды жабыстырыңыз (сенсор төмен қарайды).
  7. Бір ультрадыбыстық сенсорды резервуар ұстағышының жағына үй жануарыңыз жейтін жерге қаратып жабыстырыңыз.

Ұяшықтарды жүктеу

Әр жүктеу ұяшығын 3D басып шығарылған негізге және табаққа жабыстырыңыз (жүктеу ұяшығының көрсеткі төмен қараған)

5 -қадам: масалар

Маса
Маса

Mosquitto ашыңыз (Windows пайдаланушылары: Mosquitto қалтасына өтіңіз, cmd ашыңыз және енгізіңіз: «mosquitto -v»).

* Компьютердің ішкі IP -адресін алу үшін cmd іске қосыңыз және «ipconfig» енгізіңіз.

6 -қадам: Arduino IDE

Arduino IDE
Arduino IDE
Arduino IDE
Arduino IDE

Arduino IDE ашыңыз және осы нұсқаулықтың «ESP8266 қондырмасын Arduino IDE-де орнату» бөлімін орындаңыз:

Құралдар-> Тақтаға өтіп, «LOLIN (WEMOS) D1 R2 & mini» таңдаңыз.

Sketch-> Include Library-> ZIP Library қосу … тармағына өтіп, «Libraries.rar» файлына 3 кітапхананы қосыңыз.

«HX711Calibration» эскизін ашыңыз, оны ESP8266 екеуіне де жүктеңіз, оны іске қосыңыз және жүктеме ұяшықтарын калибрлеу үшін нұсқаулықтарды орындаңыз (кодтың басында және сериялық мониторда) (сериялық монитордың жіберу жылдамдығы орнатылғанына көз жеткізіңіз. 115200 bod).

* Калибрлеу коэффициентін және нөлдік ығысуды жазыңыз (кейін пайдалану үшін).

IDE арқылы «FoodDispenser» мен «WaterDispenser» эскиздерін ашып, параметрлермен келесі параметрлерді өзгертіңіз («Settings.h» файлында):

  • WIFI_SSID
  • WIFI_PASSWORD
  • MQTT_SERVER
  • LOAD_CELL_CALIBRATION_FACTOR
  • LOAD_CELL_ZERO_OFFSET

* MQTT_SERVER ішіне «Mosquitto» қадамынан ішкі IP мекенжайын енгізіңіз.

Эскиздерді екі ESP8266 -ге жүктеңіз (әр тақтаға бір код).

* Назар аударыңыз, біз esp8266 «HX711» кітапханасымен үйлескенде апатқа ұшырағаннан бері «pubsubclient» кітапханасын емес, «AsyncMqttClient» кітапханасын қолдандық.

* Егер сіз кодқа өзгерістер енгізгіңіз келсе, кері шақыру функциясының ішінде «кешіктіру» және «кірістілік» функцияларын пайдаланбаңыз, себебі бұл апатқа әкеледі.

7 -қадам: Ngrok

Нгрок
Нгрок
Нгрок
Нгрок

Жүктелген файлды ашыңыз («Бағдарламалық қамтамасыз ету» қадамындағы сілтемеден).

«Ngrok.exe» ашыңыз және «ngrok http 1880» пәрменін орындаңыз.

* Сіз өзіңізге жақын аймақты таңдай аласыз (au, eu, ap, us, jp, in, sa). Әдепкі - біз.

Мысалы: «ngrok http --region = eu 1880» пәрменін орындау (аймақты Еуропаға орнату).

Енді сіз өзіңіздің веб -адресті сыртқы қолдануға арналған көресіз (біз бұл мекенжайды YOUR_NGROK_ADDRESS деп атаймыз).

8-қадам: ҚЫЗЫЛ түйін

Түйін-ҚЫЗЫЛ
Түйін-ҚЫЗЫЛ
Түйін-ҚЫЗЫЛ
Түйін-ҚЫЗЫЛ
Түйін-ҚЫЗЫЛ
Түйін-ҚЫЗЫЛ

Node-RED ашыңыз (Windows пайдаланушылары: cmd ашыңыз және «node-red» енгізіңіз) және https:// localhost: 1880 өтіңіз (егер ол жұмыс істемесе, «Сервер қазір жазылған» cmd терезесінен мекенжайды іздеңіз) жүгіру «).

Мәзірді ашыңыз (жоғарғы оң жақ бұрышта) және «Палитраны басқару» түймесін басыңыз.

«Орнату» қойындысына өтіңіз, осы модульдерді іздеңіз және орнатыңыз:

  • түйін-қызыл-үлес қосу.
  • түйін-қызыл-үлес-cron-плюс.
  • түйін-қызыл-үлес-үй-басқарды.
  • қызыл-түйіндік бақылау тақтасы.
  • түйін-қызыл-үлес-телеграмма.

Мәзірге өтіңіз-> Импорт және ағындық файлды жүктеңіз (тіркелген RAR файлын шығарып, json файлын жүктеңіз).

Ағын туралы түсініктеме алу үшін берілген суреттерді қараңыз.

Бұл түйіндерді параметрлермен өзгерту қажет:

  • «Telegram жіберуші» түйінінің профилін боттың пайдаланушы аты мен белгісімен жаңартыңыз (осы нұсқаулықты пайдаланыңыз:
  • Ағынның төменгі жағында «Ngrok Address» және «Telegram Chat Id» түйіндерінің пайдалы жүктемелерін өзгертіңіз (жоғарыдағы сілтемедегі Telegram нұсқаулығын пайдалану арқылы чат идентификаторын алыңыз).
  • Ағынның төменгі бөлігінде параметрлердің түйіндері бар - оларды қажеттіліктеріңізге сәйкес өзгертіңіз:

    • Үй жануарларын жеу/ішу туралы ескертулерді іске қосыңыз.
    • Тамақтану/ішу дабылын іске қосу үшін қандай қашықтықты анықтаңыз.
    • Табақтар мен цистерналардың мәліметтерін өңдеуді анықтаңыз.
    • Диспенсация уақытын өзгертіңіз (таратулар қанша уақытқа созылады - автоматты режим және түймені басу).
    • Тағамдық ыдыстың асып кетудің шекті пайызын анықтаңыз (егер ыдыста тамақ жеткілікті болса, автоматты тамақтануды тоқтатыңыз).

Ағынды орналастырыңыз (жоғарғы оң жақта).

* Тек бірінші орналастыру кезінде сіз жөндеу терезесінде 'persistance.json' файлының жоқтығы туралы ескертуді көресіз. Бұл туралы уайымдамаңыз, себебі сіз тамақтандыру уақытын орнатасыз немесе автоматты су ауыстырғышты өзгертесіз, ол бұл файлды инициализациялайды және сізде бұл ескерту болмайды.

Сіз бақылау тақтасын https:// NODE-RED_PC'S_INTERNAL_IP_ADDRESS: 1880/ui (егер сіз сервермен бір желіге қосылған болсаңыз) немесе YOUR_NGROK_ADDRESS/ui (барлық жерден) қарай аласыз.

9 -қадам: Қорытынды

Аяқтау
Аяқтау

Біз бұл оқулық ақпараттандырылған және оқуға, түсінуге және іске асыруға оңай болды деп үміттенеміз.

Бізден бірдеңе сұрауға қымсынбаңыз.

Ұсынылған: