Innehållsförteckning:

HackerBoxes 0013: Autosport: 12 steg
HackerBoxes 0013: Autosport: 12 steg

Video: HackerBoxes 0013: Autosport: 12 steg

Video: HackerBoxes 0013: Autosport: 12 steg
Video: Hackerboxes 0013: AUTOSPORT 2024, Juli
Anonim
HackerBoxes 0013: Autosport
HackerBoxes 0013: Autosport

AUTOSPORT: Den här månaden utforskar HackerBox Hackers bilelektronik. Denna instruktionsbok innehåller information för att arbeta med HackerBoxes #0013. Om du vill få en sån här låda i din brevlåda varje månad, är det dags att prenumerera på HackerBoxes.com och gå med i revolutionen!

Ämnen och inlärningsmål för denna HackerBox:

  • Anpassning av NodeMCU för Arduino
  • Montering av ett 2WD bilsats
  • Anslutning av en NodeMCU för att styra ett 2WD -bilsats
  • Kontrollera en NodeMCU över WiFi med Blynk
  • Använda sensorer för autonom navigering
  • Arbeta med Automotive On-board Diagnostics (OBD)

HackerBoxes är den månatliga prenumerationstjänsten för DIY -elektronik och datorteknik. Vi är hobbyister, tillverkare och experimenterande. Hacka planeten!

Steg 1: HackerBoxes 0013: Boxinnehåll

HackerBoxes 0013: Boxinnehåll
HackerBoxes 0013: Boxinnehåll
HackerBoxes 0013: Boxinnehåll
HackerBoxes 0013: Boxinnehåll
HackerBoxes 0013: Boxinnehåll
HackerBoxes 0013: Boxinnehåll
  • HackerBoxes #0013 Samlingsbart referenskort
  • 2WD bilchassisats
  • NodeMCU WiFi -processormodul
  • Motorskydd för NodeMCU
  • Bygelblock för motorskydd
  • Batterilåda (4 x AA)
  • HC-SR04 ultraljudsavståndssensor
  • TCRT5000 IR -reflektivitetssensorer
  • DuPont kvinnliga-kvinnliga hoppare 10cm
  • Två röda lasermoduler
  • Mini-ELM327 omborddiagnostik (OBD)
  • Exklusivt HackerBoxes Racing Dekal

Några andra saker som kommer att vara till hjälp:

  • Fyra AA -batterier
  • Dubbelsidig skumtejp eller kardborreband
  • microUSB -kabel
  • Smart telefon eller surfplatta
  • Dator med Arduino IDE

Viktigast av allt, du behöver en känsla av äventyr, DIY -anda och nyfikenhet på hackare. Hardcore hobbyistelektronik är inte alltid lätt, men när du fortsätter och njuter av äventyret kan stor tillfredsställelse härledas från att hålla ut och få dina projekt att fungera. Ta bara varje steg långsamt, tänk på detaljerna och tveka inte att be om hjälp.

Steg 2: Automotive Electronics och självkörande bilar

Fordonselektronik och självkörande bilar
Fordonselektronik och självkörande bilar
Fordonselektronik och självkörande bilar
Fordonselektronik och självkörande bilar

Fordonselektronik är alla elektroniska system som används i vägfordon. Dessa inkluderar datorer, telematik, bilunderhållningssystem och så vidare. Fordonselektronik har sitt ursprung i behovet av att styra motorer. De första användes för att styra motorfunktioner och kallades motorstyrenheter (ECU). När elektroniska kontroller började användas för fler fordonsapplikationer fick akronymen ECU den mer allmänna innebörden av "elektronisk styrenhet", och sedan utvecklades specifika ECU: er. Nu är ECU: er modulära. Två typer inkluderar motorstyrmoduler (ECM) eller transmissionskontrollmoduler (TCM). En modern bil kan ha upp till 100 ecu.

Radiostyrda bilar (R/C-bilar) är bilar eller lastbilar som kan styras på avstånd med en specialiserad sändare eller fjärrkontroll. Termen "R/C" har använts för att betyda både "fjärrstyrd" och "radiostyrd", men vanlig användning av "R/C" avser i dag vanligtvis fordon som styrs av en radiofrekvenslänk.

En autonom bil (förarlös bil, självkörande bil, robotbil) är ett fordon som kan känna av sin omgivning och navigera utan mänsklig insats. Autonoma bilar kan upptäcka omgivningar med hjälp av en rad olika tekniker som radar, lidar, GPS, vägmätning och datorsyn. Avancerade styrsystem tolkar sensorisk information för att identifiera lämpliga navigeringsvägar, liksom hinder och relevant skyltning. Autonoma bilar har styrsystem som kan analysera sensoriska data för att skilja mellan olika bilar på vägen, vilket är mycket användbart för att planera en väg till önskad destination.

Steg 3: Arduino för NodeMCU

Arduino för NodeMCU
Arduino för NodeMCU
Arduino för NodeMCU
Arduino för NodeMCU

NodeMCU är en IoT -plattform med öppen källkod. Den innehåller firmware som körs på ESP8266 Wi-Fi SoC från Espressif Systems och hårdvara baserad på ESP-12-modulen.

Arduino IDE kan nu enkelt utökas för att stödja programmering av NodeMCU -moduler som om de vore någon annan Arduino -utvecklingsplattform.

För att starta, se till att du har Arduino IDE installerat (www.arduino.cc) samt drivrutiner för rätt Serial-USB-chip på NodeMCU-modulen du använder. För närvarande innehåller de flesta NodeMCU-moduler CH340 Serial-USB-chipet. Tillverkaren av CH340 -chipsen (WCH.cn) har drivrutiner tillgängliga för alla populära operativsystem. Kolla in Googles översättningssida för deras webbplats.

Kör Ardino IDE, gå in i inställningar och leta upp fältet för att ange "Ytterligare styrhanteringsadresser"

Klistra in den här webbadressen:

arduino.esp8266.com/stable/package_esp8266com_index.json

Att installera Board Manager för ESP8266.

Efter installationen, stäng IDE och starta sedan den igen.

Anslut nu NodeMCU -modulen till din dator med en microUSB -kabel (som används av de flesta mobiltelefoner och surfplattor).

Välj korttypen i Arduino IDE som NodeMCU 1.0

Vi gillar alltid att ladda och testa blinkdemon på ett nytt Arduino -kort bara för att få lite förtroende för att allt fungerar korrekt. NodeMCU är inget undantag, men du måste ändra LED -stiftet från pin13 till pin16 innan du kompilerar och laddar upp. Se till att detta snabbtest fungerar korrekt innan du går vidare till något mer komplicerat med Arduino NodeMCU.

Här är en instruktion som går igenom installationsprocessen för Arduino NodeMCU med några olika applikationsexempel. Det är lite vilse från målet här, men det kan vara till hjälp att titta efter en annan synvinkel om du fastnar.

Steg 4: 2WD bilchassisats

2WD bilchassisats
2WD bilchassisats
2WD bilchassisats
2WD bilchassisats
2WD bilchassisats
2WD bilchassisats

2WD -bilchassats innehåll:

  • Aluminiumchassi (färgerna varierar)
  • Två FM90 DC -motorer
  • Två hjul med gummidäck
  • Freewheel Caster
  • Monteringshårdvara
  • Monteringshårdvara

FM90 DC -motorerna ser ut som mikroservos eftersom de är byggda i samma plasthölje som vanliga mikro -servon, till exempel FS90, FS90R eller SG92R. FM90 är dock inte en servo. FM90 är en likströmsmotor med ett plastdrev.

FM90 -motorns varvtal styrs av pulsbreddsmodulering (PWM) av kraftledningarna. Riktningen styrs genom att byta effektpolaritet som med alla borstade likströmsmotorer. FM90 kan köras på 4-6 volt DC. Även om den är liten drar den tillräckligt med ström för att den inte ska drivas direkt från en mikrokontrollstift. En motorförare eller H-bro bör användas.

FM90 DC Motor Specifikationer:

  • Mått: 32,3 mm x 12,3 mm x 29,9 mm / 1,3 tum x 0,49 tum x 1,2 tum
  • Spline Count: 21
  • Vikt: 8,4 g
  • Ingen lasthastighet: 110RPM (4.8v) / 130RPM (6v)
  • Driftström (utan belastning): 100mA (4.8v) / 120mA (6v)
  • Peak Stall vridmoment (4,8 v): 1,3 kg/cm/18,09 oz/in
  • Peak Stall vridmoment (6v): 1,5 kg/cm/20,86 oz/in
  • Stallström: 550mA (4.8v) / 650mA (6v)

Steg 5: Bilchassi: Mekanisk montering

Bilchassi: Mekanisk montering
Bilchassi: Mekanisk montering
Bilchassi: Mekanisk montering
Bilchassi: Mekanisk montering
Bilchassi: Mekanisk montering
Bilchassi: Mekanisk montering

Bilchassit kan enkelt monteras enligt detta diagram.

Observera att det finns två små påsar med hårdvara. Den ena inkluderar monteringshårdvara med sex mässing 5 mm-M3-avstånd samt matchande skruvar och muttrar. Denna monteringsutrustning kan vara användbar i senare steg för montering av styrenheter, sensorer och andra föremål på chassit.

För detta steg kommer vi att använda monteringshårdvaran som inkluderar:

  • Fyra tunna M2x8 -bultar och små matchande muttrar för att fästa motorerna
  • Fyra tjockare M3x10 bultar och större matchande muttrar för att fästa hjulet
  • Två PB2.0x8 skruvar med grova gängor för att fästa hjulen på motorerna

Observera att FM90 -motorerna är orienterade så att trådledningarna sträcker sig från baksidan av det monterade chassit.

Steg 6: Bilchassi: Lägg till Power Pack och Controller

Bilchassi: Lägg till kraftpaket och styrenhet
Bilchassi: Lägg till kraftpaket och styrenhet
Bilchassi: Lägg till kraftpaket och styrenhet
Bilchassi: Lägg till kraftpaket och styrenhet
Bilchassi: Lägg till kraftpaket och styrenhet
Bilchassi: Lägg till kraftpaket och styrenhet

ESP-12E-motorskyddskortet stöder direktanslutning av NodeMCU-modulen. Motorskyddet innehåller ett L293DD-drag-drag-motorchip (datablad). Motorkablarna bör anslutas till A+/A- och B+/B- skruvterminalerna på motorskyddet (efter att kontakterna har tagits bort). Batterikablarna ska vara anslutna till batteriingångens skruvplintar.

Om ett av hjulen vrider i fel riktning kan ledningarna till motsvarande motor bytas vid skruvplintarna, eller så kan riktningsbiten vändas i koden (nästa steg).

Det finns en strömbrytare av plast på motorskyddet för att aktivera batteriinmatningen. Bygelblocket kan användas för att leda ström till NodeMCU från motorskyddet. Utan bygelblocket installerat kan NodeMCU strömförsörja sig från USB -kabeln. Med bygelblocket installerat (som visat) levererar batteriet motorerna och drivs även till NodeMCU -modulen.

Motorskyddet och batteripaketet kan monteras på chassit genom att ställa in skruvhålen med tillgängliga öppningar i aluminiumchassit. Vi har dock lättare att bara fästa dem på chassit med hjälp av dubbelsidig skumtejp eller självhäftande kardborreband.

Steg 7: Bilchassi: Programmering och Wi-Fi-kontroll

Bilchassi: Programmering och Wi-Fi-kontroll
Bilchassi: Programmering och Wi-Fi-kontroll

Blynk är en plattform med iOS- och Android -appar för att styra Arduino, Raspberry Pi och annan hårdvara över Internet. Det är en digital instrumentpanel där du kan bygga ett grafiskt gränssnitt för ditt projekt genom att helt enkelt dra och släppa widgets. Det är verkligen enkelt att ställa in allt och du börjar pyssla direkt. Blynk kommer att få dig online och redo för Internet Of Your Things.

HBcar.ino Arduino -skriptet som ingår här visar hur du kopplar fyra knappar (framåt, bakåt, höger och vänster) på ett Blynk -projekt för att styra motorerna på 2WD -bilchassit.

Innan kompilering måste tre strängar ändras i programmet:

  • Wi-Fi SSID (för din Wi-Fi-åtkomstpunkt)
  • Wi-Fi-lösenord (för din Wi-Fi-åtkomstpunkt)
  • Blynk Authorization Token (från ditt Blynk -projekt)

Notera från exempelkoden att L293DD -chipet på motorskyddet är anslutet enligt följande:

  • GPIO stift 5 för motor A -hastighet
  • GPIO -stift 0 för motor A -riktning
  • GPIO stift 4 för motor B -hastighet
  • GPIO -stift 2 för motor B -riktning

Steg 8: Sensorer för autonom navigering: Ultrasonic Range Finder

Sensorer för autonom navigering: Ultrasonic Range Finder
Sensorer för autonom navigering: Ultrasonic Range Finder
Sensorer för autonom navigering: Ultrasonic Range Finder
Sensorer för autonom navigering: Ultrasonic Range Finder
Sensorer för autonom navigering: Ultrasonic Range Finder
Sensorer för autonom navigering: Ultrasonic Range Finder
Sensorer för autonom navigering: Ultrasonic Range Finder
Sensorer för autonom navigering: Ultrasonic Range Finder

HC-SR04 ultraljudsmätare (datablad) kan ge mätningar från cirka 2 cm till 400 cm med en noggrannhet på upp till 3 mm. HC-SR04-modulen innehåller en ultraljudssändare, en mottagare och en styrkrets.

Efter att ha fäst fyra hona-honhoppare på stiften på HC-SR04 kan ett tejp runt kontakterna hjälpa till att både isolera anslutningarna från kortslutning till aluminiumchassit och också ge en smidig massa att kila in i spåret på framsidan av chassit enligt bilden.

I det här exemplet kan de fyra stiften på HC-SR04 kopplas till motorskyddet:

  • VCC (på HC-SR04) till VIN (på motorskärm)
  • Utlösare (på HC-SR04) till D6 (på motorskärm)
  • Echo (på HC-SR04) till D7 (på motorskärm)
  • GND (på HC-SR04) till GND (på motorskärm)

VIN levererar ca 6VDC till HC-SR04, som bara behöver 5V. Det verkar dock fungera bra. Den andra tillgängliga strömskenan (3.3V) är ibland tillräcklig för att driva HC-SR04-modulen (prova verkligen), men ibland är det inte tillräckligt med spänning.

När detta är anslutet, prova exempelkoden NodeMCUping.ino för att testa funktionen av HC-SR04. Avståndet från sensorn till något objekt skrivs ut på den seriella bildskärmen (9600 -kortet) i centimeter. Skaffa vår linjal och testa noggrannheten. Imponerande är det inte?

Nu när du har denna ledtråd, prova något liknande för ett kollisionsundvikande, autonomt fordon:

  1. fram tills avstånd <10cm
  2. stanna
  3. backa ett litet avstånd (tillval)
  4. vrid en slumpmässig vinkel (tid)
  5. loop till steg 1

För lite allmän bakgrundsinformation, här är en instruktionsvideo full av detaljer för användning av HC-SR04-modulen.

Steg 9: Sensorer för autonom navigering: Infraröd (IR) reflektion

Sensorer för autonom navigering: Infraröd (IR) reflektion
Sensorer för autonom navigering: Infraröd (IR) reflektion

Modulen IR -reflekterande sensor använder ett TCRT5000 (datablad) för att detektera färg och avstånd. Modulen avger IR -ljus och upptäcker sedan om den tar emot en reflektion. Tack vare dess förmåga att känna av om en yta är vit eller svart, används denna sensor ofta i linje efter robotar och automatisk dataloggning på verktygsmätare.

Mätavståndsintervallet är från 1 mm till 8 mm, och den centrala punkten är cirka 2,5 mm. Det finns också en inbyggd potentiometer för att justera känsligheten. IR -dioden kommer att avge IR -ljus kontinuerligt när modulen är ansluten till ström. När det utsända infraröda ljuset inte reflekteras kommer trioden att vara i avstängt tillstånd, vilket gör att den digitala (D0) utgången indikerar en logisk LÅG.

Steg 10: Laserstrålar

Laser strålar
Laser strålar
Laser strålar
Laser strålar

Dessa vanliga 5mW 5V lasermoduler kan användas för att lägga till röda laserstrålar till i stort sett allt som har 5V ström tillgänglig.

Observera att dessa moduler lätt kan skadas, så HackerBox #0013 innehåller ett par som ger en säkerhetskopia. Var försiktig med dina lasermoduler!

Steg 11: Automotive On-board Diagnostics (OBD)

Automotive On-board Diagnostics (OBD)
Automotive On-board Diagnostics (OBD)
Automotive On-board Diagnostics (OBD)
Automotive On-board Diagnostics (OBD)

Inbyggd diagnostik (OBD) är en bilterm som hänvisar till ett fordons självdiagnostik och rapporteringsförmåga. OBD -system ger fordonsägaren eller reparationsteknikern tillgång till status för de olika fordonsundersystemen. Mängden diagnostisk information som finns tillgänglig via OBD har varierat kraftigt sedan den introducerades i början av 1980-talet av fordonsdatorer. Tidiga versioner av OBD skulle helt enkelt tända ett felindikatorlampa om ett problem upptäcktes men skulle inte ge någon information om problemets art. Moderna OBD-implementeringar använder en standardiserad digital kommunikationsport för att tillhandahålla data i realtid utöver en standardiserad serie diagnosfelkoder eller DTC, som gör att man snabbt kan identifiera och åtgärda fel i fordonet.

OBD-II är en förbättring av både kapacitet och standardisering. OBD-II-standarden specificerar typen av diagnosanslutning och dess pinout, tillgängliga elektriska signalprotokoll och meddelandeformatet. Det ger också en kandidatlista över fordonsparametrar att övervaka tillsammans med hur man kodar data för varje. Det finns en stift i kontakten som ger ström till skannverktyget från fordonsbatteriet, vilket eliminerar behovet av att ansluta ett skannverktyg till en strömkälla separat. OBD-II diagnosfelkoder är fyrsiffriga, föregås av en bokstav: P för motor och transmission (drivlina), B för kaross, C för chassi och U för nätverk. Tillverkare kan också lägga till anpassade dataparametrar till deras specifika OBD-II-implementering, inklusive realtidsdataförfrågningar samt problemkoder.

ELM327 är en programmerad mikrokontroller för gränssnitt till det inbyggda diagnostikgränssnittet (OBD) som finns i de flesta moderna bilar. ELM327-kommandoprotokollet är en av de mest populära PC-till-OBD-gränssnittsstandarderna och implementeras också av andra leverantörer. Den ursprungliga ELM327 är implementerad på PIC18F2480 mikrokontroller från Microchip Technology. ELM327 abstraherar lågnivåprotokollet och presenterar ett enkelt gränssnitt som kan kallas via en UART, vanligtvis med ett handhållet diagnosverktyg eller ett datorprogram som är anslutet med USB, RS-232, Bluetooth eller Wi-Fi. Funktionen hos sådan programvara kan innefatta kompletterande fordonsinstrument, rapportering av felkoder och rensning av felkoder.

Även om vridmoment förmodligen är det mest kända, finns det många applikationer som kan användas med ELM327.

Steg 12: Hacka planeten

Hacka planeten
Hacka planeten

Tack för att du delar vårt äventyr med bilelektronik. Om du har tyckt om denna Instrucable och skulle vilja få en låda med elektronikprojekt som detta levererade direkt till din brevlåda varje månad, vänligen gå med oss genom att prenumerera HÄR.

Nå ut och dela din framgång i kommentarerna nedan och/eller på HackerBoxes Facebook -sida. Hör av dig till oss om du har några frågor eller behöver hjälp med något. Tack för att du är en del av HackerBoxes. Kom gärna med dina förslag och feedback. HackerBoxes är DINA lådor. Låt oss göra något bra!

Rekommenderad: