বৃহস্পতিবার, ২২ জানুয়ারী, ২০১৫

আর্ডুইনো বেসিক :: [বিশেষ পরিচিতি] আর্ডুইনো পরিচিতি ও পরবর্তী পোস্টের ক্যাটালগ।

·   0

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

সিরিজটি যাদের জন্য:

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

সিরিজটির মাধ্যমে কী কী শেখা যাবে:

এই সিরিজটা রেসিপি বইয়ের মত হবে না। যদি আপনি স্টেপ বাই স্টেপ ইন্সট্রাকশন চান যে একটি প্রযেক্ট পুরোপুরি তৈরি করতে কী কী লাগবে এবং কীভাবে করতে হবে, তাহলে সিরিজটি আপনার জন্য নয়। সিম্যুলেশন ও প্রাথমিক জিনিসগুলো স্টেপ বাই স্টেপ অবশ্যই দেখানো হবে তাই বলে একটি পূর্ণাঙ্গ প্রজেক্টের সবটুকু কখনোই দেওয়া হবে না। এই সিরিজের মাধ্যমে বেসিক ইলেক্ট্রিক্যাল, কম্পিউটার সায়েন্স, প্রডাকশন ডিজাইন এবং উচ্চ পর্যায়ের চিন্তার খোরাক যোগানো হবে যেটা আর্ডুইনোর মাধ্যমে আপনি আয়ত্ত্বে আনতে পারবেন।
যখন সাধারণ কোন আর্ডুইনো প্রজেক্ট নিয়ে আলোচনা করা হবে, তখন শুধু কম্পোনেন্টগুলো দিয়ে কীভাবে সার্কিট তৈরি করে তা-ই শিখবেন না বরং কীভাবে Schematic design পড়তে হয়, কেন ঔ যন্ত্রপাতিগুলো ব্যবহৃত হল সেটা জানতে পারবেন তার পাশাপাশি Datasheet কী কাজে লাগে ও কীভাবে আপনি Datasheet ব্যবহার করে নিজের প্রজেক্ট অনুযায়ী কম্পোনেন্ট ব্যবহার করবেন সেটাও জানতে পারবেন। আমি সিম্পল কোডগুলো ব্যাখ্যাসহ লিখে দিব, কিন্তু মূল প্রজেক্টের কোডিং আপনাকেই করতে হবে।

যেসব যন্ত্রপাতি লাগবে:

সিম্যুলেশনের জন্য:

যাদের আপাতত কিছু কেনা সম্ভব হচ্ছে না ইচ্ছা করলে তারাও আর্ডুইনো শিখতে পারেন, এটা শেখার জন্য আর্ডুইনো বোর্ডের প্রয়োজন নেই।
Proteus 8.X SPY Design Suite [X & Y for version number]

রিয়েল লাইফ প্র্যাক্টিস:

প্র্যাক্টিক্যাল ও  ভার্চুয়াল সিম্যুলেশনের মধ্যে তফাত থাকা অস্বাভাবিক নয়। এমবেডেড সিস্টেমে যতটা পারা যায় ততটা প্র্যাক্টিক্যাল ওরিয়েন্টেড হওয়াই ভাল। প্রতিটি পোস্টে বলে দেওয়া হবে কী কী যন্ত্রপাতি লাগবে। তারপরও যেসব যন্ত্রপাতি প্রায় প্রযেক্টেই দরকার হবে সেগুলো বলা হল:
Arduino UNO R3 or Arduino Mega 2560
Half Size Breadboard
Resistor
Capacitor
LED
Variable Resistor
DMM (Digital Multimeter)

আর্ডুইনো কী? [WHAT IS ARDUINO]:

Arduino এর সবচেয়ে বেস্ট পার্ট হল আপনি যেটা চান সেটাই আর্ডুইনো। কথাটা একটু গোলমেলে লাগলেও আরেকটু খোলাখুলি বলা যাক। যদি চান তাহলে আপনার আর্ডুইনো প্ল্যাটফর্মটি হতে পারে আপনার চারাগাছে পানি সরবরাহ করার সিস্টেম, হতে পারে ওয়েব সার্ভার কিংবা কোয়াডকপ্টার অটোপাইলটও হতে পারে।
Arduino একটি মাইক্রোকন্ট্রোলার ডেভেলপমেন্ট প্ল্যাটফর্ম যেটা Intuitive Programming Language এ যুক্ত এবং আপনি এর IDE দ্বারা ডেভেলপ করতে পারেন। আর্ডুইনোর সাথে Sensor, actuator, light, speaker, add-on module (যেটা Arduino Shield নামেও পরিচিত) এবং অন্যান্য IC ব্যবহার করে যেকোন সিস্টেমের Programmable Brain হিসেবে সেট করতে পারেন আপনার আর্ডুইনোকে।
Arduino এর দ্বারা যা কিছু সম্ভব তা একটি সিরিজে লেখা অসম্ভব। ক্রিয়েটিভিটির লিমিট হয় না, যেহেতু আর্ডুইনো ক্রিয়েটিভিটি প্রকাশ করারই একটা মাধ্যম তাই এর দ্বারা কতকিছু সম্ভব সেটারও সীমা নাই। এই সিরিজটা কেবল সাধারণ ধারণা দিবে এবং বেসিক স্কিল আয়ত্ব করার পথ দেখাতে পারে, এর বেশি কিছু আশা করা ভুল হবে। :P

আর্ডুইনো : একটি ওপেন সোর্স প্ল্যাটফর্ম

আপনি যদি ওপেন সোর্সে নবাগত হয়ে থাকেন তাহলে আর্ডুইনোর মাধ্যমেই বুঝবেন ওপেন সোর্স সবকিছু এতটা পাওয়ারফুল কেন! ওপেন সোর্স নিয়ে নতুন করে বকবকানির কিছু নেই। যেহেতু আর্ডুইনো একটি ওপেন সোর্স হার্ডওয়্যার তাই এর ডিজাইন ফাইল, স্কিম্যাটিক্স ও সোর্স কোড সবই উন্মুক্ত। এর মানে শুধু যে আপনি আর্ডুইনো হ্যাক করে বিভিন্ন কাজ করবেন তাই নয়, বরং আপনি যদি ডিজিটাল ইলেক্ট্রনিক্সের গুরু হয়ে থাকেন তাহলে খুব সহজই আপনার মনমত জিনিসপত্র অ্যাড করে নিজস্ব প্ল্যাটফর্ম তৈরি করতে পারবেন।
আর্ডুইনোর ডিজাইন, সোর্স কোড, লাইব্রেরি ডেস্ক্রিপশন ও লাইব্রেরি ডাউনলোড করা যাবে তাদের অফিশিয়াল সাইটআর্ডুইনো.সিসি থেকে।
আর্ডুইনো অরিজিনাল বোর্ডের দাম প্রায় ২০০০ – ৩০০০ এর মত। সেখানে Chinese ক্লোন ভার্সন পাওয়া যায় মাত্র 900 (UNO)-1200 (MEGA) টাকার মধ্যে। আর্ডুইনো ওপেন সোর্স বলেই এটা সম্ভব। Arduino ছাড়াও এইরকম ক্লোন প্ল্যাটফর্ম আছে আরও ফাংশনালিটি সহ যেমন Freeduino, pcDuino, ODOO ইত্যাদি।

বিভিন্ন ধরণের আর্ডুইনো বোর্ড:

Arduino UNO R3 (R stands for Revision):


Arduino Leonardo:


Arduino DUE:


Arduino Mega 2560:


Arduino Mega ADK [Android Development Kit]:


Arduino LilyPad:


Arduino Yun:


সিরিজে নিচের বিষয়গুলো নিয়ে আলোচনা করা হবে:

আর্ডুইনো সেটাপ ও LED Blinking
প্রাইমারি ডিজিটাল ইনপুট আউটপুট অপারেশন ও PWM
অ্যানালগ সেন্সর থেকে রিডিং নেওয়া [ADC]
মোটর ড্রাইভিং
পিয়েজো বাজার
USB ও Serial Communication
LCD ইন্টারফেস করা
Keypad ইন্টারফেস করা
LCD + Keypad কম্বিনেশন
Wireless Communication – Bluetooth Module [HC-05]
Wireless Communication – Wifi Module [WiFly-RN-XV]
আর্ডুইনোকে ইন্টারনেটের সাথে কানেক্ট করা
আজকে এই পর্যন্তই। পরবর্তী পোস্টে আর্ডুইনো ড্রাইভার ইন্সটলেশন ও IDE সেটাপ নিয়ে কথা হবে। :)