
Სარჩევი:
2025 ავტორი: John Day | [email protected]. ბოლოს შეცვლილი: 2025-01-23 14:50

ტექნიკის თვალსაზრისით, პროექტი იყენებს:
- Arduino Uno / მეგა 2560
- Ethernet ფარი Wiznet W5100 / Ethernet მოდული Wiznet W5200-W5500
- DS18B20 ტემპერატურის სენსორი OneWire ავტობუსზე
- სარელეო SRD-5VDC-SL-C გამოიყენება ქვაბის გადართვისთვის
ნაბიჯი 1: Ethernet თერმოსტატის აღწერა

არდუინო არის მოსახერხებელი პლატფორმა, რომლის გამოყენებაც შესაძლებელია, მაგალითად, ოთახის თერმოსტატის ასაშენებლად, რასაც დღეს ვაჩვენებთ. თერმოსტატი ხელმისაწვდომია LAN ქსელიდან, რომელშიც ის მდებარეობს, ხოლო ის აღჭურვილია ვებ ინტერფეისით, რომელიც გამოიყენება თერმოსტატის ყველა ელემენტის კონფიგურაციისთვის. ვებ ინტერფეისი მუშაობს უშუალოდ Arduino– ზე ვებ სერვერის რეჟიმში. ვებ სერვერი საშუალებას გაძლევთ გაუშვათ რამდენიმე დამოუკიდებელი HTML გვერდი, რომელიც შეიძლება იყოს ინფორმაციული ან თუნდაც ფუნქციონალური. ვებ სერვერი მუშაობს 80 პორტზე -
ელექტრომაგნიტური სარელეო SRD-5VDC-SL-C, რომელიც გამოიყენება პროექტში, საშუალებას იძლევა 10A– მდე გადართვა 230V– ზე-სიმძლავრე 2300W. DC ჩართვის (დატვირთვის) გადართვის შემთხვევაში შესაძლებელია 300W (10A 30V DC- ზე) გადართვა. გარდა ამისა, OMRON G3MB-202P SSR სარელეო სრულად არის თავსებადი გაყვანილობის დიაგრამასთან, რომელიც განკუთვნილია მხოლოდ არაინდუქციური დატვირთვისთვის და ექსკლუზიურად AC სქემებისთვის. გადართვის მაქსიმალური სიმძლავრე 460W (230V, 2A). არდუინოს მოხმარება Ethernet ფარით და სხვა პერიფერიული მოწყობილობებით არის 100-120mA დონეზე რელე ღიაა. როდესაც დახურულია, 200mA- ზე ქვემოთ 5V მიწოდებაზე.
ნაბიჯი 2: ვებ ინტერფეისი

თერმოსტატის ვებ ინტერფეისი საშუალებას გაძლევთ:
- იხილეთ რეალურ დროში ტემპერატურა DS18B20 სენსორიდან
- იხილეთ რეალურ დროში სარელეო სტატუსი გვერდზე დინამიური გამომავალი ცვლილებით
- შეცვალეთ სამიზნე (მითითება) ტემპერატურა 5 -დან 50 ° C დიაპაზონში 0.25 ° C საფეხურით
- შეცვალეთ ჰისტერეზი 0 -დან 10 ° C დიაპაზონში 0.25 ° C საფეხურით
ვებ ინტერფეისი შექმნილია უფრო დიდი და პატარა ეკრანებისთვის. ის მგრძნობიარეა, მხარს უჭერს ფართო ეკრანის მაღალი რეზოლუციის ეკრანებს, არამედ მობილურ მოწყობილობებს. ინტერფეისი იყენებს Bootstrap ჩარჩოს იმპორტირებულ CSS სტილებს გარე CDN სერვერიდან, რომელიც იტვირთება კლიენტის მხარის მოწყობილობაზე Arduino– ზე გაშვებული გვერდის გახსნისას. რადგან Arduino Uno არის შეზღუდული მეხსიერებით, მას შეუძლია მხოლოდ რამდენიმე კბაიტის ზომის გვერდების გაშვება. გარე სერვერიდან CSS სტილის იმპორტირებით, ის შეამცირებს Arduino– ს მუშაობას და მეხსიერებას. პროგრამული უზრუნველყოფის დანერგვა (Arduine Uno– სთვის) იყენებს ფლეშ მეხსიერების 70% -ს (32kB - 4kB Bootloader) და 44% ოპერატიული მეხსიერების (2kB).
ვებ გვერდის სტატიკური ნაწილები (HTML დოკუმენტის სათაური და ქვედა კოლონტიტული, Bootstrap CSS კავშირი, მეტა ტეგები, HTTP პასუხის სათაური, შინაარსის ტიპი, ფორმა და სხვა) ინახება უშუალოდ Arduino– ს ფლეშ მეხსიერებაში, რამაც შეიძლება მნიშვნელოვნად შეამციროს მომხმარებლისთვის გამოყენებული RAM -გენერირებული შინაარსი. ამრიგად, ვებ სერვერი უფრო სტაბილურია და შეუძლია გაუმკლავდეს ქსელში რამდენიმე მოწყობილობის ერთდროულად დაკავშირებას.
დენის წყვეტის შემდეგაც კი დადგენილი მნიშვნელობების შესანარჩუნებლად, ისინი ინახება არდუინოს EEPROM მეხსიერებაში. საცნობარო ტემპერატურა ოფსეტში 10, ჰისტერეზი ოფსეტურიდან 100. თითოეული მნიშვნელობა EEPROM მეხსიერებაში იკავებს მაქსიმუმ 5B- ს. EEPROM ტრანსკრიფციის ლიმიტი არის 100,000 ჩანაწერის დონეზე. მონაცემები გადაწერილია მხოლოდ მაშინ, როდესაც წარმოდგენილია HTML ფორმა. იმ შემთხვევაში, თუ მოწყობილობას არაფერი აქვს შენახული ხსენებულ EEPROM გადატვირთვისას პირველი გაშვებისას, ავტომატური წერა შესრულდება ნაგულისხმევი მნიშვნელობებით - მითითება: 20.25, ჰისტერეზი 0.25 ° C
განახლების მეტა ტეგი განაახლებს არდუინოს მთელ გვერდს ყოველ 10 წამში. ამ დროისთვის აუცილებელია თერმოსტატის ცვლილების დაწერა, წინააღმდეგ შემთხვევაში შეყვანის ფანჯრები გადატვირთულია, როდესაც გვერდი განახლდება. იმის გამო, რომ Ethernet ბიბლიოთეკა არ შეიცავს ასინქრონული ვებ სერვერის გამოყენებას, მთელი გვერდი უნდა დაიწეროს. დინამიური მონაცემები, რომლებიც ძირითადად იცვლება არის გამომავალი მიმდინარე მნიშვნელობა - ჩართვა / გამორთვა.
ნაბიჯი 3: ვებ გვერდების სერვერზე გაშვებული HTML გვერდები, სქემები, წყაროს კოდი

არდუინოზე გაშვებული HTML გვერდები:
- / - root გვერდი, რომელიც შეიცავს ფორმას, რელეს მიმდინარე ლოგიკური გამომავალი ჩამონათვალი, ტემპერატურა
- /action.html - ამუშავებს მნიშვნელობებს ფორმიდან, წერს მათ EEPROM მეხსიერებაში, გადამისამართებს მომხმარებელს ძირითად გვერდზე
- / get_data/ - ავრცელებს მონაცემებს მიმდინარე ტემპერატურის, საცნობარო ტემპერატურისა და ჰისტერეზის შესახებ მესამე მხარეს (კომპიუტერი, მიკროკონტროლი, სხვა კლიენტი…) JSON ფორმატში
ასევე არსებობს ამ თერმოსტატის გაფართოებული ვერსია, რომელიც მოიცავს:
- რელეების მექანიკური რეჟიმი (შეუზღუდავი დრო, მძიმე ჩართვა / გამორთვა)
- Watchdog ტაიმერი
- ხელმისაწვდომია მეტი სენსორი, მაგალითად: SHT21, SHT31, DHT22, BME280, BMP280 და სხვა
- გაგრილების რეჟიმი
- კონტროლი და კონფიგურაცია RS232 / UART– ით Ethernet– ისგან დამოუკიდებლად
- PID ტემპერატურის კონტროლი თერმოსტატისთვის
- თერმოსტატისთვის ESP8266, ESP32 პლატფორმების გამოყენების შესაძლებლობა
პროექტის პროგრამის განხორციელება შეგიძლიათ იხილოთ აქ: https://github.com/martinius96/termostat-ethernet/ განხორციელება შეიცავს პროგრამებს Ethernet ფარისთვის მინიჭებული სტატიკური/დინამიური IPv4 მისამართისთვის.
თერმოსტატი განკუთვნილია მხოლოდ შიდა ტემპერატურისთვის! (0 ° C- ზე ზემოთ), რომელსაც ადაპტირებული აქვს სისტემის ლოგიკა. შესაძლებელია არსებული ოთახის თერმოსტატის ჩანაცვლება თერმოსტატით, შესაძლებელია თერმოსტატის დროებით შეცვლა მაცივარში, მუდმივი ტემპერატურის შენარჩუნება ტერარიუმში და მსგავსი.
გირჩევთ:
Raspberry Pi 4 ლეპტოპის/კომპიუტერის საშუალებით Ethernet კაბელის გამოყენებით (მონიტორის გარეშე, Wi-Fi– ს გარეშე): 8 ნაბიჯი

დააინსტალირეთ Raspberry Pi 4 ლეპტოპის/კომპიუტერის საშუალებით Ethernet კაბელის გამოყენებით (მონიტორის გარეშე, Wi-Fi– ს გარეშე): ამაში ჩვენ ვიმუშავებთ Raspberry Pi 4 Model-B– ით 1 GB ოპერატიული მეხსიერებით. Raspberry-Pi არის ერთჯერადი კომპიუტერი, რომელიც გამოიყენება საგანმანათლებლო მიზნებისთვის და წვრილმანი პროექტებისთვის, ხელმისაწვდომი ღირებულებით, საჭიროებს 5V 3A დენის წყაროს. ოპერაციული სისტემების მსგავსად
როგორ გააკეთოთ Ethernet კაბელი: 5 ნაბიჯი

როგორ გააკეთოთ Ethernet კაბელი: გამარჯობა! დღეს ჩვენ ვისწავლით თუ როგორ უნდა გააკეთოთ თქვენი საკუთარი ინდუსტრიის სტანდარტული Ethernet კაბელი! რომელი შეძლებს დაზოგოს თქვენი ფული, როდესაც საქმე ეხება კაბელების საჭიროებას! მაშ რატომ ვარ კვალიფიცირებული გასწავლოთ? ისე, მე IT პროფესიონალი ვარ, ბოლო 2 გავატარე
DIY 10/100M Ethernet PoE ინჟექტორი: 6 ნაბიჯი

DIY 10/100M Ethernet PoE ინჟექტორი: აქ ჩვენ გავაკეთებთ მარტივ PoE ინექტორს, რომელიც შესაფერისია 10/100M Ethernet– ისთვის, ასევე შეიძლება იკვებებოდეს უშუალოდ ბატარეებით
MCP23017 GPIO კონტროლი Ethernet– ის საშუალებით: 5 ნაბიჯი

MCP23017 GPIO კონტროლი Ethernet– ით: კონტროლი MCP23017 IO გაფართოება ეთერნეტის საშუალებით სენსორული ხიდისა და MCP23017 გაფრქვევის დაფის გამოყენებით. პითონის სკრიპტების, ბრაუზერის მისამართების ან ნებისმიერი სისტემის მიერ გაგზავნილი ბრძანებები HTTP კომუნიკაციით. შეიძლება ინტეგრირებული იყოს სახლის ასისტენტში სახლის ავტომატიზაციისთვის. მავთულები არის
Shift რეგისტრების კასკადი 74HC595 კონტროლირებადი არდუინოსა და Ethernet– ის საშუალებით: 3 ნაბიჯი

Shift რეგისტრების კასკადი 74HC595 კონტროლირებადი არდუინოსა და Ethernet– ის საშუალებით: დღეს მინდა წარმოგიდგინოთ პროექტი, რომელიც განვახორციელე ორ ვერსიაში. პროექტი იყენებს 12 ცვლის რეგისტრატორს 74HC595 და 96 LED- ებს, Arduino Uno დაფას Ethernet ფარით Wiznet W5100. თითოეულ ცვლის რეგისტრს უკავშირდება 8 LED. რიცხვები 0