কিভাবে ESP8266 দিয়ে আপনার নিজের ওয়াই-ফাই সংযুক্ত বোতাম তৈরি করবেন

কিভাবে ESP8266 দিয়ে আপনার নিজের ওয়াই-ফাই সংযুক্ত বোতাম তৈরি করবেন

ইন্টারনেট অফ থিংসের বিশাল DIY সম্ভাবনা রয়েছে। পর্যাপ্ত জ্ঞান এবং কয়েকটি সস্তা উপাদান দিয়ে, আপনি সংযুক্ত ডিভাইসগুলির একটি জটিল সিস্টেম তৈরি করতে পারেন।





কখনও কখনও, তবে, আপনি সহজ কিছু চান। কোন ঘণ্টা বা হুইসেল নয়, শুধু একটি বোতাম যা একটি একক কাজ সম্পাদন করে। আপনি যদি ইতিমধ্যেই প্রতিদিনের গৃহস্থালী সামগ্রীর পুনর্বিন্যাস করতে একটি অ্যামাজন ড্যাশ বোতাম ব্যবহার করে থাকেন তবে আপনি এরকম কিছু সম্পর্কে ইতিমধ্যেই পরিচিত হতে পারেন।





আজ আমরা একটি NodeMCU ব্যবহার করে একটি Wi-Fi সক্ষম বোতাম তৈরি করব, এবং এটি IFTTT ব্যবহার করার জন্য প্রোগ্রাম করব… ভাল, যেকোন কিছু! ভিডিওটি অনুসরণ করে লিখিত নির্দেশাবলী, যদি আপনি পছন্দ করেন।





আপনার যা লাগবে

আপনার প্রয়োজন হবে:

  • 1 x NodeMCU (ESP8266) বোর্ড, এর জন্য উপলব্ধ AliExpress এ $ 2-3
  • 1 x পুশবাটন
  • 1 x LED (alচ্ছিক)
  • 1 x 220 ওহম প্রতিরোধক (alচ্ছিক)
  • ব্রেডবোর্ড এবং হুকআপ তার
  • প্রোগ্রামিং এর জন্য মাইক্রো ইউএসবি
  • Arduino IDE ইনস্টল করা কম্পিউটার

NodeMCU ছাড়াও, আপনি এই Arduino স্টার্টার কিট এই অংশ অধিকাংশ খুঁজে পেতে সক্ষম হওয়া উচিত। এই টিউটোরিয়ালটি অনুমান করবে যে আপনি LEDচ্ছিক LED এবং প্রতিরোধক ব্যবহার করছেন, কিন্তু এগুলি অপরিহার্য নয়।



ধাপ 1: সার্কিট সেট আপ

এই প্রকল্পের জন্য হার্ডওয়্যার সেটআপ খুবই সহজ। এই চিত্র অনুযায়ী আপনার বোর্ড সেট আপ করুন।

বেগুনি তার সংযুক্ত করে পিন D0 বোতামের এক পাশে। সবুজ তারটি বোতামের অন্য পাশে সংযোগ করে আরএসটি পিন । নীল তার থেকে চলে পিন D1 প্রতিরোধক এবং LED। LED এর নেগেটিভ লেগ সংযুক্ত করে GND পিন NodeMCU এর।





যখন ব্রেডবোর্ড সেট আপ করা হয় তখন এটি দেখতে এরকম কিছু হওয়া উচিত:

কিভাবে একটি মুছে ফেলা ইউটিউব ভিডিও শিরোনাম খুঁজে পেতে

আপনি যদি ভাবছেন যে কিভাবে আমি আমার LED কে গ্রাউন্ড পিনে কেবলমাত্র সেই ছোট ছোট বিটগুলি ব্যবহার করে পেয়েছি, আমাদের দ্রুত ব্রেডবোর্ড ক্র্যাশ কোর্স এটা পরিষ্কার করতে সাহায্য করা উচিত! আপনার সেটআপ চেক করুন এবং USB এর মাধ্যমে কম্পিউটারে আপনার NodeMCU সংযুক্ত করুন।





ধাপ 2: IDE সেট আপ করা

কোডিং শুরু করার আগে, আপনাকে কিছু প্রস্তুতি নিতে হবে। যদি আপনি ইতিমধ্যে না করে থাকেন, আপনার NodeMCU বোর্ড চিনতে Arduino IDE সেট আপ করুন। আপনি এর মাধ্যমে আপনার বোর্ডের তালিকায় যোগ করতে পারেন ফাইল> পছন্দ

আপনি আমাদের NodeMCU ভূমিকা নিবন্ধে এই ধাপের আরো বিস্তারিত ব্যাখ্যা পেতে পারেন।

এই প্রকল্পের জন্য দুটি গ্রন্থাগার প্রয়োজন। নেভিগেট করুন স্কেচ> লাইব্রেরি অন্তর্ভুক্ত করুন> লাইব্রেরি পরিচালনা করুন । সন্ধান করা ESP8266WIFI ইভান Grokhotkov দ্বারা এবং এটি ইনস্টল করুন। এই লাইব্রেরিটি নোডএমসিইউ বোর্ডের সাথে ওয়াই-ফাই সংযোগ তৈরির জন্য লেখা হয়েছে।

এর জন্য পরবর্তী অনুসন্ধান IFTTTWebhook জন রোমকি দ্বারা এবং সর্বশেষ সংস্করণটি ইনস্টল করুন। এই লাইব্রেরিটি IFTTT- এ ওয়েবহুক পাঠানোর প্রক্রিয়া সহজ করার জন্য ডিজাইন করা হয়েছে।

যে সব প্রস্তুতি আমাদের প্রয়োজন, কোড যাক!

কোড কিভাবে কাজ করবে

আমরা ব্যবহার করব ESP8266WIFI একটি ওয়াই-ফাই সংযোগ স্থাপনের জন্য লাইব্রেরি। দ্য IFTTTWebhooks লাইব্রেরি IFTTT- র কাছে একটি অনুরোধ করে এই ক্ষেত্রে, টুইটারে পোস্ট করার জন্য। তারপরে, বিদ্যুৎ সাশ্রয়ের জন্য ব্যবহার না হলে নোডএমসিইউ বোর্ডকে ঘুমানোর নির্দেশ দিন।

যখন বোতাম টিপবে, এটি লিঙ্ক করবে D0 এবং আরএসটি পিন এটি বোর্ডটি পুনরায় সেট করে এবং প্রক্রিয়াটি আবার ঘটে।

এই টিউটোরিয়ালের বেশিরভাগ কোডই নতুনদের জন্য যথেষ্ট সহজ। এটি বলেছিল, যদি আপনি শুরু করছেন, আমাদের অনুসরণ করার পরে আপনি এটি বুঝতে অনেক সহজ পাবেন Arduino শিক্ষানবিস গাইড

এই টিউটোরিয়াল বোঝার জন্য সাহায্য করার জন্য অংশে কোডের মাধ্যমে যায়। আপনি যদি সরাসরি ব্যবসা করতে চান, আপনি এটি খুঁজে পেতে পারেন Pastebin এ সম্পূর্ণ কোড । মনে রাখবেন যে এটি কাজ করার জন্য আপনাকে এখনও এই কোডে আপনার Wi-Fi এবং IFTTT শংসাপত্রগুলি পূরণ করতে হবে!

ধাপ 3: গভীর ঘুম পরীক্ষা করা

শুরু করার জন্য, গভীর ঘুম কিভাবে কাজ করে তা দেখানোর জন্য আমরা একটি সাধারণ পরীক্ষা তৈরি করব। Arduino IDE তে একটি নতুন স্কেচ খুলুন। নিম্নলিখিত দুটি কোড অংশ লিখুন।

#include
#include
#define ledPin 5
#define wakePin 16
#define ssid 'YOUR_WIFI_SSID'
#define password 'YOUR_WIFI_PASSWORD'
#define IFTTT_API_KEY 'IFTTT_KEY_GOES_HERE'
#define IFTTT_EVENT_NAME 'IFTTT_EVENT_NAME_HERE'

এখানে, আমরা আমাদের লাইব্রেরিগুলিকে অন্তর্ভুক্ত করি, সেই সাথে কয়েকটি ভেরিয়েবল সংজ্ঞায়িত করে যা আমাদের স্কেচে প্রয়োজন হবে। আপনি লক্ষ্য করবেন যে উপরের ফ্রিজিং ডায়াগ্রামের তুলনায় এখানে LEDPin এবং wakePin আলাদাভাবে সংখ্যাযুক্ত। NodeMCU Arduino বোর্ডের জন্য একটি ভিন্ন পিনআউট আছে। এই সহজ ডায়াগ্রামের কারণে যদিও এটি একটি সমস্যা নয়:

এখন একটি সেটআপ ফাংশন তৈরি করুন:

void setup() {
Serial.begin(115200);
while(!Serial) {
}
Serial.println(' ');// print an empty line before and after Button Press
Serial.println('Button Pressed');
Serial.println(' ');// print an empty line
ESP.deepSleep(wakePin);
}

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

অবশেষে, পরীক্ষার জন্য, এটি আপনার সাথে যোগ করুন লুপ() পদ্ধতি:

void loop(){
//if deep sleep is working, this code will never run.
Serial.println('This shouldn't get printed');
}

সাধারণত, আরডুইনো স্কেচ সেটআপের পর ক্রমাগত লুপ ফাংশন চালায়। যেহেতু আমরা সেটআপ শেষ হওয়ার আগে বোর্ডকে ঘুমাতে পাঠাই, লুপটি কখনই চলে না।

আপনার স্কেচ সংরক্ষণ করুন এবং বোর্ডে আপলোড করুন। সিরিয়াল মনিটর খুলুন এবং আপনার দেখা উচিত 'বোতাম চাপানো।' প্রতিবার বোতামটি ট্রিগার করার পরে, বোর্ডটি পুনরায় সেট হয় এবং বার্তাটি আবার মুদ্রণ করে। এটা কাজ করে!

সিরিয়াল মনিটর সম্পর্কে একটি নোট

আপনি আপনার কিছু প্রকল্পের সময় সিরিয়াল মনিটরে কিছু অর্থহীন চরিত্র লক্ষ্য করতে পারেন। এটি সাধারণত সিরিয়াল মনিটরকে একই বড রেটে সেট না করার কারণে হয় Serial.begin (XXXX) হার

অনেক গাইড এই ধরনের একটি প্রকল্পের জন্য 115200 এর একটি বড হারে সিরিয়াল সংযোগ শুরু করার পরামর্শ দেন। আমি অনেক সংমিশ্রণ চেষ্টা করেছি, এবং তাদের সকলেরই সিরিয়াল বার্তাগুলির আগে এবং পরে বিভিন্ন ধরণের বিভ্রান্তি ছিল। বিভিন্ন ফোরাম পোস্ট অনুসারে, এটি একটি ত্রুটিপূর্ণ বোর্ড বা সফ্টওয়্যার সামঞ্জস্যের সমস্যা হতে পারে। যেহেতু এটি প্রকল্পটিকে খুব খারাপভাবে প্রভাবিত করে না, তাই আমি এটা না করার ভান করা বেছে নিচ্ছি।

কিভাবে ফেসবুকে অফলাইনে দেখবেন

আপনার যদি সিরিয়াল মনিটর নিয়ে সমস্যা হয়, তাহলে বিভিন্ন বড রেট চেষ্টা করুন এবং দেখুন কোনটি আপনার জন্য সবচেয়ে ভালো কাজ করে।

ধাপ 4: ওয়াই-ফাই সংযোগ করা

এখন আপনার ওয়াই-ফাই নেটওয়ার্কের সাথে সংযোগ স্থাপনের জন্য একটি ফাংশন তৈরি করুন।

void connectToWifi() {
Serial.print('Connecting to: SSID NAME'); //uncomment next line to show SSID name
//Serial.print(ssid);
WiFi.begin(ssid, password);
Serial.println(' ');// print an empty line
Serial.print('Attempting to connect: ');
//try to connect for 10 seconds
int i = 10;
while(WiFi.status() != WL_CONNECTED && i >=0) {
delay(1000);
Serial.print(i);
Serial.print(', ');
i--;
}
Serial.println(' ');// print an empty line
//print connection result
if(WiFi.status() == WL_CONNECTED){
Serial.print('Connected.');
Serial.println(' ');// print an empty line
Serial.print('NodeMCU ip address: ');
Serial.println(WiFi.localIP());
}
else {
Serial.println('Connection failed - check your credentials or connection');
}
}

এই পদ্ধতিটি আপনার নেটওয়ার্কের সাথে এক সেকেন্ডের মধ্যে দশবার সংযোগ করার চেষ্টা করে। সিরিয়াল মনিটরে সংযোগ প্রিন্টের সাফল্য বা ব্যর্থতা।

ধাপ 5: সংযোগ পদ্ধতি কল করা

এই মুহূর্তে, connectToWifi () কখনো ডাকা হয় না। আপনার সেটআপ ফাংশনে 'বোতাম চাপানো' বার্তা এবং ঘুমানোর জন্য বোর্ড পাঠানোর মধ্যে একটি কল যুক্ত করুন।

connectToWifi();

যদি আপনি ভাবছেন যে এটি কোথায় ফিট করে, এটি এইরকম হওয়া উচিত:

স্কেচের শীর্ষে প্রতিস্থাপন করুন ssid এবং পাসওয়ার্ড আপনার ওয়াই-ফাই শংসাপত্র সহ পরিবর্তনশীল। আপনার স্কেচ সংরক্ষণ করুন এবং বোর্ডে আপলোড করুন।

এখন যখন বোর্ড বুট করবে তখন সেটআপ ফাংশনে ফিরে আসার আগে এটি আপনার ওয়াই-ফাই নেটওয়ার্কের সাথে সংযোগ স্থাপনের চেষ্টা করবে। এখন, আইএফটিটিটি ইন্টিগ্রেশন সেট আপ করা যাক।

ধাপ 6: IFTTT ইন্টিগ্রেশন সেট আপ করা

IFTTT ওয়েব সার্ভিসের একটি বিস্তৃত অ্যারের সাথে একীকরণের অনুমতি দেয়। আমরা আমাদের ওয়াই-ফাই পিসি টাওয়ার LED টিউটোরিয়ালে এটি ব্যবহার করেছি যখনই একটি নতুন ইমেল আসে তখন একটি সতর্কতা পাঠাতে। আজ আমরা এটি একটি বোতাম টিপে একটি টুইট পাঠাতে ব্যবহার করব।

এ নেভিগেট করুন আমার অ্যাপল্টস পৃষ্ঠা, এবং নির্বাচন করুন নতুন অ্যাপলেট

ক্লিক করুন +এই এবং সাথে সংযোগ করুন ওয়েবহুকস । নির্বাচন করুন 'একটি ওয়েব অনুরোধ গ্রহণ করুন' এবং আপনার ইভেন্টের নাম দিন। সহজবোধ্য রাখো ! ইভেন্টের নামটি নোট করুন, আপনাকে এটি পরে আপনার NodeMCU কোডে যোগ করতে হবে। ক্লিক 'ট্রিগার তৈরি করুন'

এখন নির্বাচন করুন +যে । এর জন্য অনুসন্ধান করুন টুইটার পরিষেবা এবং এটির সাথে সংযোগ করুন --- আপনার টুইটার অ্যাকাউন্টে পোস্ট করার জন্য আপনাকে এটি অনুমোদন করতে হবে। নির্বাচন করুন 'একটি টুইট পোস্ট করুন' এবং আপনার বার্তা নির্বাচন করুন।

পরবর্তী পর্দা আপনাকে অ্যাপলেট পর্যালোচনা করতে বলবে। শেষ ক্লিক করুন। এটাই!

ধাপ 7: কোডে IFTTT শংসাপত্র যোগ করা

Arduino IDE- এ ফিরে এসে আপনার IFTTT API কী এবং ইভেন্টের নাম আপনার সংজ্ঞায়িত ভেরিয়েবলে যোগ করতে হবে। API কী খুঁজে পেতে, নেভিগেট করুন আমার অ্যাপল্টস এবং নির্বাচন করুন ওয়েবহুকস অধীনে সেবা ট্যাব। নির্বাচন করুন ডকুমেন্টেশন আপনার চাবি অ্যাক্সেস করতে

আপনার কোডে কী, এবং ইভেন্টের নাম কপি করুন, তাদের জন্য সেট করা অস্থায়ী নামগুলি প্রতিস্থাপন করুন।

#define IFTTT_API_KEY 'IFTTT_KEY_GOES_HERE'
#define IFTTT_EVENT_NAME 'IFTTT_EVENT_NAME_HERE'

দ্রষ্টব্য, উল্টানো কমা থাকতে হবে, শুধুমাত্র পাঠ্য প্রতিস্থাপন করুন।

কল করার মাঝে connectToWifi () এবং ঘুমানোর জন্য বোর্ড পাঠানো, IFTTTWebhook লাইব্রেরি বস্তুর একটি উদাহরণ তৈরি করুন। এলইডি আবার গভীর ঘুম শুরু হওয়ার আগে টাস্ক সমাপ্তির সংকেত দেয়।

xbox সিরিজ x বনাম xbox এক x
//just connected to Wi-Fi
IFTTTWebhook hook(IFTTT_API_KEY, IFTTT_EVENT_NAME);
hook.trigger();
pinMode(ledPin, OUTPUT);
digitalWrite(ledPin, HIGH);
delay(200);
digitalWrite(ledPin, LOW);
//now sending board to sleep

কলিং ট্রিগার হুক বস্তু IFTTT অ্যাপলেট বন্ধ করে দেয়, এবং আপনার টুইটার অ্যাকাউন্টে পোস্ট করা উচিত। আপনার স্কেচ সংরক্ষণ করুন এবং এটি আপলোড করুন। আপনার এখন একটি সম্পূর্ণ কার্যকরী টুইটিং বোতাম থাকা উচিত।

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

সম্পন্ন! আপনি কিভাবে এটি আরও উন্নত করতে পারেন?

এটি একটি ওয়াই-ফাই বোতামের একটি মৌলিক সংস্করণ, তবে এটি উন্নত করার অনেকগুলি উপায় রয়েছে। সরলতার জন্য, ইউএসবি সংযোগ এখানে বিদ্যুতের জন্য ব্যবহৃত হয়। একটি ব্যাটারি এটিকে সম্পূর্ণরূপে মোবাইল করে তুলবে এবং সার্কিট ধারণকারী একটি কেস হবে নিখুঁত শিক্ষানবিস 3D মুদ্রণ প্রকল্প।

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

এই প্রকল্পটি স্মার্ট হোম অ্যাপ্লিকেশনগুলির জন্য রিমোটের জন্য নিখুঁত করে তুলবে। ইতিমধ্যে একটি উল্লেখযোগ্য পরিমাণ আছে হোম অটোমেশন অ্যাপলেট IFTTT- এ উপলব্ধ। একবার আপনি বুনিয়াদি নিচে পেয়ে গেলে, আপনি প্রায় যেকোনো সেন্সর ব্যবহার করতে পারেন বা ব্যবহারিকভাবে যে কোন পরিষেবা কল্পনা করতে পারেন তা চালু করতে পারেন।

ইমেজ ক্রেডিট: Vadmary / আমানত ছবি

শেয়ার করুন শেয়ার করুন টুইট ইমেইল 6 শ্রবণযোগ্য বিকল্প: সেরা বিনামূল্যে বা সস্তা অডিওবুক অ্যাপস

আপনি যদি অডিওবুকের জন্য অর্থ প্রদান করতে পছন্দ করেন না, এখানে কিছু দুর্দান্ত অ্যাপ রয়েছে যা আপনাকে সেগুলি বিনামূল্যে এবং আইনত শুনতে দেয়।

পরবর্তী পড়ুন
সম্পর্কিত বিষয়
  • DIY
  • আরডুইনো
  • DIY প্রকল্প টিউটোরিয়াল
লেখক সম্পর্কে ইয়ান বাকলি(216 নিবন্ধ প্রকাশিত)

ইয়ান বাকলি জার্মানির বার্লিনে বসবাসরত একজন ফ্রিল্যান্স সাংবাদিক, সঙ্গীতশিল্পী, অভিনয়শিল্পী এবং ভিডিও প্রযোজক। যখন তিনি লিখছেন না বা মঞ্চে আসছেন না, তখন তিনি পাগল বিজ্ঞানী হওয়ার আশায় DIY ইলেকট্রনিক্স বা কোড নিয়ে ছটফট করছেন।

ইয়ান বাকলি থেকে আরো

আমাদের নিউজলেটার সদস্যতা

প্রযুক্তি টিপস, রিভিউ, ফ্রি ইবুক এবং এক্সক্লুসিভ ডিলের জন্য আমাদের নিউজলেটারে যোগ দিন!

সাবস্ক্রাইব করতে এখানে ক্লিক করুন
বিভাগ Diy