جدول المحتويات:
2025 مؤلف: John Day | [email protected]. آخر تعديل: 2025-01-13 06:56
في هذا البرنامج التعليمي ، سنقوم بكتابة رمز Verilog للتحكم في محرك سيرفو. يتم تصنيع المؤازرة SG-90 بواسطة Waveshare. عند شراء محرك سيرفو ، قد تتلقى ورقة بيانات تسرد جهد التشغيل وعزم الدوران الأقصى وتعديل عرض النبضة المقترح (PWM) … إلخ. ومع ذلك ، فإن FPGA DuePrologic يوفر جهد دخل يبلغ 3.3 فولت حيث يكون جهد التشغيل لمؤازرة SG-90 هو 5 فولت - 7 فولت. في حالة نقص الطاقة الكهربائية ، سأدرج PWM الذي تمت معايرته من أجل تدوير محرك سيرفو بنجاح.
مهمتنا: يتم تدوير المحرك المؤازر ذهابًا وإيابًا لمدة 5 ثوانٍ
القائمة الكاملة:
الخطوة الأولى: بناء دائرة إلكترونية
الخطوة 2: إعداد Pin Planner
انقر فوق "بدء تحليل تعيين الإدخال / الإخراج" للتحقق مما إذا تم تعيين مخطط الدبوس بشكل صحيح. خلاف ذلك ، يجب عليك استيراد جميع أسماء المنافذ بنفسك.
الخطوة 3: كود فيريلوج
نقوم بإنشاء جهاز توقيت "servo_count". عندما تكون "servo_A" عالية ، فإن PWM تكون 1.5 مللي ثانية ومن ثم فإن المؤازرة تقع عند 120 درجة. في المقابل ، عندما تكون "servo_A" منخفضة ، فإن PWM تكون 0.15 مللي ثانية وبالتالي تظل المؤازرة عند درجة 0.
تعيين XIO_2 [3] = نبضة مؤازرة ؛ // لـ V '
reg [31: 0] servo_count ؛
البداية الأولية
servo_count <= 32'b0 ؛
servo_A <= 1'b0 ؛
نهاية
دائما @ (posedge CLK_66)
يبدأ
servo_count <= servo_count + 1'b1 ؛
إذا (servo_count> 400000000) // دورة الساعة 66 ميجاهرتز ، 1/66 م * 400000000 ~ 5 ثوان
يبدأ
servo_A <=! servo_A؛
servo_count <= 32'b0 ؛
نهاية
نهاية
ريج [31: 0] ex_auto ؛
البداية الأولية
ex_auto <= 32'b0 ؛
servo_auto <= 1'b0 ؛
نهاية
دائما @ (posedge CLK_66)
يبدأ
إذا (servo_A == 1'b1)
يبدأ
ex_auto <= ex_auto + 1'b1 ؛
إذا (ex_auto> 100000) // دورة الساعة 66 ميجا هرتز ، يكون PWM هذا 1.5 مللي ثانية ، تدور المؤازرة إلى 120 درجة
يبدأ
servo_auto <=! servo_auto ؛
ex_auto <= 32'b0 ؛
نهاية
نهاية
إذا (servo_A == 1'b0)
يبدأ
ex_auto <= ex_auto + 1'b1 ؛
إذا (ex_auto> 10000) // دورة الساعة 66 ميجا هرتز ، يكون PWM هذا 0.15 مللي ثانية ، تدور المؤازرة إلى 0 درجة
يبدأ
servo_auto <=! servo_auto ؛
ex_auto <= 32'b0 ؛
نهاية
نهاية
نهاية
الخطوة 4: قم بتحميل كود فيريلوج
انقر فوق "بدء التجميع". إذا لم يتم عرض رسالة خطأ ، فانتقل إلى "مبرمج" لإكمال إعداد الأجهزة. تذكر تحديث ملف pof في "تغيير الملف" إذا لزم الأمر. انقر فوق "ابدأ" لتحميل الكود.
بعد كل شيء ، يجب أن ترى أن محرك سيرفو يدور بشكل دوري.