সুচিপত্র:

রুম থার্মোস্ট্যাট - Arduino + ইথারনেট: 3 ধাপ
রুম থার্মোস্ট্যাট - Arduino + ইথারনেট: 3 ধাপ

ভিডিও: রুম থার্মোস্ট্যাট - Arduino + ইথারনেট: 3 ধাপ

ভিডিও: রুম থার্মোস্ট্যাট - Arduino + ইথারনেট: 3 ধাপ
ভিডিও: কিভাবে বাড়িতে একটি ওয়্যারলেস রুম থার্মোস্ট্যাট তৈরি করবেন / আপনার প্রাকৃতিক গ্যাস বিল কম করুন 2024, নভেম্বর
Anonim
রুম থার্মোস্ট্যাট - Arduino + ইথারনেট
রুম থার্মোস্ট্যাট - Arduino + ইথারনেট

হার্ডওয়্যারের ক্ষেত্রে, প্রকল্পটি ব্যবহার করে:

  • Arduino Uno / Mega 2560
  • ইথারনেট ieldাল Wiznet W5100 / ইথারনেট মডিউল Wiznet W5200-W5500
  • ওয়ানওয়ায়ার বাসে DS18B20 তাপমাত্রা সেন্সর
  • রিলে SRD-5VDC-SL-C বয়লার সুইচিংয়ের জন্য ব্যবহৃত হয়

ধাপ 1: ইথারনেট থার্মোস্ট্যাটের বর্ণনা

ইথারনেট থার্মোস্ট্যাটের বর্ণনা
ইথারনেট থার্মোস্ট্যাটের বর্ণনা

Arduino একটি সহজ এমবেডেড প্ল্যাটফর্ম যা ব্যবহার করা যেতে পারে, উদাহরণস্বরূপ, একটি রুম থার্মোস্ট্যাট তৈরি করতে, যা আমরা আজ দেখাবো। থার্মোস্ট্যাটটি ল্যান নেটওয়ার্ক থেকে অ্যাক্সেসযোগ্য যেখানে এটি অবস্থিত, যখন এটি একটি ওয়েব ইন্টারফেস দিয়ে সজ্জিত যা থার্মোস্ট্যাটের সমস্ত উপাদান কনফিগার করতে ব্যবহৃত হয়। ওয়েব ইন্টারফেসটি সরাসরি ওয়েব সার্ভার মোডে আরডুইনোতে চলে। ওয়েব সার্ভারটি বেশ কয়েকটি স্বাধীন HTML পৃষ্ঠা চালানোর অনুমতি দেয়, যা তথ্যপূর্ণ বা এমনকি কার্যকরী হতে পারে। ওয়েব সার্ভার পোর্ট 80 - HTTP- এ চলে।

ইলেক্ট্রোম্যাগনেটিক রিলে SRD-5VDC-SL-C, যা প্রকল্পে ব্যবহৃত হয়, 230V-পাওয়ার 2300W এ 10A পর্যন্ত স্যুইচ করার অনুমতি দেয়। ডিসি সার্কিট (লোড) স্যুইচ করার ক্ষেত্রে 300W (30A ডিসিতে 10A) স্যুইচ করা সম্ভব। বিকল্পভাবে, OMRON G3MB-202P SSR রিলে ওয়্যারিং ডায়াগ্রামের জন্য সম্পূর্ণরূপে সামঞ্জস্যপূর্ণ, যা শুধুমাত্র অ-ইনডাকটিভ লোডের জন্য এবং শুধুমাত্র এসি সার্কিটের জন্য উপযুক্ত। সর্বোচ্চ সুইচিং পাওয়ার 460W (230V, 2A)। ইথারনেট ieldাল এবং অন্যান্য পেরিফেরালগুলির সাথে Arduino এর ব্যবহার রিলে খোলা অবস্থায় 100-120mA স্তরে রয়েছে। যখন বন্ধ, 5V সরবরাহে 200mA এর নিচে।

ধাপ 2: ওয়েব ইন্টারফেস

ওয়েব ইন্টারফেস
ওয়েব ইন্টারফেস

থার্মোস্ট্যাটের জন্য ওয়েব ইন্টারফেস অনুমতি দেয়:

  • DS18B20 সেন্সর থেকে রিয়েল-টাইম তাপমাত্রা দেখুন
  • পৃষ্ঠায় গতিশীল আউটপুট পরিবর্তনের সাথে রিয়েল-টাইম রিলে অবস্থা দেখুন
  • লক্ষ্যমাত্রা (রেফারেন্স) তাপমাত্রা 5 থেকে 50 ডিগ্রি সেলসিয়াসে 0.25 ডিগ্রি সেলসিয়াস ধাপে পরিবর্তন করুন
  • 0.25 ° C ধাপের সাথে 0 থেকে 10 ° C পরিসরে হিস্টেরেসিস পরিবর্তন করুন

ওয়েব ইন্টারফেসটি বড় এবং ছোট স্ক্রিনের জন্য ডিজাইন করা হয়েছে। এটি প্রতিক্রিয়াশীল, ওয়াইডস্ক্রিন হাই-ডেফিনিশন স্ক্রিন সমর্থন করে, কিন্তু মোবাইল ডিভাইসগুলিও। ইন্টারফেসটি একটি বহিরাগত CDN সার্ভার থেকে বুটস্ট্র্যাপ ফ্রেমওয়ার্কের আমদানি করা CSS শৈলী ব্যবহার করে, যা Arduino এ চলমান একটি পৃষ্ঠা খোলার সময় ক্লায়েন্ট-সাইড ডিভাইস লোড করে। যেহেতু Arduino Uno মেমরি সীমিত, এটি মাত্র কয়েক কেবি আকারের পৃষ্ঠা চালাতে পারে। একটি বহিরাগত সার্ভার থেকে CSS শৈলী আমদানি করে, এটি Arduino এর কর্মক্ষমতা এবং মেমরি লোড হ্রাস করবে। সফটওয়্যার বাস্তবায়ন (Arduine Uno এর জন্য) 70% ফ্ল্যাশ মেমরি (32kB - 4kB বুটলোডার) এবং 44% RAM মেমরি (2kB) ব্যবহার করে।

একটি ওয়েব পেজের স্ট্যাটিক অংশ (এইচটিএমএল ডকুমেন্ট হেডার এবং ফুটার, বুটস্ট্র্যাপ সিএসএস লিঙ্কিং, মেটা ট্যাগ, এইচটিটিপি রেসপন্স হেডার, কন্টেন্ট টাইপ, ফর্ম এবং আরও অনেক কিছু) সরাসরি আরডুইনো ফ্ল্যাশ মেমরিতে সংরক্ষিত থাকে, যা ব্যবহারকারীর জন্য ব্যবহৃত র‍্যামের পরিমাণ উল্লেখযোগ্যভাবে কমাতে পারে। -উত্পাদিত সামগ্রী। ওয়েব সার্ভার এইভাবে আরো স্থিতিশীল এবং একই সময়ে নেটওয়ার্কের একাধিক ডিভাইসের বহু-সংযোগ পরিচালনা করতে পারে।

পাওয়ার ব্যর্থতার পরেও সেট মানগুলি রাখার জন্য, সেগুলি আরডুইনো এর EEPROM মেমরিতে সংরক্ষণ করা হয়। রেফারেন্স তাপমাত্রা অফসেট 10, হিস্টেরেসিস অফসেট 100। প্রতিটি মান EEPROM মেমরিতে সর্বোচ্চ 5B দখল করে। EEPROM ট্রান্সক্রিপশন সীমা 100,000 প্রতিলিপি স্তরে। এইচটিএমএল ফর্ম জমা দিলেই ডেটা ওভাররাইট হয়। যদি ডিভাইসটি প্রথম স্টার্ট -আপে উল্লেখিত EEPROM অফসেটগুলিতে সংরক্ষিত না থাকে, তাহলে স্বয়ংক্রিয় লেখা ডিফল্ট মানগুলির সাথে সঞ্চালিত হবে - রেফারেন্স: 20.25, হিস্টেরেসিস 0.25 ° C

রিফ্রেশ মেটা ট্যাগ প্রতি 10 সেকেন্ডে পুরো আরডুইনো পৃষ্ঠা রিফ্রেশ করে। এই সময়ের মধ্যে থার্মোস্ট্যাটের জন্য পরিবর্তন লিখতে হবে, অন্যথায় পৃষ্ঠাটি রিফ্রেশ করার সময় ইনপুট উইন্ডোগুলি পুনরায় সেট করা হবে। যেহেতু ইথারনেট লাইব্রেরিতে অ্যাসিঙ্ক্রোনাস ওয়েব সার্ভারের ব্যবহার অন্তর্ভুক্ত নয়, তাই পুরো পৃষ্ঠাটি অবশ্যই নতুন করে লিখতে হবে। যে ডাইনামিক ডেটা মূলত পরিবর্তন হচ্ছে তা হল আউটপুটের বর্তমান মান - চালু / বন্ধ।

ধাপ 3: ওয়েব সার্ভার, স্কিম্যাটিক্স, সোর্স কোড এ চলমান এইচটিএমএল পেজ

এইচটিএমএল পেইজ ওয়েব সার্ভারে চলছে, স্কিম্যাটিক্স, সোর্স কোড
এইচটিএমএল পেইজ ওয়েব সার্ভারে চলছে, স্কিম্যাটিক্স, সোর্স কোড

আরডুইনোতে এইচটিএমএল পৃষ্ঠা চলছে:

  • / - রুট পৃষ্ঠার ফর্ম, রিলে, তাপমাত্রার বর্তমান লজিক আউটপুট তালিকা
  • /action।
  • / get_data/ - JSON ফরম্যাটে বর্তমান তাপমাত্রা, রেফারেন্স তাপমাত্রা এবং হিস্টেরেসিসের তথ্য তৃতীয় পক্ষের (কম্পিউটার, মাইক্রোকন্ট্রোলার, অন্যান্য ক্লায়েন্ট …) বিতরণ করে

এই থার্মোস্ট্যাটের বর্ধিত সংস্করণও রয়েছে যার মধ্যে রয়েছে:

  • রিলেগুলির জন্য ম্যানুয়াল মোড (সীমাহীন সময়, হার্ড অন / অফ)
  • সময় নির্ণায়ক পাহরাদার
  • আরো সেন্সর পাওয়া যায়, উদাহরণস্বরূপ: SHT21, SHT31, DHT22, BME280, BMP280 এবং অন্যান্য
  • কুলিং মোড
  • ইথারনেট থেকে স্বাধীন RS232 / UART এর মাধ্যমে নিয়ন্ত্রণ এবং কনফিগারেশন
  • থার্মোস্ট্যাটের জন্য পিআইডি তাপমাত্রা নিয়ন্ত্রণ
  • থার্মোস্ট্যাটের জন্য ESP8266, ESP32 প্ল্যাটফর্ম ব্যবহারের সম্ভাবনা

প্রকল্পের জন্য প্রোগ্রাম বাস্তবায়ন পাওয়া যাবে: https://github.com/martinius96/termostat-ethernet/ বাস্তবায়নে ইথারনেট ieldালকে নির্ধারিত স্থির/গতিশীল IPv4 ঠিকানার জন্য প্রোগ্রাম রয়েছে।

থার্মোস্ট্যাট শুধুমাত্র অভ্যন্তরীণ তাপমাত্রার জন্য তৈরি! (0 ডিগ্রি সেন্টিগ্রেডের উপরে), যেখানে সিস্টেম লজিক মানিয়ে নেওয়া হয়। একটি বিদ্যমান রুম থার্মোস্ট্যাটকে থার্মোস্ট্যাট দিয়ে প্রতিস্থাপিত করা সম্ভব, সাময়িকভাবে একটি রেফ্রিজারেটরে একটি থার্মোস্ট্যাট প্রতিস্থাপন করা সম্ভব, একটি টেরারিয়ামে স্থির তাপমাত্রা বজায় রাখা এবং এর মতো।

প্রস্তাবিত: