Სარჩევი:

ჭკვიანი შინაური ცხოველის მიმწოდებელი: 9 ნაბიჯი
ჭკვიანი შინაური ცხოველის მიმწოდებელი: 9 ნაბიჯი

ვიდეო: ჭკვიანი შინაური ცხოველის მიმწოდებელი: 9 ნაბიჯი

ვიდეო: ჭკვიანი შინაური ცხოველის მიმწოდებელი: 9 ნაბიჯი
ვიდეო: ”ზოოკლუბი” | ბაჭიების, ზაზუნების და ზღვის გოჭების მოვლა 2024, ივლისი
Anonim
Image
Image
ჭკვიანი შინაური ცხოველის მიმწოდებელი
ჭკვიანი შინაური ცხოველის მიმწოდებელი

გყავთ შინაური ცხოველი?

  • არა: მიიღე ერთი! (დაუბრუნდი ამ სასწავლო ინსტრუქციას).
  • დიახ: კარგი სამუშაო!

არ იქნება კარგი, რომ შეგეძლოთ თქვენი საყვარელი ადამიანის კვება და წყალი მიეცით გეგმების გაუქმების მიზნით, რათა დროულად მიხვიდეთ სახლში? ჩვენ ვამბობთ, რომ აღარ ინერვიულოთ.

ამ პროექტში ჩვენ გავაკეთეთ დისტანციური მართვის (ინტერნეტის საშუალებით) საკვებისა და წყლის დისპენსერები.

ონლაინ დაფის საშუალებით თქვენ შეგიძლიათ ნახოთ მონაცემები და გააკონტროლოთ დისპენსერები:

  • დაათვალიერეთ წყლისა და წყლის დონე ავზებში.
  • დაათვალიერეთ ჭურჭელში წყლისა და საკვების დონე.
  • ჭამს თუ სვამს ცხოველი ამ დროს?
  • დაგეგმეთ კვება (მოწყობილობა არ გაანაწილებს საკვებს, თუ თასში საკმარისი საკვებია).
  • ავტომატურად გადაანაწილეთ წყალი, როდესაც თასი ცარიელდება.
  • გაანაწილეთ საკვები/წყალი ღილაკის დაჭერით.
  • მიიღეთ პრეს შეტყობინებები თქვენს ტელეფონზე (Telegram აპლიკაციით).

Ვინ ვართ ჩვენ?

შეიქმნა ტომ კაუფმანი და კატია ფიჩმანი, კომპიუტერული მეცნიერების სტუდენტები IDC Herzliya– ში.

ეს პროექტი შეიქმნა IOT კურსისთვის.

მარაგები

ელექტრონიკა

  • 2 X ESP8266 (Wemos d1 mini).
  • ჯუმბერის მავთულები.
  • 2 X პურის დაფა.
  • 4 X ულტრაბგერითი სენსორი.
  • 2 X ჩატვირთვის უჯრედი.
  • 2 X დატვირთვის უჯრედის გამაძლიერებელი (HX711).
  • სერვო (180 °).
  • სერვო (უწყვეტი ბრუნვა).
  • 2 X 6V კვების ბლოკი.

ნაწილები

  • Cornflakes დისპენსერი (ამაზონის ბმული).
  • 3D დაბეჭდილი საკვების გამანაწილებელი ძაბრი (https://www.thingiverse.com/thing:3998805).
  • 3D დაბეჭდილი საკვების დისპენსერის სერვო დანართი (https://www.thingiverse.com/thing:3269637).
  • 3D დაბეჭდილი საკვების გამანაწილებელი სტენდი (შექმნილია ამ პროექტისთვის:
  • 3D დაბეჭდილი დატვირთვის უჯრედის ბაზა და ფირფიტა (შექმნილია ამ პროექტისთვის:
  • წყლის გამანაწილებელი (ამაზონის ბმული რაღაც მსგავსზე).
  • მავთული (წყლის გამანაწილებელი სახელურის დასაკავშირებლად სერვოზე).
  • 3 X ულტრაბგერითი სენსორის სტენდი.

ნაბიჯი 1: როგორ მუშაობს?

Როგორ მუშაობს?
Როგორ მუშაობს?

ESP8266 დაფები აგზავნის სენსორების კითხვას Node-RED– ში Mosquitto– ს საშუალებით (MQTT ბროკერი).

Node-RED ამუშავებს მონაცემებს, აკეთებს ქმედებებს შესაბამისად (ასევე უგზავნის ბრძანებებს ESP8266 დაფებს Mosquitto– ს საშუალებით) და აჩვენებს ინფორმაციას დაფაზე.

ყველა გამოთვლა ხორციელდება Node-RED– ში, ასე რომ ადვილი იქნებოდა ამ პროექტის გამეორება და მონაცემების დამუშავების შეცვლა თქვენი პარამეტრებისა და პრეფერენციების მიხედვით, ხელების დაბინძურების გარეშე.

ნაბიჯი 2: პროგრამები

პროგრამული უზრუნველყოფა
პროგრამული უზრუნველყოფა

Arduino IDE

ჩამოტვირთეთ და დააინსტალირეთ (ბმული:

კოღო

ჩამოტვირთეთ და დააინსტალირეთ (ბმული:

კვანძი. Js

ჩამოტვირთეთ და დააინსტალირეთ (ბმული:

კვანძი-წითელი

მიჰყევით ინსტრუქციას:

გათელკი

ჩამოტვირთეთ:

დეპეშა

დააინსტალირეთ აპლიკაცია თქვენს სმარტფონზე.

ნაბიჯი 3: სქემის განლაგება

მიკროსქემის განლაგება
მიკროსქემის განლაგება

* ორივე მოწყობილობას აქვს იდენტური სქემები

წყლის გამანაწილებელი

  • ულტრაბგერითი სენსორი (წყლის ავზისთვის)

    • GND - G
    • VCC - 5V
    • ECHO - D5
    • ტრიგერი - D0
  • ულტრაბგერითი სენსორი (შინაური ცხოველის მანძილი თასიდან)

    • GND - G
    • VCC - 5V
    • ECHO - D6
    • ტრიგერი - D7
  • უჯრედის ჩატვირთვა

    • მწვანე - A+ (HX711)
    • თეთრი - A- (HX711)
    • შავი - E- (HX711)
    • წითელი - E+ (HX711)
  • HX711 (ჩამტვირთავი უჯრედის გამაძლიერებელი)

    • GND - G
    • VCC - 5V
    • DT - D4
    • SCK - D3
  • სერვო (180 °)

    • GND - G
    • VCC - 5V

საკვების გამანაწილებელი

  • ულტრაბგერითი სენსორი (კვების ავზისთვის)

    • GND - G
    • VCC - 5V
    • ECHO - D5
    • ტრიგერი - D0
  • ულტრაბგერითი სენსორი (შინაური ცხოველის მანძილი თასიდან)

    • GND - G
    • VCC - 5V
    • ECHO - D6
    • ტრიგერი - D7
  • უჯრედის ჩატვირთვა

    • მწვანე - A+ (HX711)
    • თეთრი - A- (HX711)
    • შავი - E- (HX711)
    • წითელი - E+ (HX711)
  • HX711 (ჩამტვირთავი უჯრედის გამაძლიერებელი)

    • GND - G
    • VCC - 5V
    • DT - D4
    • SCK - D3
  • სერვო (უწყვეტი ბრუნვა)

    • GND - G
    • VCC - 5V
    • კონტროლი - D8

ნაბიჯი 4: ხელნაკეთობა

ხელობა
ხელობა
ხელობა
ხელობა
ხელობა
ხელობა

წყლის დისპენსერი

  1. მიამაგრეთ სერვერი დისპენსერის ქვედა ნაწილის ზედა ნაწილზე (როგორც ნაჩვენებია ფოტოში).
  2. გაატარეთ პატარა ხვრელი წყლის დისპენსერის სახელურში.
  3. შეაერთეთ servo თავი სახელურზე მავთულით (დარწმუნდით, რომ servo head არის 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- ში":

გადადით Tools-> Board და აირჩიეთ "LOLIN (WEMOS) D1 R2 & mini".

გადადით ჩანახატზე-> ბიბლიოთეკის ჩართვა->. ZIP ბიბლიოთეკის დამატება… და დაამატეთ 3 ბიბლიოთეკა "Libraries.rar" ფაილში.

გახსენით "HX711Calibration" ესკიზი, ატვირთეთ ორივე ESP8266- ში, გაუშვით და მიჰყევით ინსტრუქციას (კოდის დასაწყისში და სერიულ მონიტორზე) დატვირთვის უჯრედების დასაკალიბრებლად (დარწმუნდით, რომ სერიული მონიტორის ბოდის სიჩქარე დაყენებულია 115200 ბაუდი).

* ჩაწერეთ დაკალიბრების ფაქტორი და ნულოვანი ოფსეტური (შემდგომი გამოყენებისთვის).

გახსენით "FoodDispenser" და "WaterDispenser" ესკიზები IDE- ს საშუალებით და შეცვალეთ შემდეგი ცვლადები თქვენი პარამეტრებით (ფაილში "Settings.h"):

  • WIFI_SSID
  • WIFI_PASSWORD
  • MQTT_SERVER
  • LOAD_CELL_CALIBRATION_FACTOR
  • LOAD_CELL_ZERO_OFFSET

* MQTT_SERVER- ში შეიყვანეთ შიდა IP მისამართი "Mosquitto" ნაბიჯიდან.

ატვირთეთ ესკიზები თქვენს ორ ESP8266 (თითო კოდი თითოეულ დაფაზე).

* გაითვალისწინეთ, რომ ჩვენ გამოვიყენეთ "AsyncMqttClient" ბიბლიოთეკა და არა უფრო გავრცელებული "pubsubclient" ბიბლიოთეკა მას შემდეგ, რაც esp8266 იშლება "HX711" ბიბლიოთეკასთან ერთად.

* თუ თქვენ აირჩევთ კოდში ცვლილებების შეტანას, დარწმუნდით, რომ არ გამოიყენებთ "დაგვიანების" და "გამოსავლის" ფუნქციებს უკუკავშირის ფუნქციებში, რადგან ეს გამოიწვევს ავარიას.

ნაბიჯი 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 ფანჯარაში, სადაც წერია "სერვერი ახლა გაშვებული ").

გახსენით მენიუ (ზედა მარჯვენა კუთხეში) და დააჭირეთ ღილაკს "პალიტრის მართვა".

გადადით ჩანართზე "ინსტალაცია", მოძებნეთ და დააინსტალირეთ ეს მოდულები:

  • კვანძი-წითელი-წვლილი-შენარჩუნებულია.
  • node-red-contrib-cron-plus.
  • node-red-contrib-ui-led.
  • კვანძი-წითელი დაფა.
  • node-red-contrib-telegrambot.

გადადით მენიუში-> იმპორტი და ატვირთეთ ნაკადის ფაილი (ამოიღეთ თანდართული RAR ფაილი და ატვირთეთ json ფაილი).

იხილეთ თანდართული სურათები ნაკადის შესახებ განმარტებებისათვის.

თქვენ უნდა შეცვალოთ ეს კვანძები თქვენი პარამეტრებით:

  • განაახლეთ "Telegram გამომგზავნის" კვანძის პროფილი თქვენი ბოტის მომხმარებლის სახელით და ჟეტონით (გამოიყენეთ ეს სახელმძღვანელო:
  • ნაკადის ქვედა ნაწილში შეცვალეთ "Ngrok Address" და "Telegram Chat Id" კვანძების დატვირთვა (მიიღეთ თქვენი ჩეთის პირადობა Telegram- ის სახელმძღვანელოს გამოყენებით ზემოთ მოცემულ ბმულზე).
  • ნაკადის ქვედა ნაწილში არის პარამეტრების კვანძები - შეცვალეთ ისინი თქვენი საჭიროებების შესაბამისად:

    • გააქტიურეთ შინაური ცხოველი სიგნალები ჭამის/სმის შესახებ.
    • განსაზღვრეთ რა მანძილია ჭამა/სმის სიგნალის გააქტიურება.
    • განსაზღვრეთ თასები და ტანკები მონაცემთა დამუშავება.
    • შეცვალეთ განაწილების დრო (რამდენ ხანს ხდება განაწილებები - ავტომატური რეჟიმი და ღილაკის დაჭერა).
    • განსაზღვრეთ საკვების თასის გადავსების ბარიერი პროცენტული მაჩვენებლით (გააუქმეთ საკვების ავტომატური გაცემა, თუ თასში საკმარისი საკვებია).

განათავსეთ ნაკადი (ზედა მარჯვნივ).

* მხოლოდ პირველი განლაგებისას, თქვენ ნახავთ გაფრთხილებას გამართვის ფანჯარაში დაკარგული 'persistance.json' ფაილის შესახებ. არ ინერვიულოთ ამაზე, რადგან იმ მომენტში, როდესაც თქვენ დააყენებთ კვების დროს ან შეცვლით წყლის ავტომატურ გადამრთველს, ის ინიციალიზებს ამ ფაილს და თქვენ აღარ გექნებათ ეს გაფრთხილება.

თქვენ შეგიძლიათ ნახოთ თქვენი საინფორმაციო დაფა https:// NODE-RED_PC'S_INTERNAL_IP_ADDRESS: 1880/ui (თუ თქვენ ხართ დაკავშირებული იმავე LAN სერვერთან) ან YOUR_NGROK_ADDRESS/ui (ყველგან).

ნაბიჯი 9: შეფუთვა

Გახვევა
Გახვევა

ვიმედოვნებთ, რომ ეს გაკვეთილი იყო ინფორმაციული და ადვილად წასაკითხი, გასაგები და განსახორციელებელი.

მოგერიდებათ გვეკითხება რამე.

გირჩევთ: