Arduino শিখুন এক্সক্লুসিভ প্রজেক্ট তৈরি করুন [পর্ব-১৬] :: সামনে আগুনের শিখা থাকলেই জানিয়ে দেবে ফ্লেম সেন্সর

সামনে কোন আগুনের শিখা আছে কিনা পর্যবেক্ষণের জন্য ফ্লেম সেন্সর ব্যবহার করা হয়। অনেক সময় ইন্ডস্ট্রিতে এমন কিছু ইন্সট্রুমেন্ট ব্যবহৃত হয় হয় যা গরম হয়ে আগুন ধরে যেতে পারে এবং অনাকাঙ্খিত দূর্ঘটনা ঘটতে পারে, এরকম ঝুকিপূর্ণ স্থানে স্বয়ংক্রিয় পতিরক্ষা ব্যবস্থা হিসেবে ফ্লেম সেন্সর ব্যবহার করা যেতে পারে। আরডুইনোতেও সেন্সরটি ব্যবহার করা যায়। সেন্সরটির দাম খুবই কম সাধারণত ২০০-২৫০ টাকার মতো হবে।

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

যে সকল উপকরণ লাগবে

  • Flame Sensor (এনালগ আউটপুট থাকতে হবে)
  • Male to Female jumper wires
  • একটা Arduino uno
  • অগ্নিশিখা উৎস বা লাইটার

Flame Sensor এর বিভিন্ন অংশ এবং পিন পরিচিতি

এতে প্রধান অংশ হিসেবে একটা IR সেন্সর থাকে, একটা OP-Amp আইসি থাকে, দুইটা ইন্ডিকেটর এল ই ডি থাকে । একটা ভেরিয়েবল রেজিস্টর থাকে।

এতে মোট ৪ টা পিন থাকে। পিন সমূহ হচ্ছে

VCC       সাধারণত +5v সাপ্লাই দেয়া হয়

A0          এনালগ আউটপুট

D0         ডিজিটাল আউটপুট

GND        গ্রাউন্ড

সাধারণ পর্যবেক্ষণ

সাধারণ পর্যবেক্ষণের জন্য VCC পিনে +5v সাপ্লাই দিলে এবং গ্রাউন্ড সংযোগ করলে , পাওয়ার এল ই ডি টি জ্বলবে। এরপর সেন্সরটির সামনে কোন অগ্নিশিখা রাখলেই D0 এলই ডি টি জ্বলে অগ্নিশিখার অস্তিত্ব প্রকাশ করবে।

আরডুইনো এর সাথে Flame Sensor ব্যবহার

আমরা একটা প্রোগ্রাম লেখবো যার মাধ্যমে অগ্নিশিখাটি ঠিক কত দূরে আছে জানা যাবে। এজন্য VCC পিনে +5v সাপ্লাই দিলে এবং গ্রাউন্ড সংযোগ করে, এনালগ আউটপুট পিনকে আরডুইনো বোর্ডের A0 পিনে সংযুক্ত করতে হবে।

প্রোগ্রাম কোড

const int sensorMin = 0;
const int sensorMax = 1024;

void setup() {
Serial.begin(9600);
}
void loop() {

int sensorReading = analogRead(A0);
int range = map(sensorReading, sensorMin, sensorMax, 0, 3);

switch (range) {
case 0:    // A fire closer than 1.5 feet away.
Serial.println("** Close Fire **");
break;
case 1:    // A fire between 1-3 feet away.
Serial.println("** Distant Fire **");
break;
case 2:    // No fire detected.
Serial.println("No Fire");
break;
}
delay(1);  // delay between reads
}

প্রোগ্রাম পর্যবেক্ষণ

const int sensorMin = 0;
const int sensorMax = 1024;

এর মাধ্যমে দুইটা কনস্ট্যান্ট নাম্বার ডিক্লেয়ার করা হয়েছে

Serial.begin(9600);   সিরিয়াল কমিউনিকেশনের বাডরেট নির্ধারণ করা হয়েছে

int sensorReading = analogRead(A0); এনালগ আউটপুট পিনকে আর ডুইনো বোর্ডের A0 পিনে সংযুক্ত করা হলে analogRead(A0); এর মাধ্যমে ০থেকে ১০২৪ পর্যন্ত এনালগ ভ্যালু পাওয়া যাবে।

int range = map(sensorReading, sensorMin, sensorMax, 0, 3); এর মাধ্যমে এখানে map() ফাংশন ব্যবহার করে sensorReading এর মান ০থেকে ১০২৪ রেন্জ থেকে ০ থেকে ৩ রেন্জে রিস্কেলিং করা হয়েছে।

তাহলে range এর ভ্যালু হতে পারে 0,1 এবং2 , যেহেতু range একটা ইন্টিজার সংখ্যা।

switch (range) {
case 0:    // A fire closer than 1.5 feet away.
Serial.println("** Close Fire **");

এর মাধ্যমে বলা হচ্ছে যদি range  এর ভ্যালু 0 হয় তাহলে সিরিয়াল মনিটরে প্রিন্ট করবে ** Close Fire ** ।

case 1:    // A fire between 1-3 feet away.
Serial.println("** Distant Fire **");

যদি range  এর ভ্যালু 1 হয় তাহলে সিরিয়াল মনিটরে প্রিন্ট করবে ** Distant Fire **

case 2:    // No fire detected.
Serial.println("No Fire");

আর যদি range  এর ভ্যালু 1 হয় তাহলে সিরিয়াল মনিটরে প্রিন্ট করবে ** Distant Fire **

আশা করছি সবাই সফলভাবে প্রজেক্টটি করতে পারবেন।

সোর্সকোড ডাউনলোড

http://www.mediafire.com/download/dbzyxpxnbdmwo85/Flame_Sensor.zip

কোর্স শেষে পাবেন টেকটিউনসসস ভেরিফায়েড সার্টিফিকেট!

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

আশা করছি এরই মধ্যে অনেকেই Arduino নিয়ে কাজ শুরু করেছেন। আবার অনেকেই Arduino বোর্ড সংগ্রহ করা সহ, বেশ কিছু সমস্যার কারণে কাজ শুরু করতে পারেন নি। আমি প্রায়ই অনেকের কাছ থেকে ম্যাসেজ পাই , চেষ্টা করি সবাইকে আমার সাধ্যে অনুযায়ী সাপোর্ট দেয়ার। Arduino শেখার সাথে সম্পর্কযুক্ত যে কোন বিষয় যেমন Arduino বোর্ড এবং অন্যান্য যন্ত্রাংশ সংগ্রহ করা, কোর্সের কোন পার্ট সম্পর্কে বা প্রোগ্রাম সম্পর্কে কোন বিষয় আমাকে জানানোর জন্য টিউমেন্ট করার পাশাপাশি আমাকে [email protected] এ মেইল করতে পারেন বা https://www.facebook.com/pages/Ashim-Kumar/1530502553863914 ফেসবুকে ম্যাসেজ দিতে পারেন। সবার জন্য শুভকামনা রইলো।

Level 2

আমি অসীম কুমার পাল। বিশ্বের সর্ববৃহৎ বিজ্ঞান ও প্রযুক্তির সৌশল নেটওয়ার্ক - টেকটিউনস এ আমি 15 বছর 6 মাস যাবৎ যুক্ত আছি। টেকটিউনস আমি এ পর্যন্ত 147 টি টিউন ও 469 টি টিউমেন্ট করেছি। টেকটিউনসে আমার 17 ফলোয়ার আছে এবং আমি টেকটিউনসে 0 টিউনারকে ফলো করি।

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


টিউনস


আরও টিউনস


টিউনারের আরও টিউনস


টিউমেন্টস

vaiya sensor er pin gula arduino board er kon pin er shate lagabo etar ekta photo dile valo hoto

খুব ভা‌লো লাগ‌লো, আ‌রো ভা‌লো লাগ‌তো য‌দি আগুন সাম‌নে থাক‌লে আরডু‌নো বোর্ড এর কো‌নো পিন হাই হ‌লে। হাই পিন দ্বা রা কো‌নো ডিবাইস অ‌পেন করা যেতো

এটা তো করা যাবেই । আগের টিউটোরিয়াল গুলোর অভিজ্ঞতা থেকেই হবে