সার্ভো মোটর নিয়ন্ত্রণ: একটি সম্পূর্ণ গাইড
প্রধান শিক্ষার্থ:
সার্ভো মোটর নিয়ন্ত্রণ সংজ্ঞায়িত: সার্ভো মোটর নিয়ন্ত্রণ দ্বারা মোটরের অবস্থান, গতি এবং ত্বরণকে ইলেকট্রনিক সিগন্যাল দ্বারা নিখুঁতভাবে নিয়ন্ত্রণ করা যায়।
ফিডব্যাক মেকানিজম: ফিডব্যাক সিস্টেম, যা সাধারণত পটেনশিওমিটার বা এনকোডার, মোটরের আউটপুট নিয়ন্ত্রণ ইনপুটের সাথে নিখুঁতভাবে মিলে যায়।
PWM সিগন্যাল: পালস-ওয়াইডথ মডুলেশন (PWM) সার্ভোর অবস্থান নির্ধারণের জন্য বৈদ্যুতিক পালসের সময়কাল পরিবর্তন করার জন্য অত্যন্ত গুরুত্বপূর্ণ।
আর্দুইনো এবং সার্ভো মোটর: আর্দুইনো বোর্ড ব্যবহার করা হল সার্ভো মোটর প্রোগ্রাম করা এবং নিয়ন্ত্রণ করার জন্য একটি জনপ্রিয় এবং কার্যকর উপায়, যা সর্বনিম্ন হার্ডওয়্যার সেটআপ প্রয়োজন।
সার্ভো মোটরের প্রয়োগ: সার্ভো মোটর রোবোটিক্স এবং স্বয়ংক্রিয় সিস্টেম সহ যে কোনও প্রকল্পের জন্য যা নিখুঁত অবস্থান নিয়ন্ত্রণের প্রয়োজন, তা অপরিহার্য।
একটি সার্ভো মোটর হল ঘূর্ণনে উচ্চ প্রশস্তি এবং সুনিশ্চিততা এর জন্য ডিজাইন করা একটি মোটর। এটি একটি সাধারণ DC মোটর থেকে আলাদা হয় এর একটি নির্দিষ্ট অবস্থান ধরে রাখার ক্ষমতা দ্বারা, যা স্থায়ীভাবে ঘূর্ণন করে না। এই বৈশিষ্ট্য সার্ভো মোটরকে রোবোটিক্স, স্বয়ংক্রিয় এবং শখের প্রকল্পের জন্য আদর্শ করে তোলে।
এই নিবন্ধটি ব্যাখ্যা করে যে সার্ভো মোটর নিয়ন্ত্রণ কিভাবে কাজ করে, সার্ভো মোটরের বিভিন্ন প্রকার, এবং বিভিন্ন নিয়ন্ত্রণ পদ্ধতি এবং ডিভাইস। এছাড়াও এতে সার্ভো মোটরের প্রয়োগ এবং প্রকল্পের উদাহরণ দেওয়া হয়েছে।
সার্ভো মোটর কি?
একটি সার্ভো মোটর হল একটি অ্যাকচুয়েটর যা অবস্থান (কোণ), গতি এবং ত্বরণের নিখুঁত নিয়ন্ত্রণ সম্ভব। একটি সাধারণ সার্ভো মোটর তিনটি প্রধান উপাদান নিয়ে গঠিত: একটি DC মোটর, একটি নিয়ন্ত্রণ সার্কিট এবং একটি ফিডব্যাক ডিভাইস।
DC মোটর সার্ভোকে চালিত করে এবং গিয়ারের সাথে যুক্ত হয়, যা আউটপুট স্যাফটের গতি কমিয়ে এবং টর্ক বাড়িয়ে দেয়।

আউটপুট স্যাফট হল সার্ভোর অংশ, যা ঘূর্ণন করে এবং লোড সরায়।
নিয়ন্ত্রণ সার্কিট দায়িত্ব পালন করে বহিরাগত নিয়ন্ত্রক থেকে ইনপুট সিগন্যাল গ্রহণ এবং প্রক্রিয়া করা। এই সিগন্যালগুলি সার্ভোকে বলে যে কোন অবস্থান, গতি বা দিকে যেতে হবে। নিয়ন্ত্রণ সার্কিট এছাড়াও DC মোটরে বিদ্যুৎ পাঠায় যাতে এটি চালিত হয়।
ফিডব্যাক ডিভাইস সাধারণত পটেনশিওমিটার বা এনকোডার যা আউটপুট স্যাফটের বর্তমান অবস্থান পরিমাপ করে।

ফিডব্যাক ডিভাইস অবস্থান তথ্য নিয়ন্ত্রণ সার্কিটে প্রেরণ করে, যা তারপর ডিসি মোটরের বিদ্যুৎ সমন্বয় করে প্রকৃত অবস্থান ইনপুট সিগন্যালের প্রার্থিত অবস্থানের সাথে সামঞ্জস্য করে।
নিয়ন্ত্রণ সার্কিট এবং ফিডব্যাক ডিভাইসের মধ্যে ফিডব্যাক লুপ নিশ্চিত করে যে সার্ভো নিখুঁতভাবে এর গতির পরিসীমার মধ্যে যে কোনও অবস্থানে যেতে এবং সেখানে থাকতে পারে।
সার্ভো মোটর কিভাবে নিয়ন্ত্রণ করা যায়?
সার্ভো মোটরগুলি নিয়ন্ত্রণ করা হয় সার্ভোর সিগন্যাল লাইনে একটি PWM (পালস-ওয়াইডথ মডুলেশন) সিগন্যাল পাঠানোর মাধ্যমে। PWM হল একটি পদ্ধতি যা একটি সিগন্যালকে দ্রুত চালু ও বন্ধ করে বিভিন্ন প্রস্থের পালস তৈরি করে। পালসের প্রস্থ আউটপুট স্যাফটের অবস্থান নির্ধারণ করে।
উদাহরণস্বরূপ, যখন আপনি 1.5 মিলিসেকেন্ড (ms) পালস প্রস্থের একটি PWM সিগন্যাল পাঠান, তখন সার্ভো নিরপেক্ষ অবস্থান (90 ডিগ্রি) পর্যন্ত যাবে।

যখন আপনি 1 ms পালস প্রস্থের একটি PWM সিগন্যাল পাঠান, তখন সার্ভো সর্বনিম্ন অবস্থান (0 ডিগ্রি) পর্যন্ত যাবে। যখন আপনি 2 ms পালস প্রস্থের একটি PWM সিগন্যাল পাঠান, তখন সার্ভো সর্বোচ্চ অবস্থান (180 ডিগ্রি) পর্যন্ত যাবে।
PWM সিগন্যালের ফ্রিকোয়েন্সি 50 Hz, যা বলে যে এটি 20 ms পরপর পুনরাবৃত্তি করে। এই পর্যায়ের মধ্যে পালস প্রস্থ 1 ms থেকে 2 ms পর্যন্ত পরিবর্তিত হতে পারে।
PWM সিগন্যাল তৈরি করা এবং সার্ভো মোটরে পাঠানোর অনেক উপায় রয়েছে। কিছু সবচেয়ে সাধারণ পদ্ধতি হল:
আর্দুইনো বোর্ড বা অন্য মাইক্রোকন্ট্রোলার ব্যবহার করা
পটেনশিওমিটার বা অন্য এনালগ সেন্সর ব্যবহার করা
জয়স্টিক বা অন্য ডিজিটাল ইনপুট ডিভাইস ব্যবহার করা
নির্দিষ্ট সার্ভো নিয়ন্ত্রক বা ড্রাইভার ব্যবহার করা
নিম্নলিখিত অধ্যায়গুলিতে, আমরা এই পদ্ধতিগুলি বিস্তারিত অনুসন্ধান করব এবং তারা কিভাবে কাজ করে তার কিছু উদাহরণ দেখব।
আর্দুইনো দিয়ে সার্ভো মোটর নিয়ন্ত্রণ
আর্দুইনো সার্ভো মোটর নিয়ন্ত্রণের জন্য সবচেয়ে জনপ্রিয় প্ল্যাটফর্মগুলির মধ্যে একটি। আর্দুইনো বোর্ডগুলিতে সার্ভোগুলিকে সিগন্যাল পাঠানোর জন্য ব্যবহৃত হওয়া পালস-ওয়াইডথ মডুলেশন (PWM) আউটপুট রয়েছে। আর্দুইনোতে একটি সার্ভো লাইব্রেরি রয়েছে যা সার্ভো নিয়ন্ত্রণের জন্য কোড লিখতে সহজ করে।
আর্দুইনো দিয়ে একটি সার্ভো মোটর নিয়ন্ত্রণ করতে আপনার প্রয়োজন:
একটি আর্দুইনো বোর্ড (যেমন Arduino UNO)
একটি স্ট্যান্ডার্ড সার্ভো মোটর (যেমন SG90)
জাম্পার তার
একটি ব্রেডবোর্ড (অপশনাল)
সার্ভো থেকে লাল তারটি আর্দুইনো বোর্ডের 5V এর সাথে যুক্ত করুন। সার্ভো থেকে কালো তারটি আর্দুইনো বোর্ডের GND এর সাথে যুক্ত করুন। সার্ভো থেকে সাদা তারটি আর্দুইনো বোর্ডের পিন 9 এর সাথে যুক্ত করুন।
আর্দুইনো বোর্ড প্রোগ্রাম করতে, আপনার আর্দুইনো IDE (অনলাইন বা অফলাইন) ব্যবহার করতে হবে। আপনি সার্ভো লাইব্রেরি থেকে একটি উদাহরণ ব্যবহার করতে পারেন বা নিজের কোড লিখতে পারেন।
নিম্নলিখিত কোডটি দেখায় কিভাবে একটি for লুপ ব্যবহার করে 180 ডিগ্রি পর্যন্ত একটি সার্ভো মোটর পেছন থেকে সামনে ঘুরানো যায়:
#include <Servo.h> // Servo library অন্তর্ভুক্ত করুন
Servo myservo; // Servo object তৈরি করুন
int pos = 0; // অবস্থানের জন্য ভেরিয়েবল
void setup() {
myservo.attach(9); // pin 9 এ Servo object যুক্ত করুন
}
void loop() {
for (pos = 0; pos <= 180; pos += 1) { // 0 থেকে 180 ডিগ্রি পর্যন্ত লুপ
myservo.write(pos); // Servo object এ অবস্থান লিখুন
delay(15); // 15 ms অপেক্ষা করুন
}
for (pos = 180; pos >= 0; pos -= 1) { // 180 থেকে 0 ডিগ্রি পর্যন্ত লুপ
myservo.write(pos); // Servo object এ অবস্থান লিখুন
delay(15); // 15 ms অপেক্ষা করুন
}
}
এই কোডটি দুটি লুপ ব্যবহার করে 0 থেকে 180 ডিগ্রি এবং বিপরীতে অবস্থান ভেরিয়েবল বাড়ানো এবং কমানো করে। তারপর এটি myservo.write(pos) ব্যবহার করে এই মানটি Servo object এ লিখে। এছাড়াও এটি প্রতিটি ধাপের মধ্যে 15 ms অপেক্ষা করে চলাচলকে