جدول المحتويات:

R / C إلى جسر USB: 7 خطوات
R / C إلى جسر USB: 7 خطوات

فيديو: R / C إلى جسر USB: 7 خطوات

فيديو: R / C إلى جسر USB: 7 خطوات
فيديو: Моя работа наблюдать за лесом и здесь происходит что-то странное 2024, شهر نوفمبر
Anonim
R / C إلى جسر USB
R / C إلى جسر USB

يحول إشارات PPM من جهاز استقبال راديو إلى مواضع عصا التحكم

استخدمه للعب الألعاب المفضلة لديك وأجهزة محاكاة الطيران مع جهاز إرسال راديو R / C. يستخدم هذا Instructable Arduino من littleBits وجهاز استقبال DSMX بالإضافة إلى مقتطف رمز بسيط لإجراء هذا التحويل.

سوف تحتاج

  • قوة
  • اردوينو
  • كبلات USB
  • رؤوس الدبوس
  • سلك الطائر
  • جهاز استقبال لاسلكي مع خرج PPM.

الخطوة 1: رؤوس دبوس اللحام إلى منافذ الإدخال / الإخراج الإضافية في Arduino

رؤوس دبوس اللحام إلى منافذ الإدخال / الإخراج الإضافية في Arduino
رؤوس دبوس اللحام إلى منافذ الإدخال / الإخراج الإضافية في Arduino

من أجل تشغيل جهاز الاستقبال (RX) ، يجب إضافة رؤوس الدبوس إلى Arduino. سيؤدي ذلك أيضًا إلى جعل الأسلاك بين Bit و RX أسهل كثيرًا. راجع https://discuss.littlebits.cc/t/using-the-additional-i-os-on-the-arduino-bit لمزيد من المعلومات.

الخطوة 2: أضف مكتبة Arduino Joystick Library إلى IDE الخاص بك

أضف مكتبة Arduino Joystick Library إلى IDE الخاص بك
أضف مكتبة Arduino Joystick Library إلى IDE الخاص بك

يمكنك العثور على المكتبة على GitHub ، https://github.com/MHeironimus/ArduinoJoystickLib … شكرًا لك ، ماثيو هيرونيموس ، لكتابتها.

يمكن فقط لبعض Arduinos محاكاة HID مثل عصا التحكم. نظرًا لأن وحدة التحكم الدقيقة من LittleBits هي عبارة عن Arduino Leonardo ، فأنت على ما يرام.

الخطوة 3: قم بتفليش الكود على Arduino

# تضمين # تعريف الإدخال Pin 16 # تحديد القنوات 4 # تعريف lo 800 // ضبط لإخراج RX # تحديد hi 1600 // ضبط لإخراج RX # تحديد قناة مرشح 10int [قنوات] ؛ int previousValue [القنوات] ؛ int counter = 0؛ Joystick_ Joystick (JOYSTICK_DEFAULT_REPORT_ID، JOYSTICK_TYPE_MULTI_AXIS، 0، 0، true، true، false، false، false، false، true، true، false، false، false)؛ إعداد باطل () {Joystick.setXAxisRange (lo، أهلا)؛ Joystick.setYAxisRange (lo، hi) ؛ Joystick.setThrottleRange (lo، hi) ؛ Joystick.setRudderRange (lo، hi) ؛ Joystick.begin () ، Serial.begin (9600) ؛ pinMode (inputPin ، INPUT) ؛ } حلقة فارغة () {if (pulseIn (inputPin، HIGH)> 3000) {for (int i = 0؛ i <= channels-1؛ i ++) {channel = pulseIn (inputPin، HIGH) ؛ } لـ (int i = 0؛ i <= channels-1؛ i ++) {if ((channel > 2000) || (channel <500)) {channel = previousValue ؛ } else {channel = (previousValue + channel ) / 2 ؛ عداد ++ ؛ }} Joystick.setXAxis (قناة [0]) ؛ Joystick.setYAxis (قناة [1]) ؛ Joystick.setThrottle (قناة [2]) ؛ Joystick.setRudder (قناة [3]) ؛ } if (counter> filter) {for (int i = 0؛ i <= channels-1؛ i ++) {Serial.print ("channel") ؛ Serial.print (i + 1) ؛ Serial.print (":") ؛ Serial.println (قناة ) ؛ previousValue = قناة ؛ } العداد = 0 ؛ }}

يرجى العلم أن الكود الذي يربط بين إشارة R / C و USB HID الذي تمت محاكاته يأتي في أبسط أشكاله. الوظيفة المستخدمة هنا - PulseIn - هي وظيفة منع. اقرأ هنا ، وهنا ، كيفية تنفيذ نهج غير محظور باستخدام المقاطعات.

الخطوة 4: هل الأسلاك

هل الأسلاك
هل الأسلاك
هل الأسلاك
هل الأسلاك

قم بتوصيل سلك العبور / كابلات DuPont بين Bit و RX. يجب أن تكون الموصلات الموجودة في نهاية هذه الكابلات أنثى. نقوم بتوصيل GND (أزرق) و VCC (بني) والإشارة (برتقالية) من منفذ PPM في RX إلى GND و VCC و d16 على Arduino.

الخطوة 5: ربط جهاز الاستقبال

افصل Arduino عن مصدر الطاقة. ضع حزام الربط في موقع الموصل المميز BIND على RX. قم بتشغيل جهاز الإرسال اللاسلكي الخاص بك وقم بتحويله إلى وضع الربط. بعد ذلك ، قم بتطبيق القوة على Arduino. كانت عملية الربط ناجحة عند تشغيل مؤشر LED في جهاز الاستقبال.

الخطوة 6: اضبط الكود وفقًا لظروفك

يجب تغيير الثوابت hi و lo في مخطط Arduino لتعكس الإخراج الفعلي لجهاز الاستقبال الذي تستخدمه.

# تعريف لو 800

# عارفين مرحبًا 1600

تتراوح الإشارات داخل نبضة PPM بشكل مثالي من 1000μs إلى 2000μs. قيم RX المستخدمة في مخرجات Instructable هذه تتراوح بين 800 و 1600 تقريبًا وتختلف قليلاً في كل قناة. لمعرفة النطاق الذي يمتلكه جهاز الاستقبال الخاص بك ، افتح Serial Monitor في Arduino IDE لترى إخراج RX الخاص بك. سيبدو مشابهًا لهذا:

القناة 1: 728

قناة 2: 729 قناة 3: 703 قناة 4: 726 قناة 1: 1681 قناة 2: 1639 قناة 3: 1613 قناة 4: 1676

بمجرد أن تكون لديك فكرة أوضح عن النطاق الذي تُخرجه RX ، اختر تقديرات تقريبية جيدة لـ hi و lo وقم بتغيير الثوابت وفقًا لذلك. ثم قم بتحميل المخطط على Arduino مرة أخرى.

الخطوة 7: معايرة جويستيك مقلد

قم بتوصيل الجهاز بجهاز الكمبيوتر الخاص بك واستخدم وظيفة المعايرة لنظام التشغيل الخاص بك لمعايرة عصا التحكم التي تمت محاكاتها. أداة جيدة لنظام Linux هي jstest-gtk.

مزيد من التحسينات

  • اكتب رمزًا غير محظور (راجع الخطوة 3)
  • قم بتعيين النطاقات لكل قناة ، وليس بشكل عام (راجع الخطوة 6)

قراءة متعمقة

  • ريدكون CM703
  • جزء في المليون

موصى به: