Cuprins:
- Pasul 1: fundal
- Pasul 2: Abilități necesare
- Pasul 3: Costul de construit
- Pasul 4: Lista pieselor
- Pasul 5: Componente ale sistemului - Mașină
- Pasul 6: Componente ale sistemului - Configurarea bateriei auxiliare (opțional)
- Pasul 7: Componente ale sistemului - Aprindere
- Pasul 8: Componente ale sistemului - Selector de viteze
- Pasul 9: Componente ale sistemului - Frâne
- Pasul 10: Componente ale sistemului - Accelerator
- Pasul 11: Componente ale sistemului - direcție
- Pasul 12: Componente ale sistemului - Receptor / Transmițător
- Pasul 13: Programul final
Video: Mașină RC de dimensiuni complete: 14 pași (cu imagini)
2024 Autor: John Day | [email protected]. Modificat ultima dată: 2024-01-30 11:42
Ce este?
Credeți că mașinile RC sunt doar pentru copii? Mai gandeste-te! Acest tutorial vă va arăta cum să vă adaptați și să construiți o mașină RC 1: 1 de dimensiuni complete. Echipând o mașină cu aceste comenzi este o bună platformă de pornire pentru a vă construi propria mașină complet autonomă (faza următoare).
NOTĂ: Această versiune se bazează pe o mașină non-drive-by-wire. Dacă doriți să citiți celălalt tutorial pentru o mașină „drive-by-wire”, verificați-l aici.
Pasul 1: fundal
Întotdeauna mi-am dorit să-mi construiesc propria mașină de conducere automată și nu există o modalitate mai bună de a începe decât modificarea unei mașini vechi pentru ca toate comenzile să fie manevrate fără ca ființa umană să fie în mașină. Deci, prima etapă este montarea unei mașini cu aceste comenzi și apoi acționarea lor de la distanță prin RC.
Am decis să documentez acest proces pentru a le arăta celorlalți că bariera de intrare pentru a construi o mașină autonomă este foarte scăzută și nu foarte scumpă (<2 mil. USD). Vreau mii de oameni care construiesc aceste mașini, așa că avem mult mai mulți oameni care au experiență reală în mecatronică, informatică și inginerie în general.
Abilitatile mele
- Construit și restaurat peste 8 mașini și 10 motociclete
- Am lucrat la fabricarea toată viața mea
- Montator calificat și Turner
- Instrumentar calificat
- Licențiat în informatică
- Fondator al QRMV - specializat în robotică industrială ghidată de viziune
- Cofondator / CTO al portabilelor ollo - telefon mobil controlat de voce pentru vârstnici / vârstnici (alertă de viață modernă)
- Mai multe brevete (acordate și provizorii) de telefonie, geo-poziționare și viziune computerizată
Pasul 2: Abilități necesare
Am o experiență tehnică foarte importantă, dar cred că oricine este puțin capabil să poată construi unul dintre acestea destul de ușor. Dacă nu aveți toate abilitățile, lucrul cel mai ușor de făcut este să cereți altora pe care știți să se alăture la construcție. În acest fel vă puteți învăța reciproc pe măsură ce mergeți.
Mecanici - cunoașteți-vă drumul în jurul unei mașini și componentele acesteia și cum funcționează împreună
Mecanic - să puteți utiliza o mare varietate de instrumente manuale și electrice (burghiu, polizor, strung, etc.)
Electronică - înțelegeți, proiectați și construiți circuite de bază (selectarea componentelor, lipire etc.)
Redactare - Să puteți desena componente în CAD pentru a fi prelucrate de terți
Programare - Fii capabil să construiești schițe Arduino simple, să folosești git etc.
Pasul 3: Costul de construit
Pe scurt - <2k $. Costul pentru construirea uneia dintre aceste mașini se reduce într-adevăr la cât puteți obține mașina care rulează, deoarece este probabil cea mai mare și cea mai variabilă componentă a costului din proiect. Pentru prima mașină pe care am construit-o, am reușit să-mi iau micul Honda Civic din 1991 pentru 300 de dolari și era încă înregistrată.
Pentru toate celelalte componente de care veți avea nevoie, acestea sunt în mare parte „disponibile”, astfel încât prețurile nu vor varia prea mult.
Pasul 4: Lista pieselor
Lista completă a pieselor și furnizorii / producătorii pot fi găsite aici.
- Mașină (stil non-by-wire)
- Actuator liniar (electric) - Selector de viteze
- Actuator liniar (electric) - Frâne
- Servo (cuplu ridicat) - Accelerator
- Modul electronic de servodirecție - Direcție
- Arduino Uno - Controlează integrarea sistemului
- Alimentare reglată de curent mare (5A) 5-6V (pentru servo)
- Controler și receptor RC 8/9 canale
- Baterie cu ciclu profund (opțional)
- Baterie auxiliară - releu sensibil la tensiune (opțional)
- Cutie baterie (opțional)
- Izolator baterie
- Driver de motor 60A (multidirecțional)
- 2 x driver de motor 32A (multidirecțional)
- 2 x relee 30A 5V
- 2 x Potențiometre glisante
- 2 x potențiometre multi-turn
- ~ 50A întrerupător sau siguranță
- Butoane și contacte de oprire de urgență
- Sârmă (curent mare pentru motoare / baterie și multicore pentru conectare)
- Cutie siguranțe auto
- Bara plana din otel (25x3mm si 50x3mm)
- Placă de aluminiu (3-4mm)
- Cutii de carcase ABS pentru electronice
- Manual de atelier auto
Pasul 5: Componente ale sistemului - Mașină
Notă: Pentru acest tutorial mă bazez pe o mașină care nu este „drive-by-wire”, fiind un Honda Civic din 1990. Dacă doriți să construiți pe o mașină „drive-by-wire”, vă voi publica informațiile despre construcție în următoarele luni.
Pentru mașină pe care doriți să vă asigurați că aceasta bifează următoarele:
- Mașina pornește, rulează și poate conduce (dacă nu, puneți-o în funcțiune)
- Are transmisie automată
- Frânele funcționează
- Alternatorul este în stare bună de funcționare
Pasul 6: Componente ale sistemului - Configurarea bateriei auxiliare (opțional)
În acest tutorial voi folosi o baterie secundară / auxiliară cu ciclu profund, dar aceasta este opțională. Am ales să fac acest lucru în construcția mea, deoarece bateria originală din mașină era foarte mică și a existat o afacere pentru a obține o baterie cu ciclu profund cu un releu de baterie auxiliar configurat la același preț ca o altă baterie. Principalul lucru aici este că doriți o baterie și un alternator care funcționează bine în mașină, care să poată furniza curent mare atunci când este necesar.
În primul rând, deconectați bateria mașinilor, deoarece vom lucra la ambele terminale. Configurarea unei baterii auxiliare în mașină este destul de simplă. În primul rând, găsiți un loc adecvat / sigur pentru a monta a doua baterie în mașină, portbagaj sau dacă aveți suficient spațiu, sub capotă.
Montați releul sensibil la tensiune cât mai aproape de bateria de pornire.
Folosiți niște sârme de calibru greu (6 AWG) pentru a trece de la borna pozitivă a conectorului bateriei de pornire la releul sensibil la tensiune. Apoi rulați o altă bucată din firul de măsurare greu de la releul sensibil la tensiune la bateria auxiliară și conectați în siguranță un terminal al bateriei la acesta.
Releul sensibil la tensiune ar trebui să aibă un fir negativ care trebuie conectat la masă. Asigurați-vă că acest fir / conector are un contact de masă foarte bun.
La bateria auxiliară, rulați un fir de manometru greu (6 AWG) de la terminalul negativ la o parte a caroseriei metalice a mașinilor și asigurați-vă că are o masă solidă (metal gol). Puneți conectori corespunzători la ambele capete și verificați dacă împământarea este corectă.
Notă: Asigurați-vă că bateria auxiliară este montată în siguranță și nu se va deplasa în timp ce conduceți. Vă recomandăm să-l introduceți într-o cutie pentru baterii pentru a-l păstra în siguranță și ordonat.
Vă recomand cu încredere să utilizați un izolator de baterie în sistemul dvs. pentru a permite izolarea simplă și rapidă a puterii. Amplasați această linie de la bateria dvs. la cutia de siguranțe a controlerului
Pasul 7: Componente ale sistemului - Aprindere
Majoritatea mașinilor pornesc cu o cheie care a fost rotită în contact. Apoi, aceasta aplică energie diferitelor componente din mașină, inclusiv ECU, solenoid de pornire, radio, ventilatoare etc. Vom înlocui sistemul de chei cu relee pe care le putem declanșa de la Arudino.
Veți avea nevoie de diagramele electrice ale mașinilor pentru a efectua această lucrare, dar în mod normal le puteți găsi online făcând o căutare rapidă pe Google sau pur și simplu cumpărând una online. Aș recomanda să obțineți manualul complet al atelierului, deoarece acesta va include și alte informații, inclusiv orice sfaturi / trucuri privind îndepărtarea anumitor componente. În plus, este întotdeauna minunat să ai informații la îndemână pentru a diagnostica și a remedia orice alte probleme cu mașina pe care le-ai putea întâlni.
M-aș uita, de asemenea, la îndepărtarea completă a coloanei de direcție (inclusiv butoiul de aprindere, tija indicatoare etc.) din rack pentru a vă oferi mai mult spațiu, în plus, îl veți înlocui cu un sistem electronic de servodirecție, astfel încât nu este nevoie ca vechea configurare să fie să fie lăsat în mașină.
Uitați-vă la schemele electrice ale mașinii pentru aprindere și determinați firul (cablurile) care intră în contact. În mod normal, va exista un fir de alimentare constant pozitiv fuzionat de la baterie (IN) și apoi o grămadă de alte fire care se alimentează pentru a alimenta componentele mașinilor în diferitele etape ale ciclului de aprindere / putere al mașinilor (Off, ACC, IGN1 / Run, IGN2 / Start). Aflați care sunt firele care, deoarece veți avea nevoie doar în majoritatea mașinilor mai vechi, de firul pozitiv Main IN, firele IGN1 / Run și IGN2 / Start pentru a pune mașina în funcțiune, dar aceasta variază de la mașină la mașină.
Pentru mașina pe care o aveam aveam nevoie doar de 3 fire în total, dar furnizau curent mare, așa că aveam nevoie de niște relee de mare capacitate pentru a schimba sarcina. Releele pe care am ajuns să le folosesc sunt module de 30A 5V pe care le-am găsit online. Am vrut ceva care să poată gestiona curentul mare ~ 30A și să poată fi comutat pur și simplu printr-un semnal de 5V.
Sârmă în firele de contact la relee, după cum este necesar. Verificați întotdeauna dacă releele funcționează înainte de a le monta, deoarece am avut mai multe relee „morți la sosire” în viața mea de a construi lucruri, ceea ce mi-a costat literalmente câteva zile de la găsirea defecțiunilor mele pe viață.
Veți dori ca aceste relee să funcționeze în moduri diferite. Releul IGN1 / Run din sistemul meu a pornit toate mașinile ECU, ventilatorul radiatorului, modulul de aprindere care într-un anumit sens mi-ar permite să pornesc / opresc mașinile. Pur și simplu, fără a fi alimentată modulul de aprindere, mașina ar porni, dar nu ar porni niciodată. Releul IGN2 / Start a fost conectat direct la solenoidul de demaraj care ar efectua efectiv motorul. Cu acest releu, ați dori doar să aveți acest moment activ pentru a pune mașina în funcțiune, dar odată ce aceasta funcționează, ați dori să o decuplați, astfel încât să nu ucideți motorul de pornire.
Testarea
Circuit - Alcătuiește un comutator simplu (IGN1 / Run Relay) și un circuit de buton momentan (IGN2 / Start) ca intrări pentru Arduino
Programare - Scrieți un script de test simplu pentru a testa ambele relee funcționează fără bateria de pornire conectată. Odată ce aveți încredere în circuit și script, conectați bateria de pornire și testați-o. În acest moment ar trebui să puteți porni și opri mașina.
Reper
În acest moment ar trebui să aveți;
- IGN1 / Rulează releu cablat
- IGN2 / Start releu cablat
- controlul ambelor operațiuni de pornire / oprire a releelor prin Arduino
- circuit de testare pentru controlul releelor
- să poți porni mașina
- să puteți opri mașina
Pasul 8: Componente ale sistemului - Selector de viteze
Întrucât folosim o mașină cu transmisie automată în această construcție, este ușor să schimbăm vitezele, deoarece trebuie doar să mutăm pârghia într-o mișcare liniară în anumite puncte.
Notă: Am decis să folosesc pârghia existentă și să nu fac legătura direct la cablul de transmisie, deoarece am vrut să mențin mașina cât mai normală și interiorul cât mai normal posibil.
Singurul lucru dificil la care v-ați putea gândi este că majoritatea transmisiilor automate necesită apăsarea unui buton înainte de a putea muta pârghia transmisiei. Întrucât folosim un actuator liniar care are un șurub melcat, putem folosi capacitatea sa de autoblocare pentru a menține maneta de transmisie în poziție atunci când nu o mișcă. Deci, în ceea ce privește butonul, puteți continua să îl blocați permanent în starea „deprimat”.
Servomotorul liniar folosit aici trebuia să aibă suficientă cursă pentru a trece de la poziția Parc la Reverse, Neutral și apoi la Drive. În cazul mașinilor mele se afla la aproximativ 100 mm de locul în care montam actuatorul. Forța necesară pentru a mișca pârghia a fost foarte mică (<5 kg), așa că am ajuns să folosesc un actuator de forță de 150 mm curse / 70 kg, deoarece era în stoc.
Pentru a monta baza actuatorului, am sudat un suport și l-am atașat la o parte a cadrului de oțel care a fost utilizat în consola centrală. Acest lucru i-a permis să pivoteze ușor pe măsură ce se extindea / retrage prin cursa sa.
Pentru atașarea la pârghia de transmisie, am tăiat câteva bucăți de bare plate din oțel și am folosit câteva șuruburi pentru ao menține în poziție. Nu este strâns cu putere în jurul manetei, ci doar îl conține. Acest lucru îi permite să se miște și să nu se lege în timp ce se mișcă.
Determinând poziția actuatorului am folosit un potențiometru glisant care ar trimite un semnal analog înapoi la Arduino. Am făcut o montură personalizată pentru oală la actuator dintr-o bară plată. Apoi am pliat peste filele glisorului ghivecelor în jurul șurubului suportului de fixare a pârghiei de transmisie. Funcționează, dar ar trebui să schimb acest lucru pentru a fi un atașament mai bun pentru glisorul oalelor.
Pentru alimentarea dispozitivului de acționare am folosit un driver de motor care poate merge înainte și înapoi și poate fi controlat printr-un microcontroler. Am folosit un driver de motor 2x32A Sabertooth de la Dimension Engineering, dar nu ezitați să folosiți orice funcționează similar. Primul canal va fi utilizat pentru a controla actuatorul selectorului de viteze și al doilea va controla actuatorul frânei. Cablarea și configurarea acestui driver motor sunt simple și bine documentate. Conectați pozitivul și negativul bateriei așa cum este etichetat și atașați firele actuatorilor la ieșirea motorului 1. Conectați 0V la masa Arduino și firul S1 la un pin de ieșire digital.
Notă: Am folosit configurația serială simplă pe această versiune și a părut că funcționează destul de bine. Dimension Engineering a creat, de asemenea, câteva biblioteci pentru a simplifica comunicarea cu driverele lor. De asemenea, au câteva exemple simple pentru a vă pune în funcțiune rapid.
Testarea
Circuit - Pentru a deplasa actuatorul înainte și înapoi, compuneți un circuit simplu cu două butoane momentane ca intrări. Una pentru a extinde actuatorul și cealaltă pentru a retrage actuatorul. Acest lucru vă va oferi apoi un anumit control asupra poziționării actuatorului în pozițiile angrenajului.
Programare - Scrieți un script simplu pentru a muta actuatorul înapoi și înainte și scoate valoarea din potențiometrul glisant. Când rulați scriptul, luați notă de valorile potențiometrului pentru pozițiile Park, Reverse, Neutral și Drive. Veți avea nevoie de acestea pentru a spune actuatorului să se deplaseze în aceste poziții în codul complet.
Reper
În acest moment ar trebui să aveți;
- actuator montat sigur în mașină
- atașare în jurul selectorului / actuatorului de viteze
- șofer de motor conectat cu actuator și Arduino
- controlul extensiei / retragerii actuatorului prin intermediul Arduino
- circuit de testare pentru controlul extensiei / retragerii actuatorului
- cunoașteți valorile / pozițiile potențiometrului pentru fiecare poziție a vitezei
Notă: Puteți utiliza și un circuit de comutare cu mai multe poziții pentru a testa intrarea selectorului de viteze de pe Arduino după ce cunoașteți pozițiile. În acest fel, veți putea copia codul selectorului de viteze direct în baza de cod auto completă.
Pasul 9: Componente ale sistemului - Frâne
Oprirea mașinii este destul de importantă, așa că doriți să vă asigurați că obțineți corect acest lucru. Frânele unei mașini sunt acționate în mod normal de picior, care poate aplica o forță mare atunci când este necesar. În această construcție folosim un alt actuator liniar care va acționa piciorul. Acest servomotor trebuia să aibă o forță mare (~ 30 kg), dar avea nevoie doar de o cursă scurtă de ~ 60 mm. Am reușit să obțin un actuator de forță de 100 mm cursă / 70 kg, deoarece era în stoc.
Găsirea locului potrivit pentru montarea actuatorului a fost puțin dificilă, dar cu unele încercări și erori am găsit o poziție sigură. Am sudat o bucată de bară de oțel pe partea laterală a brațului pedalei de frână și am forat o gaură prin ea unde am trecut un șurub din partea superioară a actuatorului. Apoi am sudat într-un suport de montare pivotant la celălalt capăt al actuatorului la planul de podea al mașinii.
Determinând poziția actuatorului, am folosit un potențiometru glisant (aceeași configurație ca actuatorul cu selector de viteze) care ar trimite un semnal analog înapoi la Arduino. Am făcut o montură personalizată pentru oală la actuator dintr-o bară plată. Apoi am pliat peste filele glisorului ghivecelor în jurul unei mici plăci de bare plate pe care am montat-o la capătul actuatorului.
Pentru a alimenta dispozitivul de acționare am folosit celălalt canal al driverului de motor Sabertooth 2x32A. Pentru a controla ambele motoare trebuie să utilizați doar un fir (S1).
Notă: Am folosit configurația serială simplă pe această versiune și a părut că funcționează destul de bine. Acest driver de motor poate fi configurat în mai multe moduri, deci alegeți o metodă pe care o preferați.
Testarea
Poziționare - Înainte de a conecta actuatorul direct la pedala de frână, veți dori să aveți o idee despre cât de departe trebuie să parcurgă pedala pentru a acționa frânele. Mi-am împins piciorul în jos pe frâne pentru a determina mașina să se oprească (ținând oprire, nu frâne complete). Am mutat apoi dispozitivul de acționare pentru a-i alinia suportul de conexiune cu accesoriul de frână sudat. Am înregistrat valoarea de ieșire a potențiometrului, așa că am cunoscut poziția maximă de depresiune a frânei.
Am făcut la fel ca mai sus pentru poziția de frânare oprită.
Circuit - Pentru a deplasa actuatorul înainte și înapoi, compuneți un circuit simplu cu două butoane de moment ca intrări. Una pentru a extinde actuatorul și cealaltă pentru a retrage actuatorul. Acest lucru vă va oferi apoi un anumit control asupra poziționării actuatorului în pozițiile angrenajului.
Programare - Scrieți un script simplu pentru a muta actuatorul înapoi și înainte și scoate valoarea din potențiometrul glisant. Când rulați scriptul, luați notă de valorile potențiometrului pentru pozițiile de pornire și oprire a frânei. Veți avea nevoie de acestea pentru a spune actuatorului să se deplaseze în aceste poziții în codul complet.
Reper
În acest moment ar trebui să aveți;
- actuator montat sigur în mașină
- accesoriu pentru pedala de frână la servomotor
- șofer de motor conectat cu actuator și Arduino
- controlul extensiei / retragerii actuatorului prin intermediul Arduino
- circuit de testare pentru controlul extensiei / retragerii actuatorului
- cunoașteți valorile / pozițiile potențiometrului pentru pozițiile de oprire și pornire ale frânei
Notă: În codul final folosesc semnalul controlerelor RC de la canal pentru a controla cât de multă presiune trebuie aplicată frânei proporțional cu poziția sa de blocare. Acest lucru mi-a dat gama de la complet oprit până la complet pornit.
Pasul 10: Componente ale sistemului - Accelerator
Acum, să punem motoarele în mișcare și, pentru a face acest lucru, trebuie să conectăm acceleratorul. Deoarece folosim o mașină care nu este „drive-by-wire”, vom trage de fapt un cablu care este conectat la corpul clapetei de accelerație. Corpurile clapetei de accelerație au în mod normal un arc puternic care închide fluturele foarte repede atunci când acceleratorul este eliberat. Pentru a depăși această forță, am folosit un servo cuplu mare (~ 40 kg / cm) pentru a trage cablul.
Am înșurubat acest servo pe o bucată de bară din oțel și am montat pe partea laterală a consolei centrale cu niște consolă unghiulară dreaptă. De asemenea, a trebuit să cumpăr un cablu accelerator mai lung (2 m), deoarece cablul stoc care a fost folosit în mașină era prea scurt. Acest lucru mi-a oferit, de asemenea, mult mai multe opțiuni de montare, ceea ce mi-a salvat mult timp.
Rețineți că aceste servomotoare cu cuplu ridicat trag în mod normal mai mult decât curentul normal, deci asigurați-vă că îl puteți alimenta corespunzător. Am folosit o sursă de alimentare reglată de 5V 5A, care îi oferă cu ușurință suficient curent pentru a rula la cuplu maxim. Cablul de semnal de la servo a fost apoi alimentat înapoi la o ieșire digitală a Arduino.
Testarea
Programare - Scrieți un script simplu pentru a roti servo-ul din poziția acceleratorului oprit până la pornire completă (dacă sunteți joc). Am adăugat un parametru de configurare a acceleratorului care ar limita cantitatea de mișcare pe care ar trebui să o aibă servo pentru a-mi permite să reglez rapid senzația acceleratorului.
Reper
În acest moment ar trebui să aveți;
- servo montat în siguranță
- cablu accelerator conectat de la corpul clapetei de accelerație la brațul de comandă servo
- sursa de alimentare cu cablu pentru a furniza suficient curent la servo
- controlul poziției servo prin Arduino
- poziții cunoscute pentru servo pentru accelerator oprit și complet pornit
Notă: În codul final folosesc semnalul controlerelor RC de pe canal pentru a controla cât de multă mișcare trebuie aplicată acceleratorului proporțional cu poziția sa de stick. Acest lucru mi-a dat gama de la complet oprit până la complet cu parametrul de configurare a acceleratorului ca limitator.
Pasul 11: Componente ale sistemului - direcție
A fi capabil să conducem mașina acolo unde vrem să meargă este destul de important. Majoritatea mașinilor fabricate în trecut (pre ~ 2005) foloseau servodirecție hidraulică pentru a face rotirea volanului foarte ușoară pentru utilizator. De atunci, datorită tehnologiei și producătorilor auto care au fost rugați să reducă emisiile, au dezvoltat sisteme de servodirecție electronică (EPS). Aceste sisteme utilizează un motor electric și un senzor de cuplu pentru a-l ajuta pe șofer să rotească roțile. Prin îndepărtarea pompei de servodirecție hidraulică, motorul este acum mai puțin tensionat, ceea ce permite, la rândul său, mașina să funcționeze la turații mai mici ale motorului (reducând emisiile). Puteți citi mai multe despre sistemele EPS aici.
În configurarea pentru a conduce mașina mea mică, am folosit un sistem electronic de servodirecție (EPS) de la un Nissan Micra din 2009. L-am achiziționat de la o mașină de epavat / șantier pentru 165 de dolari. Am montat acest modul EPS pe șuruburile de montare existente ale coloanei de direcție printr-un suport pe care l-am îndoit dintr-o bară plată de oțel.
De asemenea, a trebuit să cumpăr arborele inferior al coloanei de direcție (~ 65 USD) pentru a conecta EPS-ul la canelura rack-ului de direcție. Pentru ca acest lucru să se potrivească în mașina mea, am modificat arborele coloanei de direcție prin tăierea și sudarea canelurii coloanei de direcție originale pe care am decupat-o din Honda pe acest arborelui.
Pentru a alimenta / controla motorul EPS în stânga sau în dreapta, am folosit un controler 2x60A Sabertooth Motor Driver de la Dimension Engineering. Am folosit doar unul dintre canale, dar trebuie să vă asigurați că utilizați un driver de motor care poate furniza ~ 60A + continuu, poate lucra în direcții înainte / inversă și poate fi controlat și printr-un microcontroler.
Pentru a cunoaște poziția unghiului de direcție, am proiectat un senzor de poziție al unghiului de direcție personalizat. Majoritatea mașinilor folosesc o versiune digitală care funcționează pe autobuzul CAN, pe care nu m-ar putea deranja ingineria inversă. Pentru senzorul meu analogic de poziție am folosit 2 potențiometre multiturn (5 ture), 3 scripeți cu curea de distribuție, o curea de distribuție și o placă de aluminiu pentru a monta componentele. Fiecare echipament de sincronizare am forat și am bătut găuri pentru șuruburi și apoi pe vase și EPS am prelucrat apartamente pentru a opri roțile dințate să se rotească liber. Acestea au fost apoi conectate printr-o curea de distribuție. Când volanul era centrat, ghivecele se aflau la 2,5 ture. Când se afla în poziția de blocare completă a direcției din stânga, ar fi la 0,5 ture, iar cea din dreapta ar fi la 4,5 ture. Aceste vase au fost apoi conectate la intrări analogice pe Arduino.
Notă: Motivul utilizării a două ghivece a fost dacă centura a alunecat sau s-a rupt, aș putea citi diferențele dintre ghivece și arunca o eroare.
Testarea
Poziționare - Înainte de a conecta EPS la coloana de direcție inferioară și la rackul de direcție al mașinii, cel mai bine este să testați codul pentru EPS și senzorul unghiului de direcție deconectat.
Circuit - Pentru a roti EPS la stânga sau la dreapta alcătuiește un circuit simplu cu două butoane momentane ca intrări. Una pentru a roti EPS la stânga și cealaltă pentru a roti la dreapta. Acest lucru vă va oferi apoi un anumit control asupra poziționării EPS în pozițiile de direcție.
Programare - Scrieți un script simplu pentru a poziționa volanul în centru, stânga și dreapta. Veți dori să controlați cantitatea de putere acordată motorului, deoarece am constatat că 70% a fost mai mult decât suficient pentru a roti roțile în timp ce mașina era nemișcată. Furnizarea de energie către EPS va necesita, de asemenea, o curbă de accelerație / decelerare pentru a poziționa lin direcția.
Reper
În acest moment ar trebui să aveți;
- Sistem electronic de servodirecție (EPS) montat în siguranță
- coloana de direcție inferioară modificată pentru a conduce de la EPS la raftul de direcție
- senzor de poziție a unghiului de direcție care oferă unghiul rackului de direcție față de Arduino
- șofer de motor conectat cu EPS și Arduino
- controlul rotației EPS prin intermediul Arduino
- circuit de testare pentru a controla direcția de rotație a EPS
- rotiți direcția mașinii de blocare complet stângă, centru și poziția de blocare complet dreapta prin Arduino
Pasul 12: Componente ale sistemului - Receptor / Transmițător
Acum, la bitul distractiv care leagă toată munca pe care ați făcut-o până acum. Telecomanda este prima fază a îndepărtării componentei umane a conducerii, deoarece comenzile vor fi acum trimise către receptor și apoi introduse în Arduino pentru a fi acționate. În a doua fază a acestei serii, vom înlocui transmițătorul / receptorul uman și RC cu un computer și senzori pentru a controla unde merge. Dar, deocamdată, să parcurgem modul de configurare a transmițătorului și receptorului RC.
Pentru a controla componentele pe care le-am construit până acum în mașină, trebuie să conectăm canalele de ieșire ale receptorului RC la Arduino. Pentru această construcție am ajuns să folosesc doar 5 canale (Accelerator și Frână pe același canal), direcție, selector de viteze (comutator cu 3 poziții), Etapa de aprindere 1 (putere auto / funcționare) și Etapa de aprindere 2 (starter auto). Toate acestea au fost citite de Arduino folosind funcția PulseIn acolo unde este necesar.
Testarea
Programare - Scrieți un script simplu pentru a citi toate canalele receptorului pe care le utilizați pentru a vă controla sistemele din interiorul mașinii. Odată ce puteți vedea toate canalele receptorului funcționând corect, puteți începe să integrați codul pe care l-ați creat anterior cu codul receptorului. Un loc bun pentru a începe este cu sistemul de aprindere. Înlocuiți citirea intrărilor de la comutator și buton în circuitul de test pe care l-ați creat cu canalele receptorului RC pe care le-ați configurat pentru a controla sistemul de aprindere (IGN1 / Run și IGN2 / Start).
Notă: Dacă folosiți Transmițătorul Turnigy 9x așa cum am făcut-o, veți dori să îl desfaceți și să mutați câteva comutatoare. Am schimbat comutatorul momentan „Trainer” cu comutatorul „Throttle Hold” pentru a controla intrarea IGN2 / Start. Am făcut acest lucru deoarece nu puteai programa comutatorul „Trainer” ca un comutator auxiliar, dar puteai cu comutatorul „Throttle Hold”. Având un comutator momentan pentru intrarea IGN2 / Start mi-a permis să nu distrug motorul de pornire, deoarece ar bloca releul doar în timp ce
Reper
În acest moment ar trebui să aveți;
- Toate ieșirile receptorului sunt conectate la Arduino
- Arduino capabil să citească intrările pentru fiecare canal
- Fiecare canal poate controla fiecare componentă a mașinii (frâne, selector de viteze etc.)
Pasul 13: Programul final
Acest lucru depinde de dvs., dar mai jos veți găsi un link către codul meu care vă va ajuta ca punct de plecare de bază pentru a vă pune mașina în funcțiune.
Recomandat:
Robot de telepresență de dimensiuni umane cu braț de prindere: 5 pași (cu imagini)
Robot de telepresență umană cu braț de prindere: MANIFESTO Un frenemy al meu m-a invitat la o petrecere de Halloween (peste 30 de persoane) în timpul unei pandemii, așa că i-am spus că voi participa și m-am apucat să proiectez un robot de telepresență pentru a provoca ravagii la petrecerea din loc. Dacă nu sunteți familiarizați cu ce telefon
Pictor de lumină telescopică de dimensiuni mari realizat din conductă EMT (electrică): 4 pași (cu imagini)
Pictor de lumină telescopică de dimensiuni mari realizat din conductă EMT (electrică): fotografia de pictură cu lumină (scriere luminoasă) se realizează prin realizarea unei fotografii cu expunere îndelungată, ținerea camerei nemișcată și mișcarea unei surse de lumină în timp ce diafragma camerei este deschisă. Când deschiderea se închide, urmele de lumină vor părea înghețate
Braț robot de dimensiuni de buzunar MeArm V0.4: 20 de pași (cu imagini)
Braț de robot de dimensiuni de buzunar MeArm V0.4: MeArm este un braț de robot de dimensiuni de buzunar. Este un proiect început în februarie 2014, care a avut o călătorie fantastic de rapidă până la starea sa actuală datorită Open Development ca proiect Open Hardware. Versiunea 0.3 a fost prezentată pe Instructables înapoi
Cum să faci stația meteo IoT de dimensiuni de buzunar: 7 pași (cu imagini)
Cum să faci stația meteo IoT de dimensiuni de buzunar: Bună ziua, cititor! În acest instructiv, veți învăța cum să creați Weather Cube mic folosind D1 mini (ESP8266) care este conectat la WiFi-ul dvs. de acasă, astfel încât să puteți privi ieșirea acestuia de oriunde de la pământ, desigur, atâta timp cât aveți conexiune la internet
Joc de buclă de sârmă de dimensiuni de buzunar: 7 pași (cu imagini)
Pocket Sized Wire Loop Game: Hei, băieți, vă amintiți în anii 90 când PUBG nu a preluat lumea, am avut atât de multe jocuri minunate. Îmi amintesc că am crescut jucând jocul în carnavalul meu școlar. A fost atât de descurajant să-l trec prin toată bucla