সুচিপত্র:

গ্রিন হাউস অটোমেশন: 11 টি ধাপ
গ্রিন হাউস অটোমেশন: 11 টি ধাপ

ভিডিও: গ্রিন হাউস অটোমেশন: 11 টি ধাপ

ভিডিও: গ্রিন হাউস অটোমেশন: 11 টি ধাপ
ভিডিও: ১২.০৩. অধ্যায় ১২ : জলবায়ু পরিবর্তন - গ্রিন হাউজ প্রভাব, গ্রিন হাউজ গ্যাস [Class 5] 2024, জুলাই
Anonim
গ্রিন হাউস অটোমেশন
গ্রিন হাউস অটোমেশন

গ্রিন হাউস অটোমেশন এমন একটি প্রকল্প যেখানে গ্রীন হাউসের তিনটি প্যারামিটার, যেমন মাটির আর্দ্রতা, তাপমাত্রা এবং আর্দ্রতা, ব্যবহারকারী দূরবর্তীভাবে কেবল ওয়েব ব্রাউজার ব্যবহার করে পর্যবেক্ষণ করে।

ধাপ 1: প্রয়োজনীয় উপাদান

প্রয়োজনীয় উপাদান
প্রয়োজনীয় উপাদান
প্রয়োজনীয় উপাদান
প্রয়োজনীয় উপাদান
প্রয়োজনীয় উপাদান
প্রয়োজনীয় উপাদান

প্রয়োজনীয় কিছু প্রয়োজনীয় উপাদান নীচে তালিকাভুক্ত করা হয়েছে

1. রাস্পবেরি পিআই মডেল বি

2. NodeMCU উন্নয়ন বোর্ড

3. ESP8266 ওয়াইফাই মডিউল

4. আর্দ্রতা সেন্সর

5. DHT11 তাপমাত্রা ও আর্দ্রতা সেন্সর

6. 5V একক চ্যানেল রিলে

7. 5V সাবমার্সিবল ওয়াটার পাম্প

8. রুটি বোর্ড

9. রুটি বোর্ড পাওয়ার সাপ্লাই মডিউল

ধাপ 2: ভাষা এবং প্রোটোকল

ভাষা ও প্রটোকল
ভাষা ও প্রটোকল
ভাষা ও প্রটোকল
ভাষা ও প্রটোকল
ভাষা ও প্রটোকল
ভাষা ও প্রটোকল
  • মাইক্রো কন্ট্রোলারের জন্য C ভাষা ব্যবহার করা হয়।
  • MQTT মেসেজিং: MQTT মানে MQ Telemetry Transport। এটি একটি পাবলিশ/সাবস্ক্রাইব, অত্যন্ত সহজ এবং লাইটওয়েট মেসেজিং প্রোটোকল, যা সীমিত ডিভাইস এবং লো-ব্যান্ডউইথ, হাই-লেটেন্সি বা অবিশ্বস্ত নেটওয়ার্কের জন্য ডিজাইন করা হয়েছে। ডিজাইনের নীতিগুলি হল নেটওয়ার্ক ব্যান্ডউইথ এবং ডিভাইস রিসোর্সের প্রয়োজনীয়তা কমিয়ে আনা, যখন নির্ভরযোগ্যতা নিশ্চিত করার চেষ্টা করা এবং ডেলিভারির কিছু ডিগ্রী নিশ্চিত করা। এই নীতিগুলি প্রবর্তিত "মেশিন-টু-মেশিন" (এম 2 এম) বা "ইন্টারনেট অফ থিংস" সংযুক্ত ডিভাইসের জগতের প্রোটোকলকে আদর্শ করে তোলে, এবং মোবাইল অ্যাপ্লিকেশনগুলির জন্য যেখানে ব্যান্ডউইথ এবং ব্যাটারি পাওয়ার প্রিমিয়ামে থাকে।
  • পাইথন প্রোগ্রাম জল প্রবাহ এবং ডাটাবেস সংযোগ স্বয়ংক্রিয় করার জন্য ব্যবহৃত হয়।

ধাপ 3: Eclipse Mosquitto MQTT ব্রোকার

Eclipse Mosquitto MQTT ব্রোকার
Eclipse Mosquitto MQTT ব্রোকার

এখানে আমি নোডগুলির মধ্যে সহজ বার্তা যোগাযোগের জন্য Mosquitto MQTT ব্রোকার ব্যবহার করেছি।

Eclipse Mosquitto হল একটি ওপেন সোর্স (EPL/EDL লাইসেন্সযুক্ত) বার্তা দালাল যা MQTT প্রোটোকল সংস্করণ 5.0, 3.1.1 এবং 3.1 প্রয়োগ করে। মশারি হালকা ওজনের এবং কম পাওয়ার সিঙ্গেল বোর্ড কম্পিউটার থেকে পূর্ণ সার্ভার পর্যন্ত সব ডিভাইসে ব্যবহারের জন্য উপযুক্ত।

MQTT প্রোটোকল একটি পাবলিশ/সাবস্ক্রাইব মডেল ব্যবহার করে মেসেজিং করার একটি হালকা পদ্ধতি প্রদান করে। এটি ইন্টারনেট অব থিংস মেসেজিং এর জন্য উপযুক্ত করে তোলে যেমন কম পাওয়ার সেন্সর বা মোবাইল ডিভাইস যেমন ফোন, এম্বেডেড কম্পিউটার বা মাইক্রো কন্ট্রোলার।

Mosquitto প্রকল্প MQTT ক্লায়েন্টদের বাস্তবায়নের জন্য একটি C লাইব্রেরি প্রদান করে এবং খুব জনপ্রিয় Mositto_pub এবং Mosquitto_sub কমান্ড লাইন MQTT ক্লায়েন্টদের।

ধাপ 4: সম্পূর্ণ প্রকল্পে তথ্য প্রবাহ

উপরের ছবিতে নোডগুলো আছে

  1. NodeMCU
  2. রাস্পবেরি পিআই
  3. ESP8266

NodeMCU হল গ্রিন হাউসের সংবেদনশীল অংশ এবং ESP8266 হল সক্রিয় অংশ যা পানি সরবরাহ করে যখন সেন্সর অনুযায়ী মাটির প্রয়োজন হয়।

রাস্পবেরি পিআইতে মশকিটো ব্রোকার এবং পাইথন ক্লায়েন্ট রয়েছে যা এমকিউটিটি ব্রোকার থেকে আসা বার্তাগুলি সাবস্ক্রাইব করে এবং ডেটা এসকিউএল সার্ভারে সংরক্ষণ করে।

ধাপ 5: NodeMCU এর সাথে সেন্সরের সংযোগ

NodeMCU এর সাথে সেন্সরের সংযোগ
NodeMCU এর সাথে সেন্সরের সংযোগ

DHT11 তাপমাত্রা এবং আর্দ্রতা সেন্সর এবং জল আর্দ্রতা সেন্সর 3.3 ভোল্টে কাজ করতে সক্ষম।

NodeMCU 3.3 ভোল্টের বেশি সরবরাহ করতে পারে না। সুতরাং সেন্সরগুলি সরাসরি নোডএমসিইউ মাইক্রোকন্ট্রোলার বোর্ডের সাথে সংযুক্ত হতে পারে।

ধাপ 6: ESP8266 এর সাথে সাবমার্সিবল ওয়াটার পাম্পের সংযোগ

ESP8266 এর সাথে সাবমার্সিবল ওয়াটার পাম্পের সংযোগ
ESP8266 এর সাথে সাবমার্সিবল ওয়াটার পাম্পের সংযোগ
ESP8266 এর সাথে সাবমার্সিবল ওয়াটার পাম্পের সংযোগ
ESP8266 এর সাথে সাবমার্সিবল ওয়াটার পাম্পের সংযোগ

একটি সাবমার্সিবল ওয়াটার পাম্প যখন প্রয়োজন হয় তখন পানি সরবরাহ করতে ব্যবহৃত হয়।

পানির পাম্পটি চালানোর জন্য 5 ভোল্ট পাওয়ার সাপ্লাই প্রয়োজন।

মোটর সংযোগের জন্য একটি একক চ্যানেল রিলে প্রয়োজন। যখন ESP8266 এর GPIO2 পিন সক্রিয় হয় তখন রিলে চালু হয়ে যায় এবং স্বয়ংক্রিয়ভাবে সাবমার্সিবল ওয়াটার পাম্প ব্যবহার করে পানি সরবরাহ করে।

এখানে ESP8266 বোর্ড, রিলে এবং সাবমার্সিবল ওয়াটার পাম্পে বাহ্যিক বিদ্যুৎ সরবরাহ করা হয়।

আমার সম্পূর্ণ হার্ডওয়্যার সংযোগ উপরের ছবিতে রয়েছে।

ধাপ 7: রাস্পবেরি পাইতে মশার দালাল এবং রানিং পাইথন প্রোগ্রাম ইনস্টল করা

রাস্পবেরি পিআই -তে মশার দালাল ইনস্টল করার ধাপগুলি নিম্নরূপ

টার্মিনালটি খুলুন এবং নিম্নলিখিত কমান্ডগুলি টাইপ করুন

sudo apt-add-repository ppa: মশারি-দেব/মশারি-পিপিএ

sudo apt- আপডেট পান

sudo apt-get install মশা

sudo apt-get install মশা-ক্লায়েন্ট

এটি স্বয়ংক্রিয়ভাবে মশা শুরু করা উচিত।

যে পরিষেবাটি আমি ব্যবহার করতে চাই তা বন্ধ করতে এবং শুরু করতে

সুডো সার্ভিস মশা বন্ধ

সুডো পরিষেবা মশার শুরু

বেশিরভাগ সাইট যেখানে আমি ফরম্যাট ব্যবহার করে আবিষ্কার করেছি।

sudo /etc/init.d/mosquitto স্টপ

ধাপ 8: কিভাবে MQTT কাজ করে?

কিভাবে MQTT কাজ করে?
কিভাবে MQTT কাজ করে?

MQTT IoT প্রজেক্টে সবচেয়ে বেশি ব্যবহৃত প্রোটোকলগুলির মধ্যে একটি। এটি মেসেজ কুইং টেলিমেট্রি ট্রান্সপোর্টের জন্য দাঁড়িয়েছে।

উপরন্তু, এটি একটি লাইটওয়েট মেসেজিং প্রোটোকল হিসাবে ডিজাইন করা হয়েছে যা ক্লায়েন্ট এবং সার্ভারের মধ্যে তথ্য বিনিময় করতে পাবলিশ/সাবস্ক্রাইব অপারেশন ব্যবহার করে। তদুপরি, এর ছোট আকার, কম বিদ্যুত ব্যবহার, ডেটা প্যাকেট কমানো এবং বাস্তবায়নের সহজতা প্রোটোকলকে "মেশিন-টু-মেশিন" বা "ইন্টারনেট অফ থিংস" বিশ্বের আদর্শ করে তোলে।

অন্য যে কোন ইন্টারনেট প্রটোকলের মত, MQTT ক্লায়েন্ট এবং একটি সার্ভারের উপর ভিত্তি করে। একইভাবে, সার্ভার হল সেই ব্যক্তি যিনি ক্লায়েন্টের একে অপরের মধ্যে তথ্য গ্রহণ বা পাঠানোর অনুরোধগুলি পরিচালনা করার জন্য দায়ী।এমকিউটিটি সার্ভারকে ব্রোকার বলা হয় এবং ক্লায়েন্টরা কেবল সংযুক্ত ডিভাইস।

* যখন কোনো ডিভাইস (ক্লায়েন্ট) ব্রোকারের কাছে ডেটা পাঠাতে চায়, তখন আমরা এই অপারেশনকে “পাবলিশ” বলি।

* যখন কোনো ডিভাইস (ক্লায়েন্ট) ব্রোকারের কাছ থেকে ডেটা পেতে চায়, তখন আমরা এই অপারেশনকে "সাবস্ক্রাইব" বলি।

ধাপ 9: প্রোগ্রামিং নোডএমসিইউ এবং ইএসপি 8266

NodeMCU এবং ESP8266 মাইক্রোকন্ট্রোলার বোর্ডের সোর্স কোড নিচে দেওয়া হল

ধাপ 10: একটি ওয়েব পেজ ডিজাইন করা এবং এসকিউএল ডাটাবেসের সাথে সংযুক্ত হওয়া

HTML, CSS এবং PHP ভাষা ব্যবহার করে ওয়েব পেজ ডিজাইন করা হয়েছে।

পিএইচপি ডেটাবেস থেকে সেন্সর রিডিং বের করে এইচটিএমএল পেজে দেখানোর জন্য ব্যবহৃত হয়।

একটি পাইথন প্রোগ্রাম এই প্রকল্পের হৃদয় হিসাবে ব্যবহৃত হয়।

যে কাজগুলি পাইথন প্রোগ্রাম করছে তা নিম্নরূপ।

  1. এটি এমন একটি বিষয়কে সাবস্ক্রাইব করে যেখানে সেন্সর সেন্সর রিডিং পাঠায়।
  2. এটি এমকিউটিটি ব্রোকারকে ওয়াটার পাম্প অন/অফ কমান্ড প্রকাশ করে।
  3. এটি সেন্সর পড়া একটি এসকিউএল ডাটাবেসে সংরক্ষণ করে।

এখানে আমার ক্ষেত্রে পাইথন প্রোগ্রাম এবং SQL ডাটাবেস একটি ল্যাপটপে উপস্থিত। একটি স্থানীয় হোস্টের মাধ্যমে চলমান ওয়েব পেজ।

আমার পাইথন প্রোগ্রামের সোর্স কোড নিম্নরূপ।

ধাপ 11: সম্পূর্ণ কাজ

সম্পূর্ণ কাজ
সম্পূর্ণ কাজ

নিম্নলিখিত ধাপগুলি যা প্রক্রিয়া চলতে থাকে।

  1. NodeMCU সেন্সিং অংশ হিসেবে কাজ করে এবং তাপমাত্রা, আর্দ্রতা এবং মাটির আর্দ্রতার মাত্রা পড়ে।
  2. এটি MQTT দালালের কাছে "টপিক 1" বিষয় সহ পাঠ পাঠায়
  3. একটি ল্যাপটপে পাইথন প্রোগ্রাম চলছে এবং এটি এমকিউটিটি ব্রোকারের সাথে "টপিক 1" বিষয় সাবস্ক্রাইব করে।
  4. যখন NodeMCU রিডিং পাঠায় তখন Mosquitto MQTT Broker অবিলম্বে পাইথন প্রোগ্রামে ডেটা পাঠায়।
  5. পাইথন প্রোগ্রাম তখন হিসাব করে যে গ্রিন হাউসে পানির প্রয়োজন আছে কিনা। তারপর এটি এসকিউএল ডাটাবেসে রিডিং সংরক্ষণ করে।
  6. যদি গ্রিন হাউসে পানির প্রয়োজন হয়, তাহলে পাইথন প্রোগ্রাম "টপিক 2" বিষয় নিয়ে মশার এমকিউটিটি ব্রোকারকে ওয়াটার পাম্প অন/অফ বার্তা প্রকাশ করে
  7. ESP8266 একটি actuator হিসাবে কাজ করে। এটি "টপিক 2" বিষয়টিতে সাবস্ক্রাইব করে, কোন বিষয়ে পাইথন প্রোগ্রাম বার্তা প্রকাশ করছে। যখন পাইথন প্রোগ্রাম কোন বার্তা প্রকাশ করে তখন বার্তাটি অবিলম্বে ESP8266 এ স্থানান্তরিত হয়। অন/অফ মেসেজ অনুসারে, এটি সাবমার্সিবল ওয়াটার পাম্প চালু/বন্ধ করে দিয়েছে।
  8. ওয়েব পেজে লাইভ রিডিং প্রদর্শনের শেষ পর্ব। ওয়েব পেজ এসকিউএল ডাটাবেস থেকে ডেটা নিয়ে আসে যেখানে পাইথন প্রোগ্রাম সরাসরি ডেটা সঞ্চয় করে এবং পৃষ্ঠায় রিডিং প্রদর্শন করে।

প্রস্তাবিত: