Indholdsfortegnelse:

OmniBoard: Skateboard og Hoverboard Hybrid Med Bluetooth -kontrol: 19 trin (med billeder)
OmniBoard: Skateboard og Hoverboard Hybrid Med Bluetooth -kontrol: 19 trin (med billeder)

Video: OmniBoard: Skateboard og Hoverboard Hybrid Med Bluetooth -kontrol: 19 trin (med billeder)

Video: OmniBoard: Skateboard og Hoverboard Hybrid Med Bluetooth -kontrol: 19 trin (med billeder)
Video: Riding the Lexus hoverboard in Spain 2024, Juli
Anonim
OmniBoard: Skateboard og Hoverboard Hybrid Med Bluetooth -kontrol
OmniBoard: Skateboard og Hoverboard Hybrid Med Bluetooth -kontrol

OmniBoard er en ny elektrisk skateboard-hoverboard-hybrid, der kan styres via en Bluetooth-smartphone-applikation. Det er i stand til at bevæge sig med alle tre frihedsgrader, der kan opnås af begge brædder kombineret, gå fremad, dreje rundt om sin akse og strafe sidelæns.

Dette giver dig mulighed for at bevæge dig i den retning, du ønsker, samt lave fiks tricks, som du ellers ikke ville kunne med din typiske transportform, såsom (elektriske) skateboards, hoverboards, biler, cykler osv.

Min ven og jeg besluttede at bygge OmniBoard som en sjov øvelse og udfordring samt deltage i nogle Instructables -konkurrencer, nemlig hjulets udfordring. Vi ville lave noget, der aldrig er blevet gjort før, er sejt og ville være nyttigt. Da kollektivtransportsystemet ofte er upålideligt, og bytrafikken er forfærdelig i løbet af formiddagen og eftermiddagen til og fra arbejde, er en alternativ transportform såsom cykling eller skateboard nyttig. Elektriske skateboards og cykler er nyttige til langdistancependler, men der er allerede mange forbruger- og gør -det -selv -løsninger til dette emne. Så vi besluttede at genopfinde hjulet, helt bogstaveligt talt, og lave et nyt og sjovt OmniBoard.

Trin 1: Værktøjer og materialer

Værktøjer og materialer
Værktøjer og materialer
Værktøjer og materialer
Værktøjer og materialer
Værktøjer og materialer
Værktøjer og materialer

Drivsystem

  • (4) Omni hjul
  • (4) 60 tandhjul
  • (4) 20 tandhjul
  • (4) GT2 Tandrem (vi brugte 140 tand)
  • (8) 7 mm ID, 19 mm OD -leje*
  • (20) M5 (eller lignende størrelse) maskinskruer, cirka 25 mm lange*
  • (28) Møtrikker, samme størrelse som maskinskruer*
  • (32) Nr. 2 træskruer, 3/8 "lange*
  • (16) Vinkelbeslag, helst fire huller, skal være mindst 1/2 "fra hjørne til skruehul*
  • 1'x2 'krydsfinerplade*
  • Skateboard overflade

Elektronik:

Drivsystem

  • (4) DC -motorer
  • (4) Elektroniske hastighedsregulatorer (ESC)
  • Power Distribution Board (PDB)
  • 16AWG Silikontråd - Rød og Sort
  • XT90 Connector Parallel Splitter
  • XT90 stik Han med hale
  • (8 par) 4 mm kuglestik
  • (4 par) XT60 -stik
  • (2) LiPo -batterier

Fjernbetjening

  • Dobbeltsidet Perf Board*
  • LM7805 spændingsregulator*
  • 24AWG Solid Core Wires - assorteret farve*
  • HC-05 Bluetooth-modul*
  • Arduino Uno v3*
  • (32 ben) Dobbeltsidede hanhoveder*
  • (12 ben) Enkeltsidet ale Pin Headers*

Værktøjer:

  • Loddestation og Lodning
  • Trådskærere
  • Wire strippere
  • Tang
  • Saks
  • Bor: 1-3/8 ", 3/4", 1/4"

Udstyr

  • 3D printer
  • Laserskærer
  • Båndsav
  • Drill Press

*Hentet fra den lokale elektronikbutik eller isenkræmmer.

Trin 2: Sådan fungerer det

Hvordan det virker
Hvordan det virker

Omniboardet er et elektrisk skateboard og hoverboard i ét! Det er i stand til at bevæge sig frem og tilbage, side til side og rotere, alt styret af et joystick på din telefon.

Omniboardet drives af fire motorer, der hver er fastgjort til et omnidirektionelt hjul. Fordi omni -hjulene får lov til at glide sideværts, varierer hastigheden og retningen for hver motor, at kortet kan bevæge sig i enhver retning, som brugeren vælger, som vist på billedet ovenfor.

Trin 3: Montering af Omni hjulaksler

Montering af Omni hjulaksler
Montering af Omni hjulaksler
Montering af Omni hjulaksler
Montering af Omni hjulaksler
Montering af Omni hjulaksler
Montering af Omni hjulaksler
Montering af Omni hjulaksler
Montering af Omni hjulaksler

De dele, du skal bruge til at samle akslerne, er:

  • (8) 3D -trykt lejeafstandsstykke
  • (4) 3D -trykt stor remskive afstandsstykke
  • (8) Leje
  • (4) Omni hjul
  • (4) Stor remskive
  • (4) 3x3x80mm nøglestang

Først vil du lægge et lejeafstandsstykke på enden af akslen som vist. Afstandsstykket er lavet til at sidde meget tæt, så jeg anbefaler at bruge en skruestik eller en hammer for at få det på. Hvis det er for løst, skal du flytte det lidt længere op af nøglestangen og fastgøre en krave. Du behøver ikke bekymre dig om en krave i den anden ende.

Dernæst skubber du omni -hjulet efterfulgt af et lejeafstandsstykke, der vender modsat retning. Du kan glide lejerne på nu (det gør ikke noget, da de ikke sidder tæt), og det skal ligne billedet. Endelig kan du glide de lange tynde remskiver i remskiverne. På dette tidspunkt må du ikke stramme remskivens skruer eller sætte dem på nøglestangen. Dem kommer senere.

Trin 4: Skæring og boring af Omni Wheel Trucks

Image
Image
Skæring og boring af Omni Wheel Trucks
Skæring og boring af Omni Wheel Trucks
Skæring og boring af Omni Wheel Trucks
Skæring og boring af Omni Wheel Trucks
Skæring og boring af Omni Wheel Trucks
Skæring og boring af Omni Wheel Trucks

Det er her din laserskærer og 3/8 tykke krydsfiner kommer godt med! CAD'en til laserskæring af rammen er fastgjort i et.dxf -format.

Dernæst borer du to huller over de små kryds, som laserskæreren vil efterlade på krydsfiner. Det lidt mindre kryds vil blive boret med 3/4 "bit kun 1/4" af vejen igennem, mens det større kryds vil blive boret med 1-3/8 "bit hele vejen igennem. Det er meget vigtigt at du husker for halvdelen af stykkerne at skære 3/4 "hullerne fra den ene side og den anden halvdel fra den anden side. Bor derefter et mindre 3/8 "hul gennem midten af 3/4" hullerne, hele vejen igennem det lag, du ikke har skåret før.

Til sidst skrues vinkelbeslagene til de kortere sider af de rektangulære stykker. Du har næsten alt, hvad du har brug for nu til at samle omni hjulvognene.

Trin 5: Montering af Omni Wheel Trucks

Montering af Omni Wheel Trucks
Montering af Omni Wheel Trucks
Montering af Omni Wheel Trucks
Montering af Omni Wheel Trucks
Montering af Omni Wheel Trucks
Montering af Omni Wheel Trucks

Nu kan vi afslutte lastbilmonteringen! Du skal bruge delene fra de sidste to trin plus:

  • (4) Tandrem
  • (4) 3D -printet lille remskive
  • (4) Lille remskive
  • (4) Motor

Læg hver krydsfiner side på lejerne. Hvis 3/4 hullerne ikke passer let over lejerne, skal du bruge en Dremel til at slibe dem en smule bredere. Når de passer på, skal du sætte remskiven over den udstående nøglestang og stramme skruerne. Skru det rektangulære stykke ind i hak over omni -hjulet.

På dette tidspunkt skal du kontrollere, at dit omni -hjul drejer frit. Hvis det ikke gør det, klemmer din remskive muligvis ned på krydsfiner. Hæv den lidt længere op af nøglestangen.

Dernæst monterer vi motorerne i. 1-3/8 hullerne er lidt for små, så slip langsomt den inderste cirkel med en Dremel, indtil motoren sidder tæt inde. Pas på ikke at tvinge motoren ind og deformere Når motoren er på plads, skal remmen sættes over de små remskiver, derefter de små remskiver over deres afstandsstykker og på motorakslen på 3.175 mm. Spænd sætskruerne.

Af hensyn til kompakthed og symmetri vil du sætte remskiver og remme på den ene side af lastbilen for to af dem og den anden side for de to andre.

Trin 6: Montering på skateboardplatformen

Montering på Skateboard Platform
Montering på Skateboard Platform
Montering på Skateboard Platform
Montering på Skateboard Platform
Montering på Skateboard Platform
Montering på Skateboard Platform

Nu skal vi fastgøre lastbilerne til skateboardplatformen. Du kan lave din af krydsfiner og gripebånd; vores blev taget fra et gammelt skateboard.

Først vil du bore 1/4 huller i begge sider af krydsfiner som vist på billedet. I hvert hul skal du fastgøre et vinkelbeslag med en M5 -skrue og dobbeltmøtrik det på indersiden for at forhindre, at det kommer løs på grund af vibrationer. Mål og bor hullerne, der giver dig mulighed for at montere lastbilerne så tæt på enderne og i en så stejl konisk vinkel som muligt, mens du holder dig inden for platformens fodaftryk. Vend den nu om, og giv den en lasttest !

Trin 7: Lodning af motorerne

Image
Image
Lodning af motorerne
Lodning af motorerne

Lod de 4 mm hankuglestik til en ledning, der forbinder til motorerne, og lod derefter denne ledning på motorterminalerne. Til kabelorganisation skæres hver ledning til 6 cm og fjernes fra begge ender

Tip: Det er lettere at lodde ledningerne på kuglestikkene først og derefter lodde det til motoren end omvendt.

For at lodde kuglestikket på wiren skal du placere det på et isoleret alligatorklemme af den hjælpende hånd (da varmen hurtigt forsvinder fra kuglestikkets krop til den metalliske, varmeledende hjælpende hånd). Derefter samles noget loddemetal på kuglestikket, cirka halvvejs, og mens jernet holdes i stikket, dyppes ledningen ned i loddepuljen, som vist i videoen. Varmekrymp derefter tråden og kuglestikket.

Placer derefter ledningen ved siden af motorterminalen og hold den oprejst ved hjælp af den hjælpende hånd. Jeg brugte lodderullen til at holde motoren på hovedet. Lod derefter ledningen på motorterminalen. Ledernes rækkefølge og farve er tvetydige og er ligegyldige, da bestillingen kan skiftes til at vende rotationen, hvilket vil blive udført i de næste trin, hvis det er nødvendigt.

Trin 8: Lodning af ESC -batteristik

Lodning ESC batteristik
Lodning ESC batteristik
Lodning ESC batteristik
Lodning ESC batteristik

Inden lodning skal du skære lidt varmekrympning for hver af de ledninger, der skal bruges til at isolere de udsatte loddeender.

Skær en af lederne til batteristikket, fjern det, slip varmekrympen ind, og lod det til XT60 -stikket med den røde forbindelse til den positive terminal på XT60 og den sorte til den negative terminal på XT60.

Advarsel: Klip kun ESC -ledningerne en ad gangen, da der er en kondensator, der kan oplades mellem de positive og negative terminaler, som vil kortslutte, hvis saksen eller trådklipperne skærer igennem begge på én gang.

For at lodde ledningen på XT60 -stikket, skal du bruge de hjælpende hænder til at holde XT60 -stikket i kroppen. Derefter samles noget loddemiddel til XT60 -terminalen cirka halvvejs, og mens loddejernet holdes på XT60 -stikket, dyppes ledningen ned i puljen til flydende lodde, som vist i videoen fra det foregående trin. Når den er kølet, skal du skubbe varmen ned for at isolere den udsatte ende og opvarme den med siderne af loddejernet.

Gentag dette for resten af ledningerne til ESC'ernes batteristik.

Trin 9: Lodning af Power Distribution Board (PDB)

Lodning af Power Distribution Board (PDB)
Lodning af Power Distribution Board (PDB)
Lodning af Power Distribution Board (PDB)
Lodning af Power Distribution Board (PDB)
Lodning af Power Distribution Board (PDB)
Lodning af Power Distribution Board (PDB)
Lodning af Power Distribution Board (PDB)
Lodning af Power Distribution Board (PDB)

PDB'en optager input fra de to Lithium Polymer (LiPo) batterier med en kombineret spænding og strøm på henholdsvis 11,1V og 250A og distribuerer det til de fire ESC'er.

Tip: Det er lettere at lodde det hanlige XT90 -stik først til PDB -puderne, derefter de 16 AWG -ledninger til ESC'erne, efterfulgt af XT60 -stikene på disse ledninger.

Inden lodning af ledningerne skæres varmekrympningen, så den passer til hver af ledningerne, så den senere kan glides på den udsatte loddeende for at forhindre kortslutning.

For at lodde ledningerne på PDB -puderne fandt jeg det lettest at bruge de hjælpende hænder til at holde ledningerne oprejst (især det store XT90 -kabel) og placere det oven på PDB'et, der hviler på bordet. Derefter loddes wiren omkring PDB -puden. Skub derefter varmekrympen ned og opvarm den for at isolere kredsløbet.

Gentag dette for resten af ESC -ledningerne.

For at lodde XT60 skal du følge det foregående trin om, hvordan ESC -batteripolen blev udskiftet med XT60'er.

Trin 10: Tilslutning af ledningerne

Tilslutning af ledninger
Tilslutning af ledninger

Tilslut motorkablerne til stikkontakterne på ESC. Tilslut derefter den hvide signalpind fra ESC til pin 9 og den sorte jordstift til GND -pin på Arduino. Dobbeltlåsestrimler blev brugt til at fastgøre alle ESC'er og ledninger til brættet.

For at kontrollere, om motorernes rotation er korrekt (drejning mod fronten), ved at køre prøvekoden på Arduino nedenfor.

#omfatte

Servomotor;

byte med uret Speed = 110; usigneret langt interval = 1500; int motorPin = 9;

ugyldig opsætning ()

{Serial.begin (9600); motor.attach (motorPin); Serial.println ("Start test"); }

hulrum ()

{motor.write (med urets hastighed); Serial.println ("Stop motoren fra at dreje"); forsinkelse (interval); }

Rækkefølgen af ledninger forbundet fra ESC til motoren bestemmer motorens rotation. Hvis motorspinnet er mod uret, skal du notere motoren og ændre boolean i controller -koden i trin "Programmering af Omniboard -controlleren". Hvis den drejer med uret mod fronten, er rotationen korrekt. Gør dette for hver af de fire motorer. Hvis motoren ikke drejer, skal du kontrollere alle dine stik igen, hvis der er kold loddemetal, der resulterer i en løs forbindelse.

Trin 11: Ændring af ESC -tilstand

Ændring af ESC -tilstand
Ændring af ESC -tilstand

Som standard er de børstede ESC'er i træningstilstand. Dette angives med det blinkende LED -lys. For at programmere en motor til omvendt retning, er klatretilstand nødvendig.

For at få adgang til denne tilstand skal du tilslutte ESC til Arduino ved at tilslutte den hvide signalpind fra ESC til pin 9 og den sorte jordstift til GND -pin på Arduino. Upload derefter og kør følgende program til Arduino -kortet:

#omfatte

Servomotor;

byte stopSpeed = 90; usigneret langt interval = 1500; int motorPin = 9;

ugyldig opsætning ()

{Serial.begin (9600); motor.attach (motorPin); Serial.println ("Start test"); }

hulrum ()

{motor.write (stopSpeed); Serial.println ("Stop motoren fra at dreje"); forsinkelse (interval); }

Tænd for ESC, og tryk derefter på programmeringsknappen, og hold den inde i to sekunder. LED -indikatoren vil nu være konstant i modsætning til at blinke, hvilket betyder, at tilstanden med succes er blevet ændret til klatretilstand.

Trin 12: Grænseflade med Bluetooth -modul og telefon

Grænseflade med Bluetooth -modul og telefon
Grænseflade med Bluetooth -modul og telefon
Grænseflade med Bluetooth -modul og telefon
Grænseflade med Bluetooth -modul og telefon
Grænseflade med Bluetooth -modul og telefon
Grænseflade med Bluetooth -modul og telefon

HC-05 Bluetooth-modulet gør det muligt for Arduino at oprette forbindelse til en telefon for at tillade trådløs kontrol af skateboardet via en app. Da jeg har fundet problemer med visse defekte Bluetooth -modulgrænseflader, ville det være bedre at teste det først, før det sidste kredsløb loddes, Vi bruger 4 af de 6 ben på Bluetooth -modulet. Disse er: Tx (Transmit), Rx (Receive), 5V og GND (Ground). Tilslut Tx- og Rx-benene fra HC-05 Bluetooth-modulet til henholdsvis ben 10 og 11 på Arduino. Tilslut derefter 5V -stiften og GND -benene til stifterne med etiketten den samme på Arduino.

På Blynk -appen skal du tilføje bluetooth- og knap -widgets, som vist på billederne ovenfor. Tildel derefter den digitale pin D13, som er forbundet til den indbyggede LED på Arduino Uno, til knappen.

Upload og kør følgende kode til Arduino med Bluetooth -modulet tilsluttet, og åbn den serielle skærm for at se, om Bluetooth -modulet er tilsluttet. Skift derefter tænd/sluk-knappen, og observer den indbyggede LED på Arduino-ændringen.

#define BLYNK_PRINT Serial

#omfatte

#omfatte

// Du bør få Auth Token i Blynk -appen.

// Gå til Projektindstillinger (møtrikikon). char auth = "Dit godkendelsestoken";

SoftwareSerial SerialBLE (10, 11); // RX, TX

BLYNK_WRITE (V1)

{int pinValue = param.asInt (); // tildele indgående værdi fra pin V1 til en variabel}

ugyldig opsætning ()

{Serial.begin (9600); // debug -konsol SerialBLE.begin (9600); Blynk.begin (SerialBLE, auth); Serial.println ("Venter på forbindelser …"); }

hulrum ()

{Blynk.run (); }

Trin 13: Lodning af Arduino Shield

Lodning af Arduino Shield
Lodning af Arduino Shield
Lodning af Arduino Shield
Lodning af Arduino Shield
Lodning af Arduino Shield
Lodning af Arduino Shield
Lodning af Arduino Shield
Lodning af Arduino Shield

For at rydde op i kredsløbet og løse jumper -ledninger fra prototypen lodder vi et Arduino -skjold, der forbinder til hver af ESC'erne og Bluetooth -modulet, samt en strømforsyning til Arduino.

Lod følgende skematisk ovenfor på et dobbeltsidet perf-bord.

Jeg først dimensionerede og tilsluttede de dobbeltsidede mandlige pinhoveder på Arduino kvindelige overskrifter og lod det derefter til oversiden af perf-bordet til begge sider. Når de var loddet, fjernede jeg det fra Arduino -brættet for at lodde den nederste del af brættet. Derefter lodde jeg ESC-ensidige mandlige pinhoveder i 4 sæt med 3 på undersiden af perfbrættet. Hvorefter jeg placerede HC-05 Bluetooth-modulet oprejst og loddet stikket også på undersiden af perf-kortet.

Da Bluetooth -modulet kræver en 5V spændingsindgang, og PDB'et kun er reguleret til 12V, brugte jeg en LM7805 til at trække strømmen ned for at begrænse strømforbruget fra Arduino. Den samme 5V -forsyning er også forbundet med 5V -stiften på Arduino, således at Arduino kan drives gennem skjoldet i modsætning til en ekstra tønde -jackadapter.

Stifterne på LM7805 blev loddet til undersiden af perf -kortet med spændingsregulatorkomponenten siddende oven på perf -kortet som vist på billedet ovenfor. Jeg loddet alle strømforbindelser til hver af komponenterne og ESC pin headers og HC-05 Bluetooth modul som beskrevet i skematisk. 12V -udgangen fra PDB'et blev derefter loddet til VCC -indgangen (venstre mest) og jordstift (midten) på LM7805 -spændingsregulatoren. Endelig hver af ESC-signalpindhovederne og HC-05 Bluetooth-modulet Tx og Rx-benene til Arduino digitale stifter gennem de dobbeltsidede hanstifter som vist i skematisk.

Trin 14: Oprettelse af appen gennem Blynk

Oprettelse af appen gennem Blynk
Oprettelse af appen gennem Blynk

Omniboardet styres over Bluetooth ved hjælp af enhver smartphone via Blynk -appen. Blynk er en Android- og iOS-app, der giver mulighed for at bruge moduler og widgets, der kan grænseflade med flere mikrokontrollere med Bluetooth eller trådløse funktioner eller Bluetooth / trådløse moduler, f.eks. HC-05.

1. Installer Blynk på din telefon.

2. Opret en konto, og log ind

3. Opret et nyt projekt, og navngiv det. Jeg kaldte min "Omniboard -controller", vælg Arduino Uno som mikrokontroller og vælg Bluetooth som interfacetype.

4. Træk og slip følgende widgets på skærmen: Bluetooth, Kort, 2 knapper og joystick

Trin 15: Grænseflade -widgets med Arduino

Grænseflade -widgets med Arduino
Grænseflade -widgets med Arduino
Grænseflade -widgets med Arduino
Grænseflade -widgets med Arduino
Grænseflade -widgets med Arduino
Grænseflade -widgets med Arduino

Knappen bruges til at skifte Hoverboard -tilstand vs Skateboard -tilstand. Hoverboard -tilstand giver mulighed for præcis styring af spin og strafe, mens du holder en krydstogthastighed. Mens, skateboard -tilstand giver præcis kontrol af fremadgående hastighed og spin. Joysticket styrer skateboardet med to frihedsgrader, som udskiftes med vippeknappen. Kortet viser din nuværende placering samt waypoints for andre steder at gå til. Bluetooth tillader grænsefladen at forbinde med et Bluetooth -modul.

Joystick -indstillinger:

Vælg "Flet" for outputtypen, og tildel den til Virtual pin V1

Knapper indstilling:

  • Navngiv den første knap "Hover Mode" og den anden knap "Cruise Control".
  • Tildel output fra den første knap til Virtual pin V2, og skift tilstanden til "Switch".
  • Tildel output fra den anden knap til Virtual pin V3, og skift tilstanden til "Switch".
  • Omdøb skiftenavne på de første knapper til "Hover" og "Skate", og bevar "ON" og "OFF".

Kortindstillinger:

Tildel input til V4

Bluetooth -indstillinger:

Vælg Bluetooth -widgeten i Blynk -appen, og opret forbindelse til dit modul. Standardadgangskoden til Bluetooth -modulet er '1234'

Trin 16: Programmering af Omniboard -controlleren

Programmering af Omniboard -controlleren
Programmering af Omniboard -controlleren
Programmering af Omniboard -controlleren
Programmering af Omniboard -controlleren
Programmering af Omniboard -controlleren
Programmering af Omniboard -controlleren

Omniboardets dynamik blev programmeret baseret på dynamikalgoritmen, der stammer fra afsnittet "Sådan fungerer det". Hver af de 3 frihedsgrader, fremad, strafe og spin beregnes uafhængigt og overlejres på hinanden for at resultere i et fuldt område af bevægelseskontrol af Omniboard. Styringen af hver motor er lineært proportional med joystickets bevægelse. Upload og kør følgende kode til Arduino.

#define BLYNK_PRINT Serial

#omfatte

#omfatte

#omfatte

ServomotorFR; ServomotorFL; Servomotor BR; ServomotorBL;

bool motorFRrev = sand;

bool motorFLrev = sand; bool motorBRrev = sandt; bool motorBLrev = sand;

float motorFRang = 330,0*PI/180,0;

flyde motorFLang = 30,0*PI/180,0; float motorBRang = 210,0*PI/180,0; flyde motorBLang = 150,0*PI/180,0;

float motorFRspeedT;

flyde motorFLspeedT; float motorBRspeedT; flyde motorBLspeedT;

float motorFRspeedR;

float motorFLspeedR; float motorBRspeedR; float motorBLspeedR;

float maxAccel = 10;

byte forwardSpeed = 110;

byte backSpeed = 70; byte stopSpeed = 90; // ændring til eksperimentelt fastslået nummer

int cruiseControl;

int yawMode;

// Du bør få Auth Token i Blynk -appen.

// Gå til Projektindstillinger (møtrikikon). char auth = "8523d5e902804a8690e61caba69446a2";

SoftwareSerial SerialBLE (10, 11); // RX, TX

BLYNK_WRITE (V2) {cruiseControl = param.asInt ();}

BLYNK_WRITE (V3) {yawMode = param.asInt ();} WidgetMap myMap (V4);

BLYNK_WRITE (V1)

{int x = param [0].asInt (); int y = param [1].asInt ();

hvis (! cruiseControl) calcTranslation (x, y);

hvis (yawMode) calcRotation (x, y); ellers {motorFRspeedR = 0; motorFLspeedR = 0; motorBRspeedR = 0; motorBLspeedR = 0; } writeToMotors (); }

ugyldig opsætning ()

{motorFR.attach (9); motorFL. vedhæftet fil (6); motorBR. fastgørelse (5); motorBL. vedhæftning (3); forsinkelse (1500); // vente på motorer til at initialisere // Debug -konsol Serial.begin (9600);

SerialBLE.begyndt (9600);

Blynk.begin (SerialBLE, auth);

Serial.println ("Venter på forbindelser …");

// Hvis du vil fjerne alle punkter:

//myMap.clear ();

int indeks = 1;

float lat = 43,653172; float lon = -79.384042; myMap.location (indeks, lat, lon, "værdi"); }

hulrum ()

{Blynk.run (); }

void calcTranslation (int joyX, int joyY)

{float normX = (joyX - 127.0) /128.0; float normY = (joyY - 127.0) /128.0; motorFRspeedT = (normY*cos (motorFRang) + normX*sin (motorFRang))*(1-2*motorFRrev); motorFLspeedT = (normY*cos (motorFLang) + normX*sin (motorFLang))*(1-2*motorFLrev); motorBRspeedT = (normY*cos (motorBRang) + normX*sin (motorBRang))*(1-2*motorBRrev); motorBLspeedT = (normY*cos (motorBLang) + normX*sin (motorBLang))*(1-2*motorBLrev); }

void calcRotation (int joyX, int joyY)

{float normX = (joyX - 127.0) /128.0; float normY = (joyY - 127.0) /128.0; motorFRspeedR = joyX*(1-2*motorFRrev); motorFLspeedR = -joyX*(1-2*motorFLrev); motorBRspeedR = -joyX*(1-2*motorBRrev); motorBLspeedR = joyX*(1-2*motorBLrev); }

void writeToMotors ()

{float motorFRspeed = motorFRspeedT + motorFRspeedR; float motorFLspeed = motorFLspeedT + motorFLspeedR; float motorBRspeed = motorBRspeedT + motorBRspeedR; float motorBLspeed = motorBLspeedT + motorBLspeedR;

lang motorFRmapped = map ((lang) (100*motorFRspeed), -100, 100, backSpeed, forwardSpeed);

lang motorFLmapped = kort ((lang) (100*motorFLspeed), -100, 100, backSpeed, forwardSpeed); lang motorBRmapped = kort ((lang) (100*motorBRspeed), -100, 100, backSpeed, forwardSpeed); lang motorBLmapped = map ((lang) (100*motorBLspeed), -100, 100, backSpeed, forwardSpeed); motorFR.write (motorFRmapped); motorFL.write (motorFLmapped); motorBR.write (motorBRmapped); motorBL.write (motorBLmapped); }

Trin 17: Installation af elektronikhuset

Installation af elektronikhuset
Installation af elektronikhuset
Installation af elektronikhuset
Installation af elektronikhuset
Installation af elektronikhuset
Installation af elektronikhuset
Installation af elektronikhuset
Installation af elektronikhuset

For at forhindre, at alle ledninger og dele hænger ud af bunden, skal 3D -udskrive huset fastgjort og derefter skrues fast på skateboardet ved hjælp af M5 -skruer.

Trin 18: Maleri

Maleri
Maleri
Maleri
Maleri
Maleri
Maleri

Inspirationen til topdækdesignet er printkort og mønstre. For at gøre dette er først bunden af skateboardet dækket af min indpakningsmalerbånd omkring det. Derefter dækkes hele øverste dæk med hvid maling. Når det er tørt, er det maskeret med negativet i kredsløbsmønsteret og derefter malet om med en sort frakke. Skræl forsigtigt maskeringen fra det øverste lag og voila, et sejt skateboard.

Jeg opfordrer dig til at personliggøre designet til dit eget Omniboard og udøve din kreative frihed.

Trin 19: Test og demo

Image
Image

Anden pris i hjulkonkurrencen 2017

Fjernbetjeningskonkurrence 2017
Fjernbetjeningskonkurrence 2017

Første præmie i fjernbetjeningskonkurrencen 2017

Anbefalede: