সুচিপত্র:

আরেকটি ওয়েদার স্টেশন (Y.A.W.S.): 18 টি ধাপ (ছবি সহ)
আরেকটি ওয়েদার স্টেশন (Y.A.W.S.): 18 টি ধাপ (ছবি সহ)

ভিডিও: আরেকটি ওয়েদার স্টেশন (Y.A.W.S.): 18 টি ধাপ (ছবি সহ)

ভিডিও: আরেকটি ওয়েদার স্টেশন (Y.A.W.S.): 18 টি ধাপ (ছবি সহ)
ভিডিও: Odela Railway Station Trailer | Hebah Patel | Sampath Nandi | Premieres August 26 | ahavideoIN 2024, জুলাই
Anonim
আরেকটি ওয়েদার স্টেশন (Y. A. W. S.)
আরেকটি ওয়েদার স্টেশন (Y. A. W. S.)

এই প্রকল্পটি আমার চির জনপ্রিয় আবহাওয়া স্টেশন। খনি একটি ESP8266, একটি.96”OLED ডিসপ্লে এবং একটি BME280 পরিবেশগত সেন্সর অ্যারের উপর ভিত্তি করে। আবহাওয়া স্টেশনগুলি একটি খুব জনপ্রিয় প্রকল্প বলে মনে হচ্ছে। জনপ্রিয় DHT22 তাপমাত্রা এবং আর্দ্রতা সেন্সরের পরিবর্তে BME280 সেন্সর অ্যারে ব্যবহার করে খনি নিজেকে অন্যদের থেকে আলাদা করে। BME280 এর একটি তাপমাত্রা, আর্দ্রতা এবং বায়ুচাপ সেন্সর রয়েছে। এটি I2C ইন্টারফেস ব্যবহার করে।.96”OLED ডিসপ্লে ব্যবহৃত I2C। এটি I2C বা SPI বা উভয় হিসাবে কেনা যাবে। আমি ওয়্যারিং সহজ করার জন্য I2C সংস্করণের সাথে গিয়েছিলাম। I2C এবং 3.3V ব্যবহার করে OLED ডিসপ্লে এবং BME280 উভয়ের সাহায্যে উভয় ডিভাইসকে ESP8266 এর সাথে সংযুক্ত করার জন্য একটি 'Y' কেবল তৈরি করা খুব সহজ ছিল। এই প্রজেক্টটি ডেভেলপ করার সময় আমি ইন্টারনেটে একাধিক আবহাওয়া স্টেশন প্রকল্পের মধ্যে এসেছি যেগুলি ESP8266, একই OLED ডিসপ্লে এবং BME280 ব্যবহার করে। সুতরাং এটি একটি মূল ধারণা নয়, তবে এটি একটি মূল বাস্তবায়ন।

BME280 ভিতরের পরিবেশগত তথ্য সরবরাহ করে। বাইরের আবহাওয়ার তথ্য OpenWeatherMap.org থেকে পাওয়া যায়। আবহাওয়ার তথ্য অ্যাক্সেস করার জন্য একটি কী পেতে আপনাকে OpenWeatherMap.org- এ সাইনআপ করতে হবে। তারা একটি বিনামূল্যে পরিষেবা প্রদান করে, যা আমি ব্যবহার করেছি। কিভাবে একটি চাবি পেতে হয় তার নির্দেশাবলীর জন্য কিভাবে একটি OpenWeatherMap কী পেতে হয় তা দেখুন।

একটি এনটিপি টাইম সার্ভার দিনের এবং সপ্তাহের দিনের সময় পেতে ব্যবহৃত হয়।

আবহাওয়া, সময় এবং পরিবেশের তথ্য OLED ডিসপ্লেতে প্রদর্শিত হয়। তথ্যের প্রতিটি অংশের নিজস্ব বিন্যাসিত পর্দা রয়েছে। অন্যটিতে যাওয়ার আগে পর্দাগুলি পাঁচ সেকেন্ডের জন্য প্রদর্শিত হয়। আবহাওয়ার তথ্য রিফ্রেশ করার জন্য প্রতি পনেরো মিনিটে OpenWeatherMap.org ব্যবহার করা হয়। BME280 প্রতি পঞ্চান্ন সেকেন্ডে পড়া হয়। প্রতিটি স্ক্রিনে ব্যবহৃত ফন্টটি স্বয়ংক্রিয়ভাবে সামঞ্জস্য করা হয় যাতে সম্ভাব্য সবচেয়ে বড় ফন্টে সমস্ত তথ্য দেখা যায়।

ESP8266 ওয়েব সার্ভার হিসেবে সেটআপ করা হয়েছে। আবহাওয়ার সমস্ত তথ্য আপনার ফোন, কম্পিউটারের ট্যাবলেট থেকে ব্রাউজার ব্যবহার করে অ্যাক্সেস করা যায়। প্রদর্শিত স্ক্রিনগুলির মধ্যে একটি ওয়েব সার্ভারের আইপি ঠিকানা দেখায়।

ESP8266 বিভিন্ন আকার এবং আকারে আসে। আমি একটি GEEKCREIT DoIt ESP12E Dev Kit V2 নির্বাচন করি। এটি ইএসপি 8266 স্বতন্ত্র মডিউলগুলির জন্য নোডএমসিইউ 'স্ট্যান্ডার্ড' এর সাথে পুরোপুরি সামঞ্জস্যপূর্ণ। এটিতে একটি ইন্টিগ্রেটেড 3.3 ভি রেগুলেটর, একটি সিএইচ 40০ ইউএসবি-টু-সিরিয়াল ব্রিজ এবং নোডএমসিইউ অটো-রিসেট সার্কিট রয়েছে। আপনি যে কোন ESP8266-12 মডিউল ব্যবহার করতে পারেন। শুধু সচেতন থাকুন যে এটি প্রোগ্রাম করার জন্য আপনাকে 3.3V নিয়ন্ত্রক বা অন্যান্য সার্কিট যুক্ত করতে হতে পারে। আমি একটি উইটি ক্লাউড ESP8266 ব্যবহার করে একটি তৈরি করেছি। এটি আমাকে 1.5 ইঞ্চি কিউবে সবকিছু প্যাক করার অনুমতি দেয়। প্রোগ্রামিং করার পর নিচের ইউএসবি ব্রিজ বোর্ড সংযোগ বিচ্ছিন্ন। আমি Witty বোর্ডে 3.3V গর্তে একটি ডান কোণ হেডার পিন যোগ করেছি। দুটি চারটি পিনের খোলস, একটি দুটি পিনের শেল এবং দুটি একটি পিনের খোলস দিয়ে এই জোতা তৈরি করা হয়েছিল।

উপরের ছবিতে, ESP8266 মডিউলটি যে বোর্ডে প্লাগ করা হয়েছে তা হল একটি সার্কিট বোর্ড যা আমি ESP8266 এবং ESP32 এর জন্য একটি ব্রেকআউট বোর্ড হিসাবে তৈরি করেছি। এটি NodeMCU সামঞ্জস্যপূর্ণ, সংকীর্ণ শরীর ESP8266 বোর্ড, দ্য উইটি ক্লাউড ESP8266 বোর্ড বা GEEKCREIT থেকে একটি ESP32 বোর্ড গ্রহণ করবে। সমস্ত উপলব্ধ জিপিআইও পিন সহজেই অ্যাক্সেসের জন্য শিরোনামে বিভক্ত। আমি দেখেছি যে বেশিরভাগ উন্নয়ন বোর্ডে পর্যাপ্ত শক্তি এবং গ্রাউন্ড পিন থাকে না। প্রতিবার যখন আপনি কিছু সংযুক্ত করতে চান তখন আপনার কমপক্ষে একটি গ্রাউন্ড পিন এবং ডিভাইসটি পাওয়ার জন্য বেশিরভাগ সময় একটি পিন প্রয়োজন। GPIO পিনের প্রতিটি সারির সাথে 3.3V পাওয়ার পিন এবং একটি গ্রাউন্ড পিন থাকে। আমি একই লেআউট ব্যবহার করি যা প্রথম রোবটিক্স ব্যবহার করে, মাঝখানে শক্তি। আমি এই লেআউটটি পছন্দ করি কারণ আপনি যদি কিছু পিছনে লাগান তবে আপনি জাদুর ধোঁয়া ছাড়বেন না। বোর্ডে কয়েকটি অতিরিক্ত, একটি আইআর সেন্সর, একটি পুশবাটন সুইচ এবং একটি ত্রি-রঙের এলইডি রয়েছে। এই বৈশিষ্ট্যগুলির যে কোনওটির সাথে সংযোগ স্থাপনের জন্য জাম্পার ব্যবহার করা যেতে পারে। আপনি যদি এই ESPxx ব্রেকআউট বোর্ডগুলির একটিতে আগ্রহী হন তাহলে আমার সাথে যোগাযোগ করুন।

ধাপ 1: আপনার যা লাগবে:

আপনার যা দরকার
আপনার যা দরকার
আপনার যা দরকার
আপনার যা দরকার
আপনার যা দরকার
আপনার যা দরকার

1 - BME280 I2C তাপমাত্রা, আর্দ্রতা এবং চাপ সেন্সর বোর্ড

আমি চীন থেকে ইবেতে আমার কিনেছি প্রায় $ 1.25 ফ্রি শিপিং সহ। এছাড়াও Adafruit বা Sparkfun থেকে পাওয়া যায়

SSD1306 ড্রাইভার ব্যবহার করে 1 -.96”, 128x64, I2C OLED ডিসপ্লে

আমি চীন থেকে ইবেতে প্রায় 4.00 ডলারে কিনেছি। আমারটা সাদা। আপনি উপরে হলুদ একটি এলাকা সঙ্গে নীল এবং সাদা খুঁজে পেতে পারেন। কিছু SPI এবং I2C হিসাবে বিক্রি হয়। I2C অপারেশন নির্বাচন করার জন্য আপনাকে কিছু প্রতিরোধক স্থানান্তর করতে হতে পারে। গুরুত্বপূর্ণ অংশ হল যে এটি SD1306 ড্রাইভার চিপ ব্যবহার করে। এছাড়াও Adafruit থেকে পাওয়া যায়।

1-CH340 সহ NodeMCU ESP8266-12

আপনি যে কোন ESP8266-12 মডিউল ব্যবহার করতে পারেন। আমি CH340 ইউএসবি-থেকে-সিরিয়াল ব্রিজগুলির সাথে পছন্দ করি। কয়েক বছর আগে জাল এফটিডিআই এবং এসআই ব্রিজ চিপগুলির একটি ফুসকুড়ি ছিল তাই আমি আর CH340 ছাড়া অন্য কিছু বিশ্বাস করি না।

2 - ডুপন্ট 4 পিন, 0.1 ইঞ্চি (2.54 মিমি) পিচের শেল

2 - ডুপন্ট 2 পিন, 0.1 ইঞ্চি (2.54 মিমি) পিচের শেল

12-22-28 awg তারের জন্য DuPont মহিলা crimps

আমি ইবে আমার পেতে। আপনি মোলেক্স বা আপনার পছন্দসই ব্র্যান্ড ব্যবহার করতে পারেন। Crimped পিন বা IDC পছন্দ আপনার। সতর্ক থাকুন যে আপনি আপনার শাঁসের জন্য সঠিক পিন কিনুন। এগুলো মিক্স অ্যান্ড ম্যাচ নয়। আপনি কেবল বোর্ডগুলিতে তারগুলি ঝালাই করতে পারেন এবং সংযোগকারীগুলিকে বাদ দিতে পারেন। আপনি যদি ক্রাইমড পিন ব্যবহার করেন, আপনার একটি ক্রাইমারের প্রয়োজন হবে। একজোড়া প্লায়ার দিয়ে কুঁচকানোর চেষ্টা করবেন না। এটা কাজ করে না.

1 - 5V, 1A ন্যূনতম ওয়াল পাওয়ার প্যাক।

এগুলি সস্তা এবং ইবে পাওয়া যায়। একটি মাইক্রো ইউএসবি কানেক্টর বা আপনার ESP8266 বোর্ডের সাথে যেই সঙ্গী হোক না কেন।

সবকিছু একসাথে সংযুক্ত করার জন্য আপনার 22-28 awg তারের আট টুকরাও লাগবে। অথবা আপনি কেবল পারফ বোর্ডের একটি টুকরোতে এটিকে তারের সাথে সংযুক্ত করতে পারেন। এটা আপনার উপরে।

আমি একটি উইটি ক্লাউড ESP8266 ব্যবহার করে ওয়েদার স্টেশন তৈরিতে কী ব্যবহার করা হয়েছিল তার একটি ছবি অন্তর্ভুক্ত করেছি। একটি ছবির বিশদ বিবরণ যেখানে পিকআপ 3.3V এ একটি ডান কোণ হেডার পিন যুক্ত করতে হবে। দুটি পিনের খোসার মধ্যে একটি দুটি পিনের খোলস দ্বারা প্রতিস্থাপিত হয়। গ্রাউন্ড এবং 3.3V তারগুলি এক পিনের শেলগুলিতে স্টাফ করা হয়।

GitHub সংগ্রহস্থল থেকে সোর্স কোড ফাইল পেতে এই লিঙ্কটি অনুসরণ করুন; ESP8266- আবহাওয়া-স্টেশন। জিপ ফোল্ডার বা ক্লোন করা ফোল্ডারে একটি ওয়েদারস্টেশন ফোল্ডার থাকবে যার মধ্যে WeatherStation.ino এবং BME280.h থাকবে। এগুলি সোর্স কোড ফাইল। বেশ কয়েকটি পিডিএফ ফাইলও রয়েছে। পিডিএফ ফাইলগুলিতে এই নির্দেশযোগ্য হিসাবে অনেক তথ্য রয়েছে।

ধাপ 2: সরঞ্জাম:

সরঞ্জাম
সরঞ্জাম
সরঞ্জাম
সরঞ্জাম

অনেক ব্র্যান্ডের ক্রাইমার চেষ্টা করার পর, আমি দেখতে পেলাম যে জাপানি ইঞ্জিনিয়ার PA-21 বা PA-09 ডিউপন্ট পুরুষ এবং মহিলা ক্রাম্পের জন্য সবচেয়ে ভাল কাজ করে। এটি ইবে বা অ্যামাজনে পাওয়া যায়। হয় ডুপন্ট পিনের জন্য কাজ করবে। PA-09 সাধারণভাবে LiPo ব্যাটারিতে ব্যবহৃত JST সংযোগকারীদের জন্য পিনগুলিও করবে। ডিউপন্ট ক্রিম্পের সাথে ইঞ্জিনিয়ার অপরাধীদের কীভাবে ব্যবহার করবেন তার একটি ভিডিওর লিঙ্ক এখানে দেওয়া হল; কিভাবে PA-21 Crimpers ব্যবহার করবেন

ডিউপন্ট পিন এবং শেল দিয়ে ওয়েইরলি টুলস এসএন -২B বি ক্রাইপার ব্যবহার করার বিষয়ে ইন্সট্রাকটেবলস সম্প্রতি একটি দুর্দান্ত টিউটোরিয়াল পেয়েছে। আপনি এটা এখানে দেখতে পারেন; একটি ভাল Dupont পিন- Crimp প্রতিটি সময়!

ধাপ 3: জোতা তৈরি করুন:

জোতা তৈরি করুন
জোতা তৈরি করুন
জোতা তৈরি করুন
জোতা তৈরি করুন

তারের জোতা এই প্রকল্পের চাবিকাঠি। এটি একটি মৌলিক চার তারের 'Y' কেবল। উপরে আমার তৈরি জোতা একটি ছবি। OLED ডিসপ্লে এবং BME280 সেন্সর অ্যারের একই পিনআউট রয়েছে। এর মানে হল যে দুটি চারটি পিন শেল ক্রাইমড তারগুলি afterোকানোর পরে অভিন্ন। আমি ইএসপি 8266 বোর্ডের সাথে সংযুক্ত দুটি পিন শেলের মধ্যে ডাবল ক্রাইমড তারের সাথে আমার জোতা তৈরি করেছি। আপনি পরিবর্তে, চারটি পিনের খোলসগুলির মধ্যে একটিতে ডাবল ক্রাইমড তারগুলি স্টাফ করতে বেছে নিতে পারেন, এটি একটি ডেইজি চেইন সংযোগের মতো করে তোলে। হয় কাজ করবে।

  1. আপনার সমস্ত তারের দৈর্ঘ্য কাটা। আমি প্রতিটি তারের জন্য বিভিন্ন রং ব্যবহার করতে পছন্দ করি; 3.3V এর জন্য লাল, মাটির জন্য কালো, এসসিএল এর জন্য হলুদ এবং SDA এর জন্য সবুজ।
  2. প্রতিটি তারের এক প্রান্ত প্রায় 0.1 ইঞ্চি টানুন।
  3. একসঙ্গে strands বাঁক এবং একটি মহিলা ক্রাম্প যোগ করুন।
  4. একবার সমস্ত তারের এক প্রান্তে খাঁজ লাগলে, সমস্ত তারগুলি প্রায় 0.2 ইঞ্চি কেটে ফেলুন।
  5. একই রঙের দুটি তারের স্ট্র্যান্ড একসাথে টুইস্ট করুন।
  6. একবার বাঁকা হয়ে গেলে, প্রায় 0.1 ইঞ্চি পর্যন্ত ছাঁটাই করুন এবং একটি মহিলা ক্রাম্প যুক্ত করুন।
  7. যখন সমস্ত তারের জোড়া ক্রিম্প করা হয় তখন খোলসের মধ্যে ক্রাইমড প্রান্তগুলি toোকানোর সময় হয়।
  8. দুটি চারটি পিনের খোলস বাম থেকে ডানে, লাল, কালো, হলুদ, সবুজ বা 3.3V, Gnd, SCL, SDA দিয়ে স্টাফ করা হয়।
  9. দুটি পিনের খোসার একটি লাল এবং কালো তারের পায়।
  10. অন্য দুটি পিন শেল হলুদ এবং সবুজ তারের পায়।

ধাপ 4: টিপ:

টিপ
টিপ
টিপ
টিপ
টিপ
টিপ

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

ধাপ 5: এটি সব একসাথে সংযুক্ত করুন:

এটি সব একসাথে সংযুক্ত করুন
এটি সব একসাথে সংযুক্ত করুন
এটি সব একসাথে সংযুক্ত করুন
এটি সব একসাথে সংযুক্ত করুন
এটি সব একসাথে সংযুক্ত করুন
এটি সব একসাথে সংযুক্ত করুন
  1. OLED ডিসপ্লে এবং BME280 বোর্ডে চারটি পিন শেল লাগান।
  2. Vcc এবং 3V3 পিনের সাথে লাল তারের সারিবদ্ধ করুন।
  3. ESP8266 বোর্ডে 3V3 (3.3V) এবং GND পিনের একটি জোড়া দুটি পিন লাল/কালো শেল লাগান। বোর্ডে তিনটি জায়গা আছে যেখানে 3V3 এবং GND পিন সংলগ্ন। ভিন (5V) এবং GND পিনগুলি এড়িয়ে চলুন কারণ এটি আপনার OLED এবং BME280 বোর্ড থেকে জাদুকরী ধোঁয়া ছাড়বে। নিশ্চিত করুন যে লাল তারটি 3V3 পিনের সাথে সংযুক্ত।
  4. ESP8266 বোর্ডে D1 এবং D2 তে হলুদ/সবুজ দুটি পিন শেল লাগান। হলুদ তারের (এসসিএল) D1 এ থাকা উচিত।

আপনার সংযোগ দুবার পরীক্ষা করুন। যদি সবকিছু ভাল দেখায় তবে আপনি ESP8266 বোর্ডটি পাওয়ার জন্য প্রস্তুত।

ধাপ 6: কিভাবে একটি OpenWeatherMap কী পাবেন

কিভাবে একটি OpenWeatherMap কী পাবেন
কিভাবে একটি OpenWeatherMap কী পাবেন

বর্তমান আবহাওয়ার তথ্য পেতে OpenWeatherMap.org ওয়েবসাইটে প্রবেশ করতে আপনার একটি API কী প্রয়োজন হবে। OpenWeatherMap.org- এ কীভাবে সাইনআপ করবেন এবং একটি API কী পাবেন তার পরবর্তী কয়েকটি ধাপ বিস্তারিত।

OpenWeatherMap.org এ এই লিঙ্কটি অনুসরণ করুন।

ওয়েব পেজের উপরের অংশের মাঝখানে API এ ক্লিক করুন।

ধাপ 7: কিভাবে একটি OpenWeatherMap কী পাবেন, সাবস্ক্রাইব করুন

কিভাবে একটি OpenWeatherMap কী পাবেন, সাবস্ক্রাইব করুন
কিভাবে একটি OpenWeatherMap কী পাবেন, সাবস্ক্রাইব করুন

বাম দিকে, বর্তমান আবহাওয়ার তথ্যের অধীনে, সাবস্ক্রাইব বোতামটি ক্লিক করুন।

ধাপ 8: কিভাবে একটি OpenWeatherMap কী পাবেন, API কী পান

কিভাবে একটি OpenWeatherMap কী পাবেন, API কী পান
কিভাবে একটি OpenWeatherMap কী পাবেন, API কী পান

Get APIkey এ ক্লিক করুন এবং ফ্রি কলামে শুরু করুন।

ধাপ 9: কিভাবে একটি OpenWeatherMap কী, সাইনআপ পাবেন

কিভাবে একটি OpenWeatherMap কী, সাইনআপ পাবেন
কিভাবে একটি OpenWeatherMap কী, সাইনআপ পাবেন

এপিআই কী (এপিডিআইডি) পাওয়ার জন্য সাইনআপ বোতামে ক্লিক করুন।

ধাপ 10: কিভাবে একটি OpenWeatherMap কী পাবেন, অ্যাকাউন্ট তৈরি করুন

কিভাবে একটি OpenWeatherMap কী পাবেন, অ্যাকাউন্ট তৈরি করুন
কিভাবে একটি OpenWeatherMap কী পাবেন, অ্যাকাউন্ট তৈরি করুন

সমস্ত ক্ষেত্র পূরণ করুন। শেষ হয়ে গেলে, আমি পরিষেবার শর্তাবলী এবং গোপনীয়তা নীতি চেকবক্সে সম্মত। তারপর Create Account বাটনে ক্লিক করুন।

OpenWeatherMap.org থেকে একটি বার্তার জন্য আপনার ইমেল চেক করুন। ইমেইলে আপনার API কী থাকবে। বর্তমান আবহাওয়া পাওয়ার জন্য আপনাকে আবহাওয়া স্টেশনের সোর্স কোডে API কী অনুলিপি করতে হবে।

OpenWeatherMap.org বিনামূল্যে পরিষেবার কিছু সীমাবদ্ধতা রয়েছে। সর্বাগ্রে হল যে আপনি প্রতি দশ মিনিটে একবারের বেশি এটি অ্যাক্সেস করতে পারবেন না। এটি একটি সমস্যা হওয়া উচিত নয় কারণ আবহাওয়া এত দ্রুত পরিবর্তিত হয় না। অন্যান্য সীমাবদ্ধতাগুলি কী কী তথ্য পাওয়া যায় তার সাথে সম্পর্কযুক্ত। প্রদত্ত সাবস্ক্রিপশনগুলির মধ্যে যে কোনওটি আবহাওয়ার বিস্তারিত তথ্য সরবরাহ করবে।

ধাপ 11: Arduino IDE সেটআপ করুন:

Arduino IDE সেটআপ করুন
Arduino IDE সেটআপ করুন

Arduino IDE সংস্করণ 1.8.0 ব্যবহার করে প্রোগ্রাম ডেভেলপমেন্ট করা হয়েছিল। আপনি সর্বশেষ Arduino IDE ডাউনলোড করতে পারেন এখানে; Arduino IDE। Arduino ওয়েব সাইটে IDE কিভাবে ইনস্টল এবং ব্যবহার করতে হয় সে বিষয়ে চমৎকার নির্দেশনা রয়েছে। ESP8266 এর জন্য সমর্থন এই লিঙ্ক দ্বারা প্রদত্ত নির্দেশাবলী অনুসরণ করে Arduino IDE তে ইনস্টল করা যেতে পারে: ESP8266 Addon to Arduino। ওয়েব পেজে, "ক্লোন বা ডাউনলোড" বোতামে ক্লিক করুন এবং "ডাউনলোড জিপ" নির্বাচন করুন। ReadMe.md ফাইলে Arduino IDE- এ ESP8266 সাপোর্ট কিভাবে যোগ করা যায় সে বিষয়ে নির্দেশনা রয়েছে। এটি একটি সাধারণ টেক্সট ফাইল যা আপনি যেকোনো টেক্সট এডিটর দিয়ে খুলতে পারেন।

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

ESP8266 তে ডেডিকেটেড I2C হার্ডওয়্যার নেই। ESP8266 এর জন্য সমস্ত I2C ড্রাইভার বিট-ব্যাঙ্গিংয়ের উপর ভিত্তি করে। একটি ভাল ESP8266 I2C লাইব্রেরি হল brzo_I2C লাইব্রেরি। এটি ESP8266 এর জন্য অ্যাসেম্বলি ভাষায় লেখা ছিল যত দ্রুত সম্ভব। আমি যে OLED ডিসপ্লে লাইব্রেরি ব্যবহার করছি তা brzo_I2C লাইব্রেরি ব্যবহার করে। আমি brzo_I2C লাইব্রেরি ব্যবহার করে BME280 সেন্সর অ্যারে অ্যাক্সেস করার জন্য কোড যোগ করেছি।

আপনি এখানে OLED লাইব্রেরি পেতে পারেন: ESP8288-OLED-SSD1306 লাইব্রেরি।

আপনি এখানে brzo_I2C লাইব্রেরি পেতে পারেন: Brzo_I2C লাইব্রেরি।

উভয় লাইব্রেরি আপনার Arduino IDE এ ইনস্টল করতে হবে। আরডুইনো ওয়েবসাইটে আইডিইতে জিপ লাইব্রেরি কীভাবে ইনস্টল করবেন সে সম্পর্কে নির্দেশনা রয়েছে: জিপ লাইব্রেরি কীভাবে ইনস্টল করবেন।

টিপ: ESP8266 বোর্ড প্যাকেজ এবং লাইব্রেরি ইনস্টল করার পরে, Arduino IDE বন্ধ করুন এবং এটি পুনরায় খুলুন। এটি নিশ্চিত করবে যে ESP8266 বোর্ড এবং লাইব্রেরিগুলি IDE তে প্রদর্শিত হবে।

ধাপ 12: আপনার বোর্ড নির্বাচন করুন:

আপনার বোর্ড নির্বাচন করুন
আপনার বোর্ড নির্বাচন করুন

Arduino IDE খুলুন। আপনি যদি এখনও এটি না করেন তবে ESP8266 অ্যাডন, brzo_i2c লাইব্রেরি এবং OLED ড্রাইভার লাইব্রেরি ইনস্টল করুন।

উপরের মেনু বারে "সরঞ্জাম" এ ক্লিক করুন। ড্রপ ডাউন মেনুতে স্ক্রোল করুন যেখানে এটি "বোর্ড:" বলে। "বোর্ড ম্যানেজার" ড্রপ ডাউন মেনুতে স্লাইড করুন এবং নিচে স্ক্রোল করুন; "NodeMCU 1.0 (ESP-12E মডিউল)"। এটি নির্বাচন করতে এটিতে ক্লিক করুন। অন্য সব সেটিং তাদের ডিফল্ট মানের উপর ছেড়ে দিন।

ধাপ 13: সিরিয়াল পোর্ট নির্বাচন করুন:

সিরিয়াল পোর্ট নির্বাচন করুন
সিরিয়াল পোর্ট নির্বাচন করুন

উপরের মেনু বারে "সরঞ্জাম" এ ক্লিক করুন। ড্রপ ডাউন মেনুতে স্ক্রল করুন যেখানে এটি "পোর্ট" বলে। আপনার কম্পিউটারের জন্য উপযুক্ত পোর্ট নির্বাচন করুন। যদি আপনার পোর্টটি না দেখায়, হয় আপনার বোর্ডটি প্লাগ ইন করা হয় না অথবা আপনি আপনার ব্রিজ চিপের জন্য ড্রাইভার লোড করেননি অথবা আপনি যখন Arduino IDE খোলেন তখন আপনার বোর্ডটি প্লাগ ইন করা হয়নি। সহজ সমাধান হল Arduino IDE বন্ধ করা, আপনার বোর্ডে প্লাগ লাগান, যেকোন অনুপস্থিত ড্রাইভার লোড করুন তারপর Arduino IDE পুনরায় খুলুন।

ধাপ 14: WeatherStation.ino

আপনি উপরের ডাউনলোড বোতামগুলি ব্যবহার করতে পারেন অথবা সোর্স কোডটি পেতে GitHub এ এই লিঙ্কটি অনুসরণ করতে পারেন; ESP8266- আবহাওয়া-স্টেশন।

WeatherStation.ino এবং BME280.h ফাইল একই ফোল্ডারে থাকা প্রয়োজন। ফোল্ডারের নামটি.ino ফাইলের নামের সাথে মিলিত হতে হবে (.ino এক্সটেনশন ছাড়া)। এটি একটি Arduino প্রয়োজন।

ধাপ 15: WeatherStation.ino সম্পাদনা করুন

উপরের মেনু বারে "ফাইল" এ ক্লিক করুন। "খুলুন" এ ক্লিক করুন। ফাইল ওপেন ডায়ালগ বক্সে ওয়েদারস্টেশন ফোল্ডারটি খুঁজুন এবং এটি নির্বাচন করুন। আপনার দুটি ট্যাব দেখা উচিত, একটি ওয়েদারস্টেশনের জন্য এবং একটি BME280.h এর জন্য। যদি আপনার উভয় ট্যাব না থাকে তাহলে আপনি ভুল ফোল্ডারটি খুললেন অথবা আপনি উভয় ফাইল ডাউনলোড করেননি অথবা আপনি সেগুলো সঠিক ফোল্ডারে সংরক্ষণ করেননি। আবার চেষ্টা করুন.

আপনার ওয়াইফাই নেটওয়ার্কের জন্য SSID এবং পাসওয়ার্ড যোগ করার জন্য আপনাকে WeatherStation.ino ফাইলটি সম্পাদনা করতে হবে। নিম্নলিখিত জন্য লাইন 62 কাছাকাছি দেখুন;

// এখানে আপনার ওয়াইফাই নেটওয়ার্কের জন্য SSID এবং পাসওয়ার্ড দিন

const char* ssid = "yourssid"; const char* password = "password";

আপনার ওয়াইফাই নেটওয়ার্কের SSID দিয়ে "yourssid" প্রতিস্থাপন করুন।

আপনার ওয়াইফাই নেটওয়ার্কের পাসকি দিয়ে "পাসওয়ার্ড" প্রতিস্থাপন করুন।

আপনার ওপেনওয়েদারম্যাপ কী এবং আপনি যেখানে থাকেন সেখানে জিপ কোড যুক্ত করতে হবে। নিম্নলিখিত জন্য লাইন 66 কাছাকাছি দেখুন;

// আপনার OpenWeatherMap.com কী এবং জিপ কোডটি এখানে রাখুন

const char* owmkey = "yourkey"; const char* owmzip = "yourzip, country";

OpenWeatherMap.org থেকে প্রাপ্ত কী দিয়ে "yourkey" প্রতিস্থাপন করুন।

আপনার জিপ কোড এবং দেশের সাথে "yourzip, country" প্রতিস্থাপন করুন। আপনার জিপ কোডটি একটি কমা এবং আপনার দেশ ("10001, us") দ্বারা অনুসরণ করা উচিত।

পরবর্তী আপনাকে আপনার টাইমজোন সেট করতে হবে এবং দিবালোক সঞ্চয় সময় (ডিএসটি) সক্ষম/অক্ষম করতে হবে। নিম্নলিখিতগুলির জন্য লাইন 85 এর চারপাশে দেখুন;

// 1970 থেকে কাঁচা সময় সেকেন্ডে ফিরে এসেছে। টাইমজোন বিয়োগের জন্য সামঞ্জস্য করতে

// আপনার টাইমজোনের জন্য সেকেন্ডের পার্থক্য সংখ্যা। Gণাত্মক মান // সময় বিয়োগ করবে, ধনাত্মক মান সময় যোগ করবে #সংজ্ঞায়িত করুন TZ_EASTERN -18000 // পাঁচ ঘণ্টায় সেকেন্ডের সংখ্যা #TZ_CENTRAL -14400 সংজ্ঞায়িত করুন // চার ঘন্টার মধ্যে সেকেন্ডের সংখ্যা #নির্ধারিত TZ_MOUTAIN -10800 // সেকেন্ডের সংখ্যা তিন ঘণ্টা #TZ_PACIFIC -7200 সংজ্ঞায়িত করুন // দুই ঘন্টার মধ্যে সেকেন্ডের সংখ্যা

// TZ_EASTERN কে অন্য একটি মান পরিবর্তন করে আপনার টাইমজোনের জন্য সময় সামঞ্জস্য করুন।

#TIMEZONE TZ_EASTERN নির্ধারণ করুন // এটি আপনার টাইমজোনে পরিবর্তন করুন

#ডিফাইন স্টেটমেন্টের একটি গ্রুপ রয়েছে যা বিভিন্ন টাইম জোনের জন্য টাইম অফসেট নির্ধারণ করে। যদি আপনার টাইম জোন সেখানে থাকে তাহলে "TZ_EASTERN" কে "TIMEZONE" সংজ্ঞায় প্রতিস্থাপন করুন। যদি আপনার টাইম জোন তালিকাভুক্ত না হয় তাহলে আপনাকে একটি তৈরি করতে হবে। এনটিপি সার্ভার গ্রিনউইচ মিন টাইম হিসেবে সময় দেয়। আপনার স্থানীয় সময়ে পৌঁছানোর জন্য আপনাকে কয়েক ঘন্টা (সেকেন্ডে) যোগ বা বিয়োগ করতে হবে। শুধু "#define TZ_XXX" স্টেটমেন্টগুলির একটি কপি করুন তারপর নাম এবং সেকেন্ডের সংখ্যা পরিবর্তন করুন। তারপর "TZ_EASTERN" কে আপনার নতুন টাইমজোনে পরিবর্তন করুন।

আপনাকে দিবালোক সঞ্চয় সময় ব্যবহার করতে হবে বা না করার সিদ্ধান্ত নিতে হবে। DST নিষ্ক্রিয় করার জন্য, "1" কে নিচের লাইনে "0" দিয়ে প্রতিস্থাপন করুন;

#ডিএসটি 1 সংজ্ঞায়িত করুন // দিবালোক সঞ্চয় সময় নিষ্ক্রিয় করতে 0 এ সেট করুন

যখন সক্রিয় করা হয়, DST স্বয়ংক্রিয়ভাবে অগ্রসর হবে বা উপযুক্ত হলে এক ঘন্টা সময় পিছিয়ে দেবে।

ধাপ 16: আপনার ESP8266 এ কোড আপলোড করুন

কোডটি আপনার ESP8266 এ আপলোড করুন
কোডটি আপনার ESP8266 এ আপলোড করুন

উপরের মেনু বারে "সম্পাদনা" এর ঠিক নীচে অবস্থিত বৃত্তাকার ডান দিকে তীর আইকনে ক্লিক করুন। এটি কোডটি কম্পাইল করে আপনার বোর্ডে আপলোড করবে। যদি সবকিছু সঠিকভাবে কম্পাইল এবং আপলোড হয়, কয়েক সেকেন্ড পরে, OLED ডিসপ্লেটি হালকা হওয়া উচিত এবং সংযোগকারী বার্তাটি উপস্থিত হওয়া উচিত।

ধাপ 17: কিভাবে আবহাওয়া তথ্য ওয়েবসাইট দেখুন

কিভাবে আবহাওয়া তথ্য ওয়েবসাইট দেখুন
কিভাবে আবহাওয়া তথ্য ওয়েবসাইট দেখুন

উপরের ছবিটি ওয়েদার স্টেশন দ্বারা পরিবেশন করা ওয়েব পেজ দেখায়। আপনি আপনার পিসি, ফোন বা ট্যাবলেট ব্যবহার করে এটি অ্যাক্সেস করতে পারেন। কেবল একটি ব্রাউজার খুলুন এবং URL হিসাবে ওয়েদার স্টেশনের IP ঠিকানা লিখুন। ওয়েদার স্টেশনের আইপি অ্যাড্রেস ওয়েদার স্টেশনের একটি স্ক্রিনে প্রদর্শিত হয়। তথ্য আপডেট করতে রিফ্রেশ পৃষ্ঠা ক্লিক করুন।

ধাপ 18: অভিনন্দন, আপনি সম্পন্ন করেছেন

হ্যাঁ, ওটাই. আপনার এখন একটি কার্যকরী আবহাওয়া স্টেশন থাকা উচিত। আপনার পরবর্তী পদক্ষেপ হতে পারে আপনার আবহাওয়া স্টেশনটি তৈরি করার জন্য একটি কেস ডিজাইন করা এবং তৈরি করা। অথবা হয়তো আপনি বাতাসের ঠান্ডা, শিশির বিন্দু, সূর্যোদয় বা সূর্যাস্তের সময় বা ব্যারোমেট্রিক চাপের পরিবর্তনের একটি গ্রাফ দেখাতে বা ব্যারোমেট্রিক চাপ ব্যবহার করে আবহাওয়ার পূর্বাভাস দিতে আরও কয়েকটি পর্দা যুক্ত করতে চান। মজা করুন এবং উপভোগ করুন।

প্রস্তাবিত: