লেখক: জিবিন থমাস
"ইন্টারনেট অদৃশ্য হবে। এতো IP ঠিকানা, ডিভাইস, সেন্সর থাকবে যে আপনি সেটা অনুভব করবেন না। এটি আপনার উপস্থিতির অংশ হবে সবসময়।"
আজকাল আমাদের দৈনন্দিন ব্যবহৃত অনেক ডিভাইস ইন্টারনেটে কানেক্টেড: টেলিভিশন, স্মার্ট স্পিকার, রেফ্রিজারেটর ইত্যাদি। এগুলো তাদের প্রাইমারি ফাংশন বাড়িয়ে অন্য ডিভাইসের সাথে ইন্টারঅ্যাক্ট করে এবং রিমোট কন্ট্রোল 가능 করে।
আপনি কিছু সেন্সর এবং মাইক্রোকন্ট্রোলার দিয়ে নিজের IoT ডিভাইস বানাতে পারেন। Arduino, NodeMCU, Raspberry Pi ইত্যাদি ডেভেলপমেন্ট বোর্ড দিয়ে শুরু করতে পারেন। এই ডিভাইস দিয়ে হোম অটোমেশন করা যায়।
এই পোস্টে NodeMCU DevKit এবং Firebase ব্যবহার করে LED রিমোট থেকে অন/অফ করা শেখানো হয়েছে। NodeMCU সস্তা এবং বিল্ট-ইন WiFi আছে, Firebase ফ্রি প্ল্যানই যথেষ্ট।
ডেভেলপমেন্ট এনভায়রনমেন্ট সেটআপ
- Arduino IDE ডাউনলোড করুন (লেটেস্ট ভার্সন)।
- NodeMCU Arduino IDE-এ অফিসিয়ালি সাপোর্টেড নয়, তাই JSON URL অ্যাড করুন:
File > Preferences > Additional Board Manager URLs https://arduino.esp8266.com/stable/package_esp8266com_index.json
- Board সিলেক্ট করুন:
Tools > Board > NodeMCU 1.0 - Firebase-Arduino লাইব্রেরি ডাউনলোড করুন (Firebase REST API অ্যাবস্ট্রাক্ট করে) এবং Arduino IDE-এ ইম্পোর্ট করুন:
Sketch > Include Library > Add .ZIP Library > Select zip file
- ArduinoJson লাইব্রেরি ইন্সটল করুন (ভার্সন ৫.x.x, ৬.x.x না):
Sketch > Include Library > Manage Libraries > Search "ArduinoJson by Benoit Blanchon"
Firebase ডেটাবেস সেটআপ
- Firebase কনসোল থেকে নতুন প্রজেক্ট তৈরি করুন → Database সেকশন → Realtime Database সিলেক্ট করুন।
- Settings Panel > Service Accounts থেকে Database Secret কপি করুন।
- Firebase ডেটাবেসে
ledনোড যোগ করুন (true/false ভ্যালু LED কন্ট্রোল করবে)।
Database Secret
Arduino IDE এবং Firebase কনফিগারেশন
ম্যাক্রো তৈরি করুন:
#define FIREBASE_HOST "yourfirebasedatabase.firebaseio.com"
#define FIREBASE_AUTH "your_secret_key"
হার্ডওয়ার কানেকশন
- LED পজিটিভ → NodeMCU D1 পিন, নেগেটিভ → GND পিন।
- Arduino IDE থেকে কোড আপলোড করুন:
Sketch > Upload
টেস্টিং
Firebase ডেটাবেসে led ভ্যালু true/false পরিবর্তন করুন। LED অন/অফ হবে। এই প্রজেক্টকে এক্সটেন্ড করে ওয়েব অ্যাপ বানাতে পারেন যা ম্যানুয়ালি ডেটাবেস পরিবর্তন না করে LED টগল করবে।
এখন NodeMCU ইন্টারনেটে কানেক্ট করে রিমোট কন্ট্রোল করার বেসিক বোঝা গেলে নতুন IoT প্রজেক্টে হ্যাকিং শুরু করুন!
ফ্রিতে কোডিং শিখুন। freeCodeCamp-এর ওপেন সোর্স ক্যারিকুলাম ৪০,০০০ এরও অধিক মানুষকে ডেভেলপার হিসেবে চাকরি পেতে সাহায্য করেছে। শুরু করুন