প্রসেসিং এর আগের পর্বে আমরা ভ্যারিয়েবল ও বিভিন্ন শেপ সম্পর্কে জেনেছি। এই পর্বে শিখবো বিভিন্ন ডাটা টাইপ সম্পর্কে। এবং একই সাথে প্রসেসিং এ কালার সম্পর্কে জানবো।
আগের পর্বে আমরা int টাইপের ভ্যারিয়েবল নিয়ে কাজ করেছিলাম। আমি সম্ভবত এটিও বলেছিলাম যে int হচ্ছে একটি ডাটা টাইপ। ভ্যারিয়েবল এর নামের আগে ডাটা টাইপ টি ডিক্লেয়ার করলে কম্পিউটার বুঝতে পারে যে ভ্যারিয়েবল টি তে কিধরণের তথ্য রাখা হয়েছে। এক ডাটা টাইপের ভ্যারিয়েবল এ অন্য টাইপের ডাটা রাখা যায় না, এরর দেখায়।
জাভায় বেসিক ৮ ধরণের ডাটা টাইপ আছে। যথা,
byte,
short,
int,
long,
char,
float,
double,
boolean
এর মধ্যে সবচেয়ে ছোট ধারণ ক্ষমতার হচ্ছে বুলিয়ান। যা মাত্র ১ বিট ইউজ করে, এবং সবচেয়ে বড় ধারণ ক্ষমতা হচ্ছে ডাবল টাইপের। যা ৮ বাইট তথ্য ধারণ করতে পারে। ১ বাইট হচ্ছে ৮ বিটের সমান। বিট হচ্ছে কম্পিউটারের তথ্যের সবচেয়ে ছোট একক।
আমরা কি ধরণের এবং কতবড় ডেটা রাখব তার ওপর ভিত্তি করে ডাটা টাইপ নির্বাচন করতে হয়। যেমন, বাইট ডাটা টাইপ সর্বোচ্চ ১২৭ পর্যন্ত সংখ্যা ধারণ করতে পারে সাইনড অবস্থায়। আনসাইনড অবস্থায় ২৫৫ (সাইনড-আনসাইনড সম্পর্কে পরে জানতে পারবেন)। আবার লং ডাটা টাইপ সর্বোচ্চ 9223372036854775807 পর্যন্ত সংখ্যা ধারণ করতে পারে। (বাই দা ওয়ে, আপনি কি সংখ্যাটা পড়েছেন না প্রথম ৪টা সংখ্যা পড়েই স্কিপ করেছেন? 😀 ) ।
আপনি যখন অভিজ্ঞ প্রোগ্রামার হবেন, তখন যতটা সম্ভব কম মেমরি খরচ করে প্রোগ্রাম লেখার জন্য উপযুক্ত ডেটা টাইপ নির্বাচন করতে হবে। কিন্তু এখন যেহেতু আমরা ছোটখাট কাজ করছি, তাই সব ডেটা টাইপ সম্পর্কে না জেনে int, float, long, char ও boolean সম্পর্কে জানলেই চলবে।
বিভিন্ন ডাটা টাইপ এর চার্ট
উপরের চার্ট এ কোন ডাটা টাইপ কতটুকু জায়গা খরচ করে, ডিফল্ট ভ্যালু কত, আর কিধরণের তথ্য রাখা হয় সেটি দেয়া আছে। ডিফল্ট ভ্যালু বলতে, আপনি যদি int data; অথবা float data; এভাবে ব্ল্যাংক ভ্যারিয়েবল ডিক্লেয়ার করেন তাহলে তখন প্রাথমিকভাবে ভ্যারিয়েবলটির মান কত থাকবে সেটি দেয়া আছে। আর কি ধরণের তথ্য ধারণ করা হয় সেখানে Integral বলতে পূর্ণ সংখ্যা, Decimal বলতে দশমিক সংখ্যা, True or False বলতে বুলিয়ান ভ্যারিয়েবলটির ভ্যালু সত্যি না মিথ্যা (পরে আলোচ্য), এবং Character বলতে একটি অক্ষর বোঝানো হয়েছে।
Int কি তা আমরা এর আগের পর্বেই জেনেছি। float হচ্ছে int এর মতই। long হচ্ছে একটু বড় সংখ্যা রাখার জন্য, char ও booleanসম্পর্কে এখন জানবো।
char হচ্ছে Characterএর শর্ট ফর্ম। এই ধরণের ভ্যারিয়েবল এ একটিমাত্র অক্ষর রাখা যায়। যেমন, s অক্ষরটি রাখার জন্য আপনাকে এভাবে ভ্যারিয়েবল ডিক্লেয়ার করতে হবে-
char myvariable = ‘s’;
এখানে সিঙ্গেল ইনভার্টেড কমা দিতে হবে, ডাবল ইনভার্টেড কমা দিলে হবেনা।
boolean বা বুলিয়ান ভ্যারিয়েবল এর ২টি মান থাকে- সত্যি অথবা মিথ্যা। আপানি হয়ত ভাবতে পারেন ভ্যারিয়েবল সত্যি মিথ্যা হয় কিভাবে!! এখানে আসলে কম্পিউটার ০ অথবা ১ রাখে। আমরা যদি প্রগ্রামে ভ্যারিয়েবলটির মান trueকরি, তাহলে কম্পিউটার তার মেমরিতে ভ্যারিয়েবলটির মান ১ করে দেয়, আবার falseকরলে কম্পিউটার ভ্যারিয়েবলটির মান ০ করে দেয়।
বুলিয়ান ভ্যারিয়েবল এর সিনট্যাক্স হচ্ছে-
boolean myvariable;
এটাকে true করার জন্য myvariable= true লিখতে হবে এবং প্রয়োজনে একই ভাবে false লিখতে হবে।
char ও boolean এই মুহূর্তে আমাদের কাজে আসবে না। তবে এর পরের পর্বে if else statement নিয়ে যখন কাজ করব, তখন এই ডাটা টাইপ দুটি ব্যাবহার করতে হবে।
আজকের মত এটুকুই। পরের পর্বে আমরা আমাদের if else statement শিখবো এবং আমাদের প্রোগ্রামের সাথে কিভাবে কি-বোর্ড ও মাউস ইন্টারফেস করতে হয় তা শিখবো।
ডিটিএমএফ (DTMF) এর পূর্ণরূপ হল Dual Tone Multi Frequency. এটি এমন একটি প্রযুক্তি যার মাধ্যমে একটি টেলিফোন সিস্টেম Switch Center এর সাথে যোগাযোগ করে থাকে। আমরা মোবাইল থেকে কল সেন্টারে যখন ফোন দেই তখন এরকম কথা আমরা শুনে থাকি বাংলার জন্য ১ চাপুন, For English Press 2. ১ অথবা ২ প্রেস করে আমরা অপশন সিলেক্ট করে থাকি। আপনারা খেয়াল করে থাকবেন যে যখন আপনারা বাটন প্রেস করেন তখন এক প্রকার শব্দ শুনতে পান, মূলত ঐসব শব্দই DTMF TONE.
যাহোক আর কথা বাড়াবো না, মূল কথায় আসি। আজকে আমরা ডিটিএমএফ (DTMF) ব্যবহার করে এমন একটি সার্কিট বা মডিউল তৈরি করব, যেটার মাধ্যমে আপনি DTMF Tone Decode করে ব্যবহার করতে পারবেন। উদাহরণ হিসেবে বলা যায় আপনি মোবাইল এর বাটন প্রেস করে ইলেকট্রনিক যন্ত্রপাতি কন্ট্রোল করতে পারবেন। মাইক্রোকন্ট্রোলার এর সাথে ইন্টারফেস করতে পারবেন। এই সার্কিটটি তৈরি করার জন্য আমাদের যা যা লাগবে-
লাল এলইডি ৪ টি এবং সাদা বা অন্য কালারের এলইডি একটি। (লাল এলইডি বাতি ব্যবহার করতে হবে এমন নয়, আপনই ইচ্ছা করলে অন্য রঙ এর এলইডি ব্যবহার করতে পারবেন। তবে ৩ মিলি অথবা ৫ মিলিমিটার এর এলইডি হলে ভাল হবে)
Male Header (বাজারে Male Connector 40 Pin হিসেবে পরিচিত। আমরা ৪০ টার মধ্যে ৫ টা Header ব্যবহার করব)
Veroboard/Perfboard
স্টেরিও সকেট বা জ্যাক ১ টি (অপশনাল)
স্টেরিও পিন জ্যাক (অপশনাল)
স্টেরিও কেবল (অপশনাল)
নিম্নে সবগুলো পার্টসের বাস্তব ছবি দেয়াহলো-
ডিটিএমএফ প্রজেক্টের সকল পার্টসের বাস্তব চিত্র
1 এর 12
18-pin-ic-base
18-pin-ic-base
red-led
red-led
crystal
crystal
8870-ic
8870-ic
330-kilo-ohms-resistor
330-kilo-ohms-resistor
104-pf
104-pf
white-led
white-led
stereo-audio-input-jack
stereo-audio-input-jack
100k-resistor
100k-resistor
22pf-ceramic-capacitor
22pf-ceramic-capacitor
10uf-50v-electrolytic-capacitor
10uf-50v-electrolytic-capacitor
stereo-audio-cable
stereo-audio-cable
(বি:দ্র – যেসব জিনিস অপশনাল, সেসব জিনিস আপনি আপনার প্রয়োজন এবং পছন্দ অনুযায়ী ব্যবহার করতে পারবেন। Post টি পড়ে আশা করি এ বিষয়ে আরও তথ্য পাবেন)
ডায়াগ্রামে আমাদের প্রজেক্ট এর সবকিছুর মান লেখা আছে, বুঝতে যাতে অসুবিধা না হয় সেজন্য আপনাদের ডায়াগ্রামটি সহজ ভাবে ব্যাখ্যা করছি।
ডিটিএমএফ (DTMF) ডায়াগ্রামের বর্ণনাঃ
ডায়াগ্রামে আইসির পিন বাম দিক থেকে শুরু হয়েছে। ১, নাম্বার পিন এবং ৪ নং পিন শর্ট করা হয়েছে। ২ এবং ৩ নাম্বার পিন হচ্ছে সিগনাল ইনপুট পিন। ক্যাপাসিটর এর (+) পা দিয়ে সিগনাল ইনপুট করা হয়েছে। ইনপুটে দুইটি রেজিস্টর রয়েছে। উভয়ের মান ১০০ কিলো ওহম। ৫,৬,৯ নাম্বার পিন শর্ট করে গ্রাউন্ড বা পাওয়ার সাপ্লাই এর (-) এর সাথে কানেক্ট করা হয়েছে। ৭ এবং ৮ নাম্বার পিন এর মাঝে কালো চতুর্ভুজাকৃতি যে জিনিসটি আছে, সেটা ক্রিস্টাল অসিলেটর। যার মান 3.57 MHz। এর পোলারিটি বা (+/-) নেই। তাই যেভাবে লাগান, সমস্যা নেই। তবে ডায়াগ্রামে নির্দেশিত জায়গায় লাগাতে হবে। আর দুইটি ২২ pF মানের ক্যাপাসিটর লাগিয়ে তা গ্রাউন্ড এর সাথে সংযুক্ত করা হয়েছে। ১০,১৮ নাম্বার পিন শর্ট করা হয়েছে। এই দুটি পিন দিয়ে পাওয়ার সাপ্লাই করা হয়েছে সার্কিট এ। ১৬, ১৭ নাম্বার পিন এর মাঝে ৩৩০ কিলো ওহম এর রেজিস্টর লাগানো হয়েছে, যা একটি 100n সিরামিক ক্যাপাসিটর এর মাধ্যমে VCC বা 5v+ এর সাথে শর্ট করা হয়েছে।
আইসির ১১,১২,১৩,১৪,১৫ নাম্বার পিন হচ্ছে আউটপুট পিন। এই পিনগুলোর নাম যথাক্রমে Q1,Q2,Q3,Q4, STD যা আমরা ডেটাশিটে দেখেছি। যখন সার্কিট এ সিগনাল প্রবেশ করানো হবে তখন এই আউটপুট পিনগুলো এলইডি জ্বলা-নেভার মাধ্যমে আউটপুট দিবে। সার্কিট এ Male Header ব্যবহার করা হয়েছে যাতে এই আউটপুট কাজে লাগিয়ে ট্রানজিস্টর, রিলে ইত্যাদি এর মাধ্যমে সুইচিং বা যন্ত্রপাতি কন্ট্রোল করা যায়। আবার এই পিনের মাধ্যমে আপনি মাইক্রোকন্ট্রোলার এর সাথে ইন্টারফেস করতে পারবেন। সার্কিটটি আপনি ব্রেডবর্ড এ বানাতে পারেন। যদি Soldering না করতে চান তাহলে Veroboard বা Perfboard এ করতে পারেন। আর PCB তে করলে আরও ভাল হয়।
মেল হেডার লাগানোঃ
সার্কিট এ মেল হেডার লাগাবেন এলইডি বাতির আগে। সহজ কথায়, আউটপুট পিন থেকে Male HEADER তারপর LED আপনাদের সুবিধার্থে একটি ছবি দিয়ে দিলামঃ
সার্কিট এ ইনপুট ভোল্টেজ ৫ ভোল্ট। এখন পাওয়ার সাপ্লাই নিয়ে কিছু বলি। পাওয়ার সাপ্লাই হিসেবে মোবাইলের USB Charger ব্যবহার করতে পারেন। তাছাড়া 5V Adapter ও ব্যবহার করতে পারবেন। যদি আপনার কাছে এসব না থাকে তাহলে একটি ৯ অথবা ১২ ভোল্ট এর ট্রান্সফরমার ব্যবহার করে নিচের ডায়াগ্রাম ব্যবহার করে একটি ৫ ভল্ট এর পাওয়ার সাপ্লাই বানাতে পারেনঃ
সার্কিট বানানো শেষ হলে মাল্টিমিটার দিয়ে ভোল্ট মেপে শিওর হয়ে নিবেন যে ৫ ভোল্ট আছে কিনা। ৫ ভোল্ট পেলে সার্কিট এ ইনপুট দিয়ে রেগুলেটেড ভোল্টেজ মূল সার্কিট এ সাপ্লাই দিন। তারপর মোবাইল এর সাথে স্টেরিও পিন দিয়ে সার্কিট কানেক্ট করুন। কানেক্ট করার আগে শিওর হয়ে নিবেন মোবাইল সাইলেন্ট নয় এবং DTMF Tone Test করার জন্য ডায়ালার এ ডায়েল করে দেখবেন। ইনপুট দিয়ে ডায়ালার এ ডায়াল করলে দেখা যাবে এলইডি জ্বলা-নেভার মাধ্যমে আউটপুট দিচ্ছে।
আপনি ইচ্ছা করলে কল দিয়ে এই কাজটি করতে পারবেন। এর জন্য তখন দুইটি মোবাইল লাগবে এবং দুটি মোবাইলই যেন DTMF Tone তৈরি করে সেটা সিউর হতে হবে।
এই টেবিলে 1 দ্বারা আউটপুট অন এবং 0 দ্বারা আউটপুট অফ বুঝিয়েছে।
নোটঃ সার্কিটে প্রাপ্ত আউটপুট বাইনারি
আজ এটুকুই, আশা করি আপনারা সার্কিটটি বানাতে সফল হবেন। যদি কোন প্রশ্ন থাকে তাহলে আপনারা কমেন্ট এর মাধ্যমে জানাতে পারবেন, এছাড়াও আমাদের হেল্পডেস্ক তো রয়েছেই!!
সহজ কথায় মাইক্রোকন্ট্রোলার এবং এমবেডেড সিস্টেম (পর্ব – ২)
যাদের অলরেডি এমবেডেড সিস্টেম নিয়ে প্রাথমিক ধারনা আছে তারা অনুগ্রহ করে অপেক্ষা করুন অ্যাডভান্সড লেভেল এর পর্বগুলোর জন্য। আর যারা এলেমেনটারি লেভেল এ আছেন তাদের উদ্দেশ্যে বলছি – ‘এমবেডেড সিস্টেম খুব সহজ ও না আবার কঠিন ও না। শুধু দরকার ধৈর্য ধরে লেগে থাকা।’
শুরু করার আগে যা জানা প্রয়োজন
একজন ভালো এমবেডেড সিস্টেম ইঞ্জিনিয়ার এর মালটিডিসিপ্লিনারি দক্ষতা থাকা প্রয়োজন। দক্ষতার ক্ষেত্রগুলো হল –
সবার শেষের টা ‘তাত্ত্বিক জ্ঞানের এপ্লিকেশন সেন্স’ সবচেয়ে গুরুত্বপূর্ণ। শুধু এই জিনিসটা না থাকার কারনে অনেকেই এই ফিল্ড এ ভালো করতে পারে না। মাইক্রোকন্ট্রোলার হচ্ছে সিস্টেম ডেভেলপমেন্ট এর ক্ষেত্রে একটি শক্তিশালী টুল। একটা বাস্তব সমস্যার সমাধান কিভাবে হবে সেটা প্রথমে হিউম্যান ব্রেইন এই আসতে হবে। এরপর চিন্তা করতে হবে মাইক্রোকন্ট্রোলার’ নামক শক্তিশালী টুলকে প্রবলেম সলভিং এ কিভাবে ব্যবহার করবো ।
মাইক্রোকন্ট্রোলার Vs মাইক্রোপ্রসেসর
কাজের ধরনঃ
মাইক্রোকন্ট্রোলার ‘ডেডিকেটেড’ কাজের জন্য ব্যবহার করা হয়। যেমনঃ আপনার বাসার মাইক্রোওয়েভ ওভেন, ওয়াশিং মেশিন, এয়ার কনডিশনার বা রেফ্রিজারেটর এ মাইক্রোকন্ট্রোলার কিন্তু ওই কাজ ই করে থাকে যেটা তাকে প্রোগ্রামিং এর মাধ্যমে নির্দিষ্ট করে দেওয়া হয়। কিন্তু মাইক্রোপ্রসেসর ব্যবহার করা হয় জেনারেল পারপাস কাজের এর ক্ষেত্রে। মাইক্রোপ্রসেসর বেসড system এ আমরা আমাদের প্রয়োজন অনুযায়ী কাজ করে থাকি। আমাদের ল্যাপটপ বা সেলফোন মাইক্রোপ্রসেসর বেসড system এর সবচেয়ে বড় উদাহরন।
গাঠনিক অংশসমুহঃ
মাইক্রোপ্রসেসর এ CPU স্বতন্ত্র অংশ হিসেবে থাকে। RAM, ROM, I/O, TIMER এগুলোও আলাদাভাবে থাকে।মাইক্রোকন্ট্রোলার এ CPU, RAM, ROM, I/O, TIMER একটা আইসি বা চিপ এর মধ্যে থাকে।
সম্প্রসারনঃ
মাইক্রোকন্ট্রোলার এ নির্দিষ্ট ধারন ক্ষমতার RAM, ROM থাকে। অধিকাংশ ক্ষেত্রে এই ধারণক্ষমতা মাইক্রোপ্রসেসর বেসড system এর তুলনায় কম হয়ে থাকে। I/O পোর্ট এর সংখ্যাও নির্দিষ্ট। মাইক্রোপ্রসেসর বেসড system এর ক্ষেত্রে প্রয়োজন অনুযায়ী RAM ,ROM এর ধারন ক্ষমতা কমানো বাড়ানো যায়।
ব্যবহারঃ
মাইক্রোপ্রসেসর বেসড সিস্টেম এর তুলনায় কম খরচে, কম জায়গায়, কম পাওয়ার কনজাম্পশন করে এই ধরনের সিস্টেম ডেভেলপমেন্ট এর ক্ষেত্রে মাইক্রোকন্ট্রোলার ব্যবহার করা হয়।
একটি পিএলসি কে টিয়ার-ডাউন করলে ইনসাইডে মাইক্রোকন্ট্রোলার এর মতো একটা অংশ পাওয়া যাবে। আরও পাওয়া যাবে পাওয়ারসার্কিট এবং কিছু রিলে।
পিএলসি বেসড সিস্টেম তুলনামুলকভাবে সহজে এবং দ্রুত অপারেশন, কনফিগারেশন, system মডিফিকেশন করা যায়। এটা ইন্ডাস্ট্রিয়াল এক্সট্রিম পরিবেশের উপযোগী করে ডেভেলপ করা হয় যেখানে উচ্চ তাপমাত্রা, হিউমিডিটি এবং কম্পন বিদ্যমান। এটার নয়েজ ইমুউনিটি বেশি।
পিএলসি কে তুলনামুলকভাবে সহজে গ্রাফিক্যাল প্রোগ্রামিং ল্যাংগুয়েজ (ল্যাডার অথবা ফাংশনাল ব্লক) এর মাধ্যমে প্রোগ্রাম করা যায়।
মাইক্রোকন্ট্রোলার অভিজ্ঞ প্রকৌশলীর পক্ষে পিএলসি বেসড সিস্টেম নিয়ে কাজ করা তুলনামুলক সহজ হয়। কিন্তু শুধু পিএলসি ধারনা থাকলে মাইক্রোকন্ট্রোলার বা এমবেডেড সিস্টেম এর ডেপথ যাওয়া কঠিন। এমবেডেড সিস্টেম এর সার্কিট পর্যায়ে ডিজাইন, ইউজার ইনটারফেস এবং প্রোগ্রামিং প্রক্রিয়া পিএলসির তুলনায় জটিল। (চলবে)
বিঃদ্রঃ অনুমতি ছাড়া কেউ কপি করবেন না বা অন্য কোথাও পাবলিশ করবেন না ।
আমাদের ইলেক্ট্রনিক্স একটি স্বপ্নের যাত্রা। এক বছর আগে শুরু হওয়া এই যাত্রাতে আমরা তৈরী করতে পেরেছি নিজস্বতা। বাংলা ভাষায় ইলেক্ট্রনিক্স ও বিজ্ঞান চর্চার ক্ষেত্রে নতুন করে চিন্তার জায়গা আমাদের ইলেক্ট্রনিক্স তৈরী করতে পেরেছে। এই স্বপ্ন যাত্রায় আমরা মনে করি সবার অধিকার আছে সামিল হবার। আমরা তাই সাধারণ সদস্য হিসাবে তালিকাভুক্তির জন্য আগ্রহীদের কাছথেকে অনলাইনে আবেদন নিতে সচেষ্ট হয়েছি। আগ্রহীরা নীচের লিংকটি খুললেই পাবেন একটি সদস্য আবেদন ফরম। ফরমটি যথাযথ ভাবে পুর্ণ করে আমাদের কাছে পাঠিয়ে দিলেই আমরা যাচাই করে আপনার সদস্য অন্তর্ভুক্তির কথা আপনাকে জানিয়ে দেবো।
আমাদের লক্ষ্য বাংলা ভাষাতে ইলেক্ট্রনিক্সের চর্চাকে সবার মাঝে ছড়িয়ে দেওয়া। আমরা বিশ্বাস করি – “জ্ঞানই শক্তি যখন তা সবার জন্য উন্মুক্ত” এই বাণীতে। আপনি যদি মনে করেন এই স্বপ্ন যাত্রাতে আমাদের হাতে হাত রেখে এগিয়ে নিবেন আপনাকে এবং দেশকে তবে আসুন আমাদের সাথে।
প্রথমে লিংকটি খুলে সব ঘর পুর্ণ করে নীচের সাবমিট বাটনে ক্লিক করলেই আপনার আবেদন আমাদের হাতে আসবে। আমরা যাচাই করে বা আপনার সাথে যোগাযোগ করে আপনাকে জানাবো যথাসময়ে। সেই সাথে আমাদের সাইট www.amaderelectronics.com নিয়মিত দেখবার জন্য সকলের প্রতি আমন্ত্রণ রইলো।
সদস্য আবেদনের ফরমের লিংক: https://docs.google.com%2Fforms%2Fd%2Fe%2F1FAIpQLSc4afMzSZzmvcmrnohg1tsRiWHWYpIGEwWv139heDN4GtiEFA%2Fviewform%3Fc%3D0%26w%3D1
একটি সিস্টেম এ কি থাকে?
ইনপুট, প্রসেস এবং আউটপুট।
মানবদেহ হল একটি জটিল ও ইনটেলিজেন্ট সিস্টেম এর সবচেয়ে মানানসই উদাহরণ। আমরা প্রধানত চোখ, কান, ত্বক দিয়ে ইনপুট নেই। ব্রেইন দিয়ে প্রসেস করি। আর হাত, পা, মুখ দিয়ে আউটপুট দেই।
কিন্তু এর সাথে ইলেকট্রনিক্স বা প্রযুক্তির সম্পর্ক কি?
প্রযুক্তি জগতে সিস্টেম শব্দটি অহরহ ব্যবহার করা হয়। আধুনিক প্রযুক্তি যে সিস্টেম ছাড়া অচল সেটা হল এমবেডেড সিস্টেম।
এমবেডেড সিস্টেম এর কার্যপ্রণালী
এমবেডেড সিস্টেম হচ্ছে প্রায়োগিক ইলেকট্রনিক্স এর নবীন সংযোজন। এর আবির্ভাবের পূর্বে ইলেকট্রনিক্স সিস্টেম বা ইলেকট্রনিক্সসার্কিট কে ইনটেলিজেন্স বা বুদ্ধিমত্তা দেওয়া খুব কঠিন কাজ ছিল।
এটি এমন একটি ইনটেলিজেন্ট ইলেকট্রনিক্স সিস্টেম যা ইনপুট নিতে পারে, প্রসেস করতে পারে, আউটপুট দিতে পারে এবং প্রয়োজনে তথ্য সংরক্ষণ করতে পারে। Embedded System হল মাইক্রোকন্ট্রোলার ভিত্তিক ইলেকট্রনিক্স সিস্টেম যা ডেডিকেটেড কাজে নিয়োজিত থাকে। আমাদের চারদিকে এমবেডেড সিস্টেম এর অসংখ্য উদাহরণ ছড়িয়ে আছে। মাইক্রোওয়েভ ওভেন, ডিজিটাল ঘড়ি থেকে শুরু করে মোবাইল ফোন, ক্যামেরা, প্রিন্টার, ফটোকপি মেশিন, এ টি এম মেশিন, রোবট সবই Embedded System। এক কথায় বর্তমানে Embedded System ছাড়া যে কোনইলেকট্রনিক্স বা মেকাট্রনিক্স যন্ত্র পাওয়া দুর্লভ।
উদাহরণ হিসেবে নিচের চিত্রটিতে একটি ADSL মডেম দেখতে পাচ্ছেন। ছবিটি বড় করলে দেখতে পাবেন 4 নাম্বার কম্পোনেন্ট টি মডেম নিয়ন্ত্রণের মূল চালক যাকে আমরা মাইক্রোকন্ট্রোলার বলে থাকি। এবং 6 নাম্বার টি র্যাম ও 7 নাম্বার টি ফ্ল্যাশ মেমোরি, যা কিনা পরিপূর্ণ ভাবে এমবেডেড সিস্টেমের প্রকৃষ্ট উদাহরণ।
ADSL মডেম এমবেডেড সিস্টেমের একটি প্রকৃষ্ট উদাহরণ
এমবেডেড সিস্টেম এর প্রধান উপাদান হচ্ছে মাইক্রোকন্ট্রোলার যা হল একটি সিঙ্গেল চিপ কম্পিউটার। অর্থাৎ একটি ইনটিগ্রেটেড সার্কিট বা আইসি (IC) এর ভিতরে প্রসেসর, মেমোরি, ইনপুট পোর্ট, আউটপুট পোর্ট, টাইমার ইত্যাদি থাকে।
মাইক্রোকন্ট্রোলার বিভিন্ন কোম্পানি তৈরি করে যেমন ইন্টেল, টেক্সাস ইনস্ট্রুমেন্টস, মাইক্রোচিপ, এটমেল, ফুজিতসু, ফ্রীস্কেল ইত্যাদি। তবে প্রয়োজনীয় ডেভেলপমেন্ট টুলস এবং সফটওয়্যার এর সহজলভ্যতার কারনে বাংলাদেশে এটমেল (Atmel) এর এভিআর/এটমেগা (AVR/ATmega) সিরিজ এবং মাইক্রোচিপ(Microchip) এর পিআইসি(পিক – PIC)মাইক্রোকন্ট্রোলার বেশী জনপ্রিয়। (চলবে)
বিঃদ্রঃ অনুমতি ছাড়া কেউ কপি করবেন না বা অন্য কোথাও পাবলিশ করবেন না।
কিন্তু এই গ্রাউন্ড চিহ্নের মানে আমরা অনেকেই জানিনা। তাদের জন্যই আমার আজকের এই লেখার অবতারণা।
সার্কিট এ সাধারণত ৩ ধরণের গ্রাউন্ড সংযোগ ব্যবহার করে
১. আর্থিং বা আর্থইন/আর্থ-লিংক
২. কমন গ্রাউন্ড
৩. সিগনাল গ্রাউন্ড
আর্থিং বা আর্থইন/আর্থ-লিংক
পাওয়ার সাপ্লাই গুলো ফিল্টারিং করা হয় বড়বড় ক্যাপাসিটর দিয়ে তা আমরা জানি। কিন্তু অনেক ক্ষেত্রেই এই ফিল্টারিং খুব কার্যকর হয়না বিশেষত এম্পলিফায়ার বা আরো কিছু সেন্সিটিভ সার্কিট গুলোতে। কারন এই ফিল্টারড ডিসি তে অল্প পরিমান এসি রিপল হিসাবে মিশে থাকে। তা হয়ত সাধারন সার্কিট এর জন্য অল্প, কিন্তু এম্পলিফায়ার দিয়ে এটি শত গুণ বিবর্ধিত হয় স্পিকারে খুব খারাপ ভাবে শোনায়। তখন এই নয়েজ এর জন্য গান শোনা যায় না। একে বলে রিপল বা হাম। এই রিপল কমাতে তখন গ্রাউন্ড এর সাহায্য নেয়া হয় যা কিনা সার্কিট এর (-) অথবা গ্রাউন্ড থেকে একটা তার আর্থিং বা আর্থইন করে দেয়া হয়। তার ফলে ঐ অতিরিক্ত এসি গ্রাউন্ড বা মাটিতে চলে যায় তাই শব্দও পরিষ্কার শোনা যায়।
আর্থিং কি ও আর্থিং কেন ব্যবহার হয়ঃ
বিদ্যুতায়িত হবার হাত থেকে বাঁচবার জন্যই মূলত আর্থিং ব্যবহার করাহয়। লক্ষ্য করলে দেখবেন যে ফ্রিজ, কম্পিউটার, বড় মনিটর ইত্যাদি ডিভাইসের বডি তে হাত দিলে কিছু শক (electric shock) করে। এটি যেন কখনো মাত্রা ছাড়িয়ে ক্ষতির কারক না হতে পারে সেজন্য আর্থিং ব্যবহার করা শ্রেয়।
আবার, উচ্চ ক্ষমতার ডিভাইস যা কিনা এসি মেইন লাইনে চলে সেগুলো কখনো যেন শর্ট সার্কিট হয়ে আগুন না লাগে তার জন্যও আর্থিং বেশ ভূমিকা রাখে। যখনই শর্ট সার্কিট হয় তখনি অতিরিক্ত বিদ্যুৎ আর্থিং এর মাধ্যমে গ্রাউন্ডে চলেযায় আপরদিকে ফিউজ, কাট আউট কিংবা সার্কিট ব্রেকার বিদ্যুৎ সংযোগ বিচ্ছিন্ন করে অতিরিক্ত ক্ষতির হাত থেকে বাঁচায়।
এই গ্রাউন্ডকে আবার কমন গ্রাউন্ড ও বলে। এজন্য যে, এই গ্রাউন্ড এর সাপেক্ষেই সার্কিট এর বিভিন্ন স্থানের ভোল্টেজ মাপা হয়। প্রাথমিক ভাবে কোন সমস্যা নির্ণয়ের জন্য বা সার্কিট ঠিক মত কাজ করছে কিনা তা পরীক্ষা করবার জন্য। এছাড়াও বড় সিঙ্গেল সাপ্লাই ডায়াগ্রামে ছোট একটা পার্টস যেমনঃ ক্যাপাসিটর থেকে লম্বা লাইন টেনে (-v) তে সংযুক্ত করা অনেক ঝামেলার ব্যাপার হয়ে দাঁড়ায়। তখন ডায়াগ্রামে কমন গ্রাউন্ড চিহ্ন দিয়ে সংক্ষেপে বুঝানো হয়। সকল কমন গ্রাউন্ড এর সংযোগ (-v) তে যাবে যদি না সে সার্কিট স্প্লিট সাপ্লাই বিশিষ্ট হয়ে থাকে এবং যদি না ডায়াগ্রামে বিশেষ কিছু উল্লেখ করা থাকে। যেহেতু গ্রাউন্ডের সাপেক্ষে এটি কমন তাই এর অপর নাম কমন গ্রাউন্ড।
যেমন নিচের চিত্রে দেখতে পাচ্ছেন মোটর স্পিড কন্ট্রোলার সার্কিটডায়াগ্রাম। এতে অঙ্কিত সবগুলো গ্রাউন্ডকে পরস্পরের সাথে সংযুক্ত করে দিতেহবে। নয়ত সার্কিট কাজ করবে না। নিম্নের স্পিড কন্ট্রোলার সার্কিটে প্রদত্ত সুইচটি মোটর কে রিভার্স ও ফরোয়ার্ড করবার জন্য ব্যবহৃত হয়েছে।
সবগুলো কমন ground একসাথে যুক্ত থাকবে
কমন গ্রাউন্ড কে চেসিস গ্রাউন্ড ও বলে। চেসিস বলতে সাধারণত সার্কিট রাখবার বক্সকে বুঝায়। যাকিনা ব্যবহারকারি থেকে সার্কিট কে সুরক্ষা দেয় ও ব্যবহারকারীও বিদ্যুতায়িত হবার হাত থেকে বাঁচেন। এটি মেটাল কেসিং এর হলে বেশী ভালো কারণ এরফলে বাইরের নয়েজ যেমন ভেতরে ঢুকতে পারেনা তেমনি ভাবে ভেতরের নয়েজ ও বাইরে বের হতে পারে না। অনেকটা শিল্ড (Shield – বর্ম) এর মত কাজ করে। এই চেসিস কে কমন গ্রাউন্ডের সাথেই সংযুক্ত রাখাহয় (সাধারণত)। কারণঃ এরফলে নয়েজ দারুণ ভাবে হ্রাস পায়।
খুব সেন্সিটিভ সার্কিট যেমন টিভি এর আই, এফ (I.F) সেকশন কে দেখবেন পাতলা একটা মেটাল দিয়ে ঢেকে দেয়। এবং তারসাথে সংযুক্ত থাকে চেসিসের। মূলত এসি রিপল কমলেও এই সার্কিট গুলো এতই সেন্সিটিভ এবং জটিল যে সার্কিট এর আশেপাসে থাকা রেডিও ফ্রিকুয়েন্সি ইন্টারফেয়ারেন্স (RFI) এই সার্কিট এর ক্ষমতা কমিয়ে দেয়। তা যাতে না হয় তাই ঐ সার্কিট গুলো ঢেকে দিয়ে কমন গ্রাউন্ড এর সাথে জুড়ে দেয়া হয়।
উল্লেখ্য যে সাধারন সার্কিট গুলো তে কমন গ্রাউন্ড ই বেশি ব্যবহার করে।
সিগনাল গ্রাউন্ডঃ
সাধারণত এম্পলিফায়ারের ইনপুটে (যেকোনো এম্পলিফায়ারই হতে পারে যেমনঃ রেডিও এম্প, অডিও এম্প) সিগনাল দেয়াহয়। এবং এর খুব কাছেই থাকে একটি গ্রাউন্ড যার মাধ্যমে সার্কিট সম্পূর্ণ হতেপারে এবং সিগনাল আদান প্রদান হতেপারে। একেই মূলত সিগনাল গ্রাউন্ড বলে।
ধরুন আপনার কাছে একটি এম্পলিফায়ার আছে যার এম্পলিফাই করবার ক্ষমতা ১০০ গুণ। অর্থাৎ, এই এম্প এর ইনপুটে যদি ১ মিলি ভোল্ট দেয়াহয় তাহলে এর আউটপুটে ১০ ভোল্ট পাওয়া যাবে। এখন আমরা জানি যে সার্কিটের বিভিন্ন অংশের ভোল্টেজ ড্রপ হয়। তা খুবই নগন্য হলেও বেশ গুরুত্বপূর্ণ এম্প সার্কিট গুলোর জন্য। কারণ সার্কিটের ভিন্ন প্রান্তে অবস্থিত পাওয়ার সাপ্লাই গ্রাউন্ডের থেকে সিগনাল গ্রাউন্ড পয়েন্টে আসতে আসতে সেই ভোল্টেজ ড্রপ ০.০১ ভোল্ট হতে পারে। কিন্তু এটিই ১০০ গুণ বিবর্ধিত হয়ে উক্ত এম্পলিফায়ারের আউটপুটে ১ ভোল্ট পরিমাণে হয়ে যেতে পারে যার ফলে আউটপুটে অবাঞ্ছিত নয়েজের সৃষ্টি হয়।
নোটঃ অবশ্যই সিগনাল গ্রাউন্ড কে পাওয়ার গ্রাউন্ড থেকে দূরে রাখবেন
গ্রাউন্ড লুপঃ
আমরা এতক্ষন গ্রাউন্ডের সুবিধা কি তা জানলাম। কিন্তু এই গ্রাউন্ডের কারণেই যে নয়েজ তৈরি হতে পারে তা এখন বলছি। বিশ্বাস না হলেও এটিই সত্যি। একে বলে গ্রাউন্ড লুপ। এরফলে এম্পলিফায়ারের হাম কমবার পরিবর্তে বেড়ে যায়।
মনেকরুন আপনার কাছে একটি প্রিএম্পলিফায়ার ও আলাদা একটি এম্পলিফায়ার সার্কিট আছে। আপনি করলেন কি নয়েজ কমানোর জন্য প্রিএম্পলিফায়ার এ একটি গ্রাউন্ড দিলেন আবার এম্পলিফায়ার সার্কিট কেও তাতেও আলাদা ভাবে গ্রাউন্ড দিলেন। এরপর এই প্রিএম্পলিফায়ার আর এম্পলিফায়ারের মাঝে সংযোগ দিলেন। আপনার যুক্তি ছিল প্রিএম্পলিফায়ার কে গ্রাউন্ড করলে নয়েজ কমবে। আবার আলাদা ভাবে যদি এম্পলিফায়ার কেও গ্রাউন্ড করি তাহলে কোনো নয়েজই থাকবে না! এখানেই ভুল করছেন। বরং এই ভিন্নভিন্ন গ্রাউন্ডের কারণে আরো নয়েজবেড়ে যাবে। বস্তুতপক্ষে সম্পূর্ণ সার্কিটে গ্রাউন্ড একটিই ব্যবহার করতে হয়। ভিন্নভিন্ন গ্রাউন্ড ব্যবহার করলে তাতে লুপের সৃষ্টি হয়ে হিতে বিপরীত হয়।
ground loop
গ্রাউন্ড লুপ এড়াতে সতর্কতাঃ
আগেই বলেছি সম্পূর্ন সার্কিটে একটিই গ্রাউন্ড ব্যবহার করা নিয়ম। অর্থাৎ, এই সকেট থেকে একটা গ্রাউন্ড নিলাম আবার অন্য সকেট থেকে আরেকটি গ্রাউন্ড নিলাম -এমন করা যাবে না। একান্তই নিতে হলে যে কোনো গ্রাউন্ড লিংক থেকে সার্কিটে খুব নিম্নমানের রেজিস্টর দ্বারা সংযুক্ত করতে হবে, যেমনঃ ৬ ওহম, ১০ ওহম প্রভৃতি।
প্রকৃতপক্ষে এই লুপ অত্যন্ত যন্ত্রণাদায়ক এবং বিভ্রান্তিকর ও বটে। এবং এটিনিয়ে লিখতে গেলে বিশাল অধ্যায় রচনা সম্ভব। এটি দূর করবার জন্য ভিন্নভিন্ন পন্থাও উল্লেখযোগ্য। সামনে হয়ত কোনো আসরে এনিয়ে বলবো।
কিভাবে বুঝবো আমার সার্কিটে গ্রাউন্ড কোনটি?
এই প্রশ্নটি নতুনদের জন্য খুবই স্বাভাবিক। আর তার উত্তর হচ্ছে- ভালোভাবে সার্কিট পর্যবেক্ষন করে বোঝা সম্ভব সার্কিটে কেমন গ্রাউন্ড ব্যবহার করা হয়েছে। সহজ কিছু টিপস হচ্ছে-
১। যদি এম্পলিফায়ার বা বিশেষ ধরনের সূক্ষ্ণ কিছু নাহয় তাহলে কমন গ্রাউন্ড ব্যবহার করাই শ্রেয়
২। এম্পলিফায়ার এ নয়েজ খুব বেশী থাকলে এম্পলিফায়ার সার্কিটের গ্রাউন্ড থেকে একটি আর্থিং দেয়া শ্রেয়। একই সাথে এম্পলিফায়ার এর ফিল্টারিং বেশ ভালো ভাবে করতে হবে। প্রয়োজনে পাই ফিল্টার (Pi Filter) বা টি ফিল্টার (T Filter) ও ব্যবহার করা উচিৎ।
৩। সিগনাল গ্রাউন্ড কে চেনার সহজ উপায় হচ্ছে এম্প সার্কিট। অর্থাৎ আপনার সার্কিট যদি এম্পলিফায়ার হয় তাহলে এর ইনপুটে থাকা গ্রাউন্ড টি নির্ঘাত সিগনাল গ্রাউন্ড।
আশাকরি আমার এই লেখাটির মাধ্যমে গ্রাউন্ডিং এর ব্যাসিক কনসেপ্ট বুঝতে পেরেছেন। তবু কোনো প্রশ্ন থাকলে নিঃসংকোচে করতে পারেন কমেন্টে। আপনার শেয়ার কমেন্ট আমাকে অনেক বেশী অনুপ্রাণিত করবে। ভালো থাকবেন। সামনে আবারো কনো জটিল ইলেকট্রনিক্স রহস্য নিয়ে আপনাদের সামনে হাজির হবো।
আরডুইনো… এমন একটি জিনিসের নাম, এমন কিছু নেই যে তা দিয়ে করা যায় না। আপনি শুধু প্রোগ্রাম করুন, ব্যাস তার পর যা করার এটিই আপনাকে করে দিবে। আমরা যারা হবিস্ট আছি তাদের মধ্যে নতুনদের কাছে এটি যেন আলাদিনের চেরাগ। মানে যখন যা ইচ্ছা এর দ্বারা তাই পাওয়া সম্ভব। শুধু এটির সঠিক ব্যবহার জানতে হবে। ইতিমধ্যে আশা করি আমাদের ইলেকট্রনিক্স সাইটের মাধ্যমে আপনারা আরডুইনো এর বেসিক বিষয় গুলো জানতে পেরেছেন।তার পরেও আমি সংক্ষেপে আবার আলোচনা করছি যা এই প্রজেক্টটি করতে ব্যবহৃত হবে। আশা করি সবাই সাথে থাকবেন।তবে চলুন শুরু করা যাক।
আরডুইনো কি?
এটি এমন একটি ওপেন সোর্স প্লাটফর্ম যার মাধ্যমে যেকোন প্রোগ্রামকে আউটপুটে কোন ডিভাইসের মাধ্যমে রূপান্তর করা যায়। অন্যভাবে বললে আরডুইনো হচ্ছে একটি ডেভেলপমেন্ট আরডুইনো বোর্ড। আর আরডুইনো প্রোগ্রামিন বা কোড লিখবার জন্য যে অ্যাপ্লিকেশনটি ব্যবহার করা হয় তার নাম “আরডুইনো আই ডি ই – Arduino IDE”। এটি একটি ফ্রি/ওপেন সোর্স প্ল্যাটফর্ম। এখানে কোড লিখে সেটা আরডুইনো বোর্ডে আপলোড করলে তার পি ডব্লিউ এম পিন (PWM pin)এবং ডিজিটাল পিন (Digital pin)দ্বারা আউটপুটে হাই/লো সহ ০-২৫৫ পর্যন্ত যেকোন মানের আউটপুট পাওয়া সম্ভব। বেশ কয়েকটি ল্যাঙ্গুয়েজে এই কোড গুলো লিখা সম্ভব।যেমনঃ C, C++, Python ইত্যাদি।
আজকের আরডুইনো প্রজেক্টঃ
আজকের আলোচ্য বিষয় হলো- আমরা অনেক সময় বিয়ে বাড়িতে চলন্ত লাইট বা বড় কোন কোম্পানির, অফিসের সামনে এল ই ডি ব্যানার দেখতে পাই যেগুলো কি না সচল। অর্থাৎ এক পাশ থেকে আরেক পাশে মুভ করছে। কিন্তু কিভাবে তা সম্ভব? হ্যা তবে চলুন আজকে আপনাকে সাহায্য করব আপনার কোন অনুষ্ঠানে আপনার বানানো প্রোজেক্ট এ কাজ করতে।
সাইড নোটঃ এখানে শুধু দেখালাম গুটি কয়েক এল ই ডি নিয়ে কাজ করতে। ইচ্ছা করলে এর চেয়ে বেশিও ব্যবহার করতে পারবেন কোড এর পরিবর্তনের মাধ্যমে।
আমি এখানে পুরো প্রজেক্টের পাওয়ার দেওয়ার জন্য ডিরেক্ট ইউ এস বি ক্যাবল ব্যবহার করেছি। আর এই ইউ এস বি ক্যাবল দিয়ে ৫ ভোল্ট আউটপুট পাওয়া যায়। আপনারা চাইলে এক্সট্রা পাওয়ার ব্যবহার করতে পারেন। সেক্ষেত্রে আপনাদের খেয়াল রাখতে হবে আরডুইনোর পাওয়ার ইনপুট কোন ভাবেই যেন ৩৬ ভোল্টের বেশি না হয়। কারন আরডুইনোর স্ট্যান্ডার্ড পাওয়ার ইনপুট হল ৭-৩৬ ভোল্ট। এই পাওয়ার এর রেঞ্জ রাখলে আরডুইনো সঠিক ও সফল ভাবে কাজ করতে পারে।
কাজের ধাপঃ
সার্কিটে যেভাবে কানেকশন দেওয়া আছে সেভাবেই কানেকশন দিলে কাজ করবে। কারণ উক্ত সার্কিটটি একাধিকবার টেস্ট করা এবং বিশেষ ভাবে খেয়াল রাখতে হবে যেন একটির সঙ্গে অন্যটি লেগে না যায়। এতে আরডুইনোর ক্ষতি হওয়ার সম্ভাবনা থাকে। নিচে ডায়াগ্রাম টি দেখি-
প্রথমে আরডুইনো আই ডি ই এপ্লিকেশনে গিয়ে নিউ প্রজেক্ট ওপেন করুন। তারপর সোজা এই কলাম এর নিচে যে কোডটি এটাচ করা আছে সেটা কপি করে নিউ প্রজক্টে গিয়ে পেস্ট করুন। তার পর ভেরিফাই বাটন চাপুন। এতে ভেরিফাই কমপ্লিট ডায়ালগ দেখাবে।
ভেরিফাই বাটন চাপতে হবে
তারপর উপরের ডায়াগ্রামে দেখানো উপায়ে আপনার আরডুইনোটি কানেক্ট করে এটি কত নাম্বার কম পোর্ট (Com Port) এ কানেক্ট আছে সেটি দেখুন। তার পর আই ডি ই তে গিয়ে কম পোর্ট সিলেক্ট করে আপনি যে বোর্ড নিয়ে কাজ করছেন তা সিলেক্ট করুন। উদাহরনঃ আমি এখানে আরডুইনো উনো নিয়ে কাজ করেছি যা COM17 হিসাবে দেখাচ্ছে। তাই আমি আরডুইনো উনো কেই সিলেক্ট করেছি।
আর্ডুইনো কত নাম্বার COM Port এ কানেক্টেড
তারপর আপলোড বাটনে ক্লিক করে কোডটি বোর্ডে আপলোড করুন। এবার বোর্ড আনপ্লাগ করে ডায়াগ্রাম অনুযায়ী কানেকশন দিয়ে পাওয়ার সাপ্লাই দিন। প্রয়োজনে একবার রিসেট বাটন চেপে পুরো বোর্ডটিকে একবার রিসেট করে নিন। ব্যাস এবার উপভোগ করুন আপনার বানানো প্রজেক্ট টিকে।
বিয়ে বাড়িতে বা বিভিন্ন অনুষ্ঠানে,পার্টিতে এটি ব্যবহার করা হয় প্রচুর ভাবে। ইদানিং দামি কিছু গাড়িতেও সাজ সজ্জার জন্য এগুলো ব্যবহৃত হচ্ছে। তাছাড়াও যেকোন দোকান, ইন্ডাস্ট্রি, অফিস এও আপনার পছন্দ মত এটা সাজাতে পারেন। ঘরের সৌন্দর্য বর্ধনের ক্ষেত্রেও এটি বিশেষ ভূমিকা রাখে বলে মনেকরি। নিচে আরডুইনো দিয়ে তৈরি বিভিন্ন এলইডি প্রজেক্টের চিত্র –
এলইডি দিয়ে বিভিন্ন মন মাতানো ডিজাইন ও প্রজেক্ট আইডিয়া
1 এর 4
সুন্দর রংবেরং এর এলইডি দিয়ে ঘরের দেয়াল কে সাজাতে পারেন
সুন্দর রংবেরং এর এলইডি দিয়ে ঘরের দেয়াল কে সাজাতে পারেন
বিভিন্ন প্রকার রঙের এল ই ডি ব্যবহার করে এর সৌন্দর্য কে আরও ফুটিয়ে তোলা সম্ভব। তাছাড়াও বাজারে কিছু হাই পাওয়ার এল ই ডি পাওয়া যায় সেগুলো লাগালে আরও ভাল ফল পাওয়া সম্ভব। আর আসল বিষয়টা হলো ক্রিয়েটিভিটি। এই ছোট্ট খেলনার মত জিনিসটাকেও অনেক বড় কিছুতে রূপান্তর করা সম্ভব। কিন্তু সেটার জন্য শুধু একটু মাথা খাটাতে হবে। প্রসেস টা আমি বলে দিলাম, বাকি টা আপনাদের দায়িত্ব।
অসুবিধা ও দূরীকরণঃ
প্রথমেই প্রোগ্রামের ব্যাপারে বলি। এখানে কম পোর্ট (Com Port) সিলেক্ট করা খুব গুরুত্বপূর্ণ একটি বিষয়। যদি সঠিক ভাবে সিলেক্ট না করতে পারা যায় তাহলে কোড কোনভাবেই বোর্ডে আপলোড দেওয়ার উপায় নেই। তাই এই বিষয়টিকে খুব গুরুত্ব সহকারে দেখা উচিত। তার পরে আপনার এক্সটারনাল পাওয়ার সাপ্লাই টা ভালোভাবে চেক করে দেখুব যে সব কিছু ঠিক ঠাক আছে কিনা। আর সাথে কানেকশন গুলাও আবার চেককরে দেখুন যে কোন লুজ কানেকশন আছে কি না, থাকলে তা ঠিক করুন। এর বাইরে আর তেমন কোন সমস্যা থাকার কথা না। এটি খুব ছোট্ট একটি প্রজেক্ট। তাই আশা করি সবাই সফল ভাবে সম্পন্ন করতে পারবেন, ইন শাহ আল্লাহ।
//copyright by Ashiqur Rahman
int LED1=2;
int LED2=3;
int LED3=4;
int LED4=5;
int LED5=6;
int LED6=7;
int LED7=8;
int LED8=9;
void setup()
{
pinMode(2,OUTPUT);
pinMode(3,OUTPUT);
pinMode(4,OUTPUT);
pinMode(5,OUTPUT);
pinMode(6,OUTPUT);
pinMode(7,OUTPUT);
pinMode(8,OUTPUT);
pinMode(9,OUTPUT);
}
void loop()
{
digitalWrite(2,HIGH);
delay(500);
digitalWrite(2,LOW);
delay(500);
digitalWrite(3,HIGH);
delay(500);
digitalWrite(3,LOW);
delay(500);
digitalWrite(4,HIGH);
delay(500);
digitalWrite(4,LOW);
delay(500);
digitalWrite(5,HIGH);
delay(500);
digitalWrite(5,LOW);
delay(500);
digitalWrite(6,HIGH);
delay(500);
digitalWrite(6,LOW);
delay(500);
digitalWrite(7,HIGH);
delay(500);
digitalWrite(7,LOW);
delay(500);
//copyright by Ashiqur Rahman
digitalWrite(8,HIGH);
delay(500);
digitalWrite(8,LOW);
delay(500);
digitalWrite(9,HIGH);
delay(500);
digitalWrite(9,LOW);
delay(500);
}
এই কোডিং কে ভিন্নভাবে করে এর আউটপুটে সংযুক্ত এল ই ডি এর জ্বলবার হার, লয়, ছন্দ কে পরিবর্তন করা সম্ভব। যেমন বিখ্যাত নাইট রাইডার (Knight Rider) গাড়ির মত এল ই ডি একবার এদিক থেকে ওদিকে আবার ওদিক থেকে এদিকে জ্বলা। কিংবা র্যান্ডম নাম্বার জেনারেট করে তার মাধ্যমে এল ই ডি কে র্যান্ডম ভাবে জ্বালানো নেভানো থেকে শুরু করে কল্পনায় যা আসে তাই করা সম্ভব। কাজেই আজই ছুটিয়ে দিন কল্পনার ঘোড়াকে লাগামহীন।
সমাপ্তিঃ
আজ এতটুকুই। আমার অন্যান্য লেখা পড়তে চাইলে নিচে দেখুন তার লিঙ্ক দেওয়া আছে। ভাল লাগলে শেয়ার ও কমেন্ট করতে অবশ্যই ভুলবেন না। আপনার শেয়ার লাইক কমেন্ট আমাদের কে আরো অনুপ্রাণিত করে নতুন লেখার জন্য। আর অবশ্যই আপনার যেকোন সমস্যার কথা আমাদের জানাতে পারেন যেকোন সময়। আমাদের স্পেশালিস্ট রা সব সময় আপনাদের সাহায্য করার জন্য প্রস্তুত আছেন। ফেসবুকে আমাদের পেজ আছে সেখানেও আপনারা কোন প্রকার সমস্যা বা প্রশ্নের কথা তুলে ধরতে পারেন কিংবা আমাদের প্রশ্ন ও উত্তর বিভাগেও করতে পারেন। সামনে আরও মজার লেখা নিয়ে আসব অবশ্যই, দোয়া করবেন। আর কথা বাড়িয়ে কাজ নেই। টাটা, বাইবাই, খোদা হাফেজ। টেক কেয়ার।
বাই দ্যা ওয়ে, ধন্যবাদ রাইয়ান ভাই ও সবাইকে আমার লেখা কষ্টকরে দীর্ঘ সময় নিয়ে পড়বার জন্য।
ওয়ারলেস টেকনোলজি তে যোগাযোগের জন্য ইদানীংকাল ব্লুটুথ খুব উল্লেখযোগ্য ভূমিকা রাখছে। স্বল্প দূরুত্বে যোগাযোগের জন্য এই টেকনোলজি খুবই জনপ্রিয় একটি মাধ্যম। ব্লুটুথ বর্তমানকালে সবচেয়ে বেশি ব্যবহার হচ্ছে মোবাইল ও স্মার্টফোনে। এছাড়াও ডেক্সটপ, ল্যাপটপ কম্পিউটার, পিডিএ, ডিজিটাল ক্যামেরা, স্ক্যানার, প্রিন্টার, হেডফোন,সহ বিভিন্ন ক্ষেত্রেই এর ব্যবহার প্রচুর পরিমাণে পরিলক্ষিত হয়। ইদানীংকাল ব্লুটুথ ইয়ারফোন, ব্লুটুথ স্পিকার এমনকি অধুনা জনপ্রিয় ডিএসএলআর – DSLR camera তেও এর উল্লেখযোগ্য ব্যবহার আছে।
ব্লুটুথ ইয়ারফোনব্লুটুথ হেডফোনইনফ্রারেড দিয়ে বিভিন্ন ডিভাইসের আন্তঃযোগাযোগ
ইতোপূর্বে আবিষ্কৃত ইনফ্রারেড (Infrared – অবলোহিত রশ্মি) একই উদ্দেশ্য নিয়ে কাজ করত। কিন্তু তাতে ডাটা ট্রান্সফারে কিছু অসুবিধা ছিল। খুব স্বল্প দূরুত্বে কাজ করতে পারে ইনফ্রারেড। এছাড়া দুটি ইনফ্রারেড ডিভাইসের মধ্যে কোন বাঁধা থাকলে আর ডাটা ট্রান্সফার করতে পারেনা। টেলিভিশন রিমোটে এ ব্যাপারটি হয়ে থাকে। রিমোট এর সামনে যদি কোন কিছু থাকে তাহলে আর ডাটা ট্রান্সফার করতে পারে না। তখন রিমোট ও আর কাজ করে না।
ব্লটুথ এ ধরনের সকল প্রকার সীমাবদ্ধতা দূর করতে সক্ষম হয়। কারণ এই প্রযুক্তি রেডিও ওয়েভের উপর নির্ভর করে। ফলে এর সামনে দেয়াল বা ভিন্ন কিছু থাকলেও যোগাযোগের কোন বিঘ্ন ঘটেনা। খুব সুন্দরভাবেই ডাটা ট্রান্সফার করতে পারে। এছাড়া এটা ২.৪ গিগাহার্জ কম্পাঙ্কে কাজ করে। ফলে সকল ব্লুটুথ ডিভাইস প্রত্যেকটি প্রত্যেককে সাপোর্ট করে। কিন্তু এর সীমাবদ্ধতা হল, উচ্চকম্পাঙ্কের কারনে এটি মাত্র ৩০ ফিট অঞ্চল পর্যন্ত ডাটা ট্রান্সফার করতে পারে। তবে দৈনন্দিন সকল কাজের জন্য এই দূরত্ব যথেষ্ঠ।
ব্লুটুথ নামটি এলো কোথা থেকে?
অনেকের মনেই হয়ত এই প্রশ্নটি জেগেছে। আশ্চর্য জনক হলেও এই নামটি এসেছে এক সময়ের ডেনমার্কের ভাইকিং রাজা হেরাল্ড ব্লুটুথ(Harald Bluetooth) এর নামানুসারে। ৯৫৮ থেকে ৯৮৬ খ্রিস্টাব্দে ডেনমার্কের ভাইকিং রাজা ছিলেন হেরাল্ড ব্লুটুথ। ডেনমার্ক এবং নরওয়ের কিছু অংশকে একত্র করে একটি দেশের আওতায় আনতে পেরেছিলেন তিনি।
বিগত শতকের ৯০ দশকে যোগাযোগ স্থাপনকারী একটি টেকনোলজি এর প্রয়োজন হয়ে পরেছিল। বিভিন্ন সংস্থা এগিয়ে আসে কাঙ্ক্ষিত বস্তুটি তৈরি করতে। তাদের মধ্যে বিশ্ববিখ্যাত ইন্টেল, নোকিয়া, এরিকসন ও ছিল। কিন্তু তারা সবাই-ই আলাদা আলাদা ভাগে বিভক্ত হয়ে কাজ করছিল। এই বিভক্ত হয়ে, সকলে পৃথকভাবে চেষ্টা করার মধ্যে অশনিসংকেত দেখেছিলেন অনেকে। বিশেষত জিম কার্ডাখ। ভিন্নভিন্ন স্ট্যান্ডার্ড, প্রটোকলের ফলে কোম্পানি গুলোর মাঝে রেষারেষি যেমন বৃদ্ধি পাচ্ছিল তেমনি জটিলতার মাত্রা যাচ্ছিল ছাড়িয়ে। যে কয়টি সংস্থা আদাজল খেয়ে বাজারে নেমেছিল, তাদের একত্র করার উদ্যোগটা জিম কার্ডাখ নিয়েছিলেন। অনেকটা সেই ভাইকিং রাজা হেরাল্ড ব্লুটুথের ভূমিকায়। প্রতিযোগী সবপক্ষকে একত্র করার কাজটা বিগতযুগে হেরাল্ডই করে দেখিয়েছিলেন! আর গত ৯০-এর দশকে কার্ডাখ।
এ টেকনোলজি আমাদের জীবনকে করেছে স্বাচ্ছন্দময়। খুব সহজেই ফোনের কল রিসিভ করা থেক শুরু করে ওয়ারেলস কিবোর্ড, মাউস সহ অনেক কিছুই ব্যবহার করতে পারি। কানে ব্লুটুথ ইয়ারফোন লাগিয়ে ব্যস্ত জানজটে বসে গানের মাঝে হারিয়ে থাকতে পারি, কিংবা প্রিয়জনের সাথে প্রিয় কথায় হতে পারি বিলীন। তা হয়ত সম্ভব হতোনা এমন কিছু স্বেচ্ছাত্যাগী মানুষ উদ্যোগী না হলে।
মিডি (MIDI) শব্দের পূর্ণরূপ হচ্ছে Musical Instrument Digital Interface। অর্থাৎ বিভিন্ন বাদ্যযন্ত্র কে কম্পিউটারের সাথে ডিজিটাল ভাবে ইন্টারফেস করানোর একটি পদ্ধতি। এটি একটি প্রটোকল। তবে মিডি প্রটোকলে শব্দ পাঠানো হয়না। খালি Note 30 off, Note 55 On, Note 30 on/Pitch 129 এধরণের মেসেজ পাঠানো হয়। কম্পিউটারে যে D.A.W (Digital Audio Workplace) সফটওয়্যার থাকে সেটা এই মেসেজগুলো পড়ে ওই কমান্ডগুলো ফলো করে।
মিডি (MIDI) কিভাবে কাজ করে?
আমরা জানি যে, শব্দ হচ্ছে বিভিন্ন রকম ফ্রিকুয়েন্সির সমষ্ঠি। বাঁশি, গিটার, বেহালা, তবলা থেকে শুরু করে যে কোনো বাদ্যযন্ত্রের শব্দকে কৃত্রিম ভাবে উৎপন্ন করা সম্ভব যদি উক্ত যন্ত্রের মত করে শব্দ উৎপন্ন করা যায়। মূলত এ ভিত্তিতেই মিডি ডিভাইস ও বাদ্যযন্ত্র গুলো কাজ করে।
এখন অনেকেই ভাবতে পারেন যে কেন এই কৃত্রিমতা! ধরুন আপনি গিটার, পিয়ানো, ড্রাম, বিভিন্ন রকম বাঁশি বাজাতে পারেন। এখন প্রতিটি এমন জিনিস আলাদা আলাদা ভাবে কিনতে গেলে কত টাকা লাগবে ভেবে দেখুন!! জায়গাও প্রচুর লাগবে সেসমস্ত জিনিস কে রাখতে। কিন্তু এই সবগুলো বাদ্যযন্ত্রকে যদি একটা ছোট বক্সের মধ্যে ঢুকিয়ে ফেলা যায় তাহলে জায়গা যেমন বাঁচে তেমনি বহন করতেও সুবিধা হয়। এজন্য আধুনিক সব মিউজিক সাধক রা মিডি কিবোর্ডের প্রতি আস্থাশীল, মূলত এ কারনেই।
নিচের চিত্রে দেখুন মিজিজিশিয়ান তার স্টুডিও তে মিডি ড্রাম প্যাড বাজাচ্ছেন। একই সাথে তা কম্পিউটারে রেকর্ড করছেন এই মিউজিক কে পরবর্তীতে এডিট করবার জন্য-
মিউজিশিয়ান তার স্টুডিয়োতে মিডি ড্রাম প্যাড বাজাচ্ছেন
মিউজিক এর কাজ করা হয় যেসব সফটওয়্যার দিয়ে সেগুলোকেই D.A.W বলে। এরকম কয়েকটি সফটওয়্যার হচ্ছে, Reason, FL (Fruity Loops) Studio, Ableton, Logic Pro X প্রভৃতি। MIDI ইন্সট্রুমেন্ট বিভিন্ন রকমের আছে। যেমনঃ MIDI কি বোর্ড, MIDI সিন্থেসাইজার, MIDI ড্রাম প্যাড ইত্যাদি। এর মধ্যে MIDI কিবোর্ড দিয়ে কম্পিউটারে সব ইন্সট্রুমেন্টই বাজানো যায় বলে এটি খুবই জনপ্রিয়।
কম্পিউটারের সাথে MIDI ডিভাইস যেভাবে সংযুক্ত থাকে
যেসব গানের মিউজিক বা, বাজনা পুরোটাই সফটওয়্যার এ তৈরি করা হয় তার পুরোটাই আসলে এধরণের MIDI মেসেজ এর সমষ্টি। সফটওয়ারে এই মেসেজগুলো পরপর প্লে করায় যে মিউজিক সৃষ্টি হয়, সেটিই রেকর্ড করে mp3, WAV ইত্যাদি অডিও ফরম্যাটে নেয়া হয়। আপনার যদি একটি মিডি ডিভাইস (ইন্সট্রুমেন্ট) থাকে, তাহলে আপনি ইচ্ছা করলে ওই একটি ডিভাইস দিয়েই কম্পিউটারে বিভিন্ন বাদ্যযন্ত্র বাজিয়ে নিজের মিউজিক তৈরি করে পারেন। কিন্তু আমাদের দেশে MIDI ডিভাইস বলতে শুধুমাত্র মিডি কিবোর্ডই পাওয়া যায়। এবং এই কিবোর্ডগুলোর দামও অনেক, শুরুই হয় ১২০০০ টাকা থেকে। আপনি যদি শুধুমাত্র শখের বশে মাঝেমাঝে মিউজিক বানাতে চান, তাহলে কিবোর্ড কিনে অযথা ফেলে রাখতে হবে।
তবে অনেক সফটওয়ারেই আরেকটি বিশেষ সুবিধা রয়েছে, আপনি ইচ্ছা করলে আপনার পিসি কিবোর্ড দিয়েই MIDI কিবোর্ড এর কাজ চালাতে পারবেন। আমি FL Studio ব্যবহার করি, এটিতে উক্ত সুবিধাটি আছে। আবার আপনি Arduino, বেসিক একটা সার্কিট আর কয়েকটা সফটওয়্যার এর সাহায্যে নিজেই নিজের মিডি কিবোর্ড বানিয়ে নিতে পারেন, যার আনুমানিক খরচ পড়বে ৪০ টাকা থেকে ৪০০ টাকার মধ্যে (Arduino বাদে)। আপাতত মিডি কি আমরা তা জানলাম। ভবিষ্যতে Arduino দিয়ে কিভাবে মিডি কিবোর্ড বানানো যায় তা নিয়ে লিখব। ভালো থাকুন, সাথেই থাকুন। শুভ কামনা।
ইলেকট্রিক্যাল পাওয়ার সিস্টেম এর গতদিনের বাড়ির কাজ ছিলঃ একটি সিস্টেম ২ টি জেনারেটর দিয়ে গঠিত। এর একটি, ১টি reactor দ্বারা ভূমির সাথে যুক্ত। অন্যটি resistor দ্বারা একটি bus এর মাধ্যমে step up transformer সহযোগে transmission line এর সাথে যুক্ত। একটি মোটর অপর প্রান্ত থেকে একটি bus এর মাধ্যমে step down transformer এর মাধ্যমে transmission line এর সাথে যুক্ত। মটরটি resistor দ্বারা ভূমির সাথে যুক্ত।
আজ আমরা শিখব reactance diagram আঁকা। আসুন দেখে নেই কিছু symbol যা দিয়ে সহজেই single line diagram থেকে reactance diagram একে ফেলতে পারব। সবাই ১ম পোস্টের সমস্যা টা দেখুন। আমরা এটা সলভ করব। সকলের সুবিধার্থে আবার দিলাম চিত্রখানা।
Reactance diagram এর জন্য ব্যবহৃত symbols:
Reactance diagram এ ব্যবহৃত symbol
এবার সব সিরিয়াল মত যোগ করি। খুব সহজ। আচ্ছা বর্ননা করে দিচ্ছি। চিত্রে দেখুন প্রথমে কি আছে? জেনারেটর। তাহলে প্রথমে জেনারেটর এর সিম্বল দিব। জেনারেটরসিম্বল উপরের ছকে দেখুন, ঠিক এমনঃ
সর্বশেষে লোড। লোড কিন্তু দুই প্রকার। সিম্বল উপরের ছকে দেখুন, ঠিক এমনঃ
১. স্ট্যাটিক লোড
static-load
২. ডায়নামিক লোডঃ
dynamic-load
লোড কোনটা চেয়েছে তা দেখে অবশ্যই সেটা দিবেন। আপনাদের মনে রাখার সুবিধার্থে মোটর, লিফট ইত্যাদি ভারি জিনিস গুলো ডায়নামিক লোড। আর ছোট লোড গুলো সাধারনত স্ট্যাটিক লোড।
তাহলে ১ম চিত্রের জন্য হবেঃ
এবার আপনাদের জন্য বাড়ির কাজ রইল সমস্যা ২। আশাকরি করতে পারবেন।
আজ এ পর্যন্তই পরবর্তি লেখায় নতুন কিছু আনার প্রয়াস থাকবে। সকলকে ধন্যবাদ।