সুচিপত্র:
- ধাপ 1: ওয়াইফাই এবং MQTT এর মাধ্যমে ব্যাক-আপ করুন
- ধাপ 2: দূরবর্তী/প্রেরক
- ধাপ 3: রিসিভার - হার্ডওয়্যার (esp8266 এবং রাস্পবেরি পাই)
- ধাপ 4: রিসিভার - সফটওয়্যার (সিরিয়াল, নোড রেড, এমকিউটিটি)
ভিডিও: ESP-NOW হোম অটোমেশন Esp8266 রাস্পবেরি পাই MQTT: 4 টি ধাপ
2024 লেখক: John Day | [email protected]. সর্বশেষ পরিবর্তিত: 2024-01-30 08:01
এই নির্দেশনায় আমি আপনাকে দেখাব কিভাবে আমি আমার বাড়ির অটোমেশনে ESP-NOW ব্যবহার করেছি। পরিকল্পিত আপনি যোগাযোগ প্রবাহ দেখতে পারেন
আমি তোমাকে দেখাবো:
- প্রেরক কিভাবে কাজ করে
- রিসিভার কিভাবে কাজ করে
- রাস্পবেরি পাইয়ের সাথে সিরিয়াল যোগাযোগ কীভাবে কাজ করে
এমকিউটিটি এবং আমার হোম অটোমেশন কীভাবে কাজ করে তা আমি দেখাই না, আপনি এর জন্য অন্যান্য ভাল নির্দেশনা পেতে পারেন।
ক্রেডিট: এই নির্দেশযোগ্য দ্বারা অনুপ্রাণিত হয়েছিল:
Andreas Spiess এর ভিডিও #172
www.esploradores.com/practica-6-conexion-es…
ধাপ 1: ওয়াইফাই এবং MQTT এর মাধ্যমে ব্যাক-আপ করুন
আমি খুঁজে পেয়েছি যে ESP-NOW অত্যন্ত দ্রুত এবং বেশ নির্ভরযোগ্য, কিন্তু কখনও কখনও ব্যর্থ হয়। আমার প্রোগ্রামে আমি স্বাভাবিক ওয়াইফাই এবং এমকিউটিটি সংযোগের মাধ্যমে একটি ব্যাক-আপ যুক্ত করেছি।
ধাপ 2: দূরবর্তী/প্রেরক
প্রথম স্কিমে আপনি দেখতে পাবেন কিভাবে প্রেরকের প্রোগ্রাম কাজ করে:
- Esp8266 পাওয়ার আপ বা রিসেট থেকে শুরু হয়
- ইএসপি-এখন শুরু হয়েছে
- মডিউল একটি নির্ধারিত সময়ের জন্য ESP- এখন পাঠায়
-
মডিউল চেক করে যে ESP-NOW বার্তাটি রিসিভার কল-ব্যাক ফাংশনে পেয়েছে কিনা।
- যদি ইএসপি-নাউ মেসেজ পাওয়া যায়, মডিউলটি কম পাওয়ারের গভীর ঘুমে চলে যায়
- যদি ESP-NOW বার্তাটি না পাওয়া যায়, তাহলে মডিউলটি একটি ওয়াইফাই সংযোগ এবং একটি MQTT সংযোগ একটি ব্যাক-আপ সংযোগ হিসাবে শুরু করে।
প্রেরকের জন্য প্রোগ্রাম আমার Github (Master_sender.ino) এ আছে। প্রোগ্রামগুলি এমকিউটিটি হোম অটোমেশনের জন্য বিষয় এবং বার্তা উভয়ই একত্রিত ESP-NOW বার্তায় পাঠায়, যা রিসিভারে সহজ বিভাজনের জন্য 'এবং' চিহ্নের সাথে মিলিত হয়।
আমি দুটি ভিন্ন রিমোট/প্রেরক তৈরি করেছি:
প্রেরক 1: esp8266 গভীর ঘুমে এবং একটি রিসেট দ্বারা সক্রিয় করা হয়। মডিউলটি সম্পন্ন হলে বাটনের নেতৃত্ব জ্বলে ওঠে এবং নিস্তেজ হয়ে যায়। যদি ব্যাটারির ভোল্টেজ কম হয়, তবে নেতৃত্বের ঝলকানি। যদি ESP-NOW ব্যর্থ হয়, তাহলে ওয়াইফাই/MQTT সংযোগে পরিবর্তনের আগে LED ঝলক দেয়। Esp8266 একটি LiPo ব্যাটারি থেকে HT7333 ভোল্টেজ রেগুলেটর দিয়ে 3.3V তে চালিত
প্রেরক 2: esp8266 বন্ধ এবং বোতাম টিপে চালিত হয়। সাধারণত ESP-NOW সংযোগটি 'ক্লিক' বাটনের পরে সম্পন্ন করা হয়। Esp8266 সরাসরি LiPo ব্যাটারি থেকে চালিত হয়। আমি জানি না যে esp8266 সম্পূর্ণরূপে চার্জ করা ব্যাটারির উচ্চ ভোল্টেজ (4.2 V পর্যন্ত) দ্বারা ক্ষতিগ্রস্ত হয় যখন এটি মাত্র 100 ms তে চালিত হয়। এটি চশমা (3.0 - 3.6V) এর চেয়ে বেশি।
দ্রষ্টব্য: যদি ব্যাটারি শক্তি কম থাকে, তাহলে ESP-NOW ব্যর্থ হয়।
ধাপ 3: রিসিভার - হার্ডওয়্যার (esp8266 এবং রাস্পবেরি পাই)
রিসিভারের অবনতি দুটি ভাগে বিভক্ত:
- হার্ডওয়্যার
- সফটওয়্যার
হার্ডওয়্যার
প্রাপ্ত esp-01 আমার রাস্পবেরি পাই জিরোর সাথে সংযুক্ত যা আমার হোম অটোমেশন সিস্টেম (Openhab2) এবং নোড রেড চালায়।
পরিকল্পিত সহজ সংযোগগুলি দেখানো হয়:
- Esp-01 এর RX থেকে RasPi এর TX
- Esp-01 এর TX থেকে RasPi এর RX
- GND থেকে GND
- Esp-01 VCC রাস্পির 3.3V পিন দ্বারা চালিত
- Esp-01 এ RST এবং CH_PD উভয়ই উঁচু টানা হয়।
আমি সহজেই এটি মাউন্ট করার জন্য একটি ইন্টারফেস সংযোগকারী তৈরি করেছি
একটি ছবিতে আপনি আমার রাস্পবেরি পাই 3 এর সাথে আমার তারের সংযোগ দেখতে পারেন (যার একই পিনআউট রয়েছে, কিন্তু আমি CH_PD- এ সংযোগের জন্য অন্য 3.3V পিন ব্যবহার করেছি)।
Esp-01 প্রোগ্রাম করা হয়েছিল যেমন আমার অন্যান্য নির্দেশাবলীতে দেখানো হয়েছে (ধাপ 3 দেখুন)।
ধাপ 4: রিসিভার - সফটওয়্যার (সিরিয়াল, নোড রেড, এমকিউটিটি)
Esp8266 এ প্রোগ্রাম
Esp-01 রিসিভারের জন্য প্রোগ্রামটি আমার Github (Master_sender.ino) এ আছে। প্রোগ্রামটি সত্যিই সহজ, এটি কেবলমাত্র সিরিয়াল পোর্টে প্রাপ্ত রাস্তাবেরি পাইতে প্রাপ্ত ESP-NOW বার্তা প্রিন্ট করে।
সিরিয়াল পোর্ট
রাস্পবেরি পাইতে, আপনাকে অবশ্যই সিরিয়াল পোর্ট সক্রিয় করতে হবে (রাস্পবিয়ানে, 'সুডো রাস্পি-কনফিগ' চালানো) স্বাভাবিক সিরিয়াল যোগাযোগের জন্য।
সিরিয়াল পোর্টের নাম হল:
- রাস্পবেরি পাই জিরো: /dev /ttyAMA0
- রাস্পবেরি পাই 3: /dev /ttyS0
আপনি 'dmesg | চালিয়ে সিরিয়াল পোর্ট চেক করতে পারেন grep tty 'বা' ls /dev '
নোড লাল
নোড রেডে, সিরিয়াল ইনপুট নোড নির্বাচন করুন এবং সিরিয়াল পোর্ট সেটআপ করুন (সংযুক্ত ছবি দেখুন)। সিরিয়াল কানেকশনের বাউড্রেট নোট করুন, এটি অবশ্যই esp8266 এ প্রোগ্রাম করা বাডরেটের সাথে মেলে।
সিরিয়াল নোডের আউটপুট একটি ফাংশন নোড দ্বারা রূপান্তরিত হয় যা '&' সাইন এ বার্তা বিভক্ত করে এবং msg.topic এবং msg.payload সেট করে। ফাংশনের আউটপুট mqtt আউটপুট নোডে নিয়ে যায় যা MQTT সার্ভারে বার্তা পাঠায়। লক্ষ্য করুন mqtt নোডের টপিক ফিল্ড ফাঁকা, কারণ টপিকটি মেসেজে সেট করা আছে।
প্রস্তাবিত:
রিলে বোর্ড ব্যবহার করে রাস্পবেরি পাই সহ হোম অটোমেশন: 7 টি ধাপ
রিলে বোর্ড ব্যবহার করে রাস্পবেরি পাই সহ হোম অটোমেশন: মানুষের একটি বড় সংখ্যা দারুণ আরাম চায় কিন্তু যুক্তিসঙ্গত মূল্যে। আমরা রোজ সন্ধ্যায় সূর্য ডুবে গেলে এবং পরের দিন সকালে আলো জ্বালাতে, বা আবার এয়ার কন্ডিশনার/ফ্যান/হিটার চালু/বন্ধ করতে আলস্য বোধ করি
রাস্পবেরি পাই ম্যাট্রিক্স ভয়েস এবং স্নিপস ব্যবহার করে হোম অটোমেশন (পর্ব 2): 8 টি ধাপ
রাস্পবেরি পাই ম্যাট্রিক্স ভয়েস এবং স্নিপস ব্যবহার করে হোম অটোমেশন (পর্ব 2): রাস্পবেরি পাই ম্যাট্রিক্স ভয়েস এবং স্নিপস ব্যবহার করে হোম অটোমেশনের আপডেট। এই PWM বহিরাগত LED এর এবং Servo মোটর নিয়ন্ত্রণের জন্য ব্যবহার করা হয়
HDMI ছাড়া রাস্পবেরি পাই 3 বি তে রাস্পবিয়ান ইনস্টল করা - রাস্পবেরি পাই 3B দিয়ে শুরু করা - আপনার রাস্পবেরি পাই 3: 6 ধাপ সেট আপ করা হচ্ছে
HDMI ছাড়া রাস্পবেরি পাই 3 বি তে রাস্পবিয়ান ইনস্টল করা | রাস্পবেরি পাই 3B দিয়ে শুরু করা | আপনার রাস্পবেরি পাই 3 সেট আপ করা: আপনারা কেউ কেউ জানেন যে রাস্পবেরি পাই কম্পিউটারগুলি বেশ দুর্দান্ত এবং আপনি কেবলমাত্র একটি ছোট বোর্ডে পুরো কম্পিউটারটি পেতে পারেন। 1.2 GHz এ ঘড়ি। এটি পাই 3 কে মোটামুটি 50 রাখে
রাস্পবেরি পাই 3 এবং নোড-রেড ব্যবহার করে হোম অটোমেশন: 6 টি ধাপ
রাস্পবেরি পাই 3 এবং নোড-রেড ব্যবহার করে হোম অটোমেশন: প্রয়োজনীয় সামগ্রী: 1. রাস্পবেরি পাই 32. রিলে মডিউল 3. জাম্পার তারগুলি আরও তথ্যের জন্য দেখুন:
সুপার সিম্পল রাস্পবেরি পাই 433MHz হোম অটোমেশন: 7 টি ধাপ
সুপার সিম্পল রাস্পবেরি পাই 433 মেগাহার্টজ হোম অটোমেশন: বাড়ির চারপাশে ওয়্যারলেস ডিভাইস নিয়ন্ত্রণ করার জন্য রাস্পবেরি পাই ব্যবহার করার ক্ষেত্রে এই টিউটোরিয়ালটি অনেকের মধ্যে একটি। অন্য অনেকের মতো, এটি আপনাকে দেখাবে যে কীভাবে অপারেটিন ডিভাইসগুলির সাথে যোগাযোগ করতে আপনার পাইয়ের সাথে সংযুক্ত একটি সস্তা ট্রান্সমিটার/রিসিভার জোড়া ব্যবহার করা যায়