Cuprins:

HackerBoxes 0013: Autosport: 12 pași
HackerBoxes 0013: Autosport: 12 pași

Video: HackerBoxes 0013: Autosport: 12 pași

Video: HackerBoxes 0013: Autosport: 12 pași
Video: Hackerboxes 0013: AUTOSPORT 2024, Iulie
Anonim
HackerBoxes 0013: Autosport
HackerBoxes 0013: Autosport

AUTOSPORT: Luna aceasta, HackerBox Hackers explorează electronica auto. Acest Instructable conține informații pentru lucrul cu HackerBoxes # 0013. Dacă doriți să primiți o cutie ca aceasta chiar în cutia poștală în fiecare lună, este momentul să vă abonați la HackerBoxes.com și să vă alăturați revoluției!

Subiecte și obiective de învățare pentru acest HackerBox:

  • Adaptarea NodeMCU pentru Arduino
  • Asamblarea unui kit auto 2WD
  • Cablarea unui NodeMCU pentru controlul unui kit auto 2WD
  • Controlul unui NodeMCU prin WiFi folosind Blynk
  • Utilizarea senzorilor pentru navigație autonomă
  • Lucrul cu Diagnostica la bord auto (OBD)

HackerBoxes este serviciul de cutie de abonament lunar pentru electronice DIY și tehnologie computerizată. Suntem pasionați, creatori și experimentatori. Hackează Planeta!

Pasul 1: HackerBoxes 0013: Conținutul cutiei

HackerBoxes 0013: Conținutul cutiei
HackerBoxes 0013: Conținutul cutiei
HackerBoxes 0013: Conținutul cutiei
HackerBoxes 0013: Conținutul cutiei
HackerBoxes 0013: Conținutul cutiei
HackerBoxes 0013: Conținutul cutiei
  • HackerBoxes # 0013 Card de referință de colecționat
  • Set șasiu auto 2WD
  • Modul procesor WiFi NodeMCU
  • Motor Shield pentru NodeMCU
  • Jumper Block pentru scutul motorului
  • Cutie baterie (4 x AA)
  • HC-SR04 Senzor cu ultrasunete
  • Senzori de reflectivitate IR TCRT5000
  • Jumperi DuPont femeie-femeie 10cm
  • Două module laser roșu
  • Diagnostic integrat Mini-ELM327 (OBD)
  • Decalcomanie exclusivă Racing HackerBoxes

Câteva alte lucruri care vă vor fi de ajutor:

  • Patru baterii AA
  • Bandă de spumă pe două fețe sau benzi de velcro
  • cablu microUSB
  • Telefon inteligent sau tabletă
  • Computer cu Arduino IDE

Cel mai important, veți avea nevoie de un sentiment de aventură, de spiritul DIY și de curiozitatea hackerilor. Electronica hobby-ului hardcore nu este întotdeauna ușoară, dar atunci când persistați și vă bucurați de aventură, o mulțime de satisfacție poate fi derivată din perseverența și punerea în funcțiune a proiectelor. Faceți fiecare pas încet, țineți cont de detalii și nu ezitați să cereți ajutor.

Pasul 2: Electronică auto și autoturisme

Electronică auto și autoturisme
Electronică auto și autoturisme
Electronică auto și autoturisme
Electronică auto și autoturisme

Electronica auto este orice sistem electronic utilizat în vehiculele rutiere. Acestea includ carputere, sisteme telematice, sisteme de divertisment în mașină și așa mai departe. Electronica automobilelor provine din necesitatea de a controla motoarele. Primele au fost utilizate pentru a controla funcțiile motorului și au fost denumite unități de control al motorului (ECU). Pe măsură ce comenzile electronice au început să fie utilizate pentru mai multe aplicații auto, acronimul ECU a căpătat semnificația mai generală a „unității de control electronic”, iar apoi au fost dezvoltate ECU-uri specifice. Acum, ECU-urile sunt modulare. Două tipuri includ module de control al motorului (ECM) sau module de control al transmisiei (TCM). O mașină modernă poate avea până la 100 de ECU-uri.

Mașinile controlate radio (mașinile R / C) sunt mașini sau camioane care pot fi controlate de la distanță folosind un transmițător specializat sau o telecomandă. Termenul "R / C" a fost folosit pentru a însemna atât "controlat de la distanță", cât și "controlat radio", dar utilizarea obișnuită a "R / C" se referă astăzi la vehiculele controlate printr-o legătură de radiofrecvență.

O mașină autonomă (mașină fără șofer, mașină cu conducere automată, mașină robotică) este un vehicul capabil să-și sesizeze mediul și să navigheze fără aportul uman. Mașinile autonome pot detecta împrejurimile folosind o varietate de tehnici, cum ar fi radar, lidar, GPS, odometrie și viziune pe computer. Sistemele avansate de control interpretează informațiile senzoriale pentru a identifica căile de navigație adecvate, precum și obstacolele și semnalizarea relevantă. Mașinile autonome au sisteme de control care sunt capabile să analizeze datele senzoriale pentru a distinge între diferite mașini de pe drum, ceea ce este foarte util în planificarea unei căi către destinația dorită.

Pasul 3: Arduino pentru NodeMCU

Arduino pentru NodeMCU
Arduino pentru NodeMCU
Arduino pentru NodeMCU
Arduino pentru NodeMCU

NodeMCU este o platformă IoT open source. Acesta include firmware care rulează pe ESP8266 Wi-Fi SoC de la Espressif Systems și hardware bazat pe modulul ESP-12.

ID-ul Arduino poate fi acum extins cu ușurință pentru a sprijini programarea modulelor NodeMCU ca și cum ar fi orice altă platformă de dezvoltare Arduino.

Pentru început, asigurați-vă că aveți instalat ID-ul Arduino (www.arduino.cc), precum și driverele pentru cipul Serial-USB corespunzător de pe modulul NodeMCU pe care îl utilizați. În prezent, majoritatea modulelor NodeMCU includ cipul CH340 Serial-USB. Producătorul cipurilor CH340 (WCH.cn) are drivere disponibile pentru toate sistemele de operare populare. Consultați pagina de traducere Google pentru site-ul lor.

Rulați IDE-ul Ardino, accesați preferințele și localizați câmpul pentru introducerea „Adrese URL suplimentare ale administratorului de bord”

Inserați această adresă URL:

arduino.esp8266.com/stable/package_esp8266com_index.json

Pentru a instala Board Manager pentru ESP8266.

După instalare, închideți IDE și apoi reporniți-l.

Acum conectați modulul NodeMCU la computer utilizând un cablu microUSB (așa cum este utilizat de majoritatea telefoanelor mobile și tabletelor).

Selectați tipul de placă din IDE Arduino ca NodeMCU 1.0

Ne place întotdeauna să încărcăm și să testăm demo-ul clipit pe o nouă placă Arduino doar pentru a ne asigura că totul funcționează corect. NodeMCU nu face excepție, dar trebuie să schimbați pinul LED de la pin13 la pin16 înainte de a compila și încărca. Asigurați-vă că acest test rapid funcționează corect înainte de a trece la ceva mai complicat cu Arduino NodeMCU.

Iată un instructable care trece peste procesul de configurare pentru Arduino NodeMCU cu câteva exemple diferite de aplicații. Este un pic abătut de la obiectivul de aici, dar poate fi util să căutați un alt punct de vedere dacă vă blocați.

Pasul 4: Set de șasiu auto 2WD

Set șasiu auto 2WD
Set șasiu auto 2WD
Set șasiu auto 2WD
Set șasiu auto 2WD
Set șasiu auto 2WD
Set șasiu auto 2WD

Conținutul kitului de șasiu auto 2WD:

  • Șasiu din aluminiu (culorile variază)
  • Două motoare de curent continuu FM90
  • Două roți cu anvelope de cauciuc
  • Roată liberă
  • Hardware de asamblare
  • Hardware de montare

Motoarele de curent continuu FM90 arată ca niște micro-servo, deoarece sunt construite în aceeași carcasă din plastic ca micro-servo-urile obișnuite, cum ar fi FS90, FS90R sau SG92R. Cu toate acestea, FM90 nu este un servo. FM90 este un motor DC cu un angrenaj din plastic.

Viteza motorului FM90 este controlată prin modularea lățimii pulsului (PWM) a cablurilor de putere. Direcția este controlată prin schimbarea polarității puterii ca la orice motor DC curat. FM90 poate funcționa pe 4-6 volți DC. Deși este mic, acesta atrage suficient curent încât să nu fie condus direct de la un pin al microcontrolerului. Trebuie utilizat un șofer de motor sau un pod H.

Specificații motor FM90 DC:

  • Dimensiuni: 32,3 mm x 12,3 mm x 29,9 mm / 1,3 "x 0,49" x 1,2"
  • Număr de spline: 21
  • Greutate: 8,4g
  • Viteză fără sarcină: 110RPM (4.8v) / 130RPM (6v)
  • Curent de funcționare (fără sarcină): 100mA (4.8v) / 120mA (6v)
  • Cuplu maxim de blocare (4,8 v): 1,3 kg / cm / 18,09 oz / in
  • Cuplu de vârf (6v): 1,5 kg / cm / 20,86 oz / in
  • Curent de blocare: 550mA (4.8v) / 650mA (6v)

Pasul 5: Șasiu auto: Ansamblu mecanic

Șasiu auto: ansamblu mecanic
Șasiu auto: ansamblu mecanic
Șasiu auto: ansamblu mecanic
Șasiu auto: ansamblu mecanic
Șasiu auto: ansamblu mecanic
Șasiu auto: ansamblu mecanic

Șasiul auto poate fi ușor asamblat conform acestei diagrame.

Rețineți că există două pungi mici de hardware. Unul include hardware de montare cu șase standoffs din alamă 5mm-M3, împreună cu șuruburi și piulițe potrivite. Acest hardware de montare poate fi util în etapele ulterioare de montare a controlerelor, senzorilor și a altor articole pe șasiu.

Pentru acest pas, vom folosi hardware-ul de asamblare care include:

  • Patru șuruburi subțiri M2x8 și piulițe mici potrivite pentru fixarea motoarelor
  • Patru șuruburi M3x10 mai groase și piulițe mai mari potrivite pentru fixarea roții rotative
  • Două șuruburi PB2.0x8 cu filet grosier pentru fixarea roților pe motoare

Rețineți că motoarele FM90 sunt orientate astfel încât cablurile să se extindă din spatele șasiului asamblat.

Pasul 6: Șasiu auto: Adăugați un pachet de alimentare și un controler

Șasiu auto: Adăugați pachetul de alimentare și controlerul
Șasiu auto: Adăugați pachetul de alimentare și controlerul
Șasiu auto: Adăugați pachetul de alimentare și controlerul
Șasiu auto: Adăugați pachetul de alimentare și controlerul
Șasiu auto: Adăugați pachetul de alimentare și controlerul
Șasiu auto: Adăugați pachetul de alimentare și controlerul

Placa de protecție a motorului ESP-12E acceptă conectarea directă a modulului NodeMCU. Ecranul motorului include un cip al driverului de motor push-pull L293DD (foaie tehnică). Cablurile cablului motorului trebuie să fie conectate la bornele cu șurub A + / A- și B + / B- de pe ecranul motorului (după scoaterea conectorilor). Conductorii bateriei trebuie conectați la bornele cu șurub de intrare a bateriei.

Dacă una dintre roți se rotește în direcția greșită, firele către motorul corespunzător pot fi schimbate la bornele cu șurub sau bitul de direcție poate fi inversat în cod (pasul următor).

Există un buton de alimentare din plastic pe ecranul motorului pentru a activa alimentarea cu baterie. Blocul jumper poate fi utilizat pentru a direcționa alimentarea către NodeMCU de la ecranul motorului. Fără blocul jumper instalat, NodeMCU se poate alimenta singur de la cablul USB. Cu blocul jumper instalat (așa cum se arată), bateria alimentează motoarele și este, de asemenea, condusă la modulul NodeMCU.

Ecranul motorului și bateria pot fi montate pe șasiu prin alinierea orificiilor șuruburilor cu deschiderile disponibile în șasiul din aluminiu. Cu toate acestea, este mai ușor să le fixăm pe șasiu folosind bandă de spumă pe două fețe sau benzi adezive cu velcro.

Pasul 7: Șasiu auto: programare și control Wi-Fi

Șasiu auto: programare și control Wi-Fi
Șasiu auto: programare și control Wi-Fi

Blynk este o platformă cu aplicații iOS și Android pentru a controla Arduino, Raspberry Pi și alte componente hardware pe Internet. Este un tablou de bord digital în care puteți crea o interfață grafică pentru proiectul dvs. prin simpla glisare și plasare a widgeturilor. Este cu adevărat simplu să configurați totul și veți începe să jucați imediat. Blynk vă va face online și gata pentru internetul lucrurilor voastre.

Scriptul HBcar.ino Arduino inclus aici arată cum să interfațați patru butoane (înainte, înapoi, dreapta și stânga) pe un proiect Blynk pentru a controla motoarele de pe șasiul mașinii 2WD.

Înainte de compilare, trei șiruri trebuie schimbate în program:

  • Wi-Fi SSID (pentru punctul dvs. de acces Wi-Fi)
  • Parolă Wi-Fi (pentru punctul dvs. de acces Wi-Fi)
  • Token de autorizare Blynk (din proiectul dvs. Blynk)

Rețineți din exemplul de cod că cipul L293DD de pe ecranul motorului este conectat după cum urmează:

  • Pinul GPIO 5 pentru viteza motorului A.
  • Pinul GPIO 0 pentru direcția motorului A.
  • Pinul GPIO 4 pentru viteza motorului B.
  • Pinul GPIO 2 pentru direcția motorului B.

Pasul 8: senzori pentru navigație autonomă: telemetru cu ultrasunete

Senzori pentru navigație autonomă: telemetru cu ultrasunete
Senzori pentru navigație autonomă: telemetru cu ultrasunete
Senzori pentru navigație autonomă: telemetru cu ultrasunete
Senzori pentru navigație autonomă: telemetru cu ultrasunete
Senzori pentru navigație autonomă: telemetru cu ultrasunete
Senzori pentru navigație autonomă: telemetru cu ultrasunete
Senzori pentru navigație autonomă: telemetru cu ultrasunete
Senzori pentru navigație autonomă: telemetru cu ultrasunete

Telemetrul cu ultrasunete HC-SR04 (foaie de date) poate oferi măsurători de la aproximativ 2cm la 400cm cu o precizie de până la 3mm. Modulul HC-SR04 include un transmițător cu ultrasunete, un receptor și un circuit de control.

După ce ați atașat patru jumperi-femele la știfturile HC-SR04, înfășurarea unor benzi în jurul conectorilor poate ajuta la izolarea conexiunilor de la scurtcircuitarea la șasiul din aluminiu și, de asemenea, oferă o masă flexibilă pentru a se încadra în slotul din partea din față a șasiul așa cum se arată.

În acest exemplu, cei patru pini de pe HC-SR04 pot fi conectați la ecranul motorului:

  • VCC (pe HC-SR04) la VIN (pe ecranul motorului)
  • Declanșați (pe HC-SR04) la D6 (pe ecranul motorului)
  • Ecou (pe HC-SR04) la D7 (pe ecranul motorului)
  • GND (pe HC-SR04) la GND (pe ecranul motorului)

VIN va furniza aproximativ 6VDC HC-SR04, care are nevoie doar de 5V. Cu toate acestea, acest lucru pare să funcționeze bine. Cealaltă șină de alimentare disponibilă (3,3V) este uneori adecvată pentru a alimenta modulul HC-SR04 (cu siguranță încercați), dar uneori nu este suficientă tensiune.

Odată ce acest lucru este conectat, încercați codul de exemplu NodeMCUping.ino pentru a testa funcționarea HC-SR04. Distanța de la senzor la orice obiect este imprimată pe monitorul serial (placa 9600) în centimetri. Obțineți rigla noastră și testați acuratețea. Impresionant, nu-i așa?

Acum că aveți acest indiciu, încercați ceva de genul acesta pentru un vehicul autonom care evită coliziunile:

  1. înainte până la distanță <10cm
  2. oprire
  3. inversează o distanță mică (opțional)
  4. rotiți un unghi aleatoriu (timp)
  5. bucla la pasul 1

Pentru câteva informații generale de fundal, iată un video tutorial plin de detalii despre utilizarea modulului HC-SR04.

Pasul 9: Senzori pentru navigație autonomă: Reflectivitate în infraroșu (IR)

Senzori pentru navigație autonomă: reflectivitate în infraroșu (IR)
Senzori pentru navigație autonomă: reflectivitate în infraroșu (IR)

Modulul senzorului reflectant IR utilizează un TCRT5000 (foaie tehnică) pentru a detecta culoarea și distanța. Modulul emite lumină IR și apoi detectează dacă primește o reflexie. Datorită capacității sale de a detecta dacă o suprafață este albă sau neagră, acest senzor este adesea utilizat în linie, urmărind roboții și înregistrarea automată a datelor pe contoare de utilități.

Gama distanței de măsurare este de la 1 mm la 8 mm, iar punctul central este de aproximativ 2,5 mm. Există, de asemenea, un potențiometru la bord pentru a regla sensibilitatea. Dioda IR va emite lumină IR continuu atunci când modulul este conectat la alimentare. Când lumina infraroșie emisă nu este reflectată, trioda va fi în starea oprită, determinând ieșirea digitală (D0) să indice o logică LOW.

Pasul 10: fascicule laser

Raze laser
Raze laser
Raze laser
Raze laser

Aceste module laser comune de 5 mW 5 V pot fi utilizate pentru a adăuga fascicule laser roșii la aproape orice lucru care are putere de 5 V disponibilă.

Rețineți că aceste module pot fi ușor deteriorate, astfel încât HackerBox # 0013 include un cuplu pentru a oferi o copie de rezervă. Aveți grijă cu modulele laser!

Pasul 11: Diagnostic auto la bord (OBD)

Diagnostic auto la bord (OBD)
Diagnostic auto la bord (OBD)
Diagnostic auto la bord (OBD)
Diagnostic auto la bord (OBD)

Diagnosticul la bord (OBD) este un termen auto care se referă la capacitatea de autodiagnosticare și raportare a unui vehicul. Sistemele OBD oferă proprietarului vehiculului sau tehnicianului de reparații acces la starea diferitelor subsisteme ale vehiculului. Cantitatea de informații de diagnostic disponibile prin OBD a variat mult de la introducerea sa la începutul anilor 1980, în versiunile computerelor de la bord. Primele versiuni ale OBD ar lumina pur și simplu o lumină indicatoare de defecțiune dacă ar fi detectată o problemă, dar nu ar furniza nicio informație cu privire la natura problemei. Implementările moderne OBD utilizează un port de comunicații digitale standardizat pentru a furniza date în timp real, în plus față de o serie standardizată de coduri de diagnosticare a problemelor, sau DTC-uri, care permit identificarea și remedierea rapidă a defecțiunilor din vehicul.

OBD-II este o îmbunătățire atât a capacității, cât și a standardizării. Standardul OBD-II specifică tipul conectorului de diagnostic și pinout-ul acestuia, protocoalele de semnalizare electrică disponibile și formatul de mesagerie. De asemenea, oferă o listă de candidați a parametrilor vehiculului de monitorizat împreună cu modul de codificare a datelor pentru fiecare. Există un pin în conector care asigură alimentarea instrumentului de scanare de la bateria vehiculului, ceea ce elimină necesitatea de a conecta separat un instrument de scanare la o sursă de alimentare. Codurile de diagnosticare a problemelor OBD-II sunt formate din 4 cifre, precedate de o literă: P pentru motor și transmisie (propulsie), B pentru caroserie, C pentru șasiu și U pentru rețea. De asemenea, producătorii pot adăuga parametri de date personalizate la implementarea lor specifică OBD-II, inclusiv cereri de date în timp real, precum și coduri de eroare.

ELM327 este un microcontroler programat pentru interfața cu interfața de diagnosticare la bord (OBD) găsită în majoritatea mașinilor moderne. Protocolul de comandă ELM327 este unul dintre cele mai populare standarde de interfață PC-OBD și este implementat și de alți furnizori. ELM327 original este implementat pe microcontrolerul PIC18F2480 de la Microchip Technology. ELM327 abstractizează protocolul de nivel scăzut și prezintă o interfață simplă care poate fi apelată printr-un UART, de obicei printr-un instrument de diagnosticare manual sau un program de computer conectat prin USB, RS-232, Bluetooth sau Wi-Fi. Funcția unui astfel de software poate include instrumente suplimentare ale vehiculului, raportarea codurilor de eroare și ștergerea codurilor de eroare.

În timp ce cuplul este probabil cel mai cunoscut, există multe aplicații care pot fi utilizate cu ELM327.

Pasul 12: Hack planeta

Hackează Planeta
Hackează Planeta

Vă mulțumim că ne-ați împărtășit aventura noastră în domeniul electronicii auto. Dacă v-a plăcut acest Instrucable și doriți să primiți o cutie de proiecte electronice de acest fel direct în cutia poștală în fiecare lună, vă rugăm să vă alăturați-ne prin ABONARE AICI.

Intindeți-vă și împărtășiți-vă succesul în comentariile de mai jos și / sau pe pagina de Facebook HackerBoxes. Cu siguranță, anunțați-ne dacă aveți întrebări sau aveți nevoie de ajutor cu ceva. Vă mulțumim că faceți parte din HackerBoxes. Vă rugăm să păstrați sugestiile și feedback-ul dvs. HackerBox-urile sunt cutiile TALE. Să facem ceva grozav!

Recomandat: