ভাল বাস/বেজ সাউন্ড আসে না বা ভাল বেজ সাউন্ডসার্কিট কিভাবে তৈরি করবো? খুবই সাধারণ একটা প্রশ্ন হবিস্ট হতে প্রফেশনাল সবার। এই সমস্যা মেটাতে আজ বেজ বুস্টার এর একটি টেস্টেড সার্কিট দিচ্ছি। এর পারফরমেন্স ১০ থেকে ১০০ ওয়াট পর্যন্ত টেস্টেড এবং মানসম্মত। কথা না বাড়িয়ে চলুন সার্কিট টা দেখি –
খুবই সাধারণ এবং সহজে বানানোর যোগ্য এই বেজ বুস্টার সার্কিট টি যার প্রতিটি পার্টস সহজলভ্য। সার্কিটে একটি ট্রানজিস্টর ও একটি আইসি ব্যবহার করা হয়েছে। ট্রানজিস্টর হিসাবে D400/C828/BC547/BC548 মানের ট্রানজিস্টর ব্যবহার করতে পারবেন। 741 একটি সহজলভ্য আইসি তবে পারফরমেন্স আরও ভালো চাইলে TL071/081 ব্যবহার করতে পারেন। এর জন্য 12 ভোল্ট রেগুলেটেড পাওয়ার সাপ্লাই প্রয়োজন হবে। পাওয়ার সাপ্লাই রেগুলেটেড না হলে নয়েজ বা হাম আসতে পারে আউটপুটে।
সাউন্ড সোর্সের পর বা প্রি এম্পের পর এর ইনপুট এবং এর আউটপুটে এম্পের কানেকশন দিতে হবে। ভেরিয়্যাবল রেজিষ্টরটি ঘুরিয়ে সার্কিটের সেনসিটিভিটি নিয়ন্ত্রণ করা যাবে। ট্রিবল বা মিডরেঞ্জ সাউন্ডের উপর এর কোন প্রভাব থাকবে না তবে ট্রিবল সাউন্ড অনেক বেশী শার্প হবে। গেইন কন্ট্রোলের জন্য এর ইনপুটে একটি 10K ভেরিয়েবল সংযোগ করা যাবে ভলিউম কন্ট্রোলের মতো করে লাগাতে হবে। এর আউটপুটে মুল ভলিউম কন্ট্রোল সংযোগ করতে হবে যার মান 50 K হলে ভালোহবে নতুবা 100 K ব্যবহার করা যেতে পারে।
বেজ বুস্টার সার্কিটে ব্যবহৃত ননপোলার ক্যাপাসিটরগুলো মাইলার ব্যবহার করতে হবে, সিরামিক ক্যাপাসিটর ব্যবহার না করাই ভালো। রেজিস্টর গুলো ভালোমানের ১/৪ ওয়াটের হবে। সকল ইলেকট্রোলাইটিক ক্যাপাসিটর কমপক্ষে ১৬ ভোল্টের হতে হবে। আইসিটি সরাসরি ঝালাই না করে আইসি বেজ ব্যবহার করে সার্কিটে ব্যবহার করাই ভালো। এখানে একটি চ্যানেল দেখানো হয়েছে, স্টেরিও চাইলে হুবহু আরেকটি সার্কিট বানালেই হবে মানে দুইটি সার্কিট দুই চ্যানেলে লাগালেই হবে। আবার বলছি সার্কিট টি টেস্টেড এবং অনেক ভালো কাজ করে।
বেশী জোরে গান শোনা কান এবং প্রতিবেশীর জন্য মোটেও ভালো না কথাটি মনে রাখবেন। সামনে আসব আরও অনেক টেস্টেড সার্কিট নিয়ে – শুভ কামনা রইল।
ওয়্যারলেস মোবাইল চার্জার বানাতে চাই, কিংবা তার ছাড়া বিদ্যুৎ এক জায়গা থেকে আরেক জায়গায় নেওয়া সম্ভব?
এই হলো এখনকার একটি সাধারণ জিজ্ঞাসা। এই জিজ্ঞাসাকে একটু সহজ করবার জন্য আজকের পোষ্ট। আমরা খুব বেশী তত্ত্বের ভিতরে যাব না। খুব সাধারণ ভাবে একটা সার্কিট দেখাব। যা দিয়ে কোন প্রকার তারের সংযোগ ছাড়া বিদ্যুৎ চালনা করা যাবে।
আমি এই লেখার কমেন্ট অংশে আলোচনা চালাতে আগ্রহী। এর জন্য এই পোষ্টে শুধু বেসিক সার্কিট টা দেব। আলোচনার মাধ্যমেই ও পড়বার মাধ্যমে শিখা যাবে। তবে না পড়ে শুধু প্রশ্ন করলেও কিন্তু শিখবার উপায় নাই। চলুন তবে সার্কিট টি দেখি —
উপরে ওয়্যারলেস পাওয়ার ট্রান্সমিটারের ব্যাসিক ডায়াগ্রাম দেখানো হয়েছে।
রিসিভার অংশ
নিচের চিত্রে দেখতে পাচ্ছে এর সিস্টেমের রিসিভার অংশ।
খুবই সহজ একটি সার্কিট। একটি ট্রানজিস্টর, একটি রেজিস্টর ও একটি এলইডি। আর কিছু সুপার এনামেল ওয়্যার (চিকন হলেই হবে/৩০ গেজ)। বাজারে ম্যাগনেট ওয়্যার নামেও পরিচিত।
কয়েল তৈরী
প্রথমে একটি এক ইঞ্চি ব্যাসের ফর্মাতে এনামেল ওয়্যার ৩০-৪০ প্যাচ দিয়ে এর দুই প্রান্ত ছবির মত করে এলইডিতে সংযোগ দিন।
আরেকটি কয়েল তৈরী করতে আগের মতই এক ইঞ্চি ব্যাসের ফর্মাতে ৩০ প্যাচ দিন। তবে ১৫ প্যাচের পর একটি প্রান্ত বের করে রাখেন।
এইবার সার্কিটের মতো করে কানেকশন করে দিন।
ট্রান্সমিটার ও রিসিভার পরীক্ষা
একটি ১.৫ ভোল্ট ব্যাটারী থেকে সাপ্লাই দিয়ে এলইডি সহ কয়েল টি সমান্তরাল করে সার্কিটের কয়েলের কাছে আনুন। দেখবেন এলইডি জ্বলতে শুরু করবে। ট্রানজিস্টর হিসাবে যে কোন এন পি এন (NPN) ট্রানজিস্টর ব্যবহার করতে পারেন যেমন BC547, BC337, BC107, C828, D400, D882 ইত্যাদি।
ওয়ারলেস পাওয়ার ট্রান্সমিটার ও রিসিভার তৈরি করবার ভিডিও
ওয়ারলেস পাওয়ার ট্রান্সমিশন/পাওয়ার সাপ্লাই নিয়ে একটি চমৎকার ভিডিও প্রকাশিত হয়েছে আমাদের ইলেকট্রনিক্সের ইউটিউব চ্যানেলে। এই টিউটোরিয়াল ভিত্তিক ভিডিও টি দেখে মোটামুটি ইলেকট্রনিক্স জ্ঞান সম্পন্ন যে কেউই এই প্রজেক্ট টি বানাতে পারবেন। ভিডিও টিতেই সার্কিটডায়াগ্রাম, ও বিস্তারিত বর্ণনা দেয়া আছে। বিজ্ঞান প্রজেক্ট হিসেবেও এটি বেশ চলে। একটু মডিফাই করে নিলে এর দ্বারা মোবাইল চার্জার ও বানানো সম্ভব। চলুন ভিডিওটি দেখি-
অটো সার্জ ও ভোল্টেজ প্রটেক্টর সার্কিট (পিসিবি ডিজাইন সহ)
হাই লো ভোল্টেজ প্রটেক্টর প্রোটেক্টর কি, কেন এবং এর ব্যবহার
ইলেকট্রিক বা ইলেকট্রনিক ডিভাইসের ইনপুটে অতিরিক্ত ভোল্ট বা অবাঞ্ছিত বৈদ্যুতিক সাপ্লাই থেকে এই সার্কিট রক্ষা করে। এটা নির্দিষ্ট ভোল্টেজে আসলে (উচ্চ বা নিম্ন) ডিভাইসে সরবরাহকৃত পাওয়ার কে বন্ধ করে দিতে পারে। এর সাথে টাইম ডিলে সার্কিট ব্যবহার করাবার ফলে সার্জ ভোল্ট থেকে যে কোনো ডিভাইস কে রক্ষা করে। একই সাথে ফ্রিজের কমপ্রেসর এর গ্যাস কে ‘ডিসচার্জ’ হতেও সহায়তা প্রদান করে। এতে করে কমপ্রসরের আয়ু বাড়ে বহুগুণ।
যারা অন্য ধরনের ডিভাইস এর সাথে ব্যবহার করতে চান তারা এর টাইম ডিলে কে কমিয়ে নিতে পারেন।
এই সার্কিট এ ২ টা লেভেলে এ ভোল্টেজ-কে কন্ট্রোল করা হয়েছে
১। হাই ভোল্টেজ – ২৬০ ভোল্ট (উচ্চ ভোল্ট – যা বেশিরভাগ ডিভাইসের জন্য ক্ষতিকর) এ আসলে এবং
২। লো ভোল্টেজ – ১৮০ ভোল্ট (নিম্ন ভোল্ট – এই ভোল্টে সাধারণত কোনো ডিভাইস কাজ করে না) –
এই ভোল্টে সার্কিটটি ডিভাইস থেকে মেইন পাওয়ার ডিসকানেক্ট করে দেবে।
আর টাইম ডিলে সেট করা যায় ৩.৫ থেকে ৫ মিনিট পর্যন্ত। এটা স্টেবিলাইজার এর ‘সহজ বিকল্প‘ হিসেবেও কাজ করতে পারে। যাদের ভোল্টেজ লেভেল তেমন পরিবর্তন হয় না তাদের জন্য। এর ডিলে অংশটুকু বেশ কাজের। এতে করে অটো সার্জ প্রোটেক্টর সুবিধা পাওয়া যাবে একই সার্কিটে।
তবে আমাদের দেশের বিদ্যুতের যে হাল তাতে করে কোনো ক্ষেত্রেই মেইন পাওয়ার লাইনের ভোল্টের উপর নির্ভর করা যায় না (বিশেষত মফঃস্বল, গ্রাম এলাকায়)। যেকোনো সময়ই ভোল্টেজ কমে বা বেড়ে আপনার সাধের টিভি, ফ্রিজ, কম্পিউটারের বারোটা বাজিয়ে দিতে পারে।
আমি নিজেও এই অটো ভোল্টেজ ও সার্জ প্রটেক্টর টি বানিয়ে ব্যবহার করছি। প্রসঙ্গত, বাজারে সহজলভ্য কিছু সার্জ প্রটেক্ট করতে পারে এমন মাল্টিপ্লাগ/এক্সটেনশন ক্যাবল পাওয়া যায় যা তেমন কার্যকরী নয়।
এই প্রোটেক্টর সার্কিট LM324 comparator ic দ্বারা নিয়ন্ত্রিত হয়। এই অটো ভোল্টেজ ও সার্জ প্রটেক্টর এর সার্কিট ডিজাইন বেশ সহজ। এটি একটি রিলে টাইপ সরল সার্কিট ডায়াগ্রাম। একটি Step down 9V-0-9V ট্রান্সফরমার কে 0-18V করে নেয়া হয়েছে, ভোল্টেজ প্রটেক্টর ডিভাইসের পাওয়ার সহ ইনপুট লাইনের ভোল্টেজ বিশ্লেষণের কাজে ব্যবহৃত হয়েছে।
ব্রিজ রেকটিফায়ার এসি কে ডিসি রূপান্তর করে এবং 1000μF ক্যাপাসিটর পাওয়ার সাপ্লাইয়ের ফিল্টারে ব্যবহৃত হয়। ডিভাইসের স্ট্যাবল পাওয়ার এর জন্য LM7812 ও কিছু রেজিস্টেন্স, ডায়োড, LED, ক্যাপাসিটর সহ LM324 ব্যবহার করা হয়েছে। LM324 এ চার টা comparator থেকে ২ টা আমরা আমাদের অটো ভোল্টেজ ও সার্জ প্রোটেক্টর এর জন্য ব্যবহার করেছি।
এটি উচ্চ ও নিম্ন ভোল্টেজ কে ডিটেক্ট করবে। প্রথম comparator কম ভোল্টেজের মাত্রা এবং অন্য টা উচ্চ ভোল্টেজের মাত্রা তুলনা করে সার্কিট কে সক্রিয় রাখে।
এখানে 3.9V জেনার ডায়োড (6V এর নিচের যে কোনো জেনার ডায়োড ব্যবহার করতে পারেন) 3.9V এর রেফারেন্স ভোল্টেজ তৈরিতে ব্যবহৃত হয় এবং এই রেফারেন্স ভোল্টেজ উভয় comparator দ্বারা compare বা তুলনা করে সার্কিটের কাজে লাগানো হয়েছে।
এইরেফারেন্স ভোল্টেজ এর সাথে কম্পেয়ার করে রিলেকে অন অফ করবে। আর এটা সেট করার জন্য ২টা VR(ভেরিয়েবল রেজিস্টার) ১০কে ব্যবহার হরা হয়েছে (চাইলে ৫ কে ব্যবহার করতে পারেন), VR দুটি দিয়ে আমরা আপার ও লোয়ার ভোল্ট সেট করতে পারবো।
টাইমডিলে ব্যবহার এর ফলে আউটপুট রিলেকে নিদিষ্ট সাময় পর্যন্ত অন হতে বাধা প্রদান করে। এই অংশটিই মূলত সার্জ ভোল্টেজ ডিভাইসে প্রবাহিত হওয়া কে প্রতিহত করছে।
এখানে আমরা ৪ টা LED ব্যবহার করেছি মনিটরিং এর জন্য ,
রিলের আউটপুট থেকে সিরিজ হয়ে লোডের ইনপুটে যাবে।
টাইম ডিলে সম্পর্কে আগের পোস্ট এ আলোচনা করা হয়েছে, এছাড়া শামিম ভাই এর পোস্ট এ বিস্তারিত আছে সেখান থেকে দেখে নিতে অনুরোধ রইলো।
ভোল্টেজ এডজাস্ট কিভাবে করবো
সব চাইতে ভাল উপায় ভ্যারিয়াক ট্রান্সফরমার (Variac) দিয়ে ভোল্ট ১৮০ তে নামিয়ে লোকাট ভেরিয়েবেল ঘুরানো। যখন লো ভোল্ট ইণ্ডিকেটর টি জ্বলে উঠবে তখন লোকাট ভেরিয়েবল টি ওখানেই রেখে দিতে হবে।
অনুরূপ ভাবে ভ্যারিয়াক এ ২৬০ ভোল্ট এনে হাইকাট এর ভেরিয়েবল ঘুরাতে থাকুন। হাই ভোল্ট ইন্ডিকেটর টি জ্বলে উঠলে ওখানেই রেখে দিন। এটিই আমাদের কাঙ্ক্ষিত হাইকাট সেটিং। ঠিক এই দুই অবস্থায় এলে রিলে কার্জকর হয় ডিভাইসে মেইন পাওয়ার বন্ধ করে দেবে।
যাদের ভেরিয়েক নাই তাদের জন্যঃ
একটু বুদ্ধি করে ভেরিয়েবল পাওয়ার সাপ্লাই দিয়ে এডজাস্ট করতে পারেন যেমনঃ লাইন ভোল্টেজ মাপুন এবং এর সাথে ট্রান্সফরমার এর সেকেন্ডারি ভোল্ট 0-18 এর যায়গায় কত ভোল্ট আছে (সার্কিট এর সাথে ট্রান্সফরমার এর কানেকশন থাকা অবস্থা ভোল্টেজ পরিমাপ করলে ভাল ফল আসবে)। এটা মেপে প্রাইমারি ভোল্টে এর সাথে সেকান্ডারি সেই ভোল্টেজ দিয়ে ভাগ দিন।
উদাহরণ-
২২০/১৮ = ১২.২২২ বা ১২.২৩ ভোল্ট।
এই ১২.২৩ ভোল্ট হচ্ছে আমদের ট্রান্সফরমারের ‘একক ভোল্টেজ‘।
অর্থাৎ প্রাইমারিতে যদি ১২.২৩ ভোল্ট কমে বা বাড়ে তাহলে সেকেন্ডারিতে ১ ভোল্ট কমবে বা বাড়বে।
কেমন আছেন সবাই? আশা করি ভাল আছেন। আমরা অনেকেই রোবোটিক্স নিয়ে কাজ করতে ও জানতে আগ্রহী। রোবোটিক্স নিয়ে কাজ করতে হলে আপনাকে প্রথমে ইলেকট্রনিক্স এর বিভিন্ন কম্পোনেন্ট এর কাজ ও ব্যবহার শিখতে হবে। এর পর আপনি নিজে নিজেই বুজতে পারবেন রোবোটিক্স এ ভাল করতে হলে আপনাকে কি কি শিখতে হবে। ইতিমধ্যে আমাদের এ সাইটে রোবোটিক্স নিয়ে বেশ কয়েকটি আর্টিকেল প্রকাশিত হয়েছে। আমার মনে হয় আপনারা ইতিমধ্যে কাজও করছেন। রোবোটিক্স এর টিউটোরিয়ালে আপনারা মোটরড্রাইভার আই সি নামের একটা আইসি দেখেছেন। মোটরড্রাইভার আই সি (L293D) ব্যবহার করা হয় মোটর কন্ট্রোল করার জন্য। আর রোবোটিক্স এর গুরুত্বপূর্ণ অংশ এটি। কারণ রোবটকে মুভ করতে হলে আপনাকে অবশ্যই মোটর ইউস করতে হবে। চলুন আজ জেনে নিই মোটরড্রাইভারআইসির (L293D) পরিচিতি ও এর ব্যবহার।
রোবটিক্স এ অপরিহার্য আইসি (L293D) পরিচিতি ও ব্যবহার
চিত্রে আপনারা মোটরড্রাইভার আইসি L293D পিন কানেকশন দেখতে পাচ্ছেন। এখানে মোট ১৬টি পিন আছে এবং ২টি সাইড আছে। ২ সাইডে ২টি মোটর ইন্টারফেস করতে পারবেন। আইসির পিন গুণতে হয় উপরের খাঁজ কাটা দিক এর বাম পাশ থেকে। প্রথমে ১৬ নম্বর (Vcc1) পিনে আইসির সাপ্লাই ভোল্টেজ হিসেবে ৫ ভোল্ট ডিসি সাপ্লাই দেবেন। ৪,৫, ১২,১৩, (GND) এ চারটি পিন গ্রাউন্ড করে দেবেন। এর পর ১ (Enable 1,2) নম্বর ও ৯ (Enable 3,4) নম্বর পিন দুটিতে ৫ ভোল্ট ডিসি সাপ্লাই দেবেন। ১ নম্বর পিনটা বামপাশের ইনপুট ১, ২ (pin 2, 7) কে একটিভ করবে।
একই ভাবে ৯ নম্বর পিনটা ডানপাশের ইনপুট ৩ ও ৪(pin 10,15) কে একটিভ করবে। ৮(Vcc) নম্বর পিনে আমরা মোটর এর সামান ভোল্টেজ দেবেন । অর্থাত মোটর যদি ৬ ভোল্টের হয় তাহলে ৬ ভোল্ট। মোটর যদি ১২ ভোল্টের হয় তাহলে ১২ ভোল্ট দেবেন । তবে এখানে সর্বোচ্চ ৩৬ ভোল্ট পর্যন্ত ডিসি সাপ্লাই দেয়া যাবে। এখন ৩ ও ৬ (output 1,2) নম্বর পিনে ১ম মোটরটা লাগাবেন । ১ম মোটর এর ২টি ইনপুট হিসেবে ২ ও ৭ (input 1,2) নম্বর পিনে ইনপুট কানেকশন দেবেন । একই ভাবে ডান পাশে ১১ ও ১৪(output 3,4) নম্বর পিনে ২য় মোটর টা লাগাবেন এবং ইনপুট হিসেবে ১০ ও ১৫ (input 3, 4) নম্বর পিন ব্যবহার করবেন ।
কানেকশন দেয়া শেষ হলে সাপ্লাই দেবেন। যদি ইনপুট ১ কে হাই করা হয় (৫ ভোল্ট সপ্লাই এ কানেক্ট করে দিতে পারেন পরীক্ষার জন্য) এবং ইনপুট ২ কে লো (গ্রাউন্ড করে দিতে পারেন কিংবা কোন সাপ্লাই দেবেন না) করলে ১ম মোটর টা ক্লক ওয়াইজ ঘুরবে। আবার উল্টা করলে অর্থ্যাৎ ইনপুট ২কে হাই এবং ইনপুট ১ কে লো করলে ১ম মোটর টি এন্টি ক্লকওয়াইজ ঘুরবে। আবার ইনপুন ১ ও ইনপুট ২ কে একসাথে হাই করে রাখলে কিংবা একসাথে লো করে রাখলে মোটর ঘুরবে না।
একই পদ্ধতিতে ডানপাশের মোটরটিকেও ইনপুট ৩ ও ইনপুট ৪ কে লো কিংবা হাই করে কন্ট্রোল করা যাবে। আপনি যখন কোন রোবট ডিজাইন করবেন,তখন সেন্সর কিংবা মাইক্রোকন্ট্রোলার এর সাথে যুক্ত থাকবে ইনপুট কানেকশন গুলো। মাইক্রোকন্ট্রোলার কিংবা সেন্সর হতে প্রাপ্ত সিগনাল অনুসারে হাই লো হয়ে মোটর ঘুরবে। মোটরড্রাইভারআইসির আপনার নিকটবর্তী ইলেকট্রনিক্স কম্পোনেন্ট এর দোকানে পাবেন। ৮০ -১০০ টাকা নিতে পারে।
আশা করি আমার আর্টিকেলটি বুজতে পেরেছেন। কোন প্রকার ভুল ত্রুটি থাকলে শুধরিয়ে দেওয়ার জন্য অনুরোধ থাকল।
ইনশাল্লাহ পরবর্তীতে ধারাবাহিক অন্য কোন বিষয় নিয়ে হাজির হব। ততদিন ভাল থাকুন। ইলেকট্রনিক্স নিয়ে কাজ করুন। দেশের জন্য কাজ করুন।
সালমান খান ইয়াছিন
ইলেকট্রিক্যাল এন্ড ইলেকট্রনিক্সইঞ্জিনিয়ারিং, ৩য় বর্ষ।
আন্তর্জাতিক ইসলামী বিশ্ববিদ্যালয় চট্টগ্রাম।
এই মাইক্রোকন্ট্রলার বেসড রিমোট ফ্যান স্পিড কন্ট্রোলার সার্কিটটি NEC ফরম্যাট রিমোট দিয়ে (অনেক mp3, DVD প্লেয়ার এবং অনেক চায়না ইকুইপমেন্টের সাথে থাকে বা বাজারে আলাদা কিনতে পাওয়া যায়) ফ্যানের স্পিড/ বাতি Dim করার কাজ করা যায়।
এভি আর মাইক্রোকন্ট্রলার বেসড রিমোট ফ্যান স্পিড কন্ট্রোলার (কোডিং ও পিসিবি লে আউট সহ)
নিচে দেখতে পাচ্ছি আমাদের বাজারে বহুল প্রচলিত একটি রীমোট কন্ট্রোলারের চিত্র-
টিভি, ফ্যান, ভিসিডি তে ব্যবহৃত রিমোট গুলো দেখতে এমন
বৈশিষ্ঠঃ
একটি ফ্যানের/বাতির ০-৯ পর্যন্ত ১০ লেভেল স্পিড/ডিম কন্ট্রোল করা যায়।
এতে একটি ৭ সেগমেন্ট ডিসপ্লে আছে যাতে লেভেল নির্দেশ করা যায়।
রিমোটের ০-৯ পর্যন্ত বাটন চেপে যে কোন স্পিড লেভেল সিলেক্ট করা যায়
আপ/ডাওন বাটন ব্যাবহার করে পর্যায়ক্রমিক ভাবে স্পিড বাড়ানো কমানো যায়।
এই ফ্যান কন্ট্রোলারের সোর্স কোডটি মূল লেখক অভিনাশ গুপ্ত তাঁর সাইট থেকে সরিয়ে দিয়েছেন। তাই নিচের এই লিংক টি বর্তমানে কাজ করছে না। তবে এই লেখার কমেন্ট সেকশনে দেখুন আপডেটেড লিংক দেয়া হয়েছে।
অবশ্যই 16MHz ক্রিস্টাল ব্যবহার করতে হবে (অন্যগুলো কাজ করবেনা)
রিমোট অবশ্যই NEC Format হতে হবে (চাইনিজ DVD/CD প্লেয়ারের গুলা ভাল কাজ করে কিন্তু টিভিরগুলো কাজ করবেনা।
রিমোট এর কি-কোড গুলি rckey.h ফাইলে ফিড করা হয়. তাই নতুন কোন রিমোট পেলে অবশ্যই কি-চেপে তার কি-কোডগুলি নোট করতে হবে। এর পর rckeys.h ফাইল প্রয়োজনে এডিট করে লাইব্রেরি রি বিল্ড করতে হবে। বাজারে অনেক চাইনিজ রিমোটে র্যান্ডম কি থাকে তাই এই ষ্টেপটি সঠিক ফাংশনালিটির জন্য অতীব গুরুত্বপূর্ন।
IR sensor অবশ্যই ভাল মানের TSOP1738 হতে হবে। (অন্যগুলি কাজ করবেনা).
এই লেখাটি আমার নিজস্ব কোন লেখা নয় (মূল লেখকঃ Avinash Gupta)। এটি একটি ধার করা লেখা (অরিজিনাল লেখার লিংক নিচে দেয়া আছে)। কিন্তু লেখাটিতে অনেক DIY হবিস্টের উপকার হবে বলে শেয়ার করা হলো।
আমরা হয়তো আই পি এস / ইউ পি এস সিস্টেমে দেখেছি যে, ঐগুলাকে সংযোগ দেবার সাথে সাথেই তারা লোডে বিদ্যুৎ সরবরাহ করেনা বরংচ কিছু দেরীতে পরে তাতে বিদ্যুৎ সরবরাহ করে। এই দেরীটাকেই ইংরেজীতে ডিলে বলে। ডিলে ইচ্ছাকৃত আবার অনিচ্ছাকৃত হতে পারে। যেমন পাওয়ার সুইচ বন্ধ করার কিছু দেরীতে পাওয়ার লেডটি অফ হয়। এটি অনিচ্ছাকৃত ডিলে।
কিছু ডিলে অন টাইম ডিলে যেমন এলার্ম বাজার জন্য একটা পুশ সুইচ টিপলাম এবং ছেড়ে দিলাম এলার্ম চালু থেকে কিছুক্ষন পর তা বন্ধ হয়ে গেল।
কিছু ডিলে অফ টাইম ডিলে যেমন ফ্রীজের ডিলে সুইচ। সুইচ দেয়ার কিছু পরও কিছুক্ষন অফ থেকে চালু হয়।
কিছু ডিলে আছে শর্ট বা ছোট। যেমন সুইচ দেবার ১০ সেকেন্ড পরে একটি লোড চালু হয়। আবার লং বা দির্ঘ ডিলে যেমন এলার্মটাইমার যা সেকেন্ড, মিনিট, ঘন্টা কিংবা সপ্তাহ, মাস বছর পর্যন্ত দেরী করে একশনে যাবার জন্য।
কিছু কিছু ডিলে আমরা সরাসরি এনালগ সার্কিট দিয়ে করি (শর্ট ডিলে) আবার কিছু ডিলে হয় ডিজিটাল (শর্ট বা লং)। আবার কিছু ডিলে করি প্রোগ্রামিটিকালি ( শর্ট বা লং)।
আমরা বর্তমান প্রজেক্টে শুধু ইলেক্ট্রনিক ও এনালগ শর্ট ডিলে নিয়ে কাজ করব। আমরা পূর্ববর্তি প্রজেক্টে RC টাইমিং নিয়ে আলোচনা করেছি। আমরা সেই RC টাইমিং এর ধর্ম ব্যাবহার করে এই ডিলে সার্কিট তৈরী করব। RC ছাড়াও RL কিংবা ক্রিষ্টাল এমনকি পরমানুর কম্পন ব্যাবহার করে ডিলে/ভাইব্রেটর/অসিলেটর তৈরী করা যায়। ডিলে আর ভাইব্রেটর বা অসিলেটর এর পার্থক্য শুধু ওয়ান শট আর মাল্টিপল কনটিনিউয়াস শট। ডিলেতে একবারই টাইমিং প্লে করে পর আর টাইমিং ফাংশন শেষ হয়ে যায় (লেড একবার জ্বলে উঠে কিছুক্ষন পর নিভে যায়, নিজে থেকে আর জ্বলেনা)। কিন্তু ভাইব্রেটর বা অসিলেটরে ( যেমন লেড ফ্লাশার-এ) টাইমিং চলতেই থাকে।
নিচে সরলতম একটা ক্যাপাসিটিভ অন টাইম ডিলে সার্কিট দেখানো হলো । এই সার্কিটের প্রান একটা ক্যাপাসিটর। পুশ বাটনে পুশ করার পর ট্রাঞ্জিষ্টরের বেসে পজেটিভ বায়াস পাওয়ায় লেডটি ততক্ষনাত জ্বলে উঠে আবার ক্যাপাসিটরটিও চার্জড হতে থাকে। পুশ বাটন ছেড়ে দিলে লেডটি বন্ধ হয়ে যাবার কথা থাকলেউ তা জ্বলতে থাকে। কারন ক্যাপাসিটর থেকে পজেটিভ চার্জ বেস হয়ে ডিসচার্জ হতে থাকায় ট্রাঞ্জিষ্টারটি অন থাকে ততক্ষন পর্যন্ত যতক্ষন ক্যাপাসিটরের পজেটিভ চার্জ তার ফরওয়ার্ড বায়াস ধরে রাখে। ক্যাপাসিটরের চার্জ ক্ষয়ে আসলে লেড বন্ধ হয়ে যায়।
কিন্তু এই সার্কিটে একটি সমস্যা হলো যে লেডটি একবারে ঠাস করে বন্ধ না হয়ে ধীরে ধীরে ডিম হয়ে বন্ধ হয়ে যায়। আবার লেডের যায়গায় এলার্ম হলে এলার্ম একবারে বন্ধ হয়ে যায় না বরং দুর্বল হয়ে তারপর বন্ধ হয়ে যায়। এটা সবার কাম্য নাও হতে পারে। আরেকটা দুর্বলতা হলো এই সার্কিটটির টাইমিং প্রায় সম্পুর্ন ভাবে ক্যাপাসিটর নির্ভর (ব্যাটারির আভ্যন্তরিন রেসিষ্ট্যান্স RC টাইংমিং এর R এর ভূমিকা পালন করে কিন্ত এই R খুব দুর্বল)। পরবর্তিতে আমরা এই দুর্বলতা কিভাবে দূর করা যায় সেটি আলোকপাত করবে।
সরল ডিলে সার্কিটের উন্নয়ন
বর্তমান এই সার্কিটে আমরা একটি বাহ্যিক রেজিষ্ট্যন্স যুক্ত করেছি এতে নিম্নাক্তো সুবিধা পাওয়া যায়ঃ
RC টাইমিং এ রেসিস্ট্যান্সের এক বিশাল প্রভাব থাকে তাই শুধু ক্যাপাসিটরের উপর নির্ভরশীলতা কমে। ভ্যারিয়েবল রেসিষ্ট্যান্স ব্যাবহার করে টাইমিং পরিবর্তন করা যায়।
এছাড়া বেস রেসিষ্ট্যান্স ছোট করা যায়। যা দিয়ে ক্যাপাসিটর খুব দ্রুত ডিসচার্জ হতে পারে,
বড় ক্যাপাসিটরে যে লিকেজ কারেন্ট সার্কিটকে ত্রুটিযুক্ত করে তা থেকেও রেহাই পাওয়া যায়।
ফলে ফেড অফ টার্নিং অন অফ বা ঢিমে তালে অন অফ দূর হবে। আরো শার্প অন অফের জন্য ট্রাঞ্জিষ্টরের গেইন বাড়ানো যেতে পারে। ৩য় ছবিতে দেখানো হল যে দুইটি ট্রাঞ্জিষ্টর দিয়ে গেইন বাড়িয়ে আমরা কিভাবে আরো শার্প অন অফ করতে পারি।
এভাবে অন বা অফ টাইম নির্ভর করে RC কনস্ট্যান্টের উপর। এখন যদি R সাধারন রেসিষ্টর না হয়ে লোড হয় তবে লোডের উপর নির্ভর করে টাইমিং। কিন্তু এটা খুব আশার কথা নয়। কারন লোড রেসিষ্ট্যান্স ক্যালকুলেশন সহজ ব্যাপার নয়। ফলে টাইমিং ক্যালকুলেশনও ত্রুটি পূর্ন হয়।
এই সমস্যার সমাধানে আই সি বেসড ডিলে সার্কিট বেশ কার্যকর। আইসি বেসড সার্কিটে লোড, ডিলে তৈরীতে ভূমিকা না রাখায় ডিলে ক্যালকুলেশন সহজ হয়।
555 আইসি দিয়ে সহজেই আর নির্ভূল ভাবে ডিলে সার্কিট তৈরী করা যায় বলে ডিলে সার্কিটে আইসিটি ব্যাপক জনপ্রিয়। নিচে দুই ধরনের ডিলে সার্কিট দেখানো হল।
অন টাইম ডিলে (দেরী করে অন)ঃ
ষ্ট্যাবিলাইজারে এই ধরনের ডিলে ব্যাবহার করা হয়। এতে বিদ্যুৎ সংযোগ দেবার কিছু পরে লোডে বিদ্যুৎ প্রবাহিত হয়। এই সার্কিটের সংযোগ নিচে (প্রথম ছবিতে) দেয়া হল। বিদ্যুৎ সংযোগ দেয়ার পরপর সার্কিটটি অফ অবস্থায় থাকে কারন ২ নং পিন (ট্রিগার) প্রথমবস্থায় হাই অবস্থায় থাকে (ক্যাপাসিটর ডিসচার্জ অবস্থায় শর্ট সার্কিটের মতো আচরন করে)। কিন্তু ক্যপাসিটর চার্জড হতে থাকলে সাপ্লাইয়ের সাথে সংযোগ বিচ্ছিন্ন হয় এবং ২ নংপিন গ্রাউন্ডে এভাবে সংযুক্ত হয় যে তার ভোল্টেজ সাপ্লাইয়ের এক তৃতিয়াংশের নীচে চলে আসে। এতে সার্কিট সেট হয়ে পরে বা ৩ নং পিনে ভোল্টেজ দেখা দেয়। ফলে সার্কিট চালু হয়ে লেড জ্বলে উঠে।
অফ টাইম ডিলে (দেরী করে অফ)ঃ
ধরাযাক একটা কলিং বেলে পুশ করা হলো। পুশ ছেড়ে দেবার সাথে সাথে বন্ধ হলে পুশ ধরেই রাখতে হয়। আবার পুশ করলে যদি চিরকাল বাজতেই থাকে তবে বিব্রতকর অবস্থার সৃষ্টি হয়। সেজন্য অফ টাইম ডিলে সার্কিট। মানে পুশ করলে কিছুক্ষন চলে একাই বন্ধ হয়ে যাবে। নীচে এমন একটা সার্কিট দেখানো হলো। লক্ষ্যনীয় যে আগের সার্কিটে রেজিষ্ট্যান্স ও ক্যাপাসিটরের স্থান পরিবর্তিত হয়েছে।
এই সার্কিটের মূল চালিকা শক্তি ৬ নং পিন (থ্রেশহোল্ড)। পাওয়ার চালুর সাথে সাথে লেডটি জ্বলে উঠে। কারন ক্যাপাসিটর ডিসচার্জ এমতাবস্থায় এ দিয়ে ২ নং পিন গ্রাউন্ডে যুক্ত হয় (কারন ডিসচার্জড অবস্থায় ক্যাপাসিটর শর্ট সার্কিটের ন্যায় আচরন করে)। কিন্তু ক্যাপাসিটর চার্জ হবার সাথে সাথে ২ নং পিন গ্রাউন্ড থেকে বিচ্ছিন্ন হয়ে পরে এবং ৬ নং পিনে ভোল্টেজ দেখা দেয়। ক্যাপাসিটর যখন প্রায় ফুল চার্জ সে অবস্থায় ৬ নং পিনে ভোল্টেজ সাপ্লাইয়ের ২/৩ অতিক্রম করার সাথে সাথে সার্কিট রিসেট হয়ে পড়ে মানে ৩ নং পিনে ভোল্টেজ বন্ধ হয়ে যায়। ফলে লেড বন্ধ হয়ে যায়।
ডিলে ইকুয়েশনঃ
৫৫৫ আইসি ব্যাবহৃত হলে টাইমিং ইকুয়েশন হয়, T = 1.1 R C
প্রদর্শিত সার্কিটদুটিতে R= 47 k Ohm, C = 100 uF হলে
টাইমিং (সেকেন্ড) = 1.1 x 47 000 x 100 x 10^-6 = 1.1 x 4.7 = 5.17 sec
অর্থাৎ ডিলের সময় ৫ সেকেন্ড (প্রায়)
প্রাক্টিক্যাল লোডঃ
তবে প্রাকটিক্যাল লোড জ্বালানোর জন্য লেড এর যায়গায় ট্রাঞ্জিষ্টার ও রিলে ব্যাবহার করা যায়। নিচে জি.এম খলিল ভাইয়ের ব্যাবহৃত ফ্রিজের ডিলে সার্কিট দেখানো হলো। এখানে R =1 M Ohm, C = 100 uF. সুতরাং T = 1.1 x 1 x 10^6 x 100 x 10^-6= 1.1 x 100 = 110 sec = ২ মিনিট (প্রায়)
ইদানীং #লাইন #ফলোয়ার রোবট (LFR – Line Follower Robot) নিয়ে প্রচুর মাতামাতি চলছে। স্কুল, কলেজ ভার্সিটি কিংবা বিজ্ঞান মেলার প্রজেক্ট হিসেবেও এর বিশেষ কদর নবীনদের কাছে অনেক। আজ আমরা এমনি একটি লাইন ফলোয়ার রোবট তৈরি করবার কৌশল এবং এর সার্কিট ও বেসিক ব্যাপার গুলো জানবো। সেই সাথে বাংলাদেশে রোবটিক্স চর্চা ও এর অগ্রগতি সম্পর্কেও টুকটাক তথ্য তুলে ধরবো। তাহলে চলুন আর দেরি না করে জেনে নেই #রোবট এর অদ্যপান্ত।
রোবট কি বা রোবট কাকে বলে?
একটি গুরুত্বপূর্ণ প্রশ্ন হচ্ছে রোবট কাকে বলে বা রোবট জিনিসটা আসলে কি? সহজ ভাবে বললে রোবট (Robot) হচ্ছে যান্ত্রিক ও কৃত্রিম বুদ্ধিমত্তা (Artificial Intelligence – AI) সম্পন্ন বিশেষ যন্ত্র। যা কিনা প্রোগ্রামিং ও ইলেকট্রনিক সার্কিটের মাধ্যমে নিয়ন্ত্রিত হয়।
রোবট শব্দটির উৎপত্তি কিভাবে হলো?
রোবট শব্দটি চেক লেখক কার্ল কাপেক (Karel Čapek) ১৯২০ সালে লিখিত নাটকে প্রথম ব্যবহার করেন। নাটকটির নাম ছিল রসাম ইউনিভার্সাল রোবট (R.U.R. – Rossum Universal Robot)
বাংলাদেশে রোবটের সূচনা ও অগ্রগতিঃ
আমাদের বাংলাদেশ ও কিন্তু রোবটের দিক থেকে পিছিয়ে নেই। এখন জানবো তারই কিছু কথা।
উল্লেখ্য যে, লেখার তথ্যগুলো পুরানো। যারা জানেন না তাদের আশাকরি উপকার হবে তবে নতুন কোন তথ্য আপনার/আপনাদের কাছে থাকলে আমাদের সবার প্রিয় সৈয়দ রাইয়ান ভাইয়ের কাছেমেইলকিংবা ফেসবুকে মেসেজের মাধ্যমে জানাতে অনুরোধ রাখছি। উনি প্রয়োজনীয় সম্পাদনা করে লেখা আপডেট করে দিবেন।
হ্যাক – খুলনা প্রকৌশল ও প্রযুক্তি বিশ্ববিদ্যালয়, ২০০৫
প্রফেসর ড এম এম এ হাসেম ‘খুলনা প্রকৌশল ও প্রযুক্তি বিশ্ববিদ্যালয়’ এ ২০০৫ সালে ‘হার্ডওয়্যার এক্সেলেরশন ক্লাব অফ কুয়েট – হ্যাক’ নামে একটি ক্লাব প্রতিষ্ঠা করেন। সেই ক্লাবের সূত্র ধরে মাইক্রোকন্ট্রোলারের প্রাথমিক শিক্ষা দেন শিক্ষার্থীদের। ধীরে ধীরে শুরু হয় রোবোটিক্স নিয়ে বিভিন্ন প্রকল্পের কাজ।
রুয়েট রোবোটিক্স সোসাইটি – রুয়েট, রাজশাহী
রাজশাহী প্রকৌশল ও প্রযুক্তি বিশ্ববিদ্যালয় এর যন্ত্রকৌশল বিভাগের বর্তমান এসোসিয়েট প্রফেসর ড. মোঃ রোকনুজ্জামান এর উদ্যোগে প্রতিষ্ঠিত হয় “রুয়েট রোবোটিক্স সোসাইটি”। উন্নত বিশ্বের রোবোটিক্স চর্চার ব্যপ্তি দেখে উনিও অনুপ্রানিত হয়ে নিজ বিশ্ববিদ্যালয়ের শিক্ষার্থীদের রোবোটিক্স নিয়ে আগ্রহী করে তোলার লক্ষ্যে কাজ করে যাচ্ছেন। রুয়েট রোবোটিক্স সোসাইটি এর উদ্যোগে এখন শব্দানুভূতিসম্পন্ন রোবট তৈরির কাজ চলছে, অন্যান্য রোবোটগুলোর মধ্যে স্পাই অফ রুয়েট, কাঁকড়া-২ উল্লেখযোগ্য।
রোবো-মেকাট্রনিক্স এসোসিয়েশন – চুয়েট, চট্টগ্রাম
চট্টগ্রাম প্রকৌশল ও প্রযুক্তি বিশ্ববিদ্যালয় এ রয়েছে রোবো-মেকাট্রনিক্স এসোসিয়েশন। মূলত চুয়েটের শিক্ষার্থীদের মাঝে রোবোটিক্স চর্চাকে জনপ্রিয় করার লক্ষ্যে এ ক্লাবটি কাজ করে যাচ্ছে এবং বেশ কয়েকটি সফল রোবট ইতিমধ্যে বিভিন্ন প্রতিযোগিতায় ও প্রদর্শনীতে অংশ নিচ্ছে।
ব্র্যাক ইউনিভার্সিটি রোবোটিক্স ক্লাব – ঢাকা
ব্র্যাক ইউনিভার্সিটি রোবোটিক্স ক্লাব প্রতিষ্ঠিত হয় মূলত চন্দ্রবোট এর সাফল্যের ধারাবাহিক প্রচেস্টার অংশ হিসেবে। চন্দ্রবোটের সাফল্যে এবং রোবোটিক্স চর্চায় শিক্ষার্থীদের আগ্রহ দেখে এই ক্লাবটি প্রতিষ্ঠা করেন ড. মোঃ খলিলুর রহমান। চন্দ্রবোট ছাড়াও ইতিমধ্যে বেশ কয়েকটি দুর্দান্ত রোবট তৈরি করেছে এ ক্লাবের সদস্যরা।
এছাড়াও বিভিন্ন বিশ্ববিদ্যালয়ে ও প্রতিষ্ঠানে শিক্ষার্থীদের উদ্যোগে গড়ে উঠছে আরো অনেক রোবোটিক্স ক্লাব।
এখন আমাদের মূল প্রসঙ্গ লাইন ফলোয়ার রোবট বা এলএফআর (LFR) নিয়ে আলোচনা শুরু করছি।
লাইন ফলোয়ার রোবট কি?
লাইন ফলোয়ার রোবট হচ্ছে একটি বিশেষ ধরনের রোবট যা একটি নির্দিষ্ট লাইন কে ফলো বা অনুসরণ করে চলে এবং কখনই সেই নির্দিষ্ট লাইনের বাইরে যায় না। লাইন ফলোয়ার রোবট দ্বারা অনুসরণকৃত লাইন টি-
সাদা মেঝের উপর কালো টেপ বা,
কালো মেঝের উপর সাদা টেপ দিয়ে করা যেতে পারে।
বিশেষ করে যারা রোবটিক্সে আগ্রহী এবং রোবট নিয়ে কাজ করতে চায় তাদের ‘লাইন ফলোয়ার রোবট’ (LFR) দিয়ে শুরু করাটা বেশ সুবিধে জনক। তাতে রোবটিক্সের বেসিক বিষয় বুঝা ও বিভিন্ন লজিক এবং সেন্সর সম্পর্কে সম্যক ধারণা লাভ করা সহজ হয়।
মাইক্রোকন্ট্রোলার ছাড়া লাইন ফলোয়ার রোবট
আমি এখানে মাইক্রোকন্ট্রোলার ও কোডিং ছাড়া একটি লাইন ফলোয়ার রোবট তৈরির সম্পূর্ণ কৌশল বর্ণনা করব। লাইন ফলোয়ার রোবট তৈরি অনেক সহজ বিধায় এর জনপ্রিয়তার এটি অন্যতম কারন। এছাড়া বিভিন্ন দেশে এই জাতীয় রোবট নিয়ে বিভিন্ন প্রতিযোগিতারও আয়োজন করা হয়ে থাকে। তার আগে নতুনদের জন্য আমার ব্যক্তিগত কিছু পরামর্শ।
রোবট তৈরির আগে কিছু পরামর্শঃ
যারা রোবটিক্সে কাজ করতে ইচ্ছুক তাদের জন্য আমার পরামর্শঃ
প্রথমে ইলেকট্রনিক্স ভিত্তিক কিছু রোবট তৈরি করুন। যেমনঃ লাইন ফলোইং রোবট, লাইট ফলোইং রোবট ইত্যাদি
ডেভেলপড এবং এডভান্স রোবট তৈরির জন্য অবশ্যই ইলেকট্রনিক্সের মৌলিক বিষয়গুলো ভালোভাবে আয়ত্ত্বে আনতে হবে।
লাইন ফলোয়ার রোবটের মূলনীতিঃ
লাইন ফলোয়ার রোবট এর মূলনীতি খুবই সাধারন। এটি একটি লাইন বা ট্র্যাক অনুসরণ করে চলবে। আর এই লাইন এবং এর আশেপাশের রঙ (সাদার উপর কালো অথবা কালর উপর সাদা) -এর পার্থক্য নির্ণয়ের জন্য যেকোন লাইট সেনসিটিভ সেন্সর (ডার্ক সেন্সর বা লাইটসেন্সর) ব্যবহার করা যেতে পারে।
এখানে রোবট কিভাবে লাইন ট্র্যাক করবে এবং রোবট কখন কোন দিকে চলবে তার একটি ডায়াগ্রাম দেয়া হল।
লাইন ফলোয়ার রোবটের মূলনীতি
তাহলে এখন এই ডায়াগ্রাম দেখে রোবটের মূলনীতিটা আগে বুঝে নেয়া যাক-
এই রোবটে দুটি লাইট সেনসিটিভ সেন্সর ব্যবহার করা হয়েছে। সেন্সর হিসেবে এখনে এলডিআর (LDR) ব্যবহার করা হয়েছে। ডায়াগ্রাম-১ এ সেন্সর দুটিকে নির্দেশ করা হয়েছে S1 এবং S2 দ্বারা। যদি আমাদের লাইন কালো হয় তাহলে,
রোবটের S1সেন্সর যখন কালো লাইন সেন্স করবে তখন রোবট বামে চলবে। অনুরূপভাবে,
যখন রোবটের S2সেন্সর যখন কালো লাইন সেন্স করবে তখন ডানে চলবে।
এইভাবেই রোবটটি লাইন অনুসরণ করবে এবং ডান-বাম করে লাইনে বজায় থাকবে। কিভাবে রোবটটি এই কাজ সম্পন্ন করবে আর এর সার্কিট কিভাবে কাজ করবে তার প্রতিটি ধাপ নিচে বর্ণনা করছি।
রোবটের উপরিউক্ত নেভিগেশন প্রিন্সিপালের উপর ভিত্তি করে কালো লাইন কে ট্র্যাকিং করে ফলো করার জন্য যতদূর সম্ভব সহজ একটি সার্কিট তৈরি করা হয়েছে । আরো বিভিন্ন রকম সার্কিট ব্যবহার করা সম্ভব (Op-Amp, Mosfet, Jfet) তবে বুঝবার সুবিধের জন্য এই বেসিক সার্কিটই বেশী কার্যকরী বলে এটিই দিলাম। এখানে উল্লেখ্য যে, সার্কিট টি আমি নিজে সফল ভাবে পরীক্ষা করেছি যার ভিডিও এই লেখার শেষ অংশে পাবেন।
LDR এবং ট্রানজিস্টরের এই সাধারন নীতি ব্যবহার করে আমারা উক্ত সার্কিটের সাহায্যে কালো লাইন ট্র্যাক করে লাইন ফলোইয়ার রোবট তৈরি করতে পারি। সেক্ষেত্রে LDR এবং সাদা LED এমনভাবে বসাতে হবে যাতে করে যখন LDR ঠিক কালো লাইনের উপর থাকবে তখন LED থেকে নির্গত আলো এর উপর খুব সামান্য পরিমাণে প্রতিফলিত হয়। এতে করে মোটরটি আগের চেয়ে খুব ধীর গতিতে চলবে। কারন ট্রানজিস্টরের বায়াসিং এর কারনে কালেক্টর কারেন্ট কম থাকবে। আবার যখন কালো লাইনের বাইরের দিকে থাকবে তখন থেকে এর উপর বেশি আলো প্রতিফলিত হবে এবং মোটর দ্রুত চলবে (বায়াসিং এর কারনে কালেক্টর কারেন্ট বেশি থাকবার কারনে)।
এখানে একটি গুরুত্বপূর্ণ ব্যাপার হচ্ছেঃ LED থেকে LDR এর উপরে সরাসরি আলো পড়লে কাজ হবে না, লাইনে প্রতিফলিত হয়ে LDR এ পড়তে হবে।
সার্কিটে ট্রিমার পটেনশিওমিটার ব্যবহার করা হয়েছে ডি.সি মোটরের স্পীড কে নিয়ন্ত্রণ করার জন্য। ডি.সি মোটরের সাথে প্যারালালে ডায়োড ব্যবহারের কারন হচ্ছে- যখন ট্রানজিস্টর অফ থাকবে তখন ডি.সি মোটরের ইন্ডাক্টর দ্বারা সৃষ্ট EMF (electromotive force) থেকে ট্রানজিস্টরকে রক্ষা করা।
অবশ্যই পালনীয় কিছু কর্তব্যঃ
উপরোক্ত ডায়াগ্রামে রোবট টির সেন্সর গুলোকে কিভাবে স্থাপন করতে হবে তার ডায়াগ্রাম দেখানো হয়েছে। LDR এবং LED গুলোকে বোর্ডে এমনভাবে বসাতে যাতে করে থেকে নিঃসৃত আলো ফ্লোরে/লাইনে প্রতিফলিত হয়ে এর উপর পড়ে।
সেজন্য LDR এবং LED-এর মধ্যবর্তী দূরত্ব যেন কম হয় (৮ মিলিমিটার হলে ভালো) ।
অবশ্যই খেয়াল রাখতে হবে LED থেকে নিঃসৃত আলো যেন সরাসরি LDR-এর উপর না পড়ে।
সরাসরি আলোর আপতন থেকে বাঁচাতে LDR-কে আলদাভাবে টেপ দিয়ে প্যাচিয়ে দিলে ভালো হয়। ফলে LED থেকে নিঃসৃত আলো সরাসরি LDR-এর উপর পড়বে না। নিচের ছবি দেখলে বুঝা যাবে আশাকরি।
রোবটকে সামনে চালাতে চাইলেঃ যখন দুটি মোটরের স্পীড সমান থাকে তাহলে রোবট সামনে যায়।
নিচের চিত্র দেখে ব্যাপারটা পরিষ্কার হবে আশা করি ।
লাইন ফলোয়ার রোবট (LFR) যে মেথডে কাজ করে – ডিফারেন্সিয়াল ড্রাইভ স্টেয়ারিং
LFR সার্কিট এর কার্যপ্রণালীঃ
এই রোবটের সেন্সর হিসেবে ব্যবহার করা হয়েছে LDR (Light dependent resistor). প্রথমে LDR-এর বেসিক ব্যাপারটা বলে জেনে নেয়া ভালো। LDR হচ্ছে একটি বিশেষ ধরনের রেজিস্টর যার রেজিস্ট্যান্স আলোর তীব্রতার উপর নির্ভরশীল। অর্থাৎ, LDR-এর উপর আলো পড়লে এর রেজিস্ট্যান্স কমতে থাকে। আলোর তীব্রতা যত বেশি হবে LDR-এর রেজিস্ট্যান্স ততো কম হবে। আর সম্পূর্ণ অন্ধকারে LDR-এর রেজিস্ট্যান্স সব চাইতে বেশি থাকে (100%)। মানে, LDR-এর রেজিস্ট্যান্স হার আলোর তীব্রতার ব্যাস্তানুপাতিক।
এখানে উল্লেখ্য যে বাজারে বর্তমানে কিছু LDR পাওয়া যাচ্ছে যার রেজিস্ট্যান্স আলোর তীব্রতার সাথে সাথে বৃদ্ধিপায়। সেক্ষেত্রে উক্ত সার্কিটে প্রয়োজনীয় পরিবর্তন করতে হবে।
রোবট সামনে চলবে যেভাবেঃ
এখন ধরা যাক, সার্কিটটি তৈরির পর কালো লাইন এর উপর ছেড়ে দেয়া হয়েছে। পাওয়ার সুইচ অন করে দেয়ার সাথে সাথে রোবটটি চলতে শুরু করল। ধরি, কালো লাইন ট্র্যাকটি সেন্সরের S1 ও S2 এর মাঝামাঝি আছে ফলে এটি কালো লাইন কে সেন্স করছে না। তাই এটি সোজা চলবে।
কারন এসময় দুটি মোটরের স্পীড সমান। উল্লেখ্য, রোবটে পাওয়ার দেয়া শুরু থেকে LED অন থাকবে এবং সাদা মেঝেতে প্রতিফলিত হয়ে LDR-এর উপর পড়বে (কারন, সেন্সর দুটির একটিও এখন পর্যন্ত কালো লাইনের উপর আসে নি)। যার ফলে LDR-এর রেজিস্ট্যান্স কম থাকবে এবং কারেন্ট ফ্লো হয়ে ট্রানজিস্টরের বেইজে যাবে। যার কারনে ট্রানজিস্টরের কালেক্টর থেকে ইমিটারে কারেন্ট পাস করবে এবং কালেক্টরের সাথে মোটর সিরিজে সংযুক্ত থাকায় মোটরের মধ্য দিয়েও সেই পরিমাণ কারেন্ট ফ্লো হবে।
যদি সেন্সর দুটি সাদা মেঝের (ideal white floor) উপর থাকে তাহলে দুটি LDR-এর রেজিস্ট্যান্স সমান কম থাকবে এবং ট্রানজিস্টরের বেইজেও তদানুজায়ি কারেন্ট ফ্লো হবে। ফলে মোটর দুটি সমান স্পীডে ঘুরবে। এভাবে সার্কিটটি রোবটের সোজা চলতে সাহায্য করবে।
উভয় মটোর সমান ভাবে চালু
এখানে উল্লেখ্য যে- অবশ্যই কালেক্টর থেকে ইমিটারে কারেন্ট পাস করার মত যথেষ্ট কারেন্ট ট্রানজিস্টরের বেইজে দিতে হবে। যাতে সুইচিং হতে পারে। এজন্য সেন্সর দুটি যখন সাদা ফ্লোরের উপর থাকবে তখন যেন মোটর মোটামুটি একটি স্পীডে ঘোরে সেজন্য পটেনশিওমিটার ঘুরিয়ে অ্যাডজাস্ট করে নিতে হবে। কারন, পটেনশিওমিটারের রেজিস্ট্যান্স যদি বেশি থাকে তাহলে আলো প্রতিফলিত হয়ে LDR এর রেজিস্ট্যান্স কমে গেলেও পটেনশিওমিটারের রেজিস্ট্যান্স বেশি থাকার কারনে ট্রানজিস্টরের বেইজে যথেষ্ট পরিমাণ কারেন্ট যেতে পারবে না। ফলে মোটরেও ঘুরবে না।
রোবট বামে চলবে যেভাবেঃ
এখন মনে করি, চলতে চলতে বাম পাশের মোটরের সাথে যুক্ত সেন্সরটি (S1) কালো লাইনের উপর গেল অপরদিকে S2 সাদা ফ্লোরের উপরেই আছে। তখন, LED থেকে নিঃসৃত আলো প্রথমে কালো ট্র্যাকের উপর পড়বে, কিন্তু প্রতিফলিত হবে খুব কম পরিমাণে। কারন কালো জায়গায় আলোর প্রতিফলন খুব কম হয় (শোষিত হয় )।
আলো কম প্রতিফলিত হবার কারনে LDR-এর উপরও আলোর তীব্রতা কমে যাবে, ফলে এর রেজিস্ট্যান্স বেড়ে যাবে; এতে করে LDR ও পটেনশিওমিটার হয়ে ট্রানজিস্টরের বেইজে পর্যাপ্ত পরিমাণ কারেন্ট ফ্লো বাধাপ্রাপ্ত হবে। যার কারনে কালেক্টর থেকে ইমিটারে কারেন্ট পাস হবে না (খুব অল্প পরিমাণে হতে পারে; সেটা LDR-এর রেজিস্ট্যান্সের উপর নির্ভরশীল ) এবং সেন্সরের সাথে সংশ্লিষ্ট মোটর (left motor) বন্ধ হয়ে যাবে বা স্পীড কমে যাবে।
কিন্তু ডান পাশের সেন্সর ( S2 ) যেহেতু সাদা ফ্লোরের উপর আছে, সেহেতু S2 ‘LDR’ এর উপর আলোর তীব্রতা বেশি থাকবে এবং ডান পাশের LDR-এর সাথে সংশ্লিষ্ট মোটর ঘুরতে থাকবে। কারন, এক্ষেত্রে ডান পাশের ট্রানজিস্টরটি অন আছে। ফলে রোবটটি অটোমেটিক বামে ঘুরে যাবে। এভাবে সার্কিটটি রোবটের বামে টার্ন করা নিয়ন্ত্রন করবে।
উল্লেক্ষ্য, এক্ষেত্রে বাম পাশের মোটর অল্প পরিমাণে ঘুরতে পারে, কারন আগেই বলেছিলাম মোটরের মধ্য দিয়ে প্রবাহিত কারেন্টের পরিমাণ ট্রানজিস্টরের কালেক্টর কারেন্টের সমান আর এই কালেক্টর কারেন্টের পরিমাণ নির্ভর করে ট্রানজিস্টরের বেইজ কারেন্টের উপর। বেইজ কারেন্ট যদি সামান্য বেশি হয় (সুইচ করার জন্য যথেষ্ট) তাহলে মোটর এবং কালেক্টরের মধ্য দিয়েও সেই অনুযায়ী সামান্য পরিমান কারেন্ট প্রবাহিত হবে
বামে টার্ন করার লজিকের মতই রোবটের ডানে টার্ন করার লজিক একই। এক্ষেত্রে যখন S2 সেন্সর কালো লাইনের উপর আসবে তখন এর রেজিস্ট্যান্স বেড়ে যাবে এবং এর সংশ্লিষ্ট মোটর (Right motor) অফ হয়ে যাবে বা স্পীড কমে যাবে (LDR এর রেজিস্ট্যান্সের উপর নির্ভরশীল); এবং S1 সেন্সরের সাথে সংশ্লিষ্ট মোটরের (Left motor) স্পীড বেশি থাকায় রোবটটি ডানে টার্ন করবে ।
এই রোবটটি সফলভাবে তৈরির মূল চাবিকাঠি মোটর নির্বাচনের উপর ব্যাপকভাবে নির্ভরশীল।
মোটর নির্বাচনঃ
এই প্রোজেক্টের জন্য মোটর নির্বাচনে যেসব দিকে লক্ষ্য রাখতে হবে তা হচ্ছে –
মোটর পাওয়ার রেটিংঃ
৫ ভোল্ট বা ৬ ভোল্ট ডি.সি গিয়ার মোটর সিলেক্ট করা সবচাইতে ভালো, এবং যার কারেন্ট রেটিং কম। অর্থাৎ, যা লো পাওয়ার কনজিউম করে।
মোটর RPM:
কম RPM (Rotation per minute)-এর মোটর ব্যবহারের চেষ্টা করা উচিত। কারন, এখানে ব্যবহৃত সেন্সর ‘LDR’ অন্যান্য লাইট সেন্সেটিভ কম্পোনেন্ট/ সেন্সরগুলো থেকে স্লো রেসপন্সের (রেসপন্স করতে দেরী লাগে) তাই বেশি RPM-এর মোটর ব্যবহার করলে রোবট কালো লাইন ট্র্যাক করার জন্য যথেষ্ট সময় পাবে না। তাই লো RPM-এর মোটর ব্যবহার করা ভালো যাতে করে রোবটটি ঠিক মত ব্ল্যাক লাইন ট্র্যাক অনুসরণ করতে পারে।
গিয়ার মোটরঃ
এই প্রোজেক্টের ক্ষেত্রে ডি.সি গিয়ার মোটর সিলেক্ট করা বেস্ট। কারন গিয়ার মোটরের কিছু উপকারিতা আছে। যেমন এটি পাওয়ার সাপ্লাই অফ করে দেওয়ার সাথে সাথে বন্ধ হয়ে যায়, সাধারন ডি.সি মোটরের মত ধীরে ধীরে বন্ধ হয় না । গিয়ার সিস্টেমের কারনে এই জাতীয় মোটর খুব দ্রুত রোটেশনাল স্পীড চেঞ্জ করতে পারে। এই জাতীয় characteristic-এর কারনে এই প্রোজেক্টের ক্ষেত্রে গিয়ার মোটর সিলেক্ট করা সবচাইতে ভালো ।
সর্বোপরি, ভালো মানের একটি লাইন ফলোয়ার রোবট তৈরি করতে ৫ বা ৬ ভোল্টের, কম কারেন্ট রেটিং এবং কম RPM-এর গিয়ার মোটর ব্যবহার করা উচিত।
লাইন ফলোয়ার (LFR) এর জন্য বিভিন্ন ধরনের ডিসি গিয়ার মোটর
জ্বী লাইন ফলোয়ার রোবট আমি নিজে তৈরি করেছি। তবে সে সময় ক্যামেরা না থাকায় ছবি গুলো তুলতে পারি নি। তাই লিখবার সময় নেট থেকে নেয়া হয়েছে। ভিডিওতে আমার বানানো রোবোটে দেখানো হয়েছে।
এই ট্রানজিস্টর এর পরিবর্তে আর কি ব্যবহার করা যেতে পারে?
যে কোনো সাধারণ ট্রানজিস্টর ব্যবহার করা সম্ভব। যেমন BC547, D400, D882। তবে খেয়াল রাখবেন উক্ত ট্রানজিস্টর টি আপনার মোটরের এম্পিয়ার যেন নিতে পারে।
মোটরের এম্পিয়ার কীভাবে জানবো?
এটি জানার জন্য মোটরের গায়ে দেখুন লেখা আছে 0.1A – এমন । না থাকলে ডাটাশীট অথবা যেখান থেকে কিনেছেন তাদের সহায়তা নিন।
অন্যকোনো সার্কিট কি ব্যবহার করা যাবে?
যেকোনো আলোক সংবেদী বা লাইটসেন্সর (ডার্ক সেন্সর) কে এই কাজে ব্যবহার করতে পারেন। লাইট সেন্সরকে কালো লাইন ফলোয়ার এবং ডার্ক সেন্সরকে সাদা লাইন ফলোয়ার হিসেবে ব্যবহার করা সম্ভব। তার জন্য এই লেখাটি ভালো ভাবে পড়ুন।
উপসংহার
আমি চেষ্টা করেছি লাইন ফলোয়ার রোবট (LFR) এর কৌশল এবং সার্কিট সম্পর্কে যতদূর সম্ভব বিস্তারিত এবং সহজভাবে বুঝিয়ে লেখার। সেই সাথে বাংলাদেশে রোবট ও রোবটিক্স সম্পর্কিত কিছু সংক্ষিপ্ত তথ্যও তুলে ধরেছি। এই পদ্ধতিতে তৈরি করা রোবটের ভিডিও লেখাতে সংযুক্ত করেছি। সাথে কিছু কমন প্রশ্ন ও তার উত্তর সংযুক্ত করা হয়েছে। তারপরও যদি কারো বুঝতে বা লেখার কোথাও কোন ভুলত্রুটি থাকে তাহলে কমেন্ট আকারে জানাতে অনুরোধ রইলো।
Feel free to ask any kind of questions related to this project…. 🙂
~Thank You~
বিশেষ দ্রষ্টব্য: এই লেখাটি পূর্বে আমার ফেসবুক প্রোফাইলে নোট আকারে প্রকাশিত।
বিভিন্নপ্রকার তথ্যাবলী উইকিপেডিয়া ও নেট থেকে সংগৃহীত।
void setup()
{
pinMode(2, OUTPUT); // পিন ২ কে আউটপুট হিসাবে সেট করা
pinMode(3, OUTPUT); // পিন ৩ কে আউটপুট হিসাবে সেট করা
pinMode(4, OUTPUT); // পিন ৪ কে আউটপুট হিসাবে সেট করা
pinMode(5, OUTPUT); // পিন ৫ কে আউটপুট হিসাবে সেট করা
pinMode(6, OUTPUT); // পিন ৬ কে আউটপুট হিসাবে সেট করা
Serial.begin(9600); // সিরিয়াল কমুনিকেসন শুরু করা
}
void loop()
{
int val = Serial.read() - '0';
if (val == 1) // মোবাইল থেকে পাঠানো ডাঁটা চেক করা
{
digitalWrite(2, HIGH);
Serial.println("Fan on");
}
else if (val == 2) {
digitalWrite(2, LOW);
Serial.println("Fan stop");
}
if (val == 3) {
digitalWrite(3, HIGH);
Serial.println("Light 1 on");
}
else if (val == 4) {
digitalWrite(3, LOW);
Serial.println("Light 1 off");
}
if (val == 5) {
digitalWrite(4, HIGH);
Serial.println("Light 2 on ");
}
else if (val == 6) {
digitalWrite(4, LOW);
Serial.println("Light 2 off");
}
if (val == 7) {
digitalWrite(5, HIGH);
Serial.println("Light 3 on");
}
else if (val == 8) {
digitalWrite(5, LOW);
Serial.println("Light 3 off");
}
if (val == 9) {
digitalWrite(6, HIGH);
Serial.println("TV on");
}
else if (val == 0) {
digitalWrite(6, LOW);
Serial.println("TV off");
}}
এখন আপলোড বাটনে ক্লিক করি ।
এবার কানেকশন দেবার পালা।
কিন্তু আমারা যদি প্রতিবার এক একটা সুইচ বোর্ড এর জন্য এক একটা arduino uno বোর্ড ব্যাবহার করি তবে সেটা হবে অনেক ব্যায় বহুল। তাই আমরা এক্ষেত্রে শুধু arduino uno বোর্ডে ব্যাবরিত Atmega328p চিপ টি ব্যাবহার করব । তো এই জন্য আমারা Atmega328 এর arduino পিন ম্যাপ টা একটু দেখে নিই।
আমরা সুইচ কন্ট্রোল করার জন্য আমরা ২-৬ পর্যন্ত ডিজিটাল পিন ব্যাবহার করেছি যার প্রকিত অবস্থান যথাক্রমে পিন নং ৪,৫,৬,১১,১২ । এখন কিভাবে সার্কিট টি সংযোগ করব দেখা যাক।
ডায়াগ্রাম এর দিকে লক্ষ্য করি ।
* BT MODULE এর TXD pin টা MCU এর ২ নং পিনের সাথে সংযুক্ত করি।
* BT MODULE এর RXD pin টা MCU এর ৩ নং পিনের সাথে সংযুক্ত করি।
* BT MODULE এর VCC , MCU এর ২০ নং ও ৭ নং পিন টি পাওয়ার সাপ্লাই এর VCC এর সাথে সংযুক্ত করি।
* BT MODULE এর GND ,MCU এর ৮ নং ,২২ নং এবং ৯ ও ১০ নং এ সংযুক্ত ক্যাপাচিটর এর শেষ প্রান্ত পাওয়ার সাপ্লাই এর GND এর সাথে সংযুক্ত করি ।
* MCU এর ৪,৫,৬,১১,১২ এই ৫ টা পিন রিলের সাথে সংযুক্ত করি এবং রিলের অন্য পিন গুলো পাওয়ার সাপ্লাই এর GND এর সাথে সংযুক্ত করি ।
*ছবিতে ৫ টা সেকশন একই রকম হওয়ায় দুইটা দেখানো হয়েছে এবং বাকি গুলা বক্স আকারে দেয়া হয়েছে ।
* রিলের হলুদ রঙের তার টিতে ২২০v AC সাপ্লাই দিই।
* CONN-H2 এর পাঁচটি হোল্ডার আছে যার প্রতিটা র এক নং AC সাপ্লাই GND এর সাথে সংযুক্ত করি ।
* এখন CONN-H2 এর পাঁচটি হোল্ডার থেকে ঘরের সুইচ গুলোর সংযোগ স্থাপন করি ।
এখন এক নজরে পাওয়ার সাপ্লাই টা একটু দেখে নিই ।
ব্যাস কাজ শেষ ।
[বিঃদ্রঃ arduino uno তে Atmega328p ডিফল্ট ভাবে ১৬ মেগাহার্টজ এ কাজ করে এবং এটির ADC enable করা থাকে, তাই arduino বোর্ড থেকে mcu টি উঠিয়ে PCB তে বসাতে গেলে অবশ্যই 16MHz এর crystal ব্যাবহার করতে হবে ( diagram এর মত) এবং AVCC পিন টি অবশ্যই ৫ ভোল্টের সাথে সংযুক্ত করতে হবে ]
সাবউফার স্পিকার সিস্টেম তৈরি করতে গিয়ে এর বক্স বানানো বা বক্স কেমন হবে সেটা একটা সমস্যা হয়ে দেখা দেয়। নানান রকম বক্স এর মাপ আর সেই সাথে কোনটা কেমন হবে সেটা নিয়ে চিন্তা তো আছেই। আবার একই সাথে পরীক্ষা করবার জন্য একেকবার একেক রকম সাউন্ড বক্স তৈরি করাটাও ঝামেলার ব্যাপার। সেই দিকে লক্ষ্য রেখে একটু রিভার্স ইঞ্জিনিয়ারিংয়ের আশ্রয় নিতে হলো। যদিও পারফরমেন্স ১০০% হবে বলে গ্যারান্টি দিচ্ছি না তবে একেবারে খারাপও হবে না।
বাজারে প্রচলিত বিভিন্ন ব্রান্ডের ডিজাইনের সাথে মিল রেখে এটা করা হয়েছে। এটা মুলত ফোর্থ অর্ডার ব্যন্ডপাস ফিল্টার টাইপ আর টিউনিং রেঞ্জ ৪০ হার্য থেকে ৮০ হার্য এর আশেপাশে হবে। বক্স ফিট করবার পর স্পীকার বা ড্রাইভার কে বাইরে থেকে আর দেখা যাবে না। এবং এর যে ভেন্ট পাইপ আছে শব্দ মুলত এর মাধ্যমেই বাইরে আসবে। বাজারে প্রচলিত কমার্শিয়াল বিভিন্ন ব্রান্ডের মতোই দেখতে হবে।
আমার তৈরি করা সাবউফার বক্সের ডিজাইন ও মাপঃ
নিচের ছবিতে আমার তৈরি করা সাবউফার সাউন্ড বক্সের ডিজাইন ও মাপ দেয়া হলো-
সাবউফার সাউন্ড বক্স এর ডিজাইন ও এর ব্যবহারিক মাপ – চিত্রঃ২
বিভিন্ন সাইজের স্পীকারের জন্য করা হয়েছে মাপ গুলো। তেমন জটিল কিছু না বিষয়টি। আশাকরি বানাতে পারবেন। কেউ বানালে কমেন্টে বা পোষ্ট দিয়ে আমাদের জানাবেন আপনার অভিজ্ঞতা যাতে আমরা আরও উন্নত করতে পারি পরবর্তিতে। আগামীতে বক্স বানানোর টেকনিক নিয়ে একটি পোষ্ট দেবার আশা রাখি সেই সাথে বক্স কে কিভাবে সুন্দর করবেন সেটাও থাকবে।
এম্প ও স্পীকারের পাওয়ার ম্যাচিং কেমন হওয়া উচিৎ সে সম্পর্কে ধারণা দিচ্ছি,
৪ থেকে ৬ ইঞ্চি স্পীকারের জন্য ৫০ ওয়াট মেক্সিমাম ওয়াটের এম্প
৮ থেকে ১০ ইঞ্চি স্পীকারের জন্য ২০০ ওয়াটের মধ্যে, আর
১২-১৫ ইঞ্চির জন্য ২০০+ ওয়াটের এম্প ব্যবহার করলে রেজাল্ট ভাল আসবে।
এছাড়াও অডিও সাউন্ড সিস্টেম সম্পর্কে জানতে চাইলে পড়তে পারেন – অডিও সাউন্ড সিস্টেম। এছাড়াও আমাদের অডিও বিভাগ ঘুরে দেখার আমন্ত্রণ রইল। মতামতের অপেক্ষাতে রইলাম। শুভ কামনা
আগেই আলোচনা করেছিযে, ফ্ল্যাশ কার্ডে রিড/রাইট করার জন্য যেমন রিড/রাইটার দরকার তদ্রুপ মাইক্রোতে কোড রিড/রাইটের জন্য দরকার প্রোগ্রামার। কয়েক ধরনের প্রোগ্রামার বাজারে প্রচলিত যেমনঃ
Simple/Basic/Bitbang programmers
ISP smart programmers
Development boards
Simple/Basic/Bitbang programmers
সবচেয়ে সহজ ও সস্তা এই পদ্ধতিতে একটি সিরিয়াল বা প্যারালাল কেবল ছোট একটা সার্কিটের মাধ্যমে (ভোল্টেজ ট্রান্সলেশন, ডাটা বাফারিং) মাইক্রোতে যুক্ত করা হয়। কম্পিউটার সফটওয়্যার বাকি যাবতিয় কাজ করে। এই পদ্ধতিতে বেশ কিছু সীমাবদ্ধতা থাকার কারনে খুবি সিম্পল প্রোগ্রামিং ছাড়া এখন কালে ভদ্রে এর ব্যাবহার হয়। নিচে প্যারালাল পরে সিরিয়াল প্রোগ্রামার দেখানো হলঃ
ISP smart programmers
ইন সিস্টেম প্রোগ্রামার (ISP) হচ্ছে বর্তমানে বহুল ব্যাবহৃত প্রোগ্রামার। এদের নিজস্ব বুদ্ধিমত্তা থাকায় (এদের নিজদেরই মাইক্রো আছে) এরা স্মার্ট বার্নিং করতে পারে। এরা ড্রাইভার দিয়ে কম্পিউটারের সাথে যোগাযোগ রাখে । ISP প্রোগ্রামের বৈশিষ্ঠ হল এরা যে সার্কিটবোর্ডে লাগানো থাকে (ধরা যাক পাম্প কন্ট্রলার সার্কিট বোর্ডে) সেখানেই তাদের প্রোগ্রামিং করা যায়, খুলে তুলে আনতে হয়না (যে কারনে নামঃ ইন সিস্টেম প্রোগ্রামার)।
নিচে প্রথমে এভি আরের নির্মাতা কোম্পানির নিজস্ব প্রোডাক্ট AVRISP v2 দেখানো হলো। v1 ১০ পিনের হেডার সাপোর্ট করে কিন্তু v2 ৬ পিনের হেডার সাপোর্টেড।
AVRISP খুব চমৎকার প্রডাক্ট হলেও এর দাম বেশী হওয়ায় উপেন সোর্স কমিনিটি নিজেরাই প্রোগ্রামার ডিজাইন করেছে। এমন উপেন সোর্স প্রোগ্রামার হল USBtiny, USBasp ইত্যাদি । অনলাইনে এর পিসিবি ডিজাইন সহ কোডিং ফ্রি পাওয়া যায়। যে কেউ এটি অনুসরন করে নিজেই বানিয়ে নিতে পারে। নিচে ATMega8 দিয়ে তৈরী একটি USBASP ISP Programmer এর স্কিম্যাটিক দেয়া হলঃ
এছাড়া ঐসব ডিজাইনের উপর ভিত্তি করে অনেক সস্তা কমার্শিয়াল ISP Programmer বাজারে পাওয়া যায়। নিচে দেশী বাজারে পাওয়া যায় এমন একটি USB ISP প্রোগ্রামার দেখানো হলঃ
Development boards
যদিও এখন আর অত জনপ্রিয় নয় (দাম বেশী, সাইজে বাল্কি) কিন্তু বাজারে এক ডজনের মতো ডেভেলমেন্ট বোর্ড পাওয়া যায় যাতে এ ভি আর বসিয়ে প্রোগ্রাম করা যায়। এর মধ্যে সবচেয়ে পপুলার হলে এভি আরের নির্মাতা প্রতিষ্ঠান Atmel এর তৈরী STK500। যাতে বাজারে যত রকমের Atmel চিপ পাওয়া যায় সবগুলার সকেট আছে। এছাড়াও আছে এডজাষ্টেবল ক্লক স্পিড অসিলেটর সফটওয়্যার প্যাকেজ AVRStudio এর সাপোর্ট। কিন্তু দুর্ভাগ্যবশত এটি সরাসরি USB পোর্ট সাপোর্ট করেনা। এর মূল ইন্টারফেস সিরিয়াল পোর্ট, যা আর আজকালকার কম্পিউটারে থাকেনা। নিচে STK500 দেখানো হলঃ
এই ধরনের ডেভলপমেন্টবোর্ডের মধ্যে আরেকটি উল্লেখযোগ্য হলো AVR Dragon । এটি ৬ পিন, ১০ পিন দুই ধরনের কানেকশনই ব্যাবহার করা যায় কিন্তু এতে কোন সকেট না থাকায় এটি ব্যাবহার ঝামেলাপূর্ন। এটির চল খুব কম।
মজার একটি ব্যাপার হলো। আজকাল অনেকের কাছেই Arduino বোর্ড আছে। অনেকেই জানি আরডুইনো (উনো, ন্যানো, মিনি, মেগা …) মূলত এ ভি আর মাইক্রো দিয়ে তৈরি ডেভলোপমেন্ট বোর্ড (গ্যালিলিও তে ইন্টেল চিপ ব্যাবহার হয়, এছাড়া আরম কর্টেক্স দিয়ে আরডুইনো ডুয়ো আছে)। এভি আর বেসড আরডুইনোগুলিকে যেমন AVRISP দিয়ে প্রোগ্রাম করা যায়। আবার আরডুইনো দিয়েও এভি আর চিপ প্রোগ্রাম করা যায়। আরডুইনো তে ৩ x ২ = ৬ পিনের ICSP (In circuit serial programming) হেডার থাকে। যাতে সরাসরি প্রোগ্রামার (SPI) ইন্টারফেস করা যায় (ICSP হেডার ছাড়াও ডিজিটাল পিন দিয়েও প্রোগ্রামিং করা যায়)