Мазмұны:
- 1 -қадам: Arduino қосымша енгізу -шығару порттарына дәнекерлеу түйінінің тақырыптары
- 2 -қадам: Arduino Joystick кітапханасын IDE -ге қосыңыз
- 3 -қадам: кодты Arduino -ға қосыңыз
- 4 -қадам: Сымдарды қосыңыз
- 5 -қадам: ресиверді байлаңыз
- 6 -қадам: Кодты сіздің жағдайыңызға қарай реттеңіз
- 7 -қадам: Эмуляцияланған джойстикті калибрлеңіз
Бейне: USB көпіріне R/C: 7 қадам
2024 Автор: John Day | [email protected]. Соңғы өзгертілген: 2024-01-30 10:25
Радио қабылдағыштан PPM сигналдарын джойстик позициясына түрлендіреді
Оны R/C радио таратқышымен сүйікті ойындар мен ұшу тренажерлерін ойнау үшін пайдаланыңыз. Бұл нұсқаулықта бұл конверсияны жасау үшін LittleBits Arduino мен DSMX қабылдағышы және қарапайым код үзіндісі қолданылады.
Саған қажет болады
- Қуат
- Ардуино
- USB кабельдері
- бекітетін тақырыптар
- секіргіш сым
- PPM шығысы бар радио қабылдағыш.
1 -қадам: Arduino қосымша енгізу -шығару порттарына дәнекерлеу түйінінің тақырыптары
Қабылдағышты (RX) қуаттандыру үшін Arduino -ға түйреуіштерді қосу керек. Бұл сонымен қатар бит пен RX арасындағы сымды едәуір жеңілдетеді. Қосымша ақпарат алу үшін https://discuss.littlebits.cc/t/using-the-additional-i-os-on-the-arduino-bit қараңыз.
2 -қадам: Arduino Joystick кітапханасын IDE -ге қосыңыз
Сіз кітапхананы GitHub сайтынан таба аласыз, https://github.com/MHeironimus/ArduinoJoystickLib… Рахмет, Мэттью Хейронимус, оны жазғаныңыз үшін.
Тек кейбір Ардуинодар джойстик сияқты HID -ке еліктей алады. LittleBits микроконтроллері Ардуино Леонардо болғандықтан, сіз баруға дайынсыз.
3 -қадам: кодты Arduino -ға қосыңыз
#include #define inputPin 16#арналарды анықтау 4 #define 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, false, true, false, false, false); жарамсыз орнату () {Joystick.setXAxisRange сәлем); Joystick.setYAxisRange (міне, сәлем); Joystick.setThrottleRange (міне, сәлем); Joystick.setRudderRange (міне, сәлем); Джойстик.begin (); Serial.begin (9600); pinMode (inputPin, INPUT); } void loop () {if (pulseIn (inputPin, HIGH)> 3000) {for (int i = 0; i <= channels-1; i ++) {channel = pulseIn (inputPin, HIGH); } үшін (int i = 0; i <= арналар-1; i ++) {if ((арна > 2000) || (арна <500)) {арна = алдыңғыValue ; } else {channel = (алдыңғыValue +арна )/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 («арна»); Serial.print (i+1); Serial.print («:»); Serial.println ( арнасы); previousValue = арна ; } санауыш = 0; }}
Есіңізде болсын, R/C сигналы мен эмуляцияланған USB HID арасындағы көпір болатын код ең қарапайым түрде келеді. Мұнда қолданылатын функция - pulseIn - бұғаттау функциясы. Бұл жерде оқыңыз және үзіліс арқылы блокировкасыз әдісті қалай жүзеге асыруға болады.
4 -қадам: Сымдарды қосыңыз
Бит пен RX арасына қосқыш сым / DuPont кабельдерін жалғаңыз. Бұл кабельдердің соңындағы қосқыштар әйел болуы керек. Біз GND (көк), VCC (қоңыр) және сигналды (қызғылт сары) RX PPM портынан Arduino -дағы GND, VCC және d16 -ға қосамыз.
5 -қадам: ресиверді байлаңыз
Arduino -ны қуат көзінен ажыратыңыз. Байланыстыруды RX -те BIND деп белгіленген қосқыш орнына салыңыз. Радио таратқышты қосыңыз және оны байланыстыру режиміне ауыстырыңыз. Содан кейін Arduino -ға қуат қолданыңыз. Байланыс процесі ресивердегі жарық диоды қосылған кезде сәтті болды.
6 -қадам: Кодты сіздің жағдайыңызға қарай реттеңіз
Arduino эскизіндегі hi және lo тұрақтыларын сіз қабылдайтын қабылдағыштың нақты шығысын көрсету үшін өзгерту қажет.
#анықтау 800
#Сәлем 1600
PPM импульсінің ішіндегі сигналдар 1000 мкс -ден 2000 мкс -ге дейін өте қолайлы. Бұл нұсқаулық шығысында қолданылатын RX шамамен 800 мен 1600 аралығында және әр арнада сәл өзгеше. Қабылдағышта қандай диапазон бар екенін білу үшін RX шығысын көру үшін Arduino IDE сериялық мониторын ашыңыз. Бұл келесіге ұқсас болады:
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 -қадамды қараңыз)
Қосымша оқу
- Redcon CM703
- PPM
Ұсынылған:
Арзан NMEA/AIS хаб - RS232 бортында пайдалануға арналған Wifi көпіріне: 6 қадам
Арзан NMEA /AIS Hub - RS232 бортында қолдануға арналған Wifi көпіріне: 2021 жылдың 9 қаңтарын жаңарту - егер қосымша клиенттер қосылса, соңғы TCP қосылымы қосылады және соңғы қосылымды қайта пайдаланады 2020 жылдың 13 желтоқсанында жаңартылады - қолданыстағы маршрутизаторлары бар қайықтар үшін кодтың конфигурациялық нұсқасы қосылмады Кіріспе Бұл NMEA / AIS RS232 - WiFi көпірі - бұл
Өшіргіш көмегімен USB флэш -дискісін қалай жасауға болады - USB диск жетегінің DIY корпусы: 4 қадам
Өшіргіш көмегімен USB флэш -дискісін қалай жасауға болады | USB диск жетегінің DIY қаптамасы: Бұл блог " Өшіргіш көмегімен USB флэш -дискіні қалай жасауға болады? ' USB диск жетегінің DIY қаптамасы " Сізге ұнайды деп үміттенемін
Arduino Uno көмегімен акустикалық левитация Қадамдық қадам (8 қадам): 8 қадам
Акустикалық левитация Arduino Uno Қадамдық қадаммен (8-қадам): ультрадыбыстық дыбыс түрлендіргіштері L298N Dc әйелдер адаптерінің ток көзі еркек тоқ сымымен Arduino UNOBreadboard Бұл қалай жұмыс істейді: Біріншіден, сіз кодты Arduino Uno-ға жүктейсіз (бұл сандық жүйемен жабдықталған микроконтроллер) және кодты түрлендіру үшін аналогтық порттар (C ++)
Wifi көпіріне Raspberry Pi Ethernet: 7 қадам
Wifi көпіріне Raspberry Pi Ethernet: Менде әр түрлі Raspberry Pies, құрылғылар мен басқа компьютерлер мен желілік жабдықтардың сынақ желісі бар, олардың барлығын Ubiquity брандмауэрі/маршрутизаторы басқарады, мен оны интернетке қосқым келеді. жаңартуларды, бағдарламалық жасақтаманы және т
BLE (Bluetooth төмен энергия) көпіріне қарапайым WiFi: 9 қадам (суреттермен)
Қарапайым WiFi BLE (Bluetooth төмен энергия) көпірі: 2017 жылдың 4 желтоқсанында жаңартылды - мамық nRF52 эскиздері мен жөндеу бойынша кеңестер. Қорапқа салынған көпірдің суреттері қосылды. Бұл қарапайым жоба TX Notify көмегімен Nordic's UART енгізетін кез келген Bluetooth Low Energy (BLE) модуліне WiFi қол жетімділігін қамтамасыз етеді. Th