সুচিপত্র:

টুইটিং ওয়েদার স্টেশন: 8 টি ধাপ (ছবি সহ)
টুইটিং ওয়েদার স্টেশন: 8 টি ধাপ (ছবি সহ)

ভিডিও: টুইটিং ওয়েদার স্টেশন: 8 টি ধাপ (ছবি সহ)

ভিডিও: টুইটিং ওয়েদার স্টেশন: 8 টি ধাপ (ছবি সহ)
ভিডিও: Raspberry Pi 3 B+ Features And Full Pin Configuration # 1 2024, জুলাই
Anonim
টুইট করা আবহাওয়া স্টেশন
টুইট করা আবহাওয়া স্টেশন

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

আবহাওয়া IoT স্টেশন ওরফে TWIST- এর সাথে দেখা করুন TWIST এর উদ্দেশ্য হল যাতে ব্যক্তি এবং সম্প্রদায় প্রকৃতপক্ষে তাদের পরিবেশে কী ঘটছে তার তথ্য সংগ্রহ করতে পারে এবং টুইটারের মতো সোশ্যাল মিডিয়ায় এই ডেটা শেয়ার করতে পারে।

  • TWIST হল একটি ইন্টারনেট অফ থিংস (IoT) চালিত প্ল্যাটফর্ম।
  • TWIST এর মস্তিষ্ক হল একটি ইন্টেল এডিসন বোর্ড।
  • TWIST বিভিন্ন সেন্সরের সাথে সামঞ্জস্যপূর্ণ।
  • সমস্ত কোড, ডিজাইন ফাইল (স্কিম্যাটিক্স এবং পিসিবি লেআউট) ওপেন সোর্স। এর মানে হল যে কেউ বিভিন্ন সেন্সরের কোড এবং স্কিম্যাটিক্স শেয়ার করে TWIST প্ল্যাটফর্মে অবদান রাখতে পারে।

TWIST তিনটি প্রযুক্তিগত স্তর নিয়ে গঠিত:

প্রথম স্তরটি হল একটি হার্ডওয়্যার বোর্ড যাতে সমস্ত আবহাওয়া এবং পরিবেশ সেন্সর থাকে যা 'সেন্সর বোর্ড' নামে পরিচিত। নাম অনুসারে, এটি সেন্সর বহন করে যা পরিমাপের গঠন, তাপমাত্রা, আর্দ্রতা, বৃষ্টি পরিমাপ করে। অতিরিক্ত সেন্সর পছন্দ করে ভূতাত্ত্বিক কার্যকলাপ, UV সূচক, ব্যারোমেট্রিক চাপ, উচ্চতা, লাক্স (উজ্জ্বলতা), শব্দের মাত্রা, বাতাসের গতি এবং দিক ইত্যাদি। একবার এটি সেট আপ হয়ে গেলে, সেন্সর বোর্ড সেন্সর দ্বারা পরিমাপ করা ডেটা দ্বিতীয় স্তরে প্রবাহিত করতে সক্ষম হয়। দ্বিতীয় স্তর হল ইন্টেল এডিসন বোর্ড যা সেন্সর বোর্ড থেকে তথ্য গ্রহণ করে, প্রক্রিয়া করে এবং পরবর্তী স্তরে পাঠায়। তৃতীয় স্তরটি এডিসন বোর্ডের ওয়্যারলেস মডিউল এবং টুইটের বর্তমান আবহাওয়া ও পরিবেশগত অবস্থা ব্যবহার করে আপনার এডিসন বোর্ডকে ওয়াই-ফাইয়ের মাধ্যমে ইন্টারনেটের সাথে সংযুক্ত করে।

ডিভাইসে শক্তি একটি সৌর প্যানেল বা একটি এসি অ্যাডাপ্টার দ্বারা সরবরাহ করা যেতে পারে।

সংস্করণ নিয়ন্ত্রিত সংগ্রহস্থল

TWIST- এর তিনটি প্রযুক্তিগত স্তর হল ওপেন-সোর্স, এবং এইভাবে আমরা কোড, PCB ডেভেলপমেন্ট, মেকানিক্যাল ডিজাইন ইত্যাদির জন্য যে সমস্ত ফাইল ব্যবহার করি তা আমাদের Github সংগ্রহস্থলে সহজেই পাওয়া যায়।

প্রতিযোগিতার এন্ট্রি

ইন্টেল আইওটি আমন্ত্রণমূলক

আমি ইন্টেল+ইন্সট্রাক্টেবলকে ধন্যবাদ জানাতে চাই যে আমাকে ইন্টেল এডিসন বোর্ড দিয়েছিল। আমি এডিসন বোর্ড ব্যবহার করে আরো অনেক আইওটি সম্পর্কিত নির্দেশিকা তৈরির পরিকল্পনা করছি।

#iotweatherstn

আপনি যদি TWIST করেন, #iotweatherstn ব্যবহার করে আবহাওয়া টুইট করতে ভুলবেন না। #iotweatherstn একটি হ্যাশট্যাগ হতে পারে যা সমস্ত IoT চালিত টুইটিং ওয়েদার স্টেশন দ্বারা ব্যবহৃত হয়।

ধাপ 1: যন্ত্রাংশ এবং উপকরণ

যন্ত্রাংশ এবং উপকরণ
যন্ত্রাংশ এবং উপকরণ
যন্ত্রাংশ এবং উপকরণ
যন্ত্রাংশ এবং উপকরণ
যন্ত্রাংশ এবং উপকরণ
যন্ত্রাংশ এবং উপকরণ

QuantityPartDetails 1

ইন্টেল এডিসন

Arduino ব্রেকআউট বোর্ডের সাথে

1

MQ2 দহনযোগ্য গ্যাস সেন্সর

1

YL-83

বৃষ্টি সেন্সর

1

SL-HS-220

তাপমাত্রা এবং আর্দ্রতা সেন্সর

1

প্রতিরোধক

32 কে

4.7 কে

3 মেটাল স্ট্যান্ডঅফ 1 ইঞ্চি

1

প্রতিরোধক

32 কে

4.7 কে

2

কাঠের শীট A4 সাইজ

পরে আকারে কাটা যাবে

3

ধাতু অচল

1 ইঞ্চি

ধাপ 2: বৈদ্যুতিক নকশা

ক্ষমতা

পুরো সিস্টেমটি 5V 1A পাওয়ার সাপ্লাই থেকে চালিত। সেন্সর (তাপমাত্রা, আর্দ্রতা, বৃষ্টি, গ্যাস) আনুমানিক 200 mA, এডিসন 500 mA এর কাছাকাছি, যেহেতু মোট বর্তমান প্রয়োজন 1amp এর চেয়ে কম, একটি 1 amp সরবরাহ ঠিক কাজ করা উচিত। এডিসন বোর্ডের ডিজিটাল পিন 13 -এ অন্তর্নির্মিত সবুজ এলইডি শক্তির অবস্থা দেখানোর জন্য ব্যবহৃত হয়।

ControlAn ইন্টেল এডিসন TWIST এর জন্য অনুষ্ঠানটি পরিচালনা করেন। এডিসন একটি Arduino ব্রেকআউট বোর্ডে মাউন্ট করা হয়েছে, যা সেন্সর থেকে ডিজিটাল এবং এনালগ সিগন্যাল পড়া সহজ করে তোলে। এডিসন একটি মাইক্রো ইউএসবি তারের মাধ্যমে 5V রেলের সাথে সংযুক্ত। এডিসনের একটি অন্তর্নির্মিত ওয়াই-ফাই রেডিও রয়েছে, যা এটিকে কোন অতিরিক্ত হার্ডওয়্যারের প্রয়োজন ছাড়াই টুইটারের সাথে সংযুক্ত করতে দেয়।

রিয়েল টাইম ক্লক (RTC)

যেহেতু টুইটার দ্বারা স্বয়ংক্রিয়ভাবে টাইম-স্ট্যাম্পিং করা হয় প্রতিটি টুইটের জন্য টুইট করার সময় থেকে মোট দিনের সংখ্যার মধ্যে একটি রেজোলিউশন সীমাবদ্ধ থাকে, তাই ঘন্টা-মিনিটে তারিখ এবং সময়কে সঠিকভাবে স্ট্যাম্প করার জন্য একটি রিয়েল-টাইম ঘড়ি ব্যবহার করা হয়- দ্বিতীয় বিন্যাস। TWIST প্ল্যাটফর্মে ব্যবহৃত রিয়েল-টাইম ঘড়ি হল DS-1307 RTC মডিউল।

সেন্সর এই সিস্টেমের সবচেয়ে মৌলিক সেটআপটিতে চারটি সেন্সর (তাপমাত্রা, আর্দ্রতা, বৃষ্টি, গ্যাস) রয়েছে যা এডিসনের সাথে সংযোগ স্থাপন করে। অতিরিক্ত সেন্সর যোগ করা যেতে পারে যেমন নয়েজ, বায়ু ইত্যাদি প্রতিটি সেন্সর সরাসরি 5V রেল থেকে চালিত হয় এবং এর সিগন্যাল পিন যথাক্রমে এনালগ পিন A0 থেকে A2 এবং ডিজিটাল পিন 2 এডিসন ব্রেকআউট বোর্ডে সংযুক্ত থাকে। সেন্সরগুলির প্রত্যেকটিতে প্রতিটি সেন্সর বোর্ডে সংবেদনশীলতা সমন্বয় পটেন্টিওমিটার লাগানো থাকে; MQ-2 হল একটি দহনযোগ্য গ্যাস সেন্সর (তরল পেট্রোলিয়াম গ্যাস, প্রোপেন, হাইড্রোজেন এবং মিথেন) যা প্রতি মিলিয়নের অংশে গ্যাসের ঘনত্বের আনুপাতিক একটি এনালগ ভোল্টেজ প্রদান করে। SL-HS-220 এর একটি থার্মিস্টার রয়েছে যা তাপমাত্রার মান দেয়। যেহেতু থার্মিস্টারের আউটপুট নন-লিনিয়ার, তাই সংশ্লিষ্ট তাপমাত্রার টেবিল সেন্সর রিপোজিটরিতে দেওয়া আছে। সার্কিট ডায়াগ্রামে দেখানো এডিসন বোর্ডের সাথে সংযুক্ত হওয়ার সময় থার্মিস্টারের একটি ভোল্টেজ ডিভাইডার সার্কিট প্রয়োজন। SL-HS-220 এর একটি অন্তর্নির্মিত হাইগ্রোমিটারও রয়েছে যা আর্দ্রতা পরিমাপ করে এবং একটি অ্যানালগ ভোল্টেজ আউটপুট করে যা একটি নির্দিষ্ট আর্দ্রতা মানের সাথে মিলে যায়। সেন্সর ভান্ডারে আর্দ্রতা-ভোল্টেজ টেবিলও দেওয়া আছে। SL-HS-220 এর একটি সাধারণ বিকল্প হল DHT11 সেন্সর। রেইন সেন্সর/ওয়াটার সেন্সরের একটি পোটেন্টিওমিটার রয়েছে যা নির্দিষ্ট পরিমাণ বৃষ্টির জন্য ডিজিটাল আউটপুট দিতে সমন্বয় করা হয় যার সংবেদনশীলতা ব্যবহারকারী দ্বারা সামঞ্জস্য করা যায়।

আবহাওয়া স্টেশন

ধাপ 3: যান্ত্রিক নকশা

টুইস্টের দেহ কাঠের চাদরের দুটি প্লেট দিয়ে তৈরি। যদিও আমি 1/4 "পাতলা পাতলা কাঠ ব্যবহার করেছি, নকশাটি যে কোন শীট উপাদান থেকে একত্রিত করা যায় কারণ স্পেসিং (1" অ্যালুমিনিয়াম স্ট্যান্ডঅফ দ্বারা পরিচালিত) একমাত্র সমালোচনামূলক উপাদান। আমি উপরে ডাউনলোডের জন্য ভেক্টর ফাইল সংযুক্ত করেছি।

লেজারের কাটিং

যারা লেজার দুটি প্লেট কাটতে চান তাদের জন্য, আমি নিচে ডাউনলোডের জন্য লেজার কাটার ফাইল সংযুক্ত করেছি। এটি তার নকশায় একটি অতিরিক্ত বায়ু মানের সেন্সর অন্তর্ভুক্ত করে। সুতরাং আপনি আপনার পছন্দের উপর নির্ভর করে একটি MQ2 সেন্সর মডিউল বা বায়ু মানের সেন্সর মডিউল ব্যবহার করতে পারেন।

ধাপ 4: ফ্রেম সমাবেশ: মুখ এবং বেস

ফেসপ্লেট

সেন্সরগুলি তাদের মিলিত গর্ত এবং কাট-আউটগুলির মধ্যে ফিট করে এবং স্ক্রু বা আঠালো ব্যবহার করে ঠিক করা যায়।

বেস প্লেট

এডিসন বোর্ডের স্ট্যান্ডঅফগুলি বেসপ্লেটের উপর নষ্ট হয়ে গেছে। রেইন সেন্সরের সাথে সংযুক্ত এনালগ-টু-ডিজিটাল কনভার্টার (এডিসি) বেসপ্লেটেও স্ক্রু করা যেতে পারে।

বাজারের মতো অতিরিক্ত উপাদান বা সোলার ইনপুটের জন্য ভোল্টেজ রেগুলেটর সার্কিটও বেসপ্লেটে টানতে পারে।

বেসপ্লেট এবং ফেসপ্লেট উভয়ই 1 স্ট্যান্ডঅফ দ্বারা পৃথক করা হয়েছে।

ধাপ 5: ইলেকট্রনিক্স এবং সেন্সর সমাবেশ

ক্ষমতা

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

সেন্সর

সেন্সরগুলি পুরুষ শিরোনামের সাথে ব্রেকআউট বোর্ডগুলির সাথে সংযুক্ত থাকে এবং তাই এগুলি সরাসরি পুরুষ-থেকে-মহিলা জাম্পার তারের মাধ্যমে এডিসনের সাথে সংযুক্ত হতে পারে।

ধাপ 6: টুইটার কনফিগারেশন

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

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

লাইব্রেরি এই NeoCat- এর ওয়েবসাইটকে OAuth স্টাফের প্রক্সি সার্ভার হিসেবে ব্যবহার করে। এই NeoCat- এর ওয়েবসাইট রক্ষণাবেক্ষণের সময় আপনার টুইট প্রয়োগ নাও হতে পারে। টুইটার একই বিষয়বস্তু দিয়ে বারবার টুইট প্রত্যাখ্যান করে বলে মনে করে (ত্রুটি 403 ফেরত দেয়)।

টুইটার টোকেন

Arduino টুইট লাইব্রেরি

ধাপ 7: সফ্টওয়্যার এবং কনফিগারেশন

আপনি কোডিং শুরু করার আগে ইন্টেল এডশনের জন্য ইন্টেলের সেটআপ গাইড অনুসরণ করুন।

প্রোগ্রামটি এডিসনের উপর চলমান একটি Arduino স্কেচ। আমি নীচের কোডের প্রতিটি প্রধান ব্লক ব্যাখ্যা করেছি।

কোডটিতে কিছু পূর্বনির্ধারিত ধ্রুবক, পিন ঘোষণা এবং কয়েকটি সিরিয়াল প্রিন্ট স্টেটমেন্ট রয়েছে যা সমস্যা সমাধান করতে সাহায্য করে।

টুইট বিলম্ব

যেহেতু টুইটার একই ধরনের কন্টেন্ট ফিল্টার করে এবং তাদের প্রত্যেকের মধ্যে অল্প সময়ের মধ্যে টুইট করা হয়, তাই প্রতিটি টুইটের মধ্যে একটি স্ট্যান্ডার্ড 3 ঘন্টা (10800000 মিলি সেকেন্ড) বিলম্ব সেট করা হয়েছে।

টুইট মেসেজ ();

বিলম্ব (10800000);

কাস্টিং টাইপ করুন

সেন্সর থেকে আমরা যে অনেক রিডিং পাই তা 'int' বা 'float' datatype- এ থাকে। কিন্তু যেহেতু আমরা এই মানগুলি টুইট করছি, আমাদের সেগুলিকে 'স্ট্রিং' ডেটাটাইপে রূপান্তর করতে হবে। এর জন্য আমরা একটি বিশেষ টাইপ-কাস্টিং কৌশল ব্যবহার করি।

গৃহস্থালি

char fmt [100]; sprintf (fmt, "%%% d।%df", প্রস্থ, সঠিক); স্প্রিন্টফ (সাউট, এফএমটি, ভ্যাল); ফিরে আসুন; }

টুইটার টোকেন

টুইটার টোকেন নিওক্যাটের ওয়েবসাইটে তৈরি করা হয়েছে এবং এখানে টোকেন স্পেসে আটকানো উচিত।

অকার্যকর টুইট মেসেজ () {

টুইটার টুইটার ("এখানে টুইটার টোকেন লিখুন");

সেন্সর মান টুইট করা

সেন্সর মান টুইট করার জন্য আমরা প্রথমে সেন্সর টাইপ অন্তর্ভুক্ত করি; উদাহরণ: "আর্দ্রতা"। এর পরে একটি অক্ষর ঘোষণা এবং টাইপকাস্টিংয়ের জন্য প্রয়োজনীয় কোডের একটি লাইন। পরবর্তী আমরা পরিমাপের এককের জন্য একটি বিবৃতি যোগ করি; উদাহরণ: "%RH"। আমরা একইভাবে অন্যান্য সেন্সরের মান যোগ করা চালিয়ে যেতে পারি।

আর্দ্রতা (); ভাসমান আর্দ্র;

// টুইটার বার্তা ring stringMsg = "আর্দ্রতা:"; char tmp [10]; dtostrf (আর্দ্র, 1, 2, tmp); stringMsg += tmp; stringMsg += "%RH";

আবহাওয়া স্টেশনের অবস্থান এবং ট্যাগিং

পরবর্তী আমরা অবস্থান (শহর, এলাকা, ইত্যাদি) এবং #iotweatherstn মত অন্যান্য ট্যাগ ট্যাগ।

stringMsg += " #মুম্বাই #বান্দ্রা #iotweatherstn";

রিয়েল টাইম ক্লক (RTC)

আগে যেমন ব্যাখ্যা করা হয়েছে TWIST রিয়েল টাইম ক্লক ডেটা টুইট করতে পারে। নীচে আরটিসির কোডের 'দিন' প্যারামিটার ব্লকের একটি উদাহরণ। রিয়েল টাইম ক্লক বৈশিষ্ট্যটি TWIST প্ল্যাটফর্মে alচ্ছিক, যেহেতু মডিউলটি আলাদাভাবে আসে। তাই রিয়েল টাইম ক্লক শাখার কোড এবং স্কিম্যাটিক্সের জন্য TWIST সংগ্রহস্থলে একটি পৃথক শাখা তৈরি করা হয়েছে।

TwistDateTime (); তারিখের সময় এখন = rtc.now (); int twistday, twistmonth, twistyear, twisthour, twistmin, twistsec; স্ট্রিং stringMsg = ""; char ds1307day [10]; dtostrf (twistday, 1, 0ds1307day); stringMsg += ds1307day; stringMsg += "/";

140 অক্ষরের সীমা

কোডের এই ব্লকটি স্ট্রিং অ্যারেকে 140 অক্ষরের অ্যারে টুইট করার জন্য প্রস্তুত করে।

char msg [140];

stringMsg.toCharArray (msg, 140);

বার্তা এবং সংযোগ সমস্যা সমাধান

কোডের এই ব্লকটি ব্যবহারকারীকে বার্তা এবং টুইট স্ট্যাটাস চেক করতে সাহায্য করার জন্য সিরিয়াল মনিটরে পাঠ্যের কয়েকটি লাইন প্রিন্ট করে।

// যে sucker টুইট!

যদি (twitter.post (msg)) {int status = twitter.wait (); যদি (অবস্থা == 200) {Serial.println ("ঠিক আছে।"); Serial.println ("বার্তা টুইট করা"); } অন্য {// সংযোগ পরীক্ষা Serial.print ("ব্যর্থ: কোড"); Serial.println ("বার্তা টুইট করা হয়নি"); Serial.println (অবস্থা); }} অন্য {Serial.println ("সংযোগ ব্যর্থ হয়েছে"); Serial.println ("বার্তা টুইট করা হয়নি"); }

কোডের অন্যান্য সমস্ত ব্লকগুলি সেন্সর থেকে এনালগ বা ডিজিটাল রিডিংকে ব্যবহারযোগ্য ডেটাতে রূপান্তর করে।

কোডটি এখান থেকে বা প্রধান সংগ্রহস্থল থেকে ডাউনলোড করা যেতে পারে:

ওয়েদার স্টেশন

ধাপ 8: সেন্সর সংগ্রহস্থলে অবদান

আপনি কি একজন প্রোগ্রামার, ইঞ্জিনিয়ার বা ডিজাইনার যিনি TWIST- এ একটি নতুন ফিচারের জন্য দারুণ ধারণা রাখেন? হয়তো আপনি একটি বাগ সংশোধন জন্য একটি ভাল ধারণা আছে? গিথুব থেকে আমাদের কোড, স্কিম্যাটিক্স এবং সিএডি ফাইলগুলি দখল করুন এবং এটির সাথে টিঙ্কার করুন।

টুইস্ট গিটহাব

ইন্টেল আইওটি আমন্ত্রণমূলক
ইন্টেল আইওটি আমন্ত্রণমূলক
ইন্টেল আইওটি আমন্ত্রণমূলক
ইন্টেল আইওটি আমন্ত্রণমূলক

Intel® IoT আমন্ত্রণে দ্বিতীয় পুরস্কার

প্রস্তাবিত: