هذا الدليل جزء من: مجموعة سيارة SunFounder Rasberry Pi Pico Pico 4WD الذكية
ستُعرض الملفات المتعلقة بهذه المجموعة معًا. ستجد روابط مقاطع الفيديو الأخرى أسفل هذه المقالة.
الدرس 8 من 10: سيارة Raspberry Pi Pico الذكية – الدرس 8: المحرك المؤازر وتتبع الأجسام
هذا الدرس من دورة سيارة Raspberry Pi Pico الذكية رباعية الدفع من Robojax يستكشف وظيفة محرك السيرفو وكيفية استخدامه لإنشاء روبوت يتتبع الأجسام أو روبوت "اتبع يدك". يتجاوز المشروع التحكم البسيط في المحركات، موضحًا كيفية دمج مستشعر الموجات فوق الصوتية المُدار بمحرك سيرفو مع منطق بايثون ذكي لإنشاء سيارة تبحث بنشاط عن جسم ضمن نطاقها وتتبعه. هذا مفهوم أساسي في الروبوتات، مما يتيح لك بناء مشاريع تفاعلية مثل روبوت يتبع شخصًا، أو حيوان أليف ذكي يلعب الجلب، أو كاميرا أمنية مستقلة تتعقب الحركة. يغطي الدرس أيضًا مشروعًا ثانيًا أبسط: سيارة تقترب تلقائيًا من الأجسام وتدفعها وترتد عنها ضمن منطقة مسافة محددة.
المكونات والأجهزة
يعتمد هذا المشروع على مجموعة سيارة SunFounder Raspberry Pi Pico رباعية الدفع. المكونات الرئيسية المستخدمة في هذا الدرس هي:
- لوحة Raspberry Pi Pico
- هيكل سيارة ذكية رباعية الدفع مع محركات
- محرك سيرفو (يُفضل محرك سيرفو بتروس معدنية للمتانة)
- مستشعر المسافة بالموجات فوق الصوتية (HC-SR04)
- لوحة تشغيل المحركات (جزء من مجموعة السيارة)
- مصباح LED ملون (RGB) (للتغذية البصرية الراجعة)
- مصدر طاقة (حزمة بطاريات للسيارة)
محرك السيرفو هو جوهر وظيفة هذا الدرس. على عكس محرك التيار المستمر القياسي الذي يدور باستمرار، صُمم محرك السيرفو للدوران إلى وضع زاوي محدد والثبات عليه، عادةً بين 0 و180 درجة. هذا يجعله مثاليًا لتوجيه مستشعر الموجات فوق الصوتية بدقة. غالبًا ما تُحدد جودة محرك السيرفو بمادة تروسه (بلاستيكية مقابل معدنية) وعزم دورانه، الذي يحدد قوته ومتانته.
كيف يعمل
يوضح المخطط أدناه كيفية عمل الكود.
دليل التوصيلات
التوصيلات في هذا الدرس مباشرة، حيث أنها مبنية على مجموعة السيارة المجمعة مسبقًا. الاتصال الحرج هو محرك السيرفو، الذي يجب توصيله بدبوس GPIO محدد على لوحة Pico.
في الفيديو، يوصّل المدرب محرك السيرفو بالدبوس رقم 18 على Raspberry Pi Pico. يُثبَّت مستشعر الموجات فوق الصوتية أعلى قرن السيرفو، مما يسمح بتدويره يمينًا ويسارًا لمسح المنطقة. باقي التوصيلات للمحركات ومصباح RGB LED والطاقة يُفترض أنها موصولة مسبقًا من الدروس السابقة في الدورة.
للحصول على دليل بصري مفصل، يرجى الرجوع إلى مخطط التوصيلات أدناه.
شرح الكود
كود بايثون لهذا الدرس مبني حول مكتبة مخصصة باسم pico_4wd، والتي تبسط التفاعلات المعقدة مع الأجهزة. الأجزاء القابلة للتخصيص من قبل المستخدم موجودة في أعلى السكربت وتتحكم في سلوك السيارة.
فيما يلي المتغيرات الرئيسية التي يمكنك ضبطها لتخصيص سلوك "اتبع يدك" لروبوتك:
car.RADAR_REFERENCE = 25: هذه هي أقصى مسافة بالسنتيمتر التي "يراها" المستشعر. أي جسم يتجاوز هذه المسافة يتم تجاهله. يمكنك زيادتها لجعل السيارة أكثر حساسية أو تقليلها لتتطلب جسمًا أقرب.car.RADAR_MAX_ANGLE = 45وcar.RADAR_MIN_ANGLE = -45: تحدد هاتان الزاويتان أقصى زاوية لليسار (45) وأقصى زاوية لليمين (-45) التي سيمسحها السيرفو. هذا ينشئ مجال رؤية بزاوية 90 درجة أمام السيارة.car.RADAR_STEP_ANGLE = 10: هذه هي الزيادة (بالدرجات) التي يستخدمها السيرفو للتحرك بين نقاط المسح. خطوة أصغر (مثل 5) تعطي دقة أعلى ولكنها تستغرق وقتًا أطول لإكمال المسح الكامل. خطوة أكبر (مثل 15) تمسح بشكل أسرع ولكن بدقة أقل.MOTOR_FORWARD_POWER = 40: يضبط هذا قوة المحرك (0-100) المستخدمة عندما تتحرك السيارة للأمام نحو الجسم المكتشف. اضبط هذا لتغيير سرعة مطاردة السيارة.MOTOR_TURNING_POWER = 40: يضبط هذا قوة المحرك المستخدمة عندما تستدير السيارة لمواجهة الجسم. قيمة أعلى ستجعل السيارة تستدير بشكل أكثر حدة.
المنطق الرئيسي لدالة main() هو حلقة مستمرة. تستدعي أولاً car.radar_scan()، والتي تُرجع سلسلة من '1' و '0' تمثل ما إذا تم اكتشاف جسم عند كل زاوية مسح (تعني '1' أن جسمًا ما ضمن مسافة المرجع). ثم يحلل الكود هذه السلسلة للعثور على أكبر مجموعة من الأرقام '1' المتتالية، مما يشير إلى مركز الجسم المكتشف. بناءً على مكان هذا المركز في مجال المسح، تُؤمر السيارة بالانعطاف يسارًا أو يمينًا أو التحرك للأمام لمحاذاة نفسها مع الجسم وتتبعه.
عرض المشروع المباشر
يقدم الفيديو عرضًا توضيحيًا واضحًا للمشروع أثناء العمل. يقوم المدرب أولاً بتشغيل سكربت اختبار لإظهار كيفية تحريك محرك السيرفو إلى زوايا دقيقة مثل 90 و0 و-90 درجة. هذا أمر بالغ الأهمية لفهم نطاق السيرفو ولتركيب مستشعر الموجات فوق الصوتية بشكل صحيح.
بعد تركيب المستشعر، يتم عرض ميزة "تتبع اليد". بينما يحرك المدرب يده أمام السيارة، يقوم المستشعر المثبت على السيرفو بالمسح يسارًا ويمينًا. يعالج منطق السيارة بيانات المستشعر ويوجه العجلات للتوجيه نحو اليد المكتشفة، مما يجعلها تتبعها فعليًا عبر الأرضية. يسلط العرض الضوء على كيفية تتبع السيارة لجسم ما أثناء تحركه وضبط اتجاهها وفقًا لذلك. يتم أيضًا عرض مشروع ثانٍ، حيث تتم برمجة السيارة للاقتراب من جسم ما ودفعه إذا تم اكتشافه على مسافة تتراوح بين 10 و20 سنتيمترًا، والتراجع إذا اقترب الجسم أكثر من اللازم (أقل من 10 سنتيمترات).
الخلاصات الرئيسية
هذا الدرس هو مقدمة ممتازة لاستخدام محركات السيرفو لإنشاء سلوكيات روبوتية تفاعلية. من خلال الجمع بين السيرفو ومستشعر المسافة، يمكنك بناء روبوت يتمتع بـ"حاسة بصر" يمكنه تتبع بيئته والاستجابة لها بنشاط. القدرة على ضبط المعلمات مثل زوايا المسح وحجم الخطوة وقوة المحرك تسمح بالتحكم الدقيق في سلوك الروبوت، وهي مهارة حاسمة لأي مشروع روبوتات.
الفصول
- [00:00] مقدمة إلى محرك السيرفو وتتبع الأجسام
- [01:48] ميزات وإمكانيات عدة الدورة
- [03:08] فهم تشغيل محرك السيرفو
- [06:08] اختبار محرك السيرفو باستخدام كود بايثون
- [09:59] شرح ميزة "تتبع اليد"
- [10:49] عرض وظيفة "تتبع اليد"
- [15:37] مشروع: دفع الأجسام والتراجع
- [18:40] عرض مشروع دفع الأجسام
- [19:25] الخاتمة والخطوات التالية
هذا الدليل هو جزء من: مجموعة سيارة SunFounder Rasberry Pi Pico Pico 4WD الذكية
- دورة الدرس 1 من 10: عدة سيارة ذكية رباعية الدفع Raspberry Pi Pico 4WD من SunFounder بواسطة Robojax
- الدرس 2 من 10: أساسيات بايثون لقيادة عدة سيارة ذكية رباعية الدفع Raspberry Pi Pico 4WD
- دورة الدرس 3 من 10: تجميع عدة السيارة الذكية رباعية الدفع Raspberry Pi Pico 4WD من SunFounder بواسطة Robojax
- الدرس 4 من 10: لوحة توسعة Raspberry Pi Pico لعدة سيارة ذكية رباعية الدفع
- درس 5 من 10: التحكم في مصباح RGB LED WS2812B باستخدام Raspberry Pi Pico
- الدرس 6 من 10: التحكم في المحركات ذات التيار المستمر باستخدام عدة سيارة ذكية رباعية الدفع Raspberry Pi Pico
- الدرس 7 من 10: تتبع الخط، كشف الحافة معايرة مستشعر التدرج الرمادي سيارة Raspberry Pi Pico
- الدورة الدرس 9 من 10: تجنب العوائق باستخدام سيارة ذكية رباعية الدفع Raspberry Pi Pico
- الدورة الدرس 10 من 10: التحكم في عدة سيارات ذكية Raspberry Pi Pico 4WD عبر تطبيق الجوال
# Lesson 8/10 Pi Car Pico 4WD: Follow hand
# Download and resource page https://robojax.com/RJT630
import pico_4wd as car
car.RADAR_REFERENCE = 25
car.RADAR_MAX_ANGLE = 45
car.RADAR_MIN_ANGLE = -45
car.RADAR_STEP_ANGLE = 10
MOTOR_FORWARD_POWER = 40
MOTOR_TURNING_POWER = 40
def main():
while True:
radar_data = car.radar_scan()
if isinstance(radar_data, int):
continue
radar_data = [str(i) for i in radar_data]
radar_data = "".join(radar_data)
paths = radar_data.split("1")
length_list = []
for path in paths:
length_list.append(len(path))
if max(length_list) == 0:
car.move("stop")
else:
i = length_list.index(max(length_list))
pos = radar_data.index(paths[i])
pos += (len(paths[i]) - 1) / 2
delta = len(radar_data) / 3
if pos < delta:
car.move("right", MOTOR_TURNING_POWER)
elif pos > 2 * delta:
car.move("left", MOTOR_TURNING_POWER)
else:
#if radar_data[int(len(radar_data)/2-1)] == "0":
# car.move("stop")
#else:
car.move("forward", MOTOR_FORWARD_POWER)
try:
main()
finally:
car.move("stop")
car.set_light_off()
Common Course Links
- Purchase SunFounder Pico 4WD Smart Car Kit from AliExpress
- Purchase SunFounder Pico 4WD Smart Car Kit from eBay
- Amazon Canada: Purchase Pico 4WD Smart Car Kit by SunFounder
- Amazon France: Purchase Pico 4WD Smart Car Kit by SunFounder
- Amazon Germany: Purchase Pico 4WD Smart Car Kit by SunFounder
- Amazon Italy: Purchase Pico 4WD Smart Car Kit by SunFounder
- Amazon Japan: Purchase Pico 4WD Smart Car Kit by SunFounder
- Amazon Spain: Purchase Pico 4WD Smart Car Kit by SunFounder
- Amazon UK: Purchase Pico 4WD Smart Car Kit by SunFounder
- Amazon USA: Purchase Pico 4WD Smart Car Kit buy SunFounder
- Purchase Pico 4WD Smart Car Kit from SunFounder.com
- SunFounder Pico-4wd Car Kit Documentation
- Video Play List of 10 lesson on SunFounder Pico 4WD Smart Car Kit
الموارد والمراجع
لا توجد موارد حتى الآن.
ملفات📁
لا توجد ملفات متاحة.