বর্তমান যুগে জনপ্রিয় একটি নাম Arduino। আরডুইনো মাইক্রোকন্ট্রোলার বেইজড প্রোটোটাইপিং ওপেন সোর্স হার্ডওয়্যার। Arduino ব্যবহার করে সিকিউরিটি সিস্টেম, রোবট কন্ট্রোল সিস্টেম ও বিভিন্ন সেন্সর টাইপ প্রজেক্ট তৈরি করা যায়।
তাহলে বলা যায়, “Arduino একটি ওপেন সোর্স মাইক্রো-কন্ট্রোলার ডেভেলপমেন্ট বোর্ড যা মূলত মাইক্রোকন্ট্রোলারের ব্যবহারকে সহজ করে তুলে”
উপরের সংজ্ঞা অনুযায়ী অনেকের প্রশ্ন হতে পারে যে মাইক্রো-কন্ট্রোলার জিনিসটা আবার কি? হ্যা, বর্তমানে ডিজিটাল কন্ট্রোল সিস্টেমে বা অটোমেটিক কন্ট্রোল সিস্টেমে যে উন্নতি হয়েছে তার পুরো কৃতিত্ব মাইক্রোকন্ট্রোলার ও মাইক্রোপ্রসেসর এর।
মাইক্রো-কন্ট্রোলারকে আসলে একটি ছোট কম্পিউটার বলা যেতে পারে। এতে প্রসেসর, র্যাম, মেমোরি ইনপুট/আউটপুট প্রান্ত একই সাথে থাকে। আরডুইনো নিয়ে বিস্তারিত জানার আগে মাইক্রোকন্ট্রোলার সম্বন্ধে জেনে রাখা উচিত। নিচে মাইক্রোকন্ট্রোলার নিয়ে বিস্তারিত একটি লেখার লিংক দেওয়া হয়েছে।
বিভিন্ন ধরনের ইলেকট্রনিক্স ডিভাইস যেমনঃ সেন্সর, এল ই ডি, এল সি ডি, মোটর ইত্যাদি প্রোগ্রাম করে নিজের মত করে ব্যবহার করা যায়। আর এই প্রোগ্রাম লোড করা হয় আরডুইনো বোর্ড এর মাইক্রোকন্ট্রোলারে। মাইক্রোকন্ট্রোলারে সরাসরি প্রোগ্রাম লোড করা যায় না। এর সাথে আনুসাঙ্গিক কিছু কম্পোনেন্টের প্রয়োজন হয়।Arduino Platform বর্তমান যুগে বেশ জনপ্রিয়।
Arduino ফিচার সমূহ
- ফ্রি টুলস এবং ড্রাইভার
- Arduino তে প্রোগ্রাম লোড করার জন্য এক্সট্রা কোন সার্কিট বোর্ডের প্রয়োজন নেই
- প্রোগ্রামিং ল্যাঙ্গুয়েজঃ সি ++ বা সি এর সিমপ্লিফাইড ভার্শন
- ডিভাইস না খুলে রিসেট দেওয়া যাবে
- চিপ নষ্ট হলে সহজেই পরিবর্তন করা যাবে
- Arduino বিভিন্ন সেন্সর থেকে এনালগ ও ডিজিটাল সিগন্যাল রিড করতে পারে এবং আউটপুটে ইনস্ট্রাকশন অনুযায়ী কাজ করতে পারে।
- Laptop কিংবা নোটবুকে কাজ করা যাবে
বিভিন্ন প্রকার Arduino
Arduino সাধারণত বিভিন্ন প্রকারের হয়ে থাকে। বাজারে বিভিন্ন মডেলের আরডুইনো পাওয়া যায় যেমন আরডুইনো UNO, আরডুইনো Mega, আরডুইনো nano ইত্যাদি। এর মধ্যে বহুল ব্যবহৃত কয়েকটি আরডুইনো ছবি নিচে দেওয়া হয়েছে।
টেকনিক্যাল স্পেসিফিকেশন
আমরা যেহেতু Arduino UNO নিয়ে কাজ করবো সেক্ষেত্রে Arduino UNO সম্বন্ধে কিছু স্পেসিফিকেশন জানবো।
- Microcontroller: ATmega328P
- Operating Voltage: 5v
- Input Voltage: 7-20v
- Digital I/O Pins: 14 (of which 6 provide PWM output)
- Analog Input Pins: 6
- DC Current per I/O Pin: 20 mA
- DC Current for 3.3V Pin: 50 mA
- Flash Memory: 32 KB of which 0.5 KB used by bootloader
- SRAM: 2 KB
- EEPROM: 1 KB
- Clock Speed: 16 MHz
- Length: 68.6 mm
- Width: 53.4 mm
- Weight: 25 g
আরডুইনো শিখতে হলে যেসকল বিষয় জেনে রাখতে হবে
- আরডুইনো বোর্ডের সাথে ভালভাবে পরিচিত হতে হবে।
- আরডুইনো সফটওয়্যার ইনস্টল দিতে হবে।
- Ardunio Programming Language – C or C++ এর Simplified Version সম্বন্ধে জানতে হবে।
Arduino UNO বোর্ডের সাথে পরিচিতি
নিচের সিরিয়াল ১, ২, ৩………………চিত্র অনুযায়ী সনাক্ত করা হয়েছে।
১। Power USB: আরডুনো বোর্ডকে USB Cable এর সাহায্যে পাওয়ার দেওয়া যায়। Power USB-তে USB Cable কম্পিউটারে যুক্ত করে প্রোগ্রাম লোড করা হয়ে থাকে।
২। Power (Barrel Jack): আরডুইনো বোর্ডকে ব্যারেল জ্যাকের সাহায্যে এসি মেইন পাওয়ার সাপ্লাই থেকেও কানেক্ট করা যায়। তবে সেক্ষেত্রে খেয়াল রাখতে হবে যেন ডিসি ৫ ভোল্ট হয়।
৩। Voltage Regulator: আরডুইনো তে যে ভোল্টেজ দেওয়া হয় তা ভোল্টেজ রেগুলেটর নিয়ন্ত্রন করে থাকে। ভোল্টেজ রেগুলেটর ডিসি ভোল্টেজকে স্থির রাখে যা সাধারণত প্রসেসর এবং অন্যান্য যন্ত্রপাতিতে যায়।
৪। Crystal Oscillator: ক্রিস্টাল অসিলেটর টাইম সংক্রান্ত বিষয় নিয়ে কাজ করে থাকে অর্থাৎ কিভাবে আরডুইনো সময়কে হিসাব করে। 16.000H9H Crystal Oscillator বলতে বুঝায় এর ফ্রিকুয়েন্সি 16,000,000 Hertz অথবা 16 MHz
৫ এবং ১৭ নং Arduino Reset:
এই সেকশনের সাহায্যে আরডুইনো বোর্ডকে রিসিট দেওয়া যায়। আরডুইনো কে রিসেট করা হলে লোড করা প্রোগ্রাম অনুযায়ী তার কাজ নতুন করে শুরু করে। আরডুইনো বোর্ড দুইভাবে রিসিট দেওয়া যায়-১) ১৭ নম্বর রিসেট বাটন ক্লিক করে। ২) ৫ নম্বর পিনে এক্সট্রা একটি সুইচ লাগিয়ে রিসেট করা যায়।
পিন 6,7,8,9:
Pin 6 – 3.3V : 3.3 volt আউটপুটে সাপ্লাই করে থাকে।
Pin 7 – 5V: 5 volt আউটপুটে সাপ্লাই করে থাকে।
Pin 8 – GND(Ground): আরডুইনো তে কয়েকটি গ্রাউন্ড পিন রয়েছে। যেকোন একটিকে গ্রাউন্ড পিন হিসেবে ব্যবহার করা যাবে।
Pin 9 – Vin: এই পিনটির সাহায্যেও আরডুইনো তে পাওয়ার দেওয়া যায়।
১০। এনালগ পিন: Arduino UNO তে ৫ টি এনালগ ইনপুট পিন রয়েছে যা A0 থেকে A5 পর্যন্ত। এই পিনগুলো এনালগ সেন্সর থেকে প্রাপ্ত সিগন্যালকে রিড করতে পারে। এনালগ সেন্সরের মধ্যে Humidity sensor, Temperature sensor, Light Dependent Resistor ইত্যাদি যা মাইক্রোপ্রসেসরের জন্য ডিজিটাল ভ্যালুতে Convert করা হয়।
১১। প্রধান মাইক্রোকন্ট্রোলার: প্রতিটি Arduino তে মাইক্রোকন্ট্রোলার থাকে যাকে Arduino বোর্ডের ব্রেইন বলা হয়। Arduino মাইক্রোকন্ট্রোলারে প্রোগ্রাম লোড করা হয়ে থাকে যা ইনস্ট্রাকশন অনুযায়ী আউটপুট দিয়ে থাকে।
১২। ICSP pin: ICSP পূর্ণ নাম হলো In Circuit Serial Programming যার মাধ্যমে কম্পিউটার ছাড়া অন্যকোন Arduino বা প্রোগ্রাম লোডার ব্যবহার করে প্রোগ্রাম লোড করা যায় অথবা এই আরডুইনোটি ব্যবহার করে অন্য আর একটি Arduino তে প্রোগ্রাম লোড করা যায়।
১৩। Power LED Indicator: আরডুইনো তে Power দেওয়ার সাথে সাথেই এই এল,ই,ডি লাইট জ্বলে উঠবে। যদি লাইট না জ্বলে তবে বুঝতে হবে পাওয়ার সঠিকভাবে পাইনি।
১৪। TX এবং RX LEDs: বোর্ডের মধ্যে দুই ধরনের লেভেল পাওয়া যায়, ১) TX (ট্রান্সমিট) এবং ২) RX (রিসিভ)।
১৫। Digital I/0: Arduino UNO বোর্ডে ১৪ টি ডিজিটাল ইনপুট/আউটপুট পিন রয়েছে যার মধ্যে ৬ টি পিন PWM (Pulse Width Modulation) output দিয়ে থাকে। এই ডিজিটাল পিনগুলো লজিক ভ্যালু(০ এবং ১) রিড করতে পারে। ডিজিটাল পিন দ্বারা এল,ই,ডি রিলে ইত্যাদি কন্ট্রোল করা যায়।
১৬। AREF: AREF দ্বারা Analog Reference বুঝায়। এটাকে ০ থেকে ৫ ভোল্টের মধ্যে সেট করা যায়। এখান থেকে যে ভোল্টেজকে রেফারেন্স ধরা হয় সেই ভোল্টেজ অনুযায়ী পিনে ভোল্টেজ ভাগ হয়ে যায়। যদি রেফারেন্স ভোল্টেজ না দেওয়া হয় তবে তা সাপ্লাই ভোল্টেজ ৫ ভোল্ট অনুযায়ী কাজ করে থাকে।
Arduino এর সুবিধা সমূহ
- যেকোন অপারেটিং সিস্টেমে(উইন্ডোজ, ম্যাক, লিনাক্স) চালনা করা যায়
- প্রোগ্রামিং ল্যাঙ্গুয়েজ দিয়ে সহজে কার্য সম্পাদন করা যায়
- অনেক জটিল প্রজেক্ট কে আরডুইনোর সাহায্যে সহজে করা যায় ও বিশ্বের অনেক ইলেকট্রনিক্স যন্ত্র তৈরীর কম্পানিগুলি আরডুইনো ভিত্তি করে ইলেকট্রনিক্স যন্ত্র তৈরী করছে।
আরডুইনো পরিচিতি দেখুন ভিডিওটিতেঃ