Агуулгын хүснэгт:
- Алхам 1: Arduino -ийн нэмэлт I/O портууд руу гагнуурын зүү толгой
- Алхам 2: Arduino Joystick номын санг IDE дээрээ нэмээрэй
- Алхам 3: Кодыг Arduino дээр асаана уу
- Алхам 4: Утас тавих
- Алхам 5: Хүлээн авагчийг холбоно уу
- Алхам 6: Кодыг өөрийн нөхцөл байдалд тохируулна уу
- Алхам 7: Emulated Joystick -ийг тохируулна уу
Видео: USB гүүр хүртэлх R/C: 7 алхам
2024 Зохиолч: John Day | [email protected]. Хамгийн сүүлд өөрчлөгдсөн: 2024-01-30 11:03
Радио хүлээн авагчаас PPM дохиог джойстикийн байрлал болгон хувиргадаг
R/C радио дамжуулагчаараа дуртай тоглоом, нислэгийн симуляторуудаа тоглуулахын тулд үүнийг ашиглаарай. Энэхүү зааварчилгаа нь энэхүү хөрвүүлэлтийг хийхийн тулд LittleBits -ийн Arduino болон DSMX хүлээн авагч, энгийн кодын хэсгийг ашигладаг.
Танд хэрэгтэй болно
- Эрчим хүч
- Ардуино
- USB кабель
- зүү толгойнууд
- холбогч утас
- PPM гаралттай радио хүлээн авагч.
Алхам 1: Arduino -ийн нэмэлт I/O портууд руу гагнуурын зүү толгой
Хүлээн авагчийг (RX) асаахын тулд зүү толгойг Arduino дээр нэмэх шаардлагатай. Энэ нь Bit болон 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… Үүнийг бичсэнд баярлалаа, Маттью Хейронимус.
Зөвхөн зарим Arduino нь 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, үнэн, үнэн, худал, худал, хуурамч, хуурамч, үнэн, үнэн, худал, худал, худал); хүчингүй тохиргоо () {Joystick.setXAxisRange сайн уу); Joystick.setYAxisRange (хараарай, сайн уу); Joystick.setThrottleRange (хараарай, сайн уу); Joystick.setRudderRange (хараарай, сайн уу); Joystick.begin (); Цуваа эхлэх (9600); pinMode (inputPin, INPUT); } void loop () {if (pulseIn (inputPin, HIGH)> 3000) {for (int i = 0; i <= channels-1; i ++) {channel = pulseIn (inputPin, HIGH); } for (int i = 0; i <= суваг-1; би ++) {if ((суваг > 2000) || (суваг <500)) {суваг = өмнөхValue ; } өөр {суваг = (өмнөхValue +суваг )/2; тоолуур ++; }} Joystick.setXAxis (суваг [0]); Joystick.setYAxis (суваг [1]); Joystick.setThrottle (суваг [2]); Joystick.setRudder (суваг [3]); } if (counter> filter) {for (int i = 0; i <= суваг-1; i ++) {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 -д хүч хэрэглээрэй. Хүлээн авагч дахь LED асах үед холбох процесс амжилттай болсон.
Алхам 6: Кодыг өөрийн нөхцөл байдалд тохируулна уу
Arduino -ийн ноорог дээрх hi болон lo гэсэн тогтмол байдлыг таны ашиглаж буй хүлээн авагчийн бодит гаралтыг харуулахын тулд өөрчлөх шаардлагатай.
#тодорхойлно уу 800
#Сайн байна уу 1600
PPM импульсийн доторх дохио нь 1000μs -ээс 2000μs хооронд хэлбэлздэг. Энэхүү зааварчилгааны гаралтанд ашигласан RX нь ойролцоогоор 800-1600 хооронд хэлбэлздэг бөгөөд суваг бүрт арай өөр байдаг. Таны хүлээн авагч ямар хүрээтэй болохыг олж мэдэхийн тулд Arduino IDE дээрх Serial Monitor -ийг нээж RX -ийнхээ гаралтыг харах боломжтой. Энэ нь үүнтэй төстэй харагдах болно:
суваг 1: 728
суваг 2: 729 суваг 3: 703 суваг 4: 726 суваг 1: 1681 суваг 2: 1639 суваг 3: 1613 суваг 4: 1676
RX -ийн гаралтын хүрээний талаар илүү тодорхой ойлголттой болсны дараа сайн, сайн гэсэн ойролцоо утгыг сонгоод тогтмолуудыг нь өөрчилнө үү. Дараа нь ноорогоо Arduino дээр дахин байршуулна уу.
Алхам 7: Emulated Joystick -ийг тохируулна уу
Төхөөрөмжийг компьютерт холбож, OS -ийн тохируулгын функцийг ашиглан дууриалган джойстикийг тохируулна уу. Линуксд зориулсан сайн хэрэгсэл бол jstest-gtk юм.
Цаашдын сайжруулалтууд
- Блоклохгүй код бичих (3-р алхамыг үзнэ үү)
- Дэлхий даяар биш суваг тус бүрт хүрээ тогтоох (6 -р алхамыг үзнэ үү)
Цаашид унших
- Redcon CM703
- PPM
Зөвлөмж болгож буй:
KaKu гүүр (Klik-aan Klik-uit): 4 алхам
KaKu гүүр (Klik-aan Klik-uit): Энэхүү KakuBridge нь маш хямд ($ 8) бөгөөд Klik-aan Klik-uit төхөөрөмжүүдэд (CoCo) зориулагдсан домотик системийг бүтээхэд маш энгийн юм. Та вэб хуудсан дээрх алсын удирдлагаар 9 хүртэлх төхөөрөмжийг удирдах боломжтой. Үүнээс гадна KakuBridge -ийн тусламжтайгаар та төхөөрөмж бүрийн хуваарийг гаргах боломжтой
Хямд NMEA/AIS Hub - RS232 -ийг Wifi гүүр хүртэл ашиглах боломжтой: 6 алхам
Хямд NMEA /AIS Hub - RS232 нь Wifi Bridge -ийг ашиглахад зориулагдсан: 2021 оны 1 -р сарын 9 -ний өдрийг шинэчлэх - Илүү олон үйлчлүүлэгчид холбогдсон тохиолдолд нэмэлт TCP холболт нэмж, сүүлчийн холболтыг дахин ашиглах 2020 оны 12 -р сарын 13 -ны өдрийг шинэчлэх - Одоо байгаа чиглүүлэгчтэй усан онгоцны кодын тохиргооны хувилбарыг нэмээгүй. Танилцуулга Энэ NMEA / AIS RS232 -аас WiFi гүүр бол
LoRa Arduino, Esp8266 эсвэл Esp32: 15 алхам бүхий бага зардалтай E32 (sx1278/sx1276) төхөөрөмж бүхий 3 км -ээс 8 км хүртэлх утасгүй холбоо: 15 алхам
LoRa Arduino, Esp8266 эсвэл Esp32 -д зориулсан бага өртөгтэй E32 (sx1278/sx1276) төхөөрөмж бүхий 3Km -аас 8Km хүртэлх утасгүй холбоо: Би Semtech цувралын LoRa төхөөрөмж дээр суурилсан EBYTE E32 -ийг удирдах номын сан, маш хүчирхэг, энгийн бөгөөд хямд төхөөрөмжтэй. 3км -ийн хувилбар энд, 8км -ийн хувилбар энд байна Тэд 3000м -ээс 8000м -ийн зайд ажиллах боломжтой бөгөөд тэдгээр нь маш олон онцлог шинж чанартай байдаг
Flysky FS-I6 хянагчийг микро USB эсвэл 2V-аас 6V хүртэлх зайгаар хангах: 6 алхам
Flysky FS-I6 хянагчийг микро USB эсвэл 2V-аас 6V зайтай нийлүүлэх: Flysky FS-I6 хянагч (энэ хакердах нь бусад хянагчтай ажиллах боломжтой) DC-DC тохируулгатай StepUp модуль (микро USB-тэй) https://www.aliexpress.com /item/DC-DC- Adjustable-B… Утас
5 -ийн дэлгэцийг 12v -аас 5v хүртэлх USB хүчийг хэрхэн яаж хийх вэ: 3 алхам (зурагтай)
12 в -оос 5 в -ийн USB хүчийг 5 инчийн дэлгэц дээр хэрхэн яаж хийх вэ: танд хэрэгтэй болно: цахилгаан банкны USB кабель (жижиг үзүүрийг таслах) халив соронзон хальсны видео эх үүсвэр (шар видео кабель, бөөрөлзгөнө pi, playstation, телевизийн хайрцаг гэх мэт)