সুচিপত্র:

জোয়ার এবং আবহাওয়া ঘড়ি: 9 ধাপ (ছবি সহ)
জোয়ার এবং আবহাওয়া ঘড়ি: 9 ধাপ (ছবি সহ)

ভিডিও: জোয়ার এবং আবহাওয়া ঘড়ি: 9 ধাপ (ছবি সহ)

ভিডিও: জোয়ার এবং আবহাওয়া ঘড়ি: 9 ধাপ (ছবি সহ)
ভিডিও: ঘূর্ণিঝড় কেন হয় | কি কেন কিভাবে | Cyclone | Ki Keno Kivabe 2024, নভেম্বর
Anonim
জোয়ার এবং আবহাওয়া ঘড়ি
জোয়ার এবং আবহাওয়া ঘড়ি

যদিও আপনি একটি একক হাতের এনালগ জোয়ার ঘড়ি কিনতে পারেন যা ইঙ্গিত করে যে জোয়ারটি উচ্চ বা নিম্ন বা মাঝখানে কোথাও, আমি যা চেয়েছিলাম তা ছিল এমন কিছু যা আমাকে বলবে যে কোন সময়ে নিম্ন জোয়ার হবে। আমি এমন কিছু চেয়েছিলাম যা আমি তা চালু না করে, বা কোনো বোতাম ধাক্কা না দিয়ে দ্রুত তাকিয়ে থাকতে পারি। এবং আমি দীর্ঘ ব্যাটারি জীবন সহ কিছু চেয়েছিলাম। তাই আমি একটি TTGO T5 বোর্ড ব্যবহার করেছি, যা একটি ESP32- ভিত্তিক বোর্ড যা একটি 2.13 ই-পেপার ডিসপ্লে, একটি TTL5110 চিপের সাথে সংযুক্ত। TPL5110 প্রতি 2.5 ঘন্টা T5 চালু করে এবং দিনে একবার T5 জোয়ারের ডেটা ডাউনলোড করে NOAA এবং OpenWeatherMap থেকে আবহাওয়ার তথ্য, ই-পেপারে ডেটা প্রদর্শন করে, তারপর TPL5110 কে T5 বন্ধ করতে বলে।

আপডেট (ফেব্রুয়ারি 25, 2020) জোয়ার ঘড়িটি এখন এক বছর ধরে চলছে, এবং ব্যাটারি 4.00 ভোল্টে রয়েছে, তাই ঘড়িটি বহু বছর ধরে অনুমানযোগ্যভাবে চলতে পারে।

ধাপ 1: হার্ডওয়্যার তালিকা

TTGO T5 বোর্ড $ 17

Adafruit TPL5110 বোর্ড $ 5

Adafruit Perma-Proto কোয়ার্টার-সাইজ বোর্ড (alচ্ছিক) $ 0.71 (ন্যূনতম অর্ডার $ 8.50)

লি-পলি ব্যাটারি 1200 এমএএইচ $ 10 (বা অন্যান্য উপযুক্ত শক্তি উৎস)

জেএসটি পিএইচ 2-পিন কেবল-পুরুষ হেডার $ 0.75

220 ইউএফ ক্যাপাসিটর

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

তাতাল

তারের স্ট্রিপার

লি-পো ব্যাটারি চার্জার, যেমন এটি।

ধাপ 3: হার্ডওয়্যার একত্রিত করুন

হার্ডওয়্যার একত্রিত করুন
হার্ডওয়্যার একত্রিত করুন
হার্ডওয়্যার একত্রিত করুন
হার্ডওয়্যার একত্রিত করুন
হার্ডওয়্যার একত্রিত করুন
হার্ডওয়্যার একত্রিত করুন

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

220 uF ক্যাপাসিটর খুবই গুরুত্বপূর্ণ। এটি ছাড়া, TPL5110 কখনই T5 চালু করবে না। এটা একটু অস্পষ্ট কেন, কিন্তু TPL5110 ব্যবহারকারী অন্যান্য ব্যক্তিদের একই সমস্যা হয়েছে। হয়তো ESP32 TTL5110 সরবরাহ করতে পারে তার চেয়ে প্রারম্ভে আরো বর্তমান আঁকবে?

ব্যাটারি হার্ড ওয়্যার করবেন না। JST-PH কেবল ব্যবহার করুন যাতে ব্যাটারি চার্জ করার জন্য আপনি সংযোগ বিচ্ছিন্ন করতে পারেন। TPL5110 এর মাধ্যমে T5 থেকে ফিরে ব্যাটারি চার্জ করার একটি উপায় হতে পারে যদি TPL5110 "চালু" হয়, কিন্তু আমি সেই কৌশলটির জন্য নিশ্চিত হতে পারি না।

আমি একটি ঘের হিসাবে একটি কাঠের বাক্স তৈরি করেছি, কিন্তু 1.5 "x 2.75" x 1 "এর ন্যূনতম অভ্যন্তরীণ মাত্রা সহ যে কোনও কাজ করবে।

ধাপ 4: টাইমিং টিউন করুন

TPL5110 বোর্ডে একটি ট্রিম পটেনশিয়োমিটার রয়েছে যা TPL5110 জেগে ওঠার সময় ব্যবধান নির্ধারণ করে। এটিকে ঘড়ির কাঁটার উল্টো দিকে ঘুরানোর জন্য একটি ছোট স্ক্রু ড্রাইভার ব্যবহার করুন। আমার বোর্ডে, এটি ব্যবধানটি 145 মিনিটে সেট করে, যা আসলে সর্বোচ্চ 120 মিনিটের নির্দিষ্ট সময়ের চেয়ে বেশি, কিন্তু এটি কাজ করে এবং সামঞ্জস্যপূর্ণ ছিল এবং প্রতি 120 মিনিট জেগে ওঠার চেয়ে আরও বেশি শক্তি সঞ্চয় করবে, তাই আমি এটি ব্যবহার করেছি। আপনাকে অবশ্যই ব্যবধানটি সঠিকভাবে জানার দরকার নেই, কারণ লক্ষ্যটি প্রায় প্রতিদিন প্রায় 4 টার দিকে ডেটা ডাউনলোড করা। আপনি env_config.h এ ব্যবধান (উদা 14, 145 মিনিট) এবং ঘুম থেকে ওঠার সময় (যেমন, সকাল 4 টা) নির্দিষ্ট করতে পারেন।

(যদি আপনি অন্য কোন প্রজেক্টের জন্য সময় ভাল নিয়ন্ত্রণ করতে চান, TPL5110 বোর্ডের পিছনে একটি ট্রেস আছে যা আপনি পোটেন্টিওমিটার নিষ্ক্রিয় করার জন্য কাটাতে পারেন। তারপর আপনি ডেলি পিনের সাথে একটি প্রতিরোধক সংযুক্ত করুন, এবং প্রতিরোধ ব্যবধান নির্ধারণ করে, অনুযায়ী এই চার্ট।)

ধাপ 5: সফটওয়্যার

আপনার ESP32 প্যাকেজের সাথে Arduino IDE এর প্রয়োজন হবে। IDE তে, আপনার বোর্ডকে "ESP32 Dev Module" এ সেট করুন।

স্কেচটি https://github.com/jasonful/Tides এ পাওয়া যায় এবং এর জন্য lib টি লাইব্রেরি প্রয়োজন:

  1. "ESP8266 ওয়েদার স্টেশন", Arduino লাইব্রেরি ম্যানেজার (অথবা এখানে) থেকে পাওয়া যায়। আপনার কেবল এই 6 টি ফাইল প্রয়োজন হবে: ESPHTTPClient.h, ESPWiFi.h, OpenWeatherMapCurrent.cpp, OpenWeatherMapCurrent.h, OpenWeatherMapForecast.cpp, OpenWeatherMapForecast.h এবং বাকিগুলি মুছে ফেলতে পারেন।
  2. Arduino লাইব্রেরি ম্যানেজার (অথবা এখানে) থেকে "Json Streaming Parser" পাওয়া যায়
  3. https://github.com/LilyGO/TTGO-Epape-T5-V1.8/tree/master/epa2in13-demo যদিও কোডটি সত্যিকারের লাইব্রেরি হিসাবে প্যাকেজ করা হয়নি, আপনি কেবল আপনার লাইব্রেরির ডিরেক্টরিতে এটি অনুলিপি করতে পারেন এবং অন্তর্ভুক্ত করতে পারেন এটা।

ধাপ 6: সফ্টওয়্যার কনফিগার করুন

Env_config.h ফাইলে আপনাকে বেশ কয়েকটি পরামিতি সেট করতে হবে (এবং কয়েকটি আপনি সেট করতে চাইতে পারেন), যার মধ্যে রয়েছে:

  • ওয়াইফাই SSID এবং পাসওয়ার্ড
  • NOAA স্টেশন আইডি (অন্য কথায়, আপনি কোথায়)
  • OpenWeatherMap AppID, যার জন্য আপনাকে নিবন্ধন করতে হবে (এটি সহজ এবং বিনামূল্যে)
  • OpenWeatherMap LocationID (আবার, আপনি কোথায়)
  • CONFIG_USE_TPL5110, যা আপনাকে TPL5110 ছাড়া T5 ব্যবহার করতে দেয়। পরিবর্তে, সফ্টওয়্যার গভীর ঘুম মোডে প্রবেশ করবে। T5 বোর্ড গভীর ঘুমে প্রায় 8 ma আঁকে, তাই আমি কেবল ব্যাটারি কয়েক দিন স্থায়ী হবে বলে আশা করি।

ধাপ 7: সফটওয়্যার কিভাবে কাজ করে

(যদি আপনি যত্ন না করেন তবে আপনি এই অংশটি এড়িয়ে যেতে পারেন।)

লক্ষ্য হল দিনে একবার জেগে ওঠা, কিন্তু যেহেতু TPL5110 এর সর্বোচ্চ ব্যবধান মাত্র 2 ঘন্টা বা তার বেশি, তাই T5 কে আরও প্রায়ই জেগে উঠতে হবে। তাই এটি জোয়ার এবং আবহাওয়ার ডেটা ডাউনলোড করার পরে, এটি গণনা করে যে এই 2 ঘন্টার ব্যবধানগুলির মধ্যে কতগুলি এখন আগামীকাল সকাল 4:00 এর মধ্যে রয়েছে। এটি সামান্য জটিল যে এই কারণে যে TPL5110 সম্পূর্ণরূপে T5 তে বিদ্যুৎ বিচ্ছিন্ন করে, যা ব্যাটারির জন্য ভালো, কিন্তু এর মানে হল আমরা RAM এবং রিয়েল-টাইম ঘড়ি হারাই। এটি প্রতিদিন সকালে স্মৃতিশক্তি নিয়ে ঘুম থেকে ওঠার মতো। তাই এখন কোন সময় তা বের করতে, এটি NOAA এর HTTP হেডার থেকে বের করে। এবং মনে রাখতে কতগুলি 2-ঘন্টা অন্তর বাকি আছে, এটি লিখেছে যে অ-উদ্বায়ী স্টোরেজ (ফ্ল্যাশ) এর বিপরীতে। যখনই এটি জেগে ওঠে, এটি সেই কাউন্টারটি পরীক্ষা করে, এটি হ্রাস করে, এটি সঞ্চয় করে এবং যদি এটি শূন্যের বেশি হয় তবে এটি তাত্ক্ষণিকভাবে TPL51110 ("সম্পন্ন") এ একটি সংকেত পাঠায় যাতে এটি ঘুমাতে বলা হয়। যখন কাউন্টার শূন্য হিট করে, কোডটি নতুন ডেটা ডাউনলোড করে, এবং কাউন্টার পুনরায় গণনা করে এবং পুনরায় সেট করে।

ধাপ 8: এটি চালান

চালাও এটা
চালাও এটা

নিশ্চিত করুন যে T5 এর বাম দিকে সুইচটি আপ (অন) অবস্থানে রয়েছে, T5 এ স্কেচ আপলোড করুন এবং কয়েক সেকেন্ডের মধ্যে স্ক্রিনটি জোয়ার এবং আবহাওয়ার তথ্যের সাথে আপডেট হওয়া উচিত।

যদি আপনার সফটওয়্যারটি ডিবাগ করার প্রয়োজন হয়, তাহলে Tides.ino এর শীর্ষে "#define DEBUG 0" কে "#define DEBUG 1" এ পরিবর্তন করুন। এটি সিরিয়াল ডিবাগ আউটপুট চালু করবে এবং ই-পেপারের নিচের অংশে নতুন ডেটা ডাউনলোড করার আগে অবশিষ্ট রিস্টার্টের সংখ্যা এবং শেষবার ডাউনলোড করা ডেটা প্রদর্শন করবে।

ধাপ 9: ভবিষ্যতের দিকনির্দেশ

  1. TPL5110 এর ব্যবহার একটি ই-পেপার ডিসপ্লের সাথে মিলিয়ে যে কোনও ডেটা প্রদর্শন করার একটি দুর্দান্ত উপায় যা প্রায়শই পরিবর্তিত হয় না, চমৎকার ব্যাটারি লাইফ সহ।
  2. যখন আমি এটি ডিজাইন করছিলাম, তখন আমি TrigBoard ব্যবহার করার কথা ভেবেছিলাম, যা একটি ESP8266 বোর্ড যা TPL5111 বোর্ডে রয়েছে। এটির জন্য একটি পৃথক ই-পেপার ডিসপ্লে এবং ই-পেপার ড্রাইভার বোর্ডের প্রয়োজন হবে। অথবা এই বা এই মত একটি ড্রাইভার+বোর্ড কম্বো। কোডটি ESP8266 এ পোর্ট করার জন্য, আমি মনে করি SSL কোডটি সার্টিফিকেটের পরিবর্তে আঙুলের ছাপ ব্যবহার করতে হবে, এবং অ-উদ্বায়ী স্টোরেজ কোডটি EEPROM বা RTC মেমরি ব্যবহার করতে হবে।
  3. আমি সম্প্রতি শুনেছি যে Lolin32 বোর্ড গভীর ঘুম মোডে বেশ শালীন: প্রায় 100uA। TPL51110 বোর্ডের মতো ভাল নয় (Adafruit অনুযায়ী 20uA) কিন্তু যথেষ্ট ভাল।
  4. OpenWeatherMap আমার প্রদর্শনের চেয়ে অনেক বেশি আবহাওয়ার তথ্য প্রদান করে। আইকন আইডি সহ, যার জন্য কোথাও একরঙা আইকন খোঁজার প্রয়োজন হবে।

প্রস্তাবিত: