» electronică » Arduino »Echipamente de control radio pe Arduino

Echipamente de control radio pe Arduino



Acest articol discută despre fabricarea de echipamente de control radio proporționale bazate pe bord Arduino. O caracteristică interesantă a proiectului este că echipamentul a fost conceput ca o alternativă la echipamentele „adulte”, dar care pot fi realizate chiar de tine. Există taste de decupare pe transmițător, care sunt importante pentru control, de exemplu modele aeronavă, emițătorul este, de asemenea, echipat cu un mic afișaj cu LED-uri organice, care afișează informații de bază despre funcționarea emițătorului. Echipamentul este proiectat pentru 6 canale, 4 proporționale și 2 discrete. De asemenea, autorul a pus bazele adăugării viitoare a altor două canale proporționale, au fost adăugate 2 potențiometre la caz, dar momentan nu sunt implicate. Cu toate acestea, acest lucru este suficient pentru a controla modelul unui avion, o navă sau o mașină, iar canalele discrete vă vor permite să controlați încărcarea suplimentară, de exemplu, includerea farurilor, farurilor de punte, a luminilor de navigație sau chiar lansarea de rachete mici. Echipamentul are două moduri de control - liniare și exponențiale.




Pentru emițător veți avea nevoie de:

1 x Arduino NANO / UNO / ProMini
1 x placă de protecție BMS pentru trei cutii Li-ion
1 x 5,5 x 2,1 mm conector
1 x Convertizor DC / DC Step Up XL6009
1 x convertor micșor LM2596 (voi vorbi despre asta separat)
3 x 18650:
2 x joystick-uri JH-D202X (vândute pe Ali)
2 x comutator de comutare
1 x Ecran OLED i2c 0.96 inch 128X64
1 x modul radio NRF24l01 cu amplificator și antenă
9 x buton tact 6 * 6 * 5 mm
Rezistențe de ieșire (vezi diagrama)

Pentru receptor, veți avea nevoie de:

1 x Arduino NANO / UNO / Pro Mini
1 x modulul de radio NRF24l01
1 x regulator de tensiune AMS1117 3.3V
30 x pls piepteni
1 x panou
1 x 10 condensator uF

Mai jos puteți vedea o imagine grafică a tuturor componentelor și o diagramă a conexiunii acestora. Înainte de asamblare, convertoarele de buck trebuie configurate, XL6009 până la 12,6 V (acest modul este responsabil pentru încărcare), LM2596 până la 3,3 V (putere la modulul radio). În loc de LM2596, teoretic este posibil să se utilizeze ASM117, conform fișei tehnice, tensiunea maximă de intrare a acestui stabilizator este de 15 V, dar se recomandă să nu o aplici mai mare de 12 V. Aparent, pe baza acestor considerente, autorul a folosit un alt convertor DC / DC. În schimb, puteți folosi și un stabilizator reglabil, de exemplu LM317.




carcasă

Echipamente de control radio pe Arduino


Carcasa este formată din două părți principale: partea superioară și cea inferioară. În plus, sunt tipărite 9 butoane (8 pentru decupare și un buton de mod), 5 copii de rezervă pentru butoane, o lunetă de afișare și un glisor de alimentare.Autorul a imprimat un PLA cu o radieră cu acoperire de 20%, o duză de 0,4 mm și o înălțime a stratului de 0,3 mm. Apropo, nimeni nu interzice utilizarea unui alt caz, puteți doar să luați o cutie potrivită, să o lipiți singuri sau să luați o cutie destul de mare dintr-o jucărie chineză, acestea sunt aproape vândute în saci de pe site-urile clasificate.


Montaj emițător

Bateriile sunt conectate în serie. Autorul a făcut acest lucru prin lipire, vreau să notez că lădițele de lipit din 18650 necesită o anumită abilitate, așa că dacă nu aveți o astfel de experiență, cumpărați baterii cu petale deja sudate și lipiți-le. De asemenea, bateriile conform schemei de mai sus sunt livrate la modulul BMS, a cărui intrare este alimentată cu tensiune de la convertorul XL6009 (MT3608 poate fi utilizat în schimb). BMS este responsabil de încărcarea / descărcarea uniformă a tuturor cutiei și oprirea alimentării la epuizarea bateriilor. Tensiunea poate fi monitorizată și cu ajutorul afișajului. Bateriile sunt încărcate de o sursă de alimentare de 9 V cu un curent de maximum 3 A (maxim pentru XL6009). De fapt, curentul de încărcare trebuie calculat în funcție de capacitatea bateriilor și să ia alimentarea cu un curent ușor mai mic sau să-l limiteze. Este convenabil să montați modulele în carcasă cu ajutorul benzii dublu față „automobilului”.




Butoanele de ceas sunt instalate pe platforme speciale, după care sunt fixate cu șuruburi mici pe suporturile corespunzătoare din interiorul carcasei. Aici, de fapt, totul este la nivelul designerului și este bine înțeles din fotografie.




Butoanele sunt interconectate de rezistențe, lăsând astfel, în esență, o tastatură rezistivă mică, ceea ce vă permite să utilizați doar un pin al plăcii Arduino. Firurile sunt lipite la potențiometrele joystick-ului, cablurile extreme merg la sol și 5 V, media duce la acul Arduino corespunzător. Am planuri de a repeta această schemă, am experimentat deja un pic și pot spune că codul are funcția de a inversa automat canale după cum este necesar, dar nu am înțeles încă modul în care schema determină această nevoie. Aceasta înseamnă că inversarea canalului se realizează în esență prin lipirea concluziilor extreme în locuri. Astfel de joystick-uri, la momentul scrierii, sunt vândute în Ali la un preț de aproximativ 7 dolari pe bucată, indiferent dacă depinde de tine sau nu. În schimb, puteți utiliza modulele joystick pentru arduino sau joysticks de la controlerele de joc.

De fapt, joystick-ul funcționează ca un împărțitor, devinând mânerul, schimbăm tensiunea la ieșirea din mijloc a potențiometrului și, în funcție de această tensiune, arduino determină abaterea.
[centru] [/ centru]
De asemenea, conectoarele sunt conectate. Comutatoarele de comutare sunt necesare on-off, deoarece canalul este discret și are doar două valori - 0 sau 1, în funcție de faptul că ieșirea arduino-ului este atrasă la sol sau de o alimentare de 5V. ce s-ar întâmpla când folosești trei poziționale, controlerul nu înțelege ce se întâmplă și valoarea sare la întâmplare fie 0, fie 1 (din experiența mea). Nu puteți seta potențiometre suplimentare, în momentul în care acestea nu sunt implicate. Sau puteți pune și monitoriza pagina sursă, probabil autorul va posta în cele din urmă firmware-ul actualizat.




În continuare, sunt instalate un arduino, un modul radio și o placă de alimentare a modulului radio. După cum s-a descris mai sus, este necesar să se stabilească o tensiune de 3,3 volți pe ea. Este aproape imposibil să faceți acest lucru folosind o rezistență variabilă standard, astfel că autorul a dezvăluit-o și a lipit în schimb un decurator multi-turn. În continuare, ecranul este montat și toate componentele sunt conectate la bornele arduino în conformitate cu diagrama.




inserare

Despre firmware-ul Arduino s-a vorbit deja de 1000 de ori, în acest moment, capacitatea de a face acest lucru în timp ce țineți un proiect arduino este la fel de importantă în mod implicit, precum capacitatea de a ține o fieră de lipit în mâini, în timp ce țineți ceva de lipit.Codul pentru emițător, receptor, bibliotecile necesare și un fișier pentru imprimarea 3D a carcasei pot fi descărcate într-o arhivă la sfârșitul articolului.


receptor



Pentru receptor, veți avea nevoie de o altă placă Arduino, un modul radio (fără antenă, telemetria nu este încă implementată aici) și un stabilizator de 3,3 volți. Receptorul este lipit pe panou. Puterea receptorului este realizată în același mod cu puterea oricărui alt receptor din fabrică, de la o ieșire specială a regulatorului de viteză.




Pe cont propriu, vreau să adaug că în loc de antena standard a acestui modul, este de dorit să lipați aceeași antenă care este instalată în modul cu un amplificator (doar fără carcasă). Acest lucru nu va afecta în special intervalul de recepție, dar va afecta semnificativ calitatea recepției, în funcție de poziția modelului controlat în diferite planuri. Pentru receptoare și emițătoare moderne, în acest scop, sunt instalate chiar și două antene, care sunt situate perpendicular între ele.


În plus, autorul a implementat o funcție foarte importantă - ieșirea din semnalul receptorului PPM. Schematic, nu se schimbă nimic în acest caz, trebuie doar să completați un alt firmware, semnalul PPM este emis la fel ca în majoritatea receptoarelor din fabrică - de la primul canal (gaz).




Aceasta este totul. Personal, mi-a plăcut foarte mult proiectul și, așa cum am spus deja, intenționează să-l repete în caz, de pe telecomanda unei jucării pentru copii. În meniu puteți selecta modul de la liniar la exponențial și reglați valoarea fiecărui stick. Rețineți că valoarea medie a fiecărui canal trebuie să fie 127.


Puteți descărca tot ce aveți nevoie aici.

Tot succesul în lucrare!
8.9
8.6
8.6

Adaugă un comentariu

    • zâmbetzâmbetexaxabinedontknowYahooNea
      șefzgârieturăpăcălidada-daagresivsecret
      scuzedansdance2dance3iertareajutorbăuturi
      oprireprietenibungoodgoodfluiersincopălimbă
      fumaplauzeCrayvestimbatjocoritorDon-t_mentiondescărcare
      căldurămânioslaugh1mdaîntâlniremoskingnegativ
      not_ifloricele de porumbpedepsicititsperiasperiecăutare
      batjocurăthank_youacestto_clueUmnikacutconveni
      răubeeeblack_eyeblum3roșilăudăroșenieplictiseală
      cenzuratpleasantrysecret2amenințavictorieyusun_bespectacled
      ShokRespektlolprevedbun venitKrutoyya_za
      ya_dobryiajutorne_huliganne_othodifludinterdicțieînchide
30 comentariu
feonor12 scrie corect că intrările neutilizate trebuie trase fie la sol, fie la putere. Am început să respect această regulă imediat ce am învățat să lucrez cu cipuri CMOS. O, cât timp a fost ... Și în microcontrolere, desigur, nimeni nu a anulat această regulă.
multumesc mult !!!!!
Autorul
În procesul de compilare, am reasignat și câteva variabile și, de asemenea, am scris că există prea puțină memorie, deși s-a scris imediat că schița folosește 77% din memorie. Schița este stângace, nimeni nu neagă, dar funcționează. Principalul lucru care a compilat. Construiți un circuit de testare și verificați cum funcționează, problemele trebuie rezolvate pe măsură ce devin disponibile. Atunci când asamblați circuitul de încercare al emițătorului - toate canalele neutilizate, fie că este vorba despre joystick-uri, un comutator de comutare sau o tastatură, în general, tot ceea ce nu este conectat trebuie să fie legat la sol sau la 5V, dacă lăsați dispozitivul „agățat în aer” nu va funcționa corespunzător, cu acest lucru s-a ciocnit când s-a repetat.

ZY Înregistrați-vă și puteți.
Oaspetele Andrei
aproape că s-a dovedit ca în fotografia ta.
abia acum înjură, pe scurt, aici
C: \ Utilizatori \ mozga \ Documente \ Arduino \ library \ Adafruit_GFX_Library \ Adafruit_GFX.cpp: în funcția de membru 'valoare booleană Adafruit_GFX_Button :: conține (int16_t, int16_t)':

C: \ Users \ mozga \ Documents \ Arduino \ library \ Adafruit_GFX_Library \ Adafruit_GFX.cpp: 1120: 28: avertizare: comparație între expresii întregi semnate și nesemnate [-Wsign-compare]

returnare ((x> = _x1) && (x <(_ x1 + _w)) &&

                             ^

C: \ Users \ mozga \ Documents \ Arduino \ library \ Adafruit_GFX_Library \ Adafruit_GFX.cpp: 1121: 28: avertizare: comparație între expresii întregi semnate și nesemnate [-Sign-compara]

(y> = _y1) && (y <(_ y1 + _h)));
în cele din urmă completarea compilării
și nu scrie suficientă memorie și este posibil ca programul să nu funcționeze stabil.
îmi pare rău, nu pot pune o fotografie.
Autorul
Îndepărtați / puneți două rachete.

#define SSD1306_128_64
// #define SSD1306_128_32
// #define SSD1306_96_16

Așa ar trebui să fie.
Oaspetele Andrei
multumesc mult.
nu înjura mult.
Acum voi merge pe Google, ceea ce înseamnă:
(Comentează cel de-al doilea și dezacordează primul.)
Autorul
Pentru doi, la naiba, google minute. În fișierul Adafruit_SSD1306.h, trebuie să găsiți aceste linii

// #define SSD1306_128_64
#define SSD1306_128_32
// #define SSD1306_96_16

comentează al doilea și dezacordează primul.
Autorul
Ascultă, nu am scris acest cod și nu sunt specialist în programare. Ce știam, atunci mi-a cerut, nu vi se potrivește. Funcționează pentru autor, am colectat-o ​​- funcționează și pentru mine. Nu funcționează pentru dvs., astfel încât eroarea nu este în cod sau în bibliotecă. Contactați forumul tematic, accesați sursa și scrieți-i autorului sau așteptați să răspundă cineva care știe aici. Am spus că nu știu care este problema, ce mai era nevoie de la mine, ca să renunț la tot și să încep să rezolv problema pentru tine? Scuze, nu.
Oaspetele Andrei
"multumesc pentru ajutor"
eroare în biblioteca Adafruit_SSD1306.h
Și am o problemă de „ordine privată”.
asta dă afară.
Transmitter_code: 102: 2: eroare: #error ("Înălțime incorectă, reparați acest lucru în Adafruit_SSD1306.h!");
poate ce număr sau literă ar trebui schimbat acolo, dar nu știu
Autorul
Atunci nu știu, totul a fost compilat și a fost cusut. Acum am verificat interesul, totul a fost compilat și el. Deci o problemă privată.

Oaspetele Andrei
Biblioteca Adafruit_SSD1306-master
a instalat programul arduino ide în programul propriu-zis
Autorul
Există o eroare în timpul compilării? El înjură la biblioteca de afișaj. Ați instalat miercuri biblioteca master Adafruit_SSD1306 din arhivă?
Oaspetele Andrei
Alo
Am decis să verific mai întâi schițele. Receptoare PPM și PWM (citiți.)
Am început să verific transmițătorul, dă o eroare.
#error („Înălțime incorectă, vă rugăm să reparați acest lucru în Adafruit_SSD1306.h!");
Traducător Google tradus.
#error ("Înălțimea este incorectă, corectați acest lucru în Adafruit_SSD1306.h!");
Și ce ar trebui să fac acum, nici măcar nu știu ..............
Autorul
Salut tuturor. În general, nu am nici timpul, nici dorința de a termina aplicația în viitorul apropiat, astfel încât să pot scrie un articol pe ea, dar de mult timp am desenat un semn al receptorului care trebuie luat. Nu am colectat placa, dar am verificat-o de mai multe ori, totul pare să fie corect. Câteva cuvinte pe care nu ar exista întrebări:
Stabilizatorul modulului radio se lipeste în smd pe placă (ASM1117 la 3,3 V, pornind prin fișă tehnică). Dacă va funcționa instabil sau pentru o distanță scurtă - atârnați 10 microfaraduri de condensatori direct pe contactele de alimentare ale modulului (nu am găsit un loc unde să împingeți pe placă).
Am sudat smd-ul, apoi jumpers-urile, urmate de arduino (labe de programare la pieptenele de ieșiri), cel de-al doilea "etaj" al modulului radio, așa cum am făcut-o în regulatorul de zbor. Modulul radio se suprapune pe butonul de resetare a arduino-ului, așa că l-am adus în partea din spate a signetului (doar l-am vândut de la arduino și l-am vândut). Dacă programatorul dvs. trage resetarea sau nu intenționați să vă refaceți după asamblare, puteți îndepărta butonul și șinele de la udare, eșarfa va ieși cu câțiva milimetri mai îngustă și mai scurtă (20x50 mm). În orice caz, eșarfa a ieșit foarte compactă. Pe modulul radio, este de dorit să tăiați antena și lipirea tipărită ca la receptoarele standard de 2,4 GHz (foto de mai jos). Acest lucru nu va afecta gama, dar recepția se va îmbunătăți cu diferite orientări în spațiu. Putere 5V la orice conector de la regulatorul de greutate sau externe.
Setați placa finisată într-un contract termic transparent, puteți pre-desena, imprima și insera o placă cu denumirea grupurilor de contact. Sau faceți o friptură ca același stabilizator de zbor.
Ei bine, totul pare să fie puteți descărca un signet aici.



Iată ciotul. zbor, un articol despre el în profilul meu.


Invitat Vladislav
Scrie în ajutor, am colectat schița în bucăți, de când nativul meu nu a început, acum totul funcționează bine, Viber 0993482290
robotul
ajuta cu skatech-ul. sunt multe greseli !!
Autorul
Îmi fac appu în timpul liber chiar și din timpul liber, o tautologie, dar este adevărat.Pentru că există o aplicație din fabrică flysky i6, aceasta, de dragul interesului sportiv, o colectez. Când o voi termina complet, voi colecta receptorul normal - voi întocmi totul într-un articol separat.
Dar ca să nu aveți îndoieli cu privire la performanțele sale, aici a fluturat aileron:

După cum puteți vedea, funcționează. Un canal conectat, de exemplu. Firul de la receptor este alimentat, alimentat prin încărcare de la telefon.

Deși este mult de dezvoltat, în mare parte, este în partea de software, pentru a realiza alegerea celui mai zgomotos canal, obligatoriu, pentru a colecta mai mulți receptori, adăugați memorie pentru cel puțin 5 modele. Chiar și telemetria poate fi spălată dacă doriți. Dar pentru asta avem nevoie fie de ajutorul entuziaștilor, fie de limba Arduino în sine este mai bine să învețe, sau autorul să scrie, poate că acest lucru îl va interesa. Eu, în viitorul apropiat, nu voi face acest lucru cu siguranță.

Și am spus deja despre mâncare. 1 cutie din 18650 + MT3608 + ASM1117 + TP4056 cu protecție ≈4-5 dolari. Ca opțiune, dar există multe dintre ele, cel puțin din baterii.
Andrew1978
Afișați videoclipul telecomenzii dvs. ..... Despre prostii - prostii pot fi pentru dvs., dar reprezintă 65% din costul întregii telecomenzi - trei butoaie, un încărcător și trei litii ....
Autorul
Nimeni nu se deranjează să organizeze mesele altfel. Din anumite motive, toată lumea se agață de prostii, omitând nuanța principală - acestea sunt „creierele” gata făcute, receptorul și emițătorul pe un semnal PPM standard și cum să le hrănească și, în acest caz, să se înlăture este al zecelea lucru. Este posibilă alimentarea de la o cutie printr-un convertor DC / DC impulsiv, corectând codul pentru a indica corect încărcarea unei cutii. Până acum am mâncat din coroană, căci pentru utilizare permanentă nu mi-am conceput propria versiune.
Andrew1978
Ce perversiune pentru a alimenta cele trei litii cu o telecomandă care folosește 5v și 3.3v….
Autorul
Autorul
Vrei să îți faci un caz? Aceasta este o pierdere de timp, în mod normal, tot nu se va rezolva. Pe site-urile reclame clasificate vând o grămadă de telecomenzi din jucării, inclusiv tip pistol. Vindeți pentru un ban (copilul a ucis jucăria, dar telecomanda rămâne). Alegeți mai puțin masiv și refaceți. Modificarea este redusă la aruncarea întregii umpluturi și înrădăcinarea la controlul potențiometrelor liniare.
O altă opțiune este să cumpărați un appu cu un umplut cântat, dar întreaga mecanică. Pe site-urile modelatorilor apar din când în când.
Appa mea va arăta așa ceva (placa de identificare este test, apoi o voi face mai frumoasă)
Invitat Eugene
asta este mecanica și interesele și nu există nimic cu care să te redescoperi
Autorul
De ce? Da, și cine se oprește, este o problemă de mecanică. Scoateți consola pistolului din jucărie, modificați-o și va fi așa. Puteți lua orice, un joystick pentru computer pentru simulatoare de zbor, chiar și un gamepad de la Sonya. Aici schema principală.
Mă reunesc deja dintr-o consolă de jucării.
Invitat Eugene
echipament de tip pistol ar fi fabricat ...
Autorul
Doar bifat, totul se deschide și se descarcă. Poate că aveți un fel de blocant de reclame sau ceva de genul.
Dacă altcineva are probleme cu descărcarea - scrie, voi apela la administrator.
acesta nu funcționează aici
Autorul
Puteți descărca tot ce aveți nevoie aici.

Faceți clic aici
Autorul
Puteți descărca tot ce aveți nevoie aici.

Faceți clic aici
și unde este schița echipamentului

Vă sfătuim să citiți:

Înmânează-l pentru smartphone ...