Inhoudsopgave:

OmniBoard: skateboard en hoverboard hybride met Bluetooth-bediening - Ajarnpa
OmniBoard: skateboard en hoverboard hybride met Bluetooth-bediening - Ajarnpa

Video: OmniBoard: skateboard en hoverboard hybride met Bluetooth-bediening - Ajarnpa

Video: OmniBoard: skateboard en hoverboard hybride met Bluetooth-bediening - Ajarnpa
Video: Hoverboard via aerial drone footage 2024, Juli-
Anonim
OmniBoard: hybride skateboard en hoverboard met Bluetooth-bediening
OmniBoard: hybride skateboard en hoverboard met Bluetooth-bediening

Het OmniBoard is een nieuwe elektrische skateboard-hoverboard hybride die bestuurbaar is via een Bluetooth-smartphonetoepassing. Het is in staat om te bewegen met alle drie de vrijheidsgraden die mogelijk zijn door beide boards gecombineerd, vooruit te gaan, rond zijn as te draaien en zijwaarts te beschieten.

Hierdoor kun je in elke gewenste richting bewegen en kun je handige trucs doen die je anders niet zou kunnen met je typische vervoermiddel zoals (elektrische) skateboards, hoverboards, auto's, fietsen, enz.

Mijn vriend en ik besloten het OmniBoard te bouwen als een leuke oefening en uitdaging, en ook om deel te nemen aan enkele Instructables-wedstrijden, namelijk de wielenuitdaging. We wilden iets maken dat nog nooit eerder is gedaan, cool is en nuttig zou zijn. Omdat het openbaar vervoersysteem vaak onbetrouwbaar is en het stadsverkeer tijdens de ochtend- en middagritten van en naar het werk verschrikkelijk is, is een alternatief vervoermiddel, zoals fietsen of skateboarden, handig. Elektrische skateboards en fietsen zijn handig voor woon-werkverkeer over lange afstanden, maar er zijn al veel consumenten- en doe-het-zelfoplossingen voor dit onderwerp. Dus besloten we het wiel opnieuw uit te vinden, letterlijk, en een nieuw en leuk OmniBoard te maken.

Stap 1: Gereedschappen en materialen

Gereedschappen en materialen
Gereedschappen en materialen
Gereedschappen en materialen
Gereedschappen en materialen
Gereedschappen en materialen
Gereedschappen en materialen

Aandrijfsysteem

  • (4) Omni-wielen
  • (4) 60 tands katrol
  • (4) 20 tands katrol
  • (4) GT2 distributieriem (we gebruikten 140 tanden)
  • (8) 7 mm binnendiameter, 19 mm buitendiameter lager*
  • (20) M5 (of vergelijkbare maat) machineschroeven, ongeveer 25 mm lang*
  • (28) Moeren, zelfde maat als machineschroeven*
  • (32) Nr. 2 houtschroeven, 3/8" lang*
  • (16) Hoeksteunen, bij voorkeur vier gaten, moeten van hoek tot schroefgat ten minste 1/2" zijn*
  • 1'x2' Multiplex plaat*
  • Skateboard oppervlak

Elektronica:

Aandrijfsysteem

  • (4) gelijkstroommotoren
  • (4) Elektronische snelheidsregelaars (ESC)
  • Stroomverdeelbord (PDB)
  • 16AWG siliconendraad - rood en zwart
  • XT90-connector parallelle splitter
  • XT90 Connector Mannetje met Staart
  • (8 paar) 4 mm kogelconnector
  • (4 paar) XT60-connectoren
  • (2) LiPo-batterijen

Afstandsbediening

  • Dubbelzijdig geperforeerd bord*
  • LM7805 Spanningsregelaar*
  • 24AWG massieve kerndraden - diverse kleuren*
  • HC-05 Bluetooth-module*
  • Arduino Uno v3*
  • (32-pins) Dubbelzijdige mannelijke pin-headers*
  • (12-pins) Enkelzijdige ale Pin Headers*

Gereedschap:

  • Soldeerstation en Soldeer
  • Draadsnijders
  • Draadstrippers
  • Tang
  • Schaar
  • Boren:1-3/8", 3/4", 1/4"

Apparatuur

  • 3D-printer
  • Lasersnijder
  • Lintzaag
  • Kolomboormachine

*Gekregen van de plaatselijke elektronicawinkel of ijzerhandel.

Stap 2: Hoe het werkt

Hoe het werkt
Hoe het werkt

Het Omniboard is een elektrisch skateboard en hoverboard in één! Het kan vooruit en achteruit, van links naar rechts en roteren, allemaal bestuurd door een joystick op je telefoon.

Het Omniboard wordt aangedreven door vier motoren die elk zijn bevestigd aan een omnidirectioneel wiel. Omdat de omni-wielen zijdelings kunnen schuiven, kan het board door het variëren van de snelheid en richting van elke motor in elke gewenste richting bewegen, zoals weergegeven in de afbeelding hierboven.

Stap 3: Montage van de Omni-wielassen

Montage van de Omni-wielassen
Montage van de Omni-wielassen
Montage van de Omni-wielassen
Montage van de Omni-wielassen
Montage van de Omni-wielassen
Montage van de Omni-wielassen
Montage van de Omni-wielassen
Montage van de Omni-wielassen

De onderdelen die je nodig hebt voor het monteren van de assen zijn:

  • (8) 3D-geprinte lagerafstandhouder
  • (4) 3D-geprinte grote katrolafstandhouder
  • (8) Lager:
  • (4) Omni-wiel
  • (4) Grote katrol
  • (4) 3x3x80mm keystock

Eerst wilt u een lagerafstandsstuk op het uiteinde van de as plaatsen, zoals afgebeeld. De spacer is gemaakt om een zeer strakke pasvorm te zijn, dus ik raad aan om een bankschroef of hamer te gebruiken om hem op te zetten. Als het te los zit, schuif het dan iets verder op de keystock en bevestig een kraag. U hoeft zich geen zorgen te maken over een halsband voor het andere uiteinde.

Vervolgens schuift u het omni-wiel erop, gevolgd door een lagerafstandhouder in de tegenovergestelde richting. Je kunt de lagers er nu op laten glijden (het maakt niet uit, ze zitten niet goed vast) en het zou eruit moeten zien als op de foto. Ten slotte kunt u de lange dunne katrolafstandhouders in de katrollen schuiven. Draai op dit punt de stelschroeven van de poelie niet vast en plaats ze niet op de keystock. Die komen later.

Stap 4: Snijden en boren van de Omni Wheel Trucks

Image
Image
Snijden en boren van de Omni Wheel Trucks
Snijden en boren van de Omni Wheel Trucks
Snijden en boren van de Omni Wheel Trucks
Snijden en boren van de Omni Wheel Trucks
Snijden en boren van de Omni Wheel Trucks
Snijden en boren van de Omni Wheel Trucks

Dit is waar uw lasersnijder en 3/8 dik multiplex van pas komen! De CAD voor het lasersnijden van het frame is bevestigd in een.dxf-formaat.

Vervolgens boor je twee gaatjes over de kruisjes die de lasersnijder op het triplex achterlaat. Het iets kleinere kruis wordt geboord met het 3/4" bit slechts 1/4" van de weg, terwijl het grotere kruis helemaal door wordt geboord met het 1-3/8" bit. Het is erg belangrijk dat je je herinnert dat de helft van de stukken de 3/4 "gaten van de ene kant en de andere helft van de andere kant snijdt. Boor vervolgens een kleiner 3/8 "gat door het midden van de 3/4" gaten, helemaal door de laag die je niet eerder hebt gesneden.

Schroef tot slot de hoekbeugels aan de kortere zijden van de rechthoekige stukken. Je hebt nu bijna alles wat je nodig hebt om de omniwheel trucks in elkaar te zetten.

Stap 5: Montage van de Omni Wheel Trucks

Montage van de Omni Wheel Trucks
Montage van de Omni Wheel Trucks
Montage van de Omni Wheel Trucks
Montage van de Omni Wheel Trucks
Montage van de Omni Wheel Trucks
Montage van de Omni Wheel Trucks

Nu kunnen we de montage van de vrachtwagen afmaken! Je hebt de onderdelen van de laatste twee stappen nodig plus:

  • (4) Distributieriem
  • (4) 3D-geprinte kleine katrolafstandhouder
  • (4) Kleine katrol
  • (4) Motor

Schuif elke kant van multiplex op de lagers. Als de 3/4 gaten niet gemakkelijk over de lagers passen, gebruik dan een Dremel om ze een beetje breder te schuren. Zodra ze passen, plaatst u de katrol over de uitstekende keystock en draait u de stelschroeven vast. Schroef het rechthoekige stuk in de inkeping boven het omniwiel.

Controleer nu of uw omni-wiel vrij kan draaien. Als dit niet het geval is, klemt uw katrol mogelijk op het triplex. Til het een beetje verder op de keystock.

Vervolgens passen we de motoren erin. De gaten van 1-3/8 zijn iets te klein, dus schuur de binnenste cirkel langzaam met een Dremel totdat de motor er precies in past. Pas op dat u de motor niet forceert en de Zodra de motor op zijn plaats zit, schuift u de riem over de kleine poelies, dan de kleine poelies over hun afstandhouders en op de 3.175 mm motoras. Draai de stelschroeven vast.

Omwille van de compactheid en symmetrie, wil je de katrollen en riemen aan de ene kant van de truck plaatsen voor twee van hen en de andere kant voor de andere twee.

Stap 6: Montage op het skateboardplatform

Montage op het skateboardplatform
Montage op het skateboardplatform
Montage op het skateboardplatform
Montage op het skateboardplatform
Montage op het skateboardplatform
Montage op het skateboardplatform

Nu gaan we de trucks aan het skateboardplatform bevestigen. Je zou de jouwe kunnen maken van multiplex en griptape; die van ons is afkomstig van een oud skateboard.

Eerst boor je gaten van 1/4 in beide zijden van het triplex, zoals weergegeven in de afbeelding. Bevestig in elk gat een hoekbeugel met een M5-schroef en moer deze aan de binnenkant dubbel om te voorkomen dat deze loskomt los door trillingen Meet en boor de gaten waarmee u de vrachtwagens zo dicht mogelijk bij de uiteinden en in een zo steil mogelijke hoek kunt monteren, terwijl u binnen de voetafdruk van het platform blijft. Draai het nu om en voer een belastingstest uit !

Stap 7: De motoren solderen

Image
Image
De motoren solderen
De motoren solderen

Soldeer de mannelijke connectoren van 4 mm aan een draad die op de motoren wordt aangesloten en soldeer deze draad vervolgens op de motorklemmen. Voor kabelorganisatie worden elke draad tot 6 cm gesneden en van beide uiteinden gestript

Tip: Het is makkelijker om eerst de draden op de bullet connectoren te solderen en vervolgens op de motor te solderen dan andersom.

Om de kogelconnector op de draad te solderen, plaatst u deze op een geïsoleerde krokodillenklem van de helpende hand (omdat de warmte snel verdwijnt van het lichaam van de kogelconnector naar het metalen, warmtegeleidende helpende handlichaam). Breng vervolgens wat soldeer aan op de kogelconnector, ongeveer halverwege en terwijl u het strijkijzer in de connector houdt, dompel de draad op de soldeerpool, zoals weergegeven in de video. Krimp vervolgens de draad en de kogelconnector.

Leg vervolgens de draad naast de motorklem en houd deze met de helpende hand rechtop. Ik gebruikte de soldeerrol om de motor ondersteboven te houden. Soldeer vervolgens de draad op de motorklem. De volgorde en kleur van de draden zijn dubbelzinnig en doen er niet toe, omdat de volgorde kan worden gewijzigd om de rotatie om te keren, wat indien nodig in de volgende stappen zal worden gedaan.

Stap 8: ESC-batterijconnectoren solderen

ESC-batterijconnectoren solderen
ESC-batterijconnectoren solderen
ESC-batterijconnectoren solderen
ESC-batterijconnectoren solderen

Knip voorafgaand aan het solderen wat krimpkous af voor elk van de draden die zullen worden gebruikt om de blootgestelde gesoldeerde uiteinden te isoleren.

Knip een van de draden naar de batterijconnector af, strip deze, schuif de krimpkous erin en soldeer deze aan de XT60-connector met de rode verbinding met de positieve pool van de XT60 en de zwarte met de negatieve pool van de XT60.

Waarschuwing: Knip de ESC-draden slechts één voor één door, want er is een condensator die tussen de positieve en negatieve aansluitingen kan worden opgeladen en die kort zal sluiten als de schaar of draadknipper beide tegelijk doorsnijdt.

Om de draad op de XT60-connector te solderen, gebruikt u de helpende handen om het lichaam van de XT60-connector vast te houden. Breng vervolgens ongeveer halverwege wat soldeer aan op de XT60-aansluiting en terwijl u de soldeerbout op de XT60-connector houdt, dompelt u de draad in de vloeibare soldeerpool, zoals weergegeven in de video van de vorige stap. Eenmaal afgekoeld, schuift u de krimpkous naar beneden om het blootgestelde uiteinde te isoleren en verwarmt u het met de zijkanten van de soldeerbout.

Herhaal dit voor de rest van de draden van de batterijconnectoren van de SER's.

Stap 9: Solderen van de Power Distribution Board (PDB)

Solderen van de Power Distribution Board (PDB)
Solderen van de Power Distribution Board (PDB)
Solderen van de Power Distribution Board (PDB)
Solderen van de Power Distribution Board (PDB)
Solderen van de Power Distribution Board (PDB)
Solderen van de Power Distribution Board (PDB)
Solderen van de Power Distribution Board (PDB)
Solderen van de Power Distribution Board (PDB)

De PDB zal input opnemen van de twee Lithium Polymer (LiPo) batterijen met een gecombineerde spanning en stroom van respectievelijk 11,1 V en 250 A, en deze naar de vier ESC's distribueren.

Tip: Het is gemakkelijker om eerst de mannelijke XT90-connectorkabels op de PDB-pads te solderen, dan de 16 AWG-draden op de ESC's, gevolgd door de XT60-connectoren op deze draden.

Voordat u de draden soldeert, knipt u de krimpkous af om op elk van de draden te passen, zodat deze later op het blootgestelde gesoldeerde uiteinde kan worden geschoven om kortsluiting te voorkomen.

Om de draden op de PDB-pads te solderen, vond ik het het gemakkelijkst om de helpende handen te gebruiken om de draden rechtop te houden (vooral de grote XT90-kabel) en deze bovenop de PDB op de tafel te plaatsen. Soldeer vervolgens de draad rond de PDB-pad. Schuif vervolgens de krimpkous naar beneden en verwarm deze om het circuit te isoleren.

Herhaal dit voor de rest van de ESC-draden.

Om de XT60 te solderen, volgt u de vorige stap over hoe de ESC-batterijterminal werd vervangen door XT60s.

Stap 10: De draden aansluiten

De draden aansluiten
De draden aansluiten

Sluit de motordraden aan op de bullet-connectorterminals van de ESC. Sluit vervolgens de witte signaalpin van de ESC aan op pin 9 en de zwarte grondpin op de GND-pin op de Arduino. Dual lock-strips werden gebruikt om alle ESC's en draden aan het bord te bevestigen.

Om te controleren of de rotatie van de motoren correct is (naar voren draaiend), voert u de voorbeeldcode uit op de Arduino hieronder.

#erbij betrekken

servomotor;

byte met de klok mee Snelheid = 110; niet-ondertekend lang interval = 1500; int motorPin = 9;

ongeldige setup()

{ Serieel.begin(9600); motor.bevestigen (motorPin); Serial.println("Begintest"); }

lege lus()

{ motor. schrijven (met de klok mee Snelheid); Serial.println("Stop het draaien van de motor"); vertragingsinterval); }

De volgorde van de draden die van de ESC op de motor zijn aangesloten, bepaalt de rotatie van de motor. Als de motor tegen de klok in draait, noteer dan de motor en verander de boolean in de controllercode in stap "De Omniboard-controller programmeren". Als het met de klok mee naar voren draait, is de rotatie correct. Doe dit voor elk van de vier motoren. Als de motor niet draait, controleer dan nogmaals al uw connectoren als er koud soldeer is dat resulteert in een losse verbinding.

Stap 11: De ESC-modus wijzigen

De ESC-modus wijzigen
De ESC-modus wijzigen

Standaard staan de geborstelde ESC's in de oefenmodus. Dit wordt aangegeven door het knipperende LED-lampje. Om een motor programmatisch in de omgekeerde richting te sturen, is de klimmodus nodig.

Om toegang te krijgen tot deze modus, sluit u de ESC aan op de Arduino door de witte signaalpin van de ESC op pin 9 en de zwarte grondpin op de GND-pin op de Arduino aan te sluiten. Upload vervolgens het volgende programma en voer het uit naar het Arduino-bord:

#erbij betrekken

servomotor;

byte stopSnelheid = 90; niet-ondertekend lang interval = 1500; int motorPin = 9;

ongeldige setup()

{ Serieel.begin(9600); motor.bevestigen (motorPin); Serial.println("Begintest"); }

lege lus()

{ motor.write(stopSnelheid); Serial.println("Stop het draaien van de motor"); vertragingsinterval); }

Schakel de ESC in en houd vervolgens de programmeerknop twee seconden ingedrukt. De LED-indicator zal nu stabiel zijn en niet knipperen, wat betekent dat de modus met succes is gewijzigd in de klimmodus.

Stap 12: Interface met Bluetooth-module en telefoon

Interface met Bluetooth-module en telefoon
Interface met Bluetooth-module en telefoon
Interface met Bluetooth-module en telefoon
Interface met Bluetooth-module en telefoon
Interface met Bluetooth-module en telefoon
Interface met Bluetooth-module en telefoon

Met de HC-05 Bluetooth-module kan de Arduino verbinding maken met een telefoon om draadloze bediening van het skateboard via een app mogelijk te maken. Omdat ik problemen heb gevonden met bepaalde defecte interfaces van de Bluetooth-module, is het beter om het eerst uit te testen voordat je het definitieve circuit gaat solderen, We zullen 4 van de 6 pinnen op de Bluetooth-module gebruiken. Dit zijn: Tx (zenden), Rx (ontvangen), 5V en GND (aarde). Verbind de Tx- en Rx-pinnen van de HC-05 Bluetooth-module met respectievelijk pinnen 10 en 11 op de Arduino. Verbind vervolgens de 5V-pin en GND-pinnen met de pinnen met hetzelfde label op de Arduino.

Voeg op de Blynk-app de bluetooth- en knopwidgets toe, zoals weergegeven in de bovenstaande afbeeldingen. Wijs vervolgens digitale pin D13, die is aangesloten op de ingebouwde LED op de Arduino Uno, toe aan de knop.

Upload en voer de volgende code uit naar de Arduino met de Bluetooth-module aangesloten en open de seriële monitor om te zien of de Bluetooth-module is aangesloten. Schakel vervolgens de aan / uit-knop in en bekijk de ingebouwde LED op de Arduino-verandering.

#define BLYNK_PRINT Serie

#erbij betrekken

#erbij betrekken

// Je zou Auth Token in de Blynk-app moeten krijgen.

// Ga naar de projectinstellingen (moerpictogram). char auth = "Uw authenticatietoken";

Software Serieel Serieel BLE (10, 11); // RX, TX

BLYNK_WRITE(V1)

{ int pinValue = param.asInt(); // binnenkomende waarde van pin V1 toewijzen aan een variabele}

ongeldige setup()

{ Serieel.begin(9600); // debug console SerialBLE.begin (9600); Blynk.begin(SerialBLE, auth); Serial.println("Wachten op verbindingen…"); }

lege lus()

{ Blynk.run(); }

Stap 13: Het Arduino-schild solderen

Het Arduino-schild solderen
Het Arduino-schild solderen
Het Arduino-schild solderen
Het Arduino-schild solderen
Het Arduino-schild solderen
Het Arduino-schild solderen
Het Arduino-schild solderen
Het Arduino-schild solderen

Om de circuits en losse jumperdraden van het prototype op te ruimen, zullen we een Arduino-schild solderen dat verbinding maakt met elk van de ESC's en Bluetooth-module, evenals een voeding naar de Arduino.

Soldeer het volgende schema hierboven op een dubbelzijdig geperforeerd bord.

Ik heb eerst de dubbelzijdige mannelijke pin-headers op maat gemaakt en aangesloten op de vrouwelijke Arduino-headers en vervolgens aan beide zijden aan de bovenkant van het perf-bord gesoldeerd. Nadat ze waren gesoldeerd, verwijderde ik het van het Arduino-bord om het onderste gedeelte van het bord te solderen. Vervolgens heb ik de ESC enkelzijdige mannelijke pin-headers in 4 sets van 3 op de onderkant van het perf-bord gesoldeerd. Daarna heb ik de HC-05 Bluetooth-module rechtop gezet en de connectoren ook aan de onderkant van het perf-bord gesoldeerd.

Omdat de Bluetooth-module een 5V-spanningsingang vereist en de PDB alleen op 12V is geregeld, heb ik een LM7805 gebruikt om de stroom te verlagen om de stroomafname van de Arduino te beperken. Deze zelfde 5V-voeding is ook aangesloten op de 5V-pin van de Arduino, zodat de Arduino via het schild kan worden gevoed in plaats van een extra barrel jack-adapter.

De pinnen van de LM7805 zijn aan de onderkant van het perf-bord gesoldeerd met de component van de spanningsregelaar bovenop het perf-bord, zoals weergegeven in de afbeelding hierboven. Ik heb alle stroomaansluitingen aan elk van de componenten en ESC-pinheaders en HC-05 Bluetooth-module gesoldeerd zoals beschreven in het schema. De 12V-uitgang van de PDB werd vervolgens gesoldeerd aan de VCC-ingang (meest linkse) pin en grondpin (midden) van de LM7805-spanningsregelaar. Ten slotte, elk van de ESC-signaalpin-headers en HC-05 Bluetooth-module Tx- en Rx-pinnen naar de Arduino digitale pinnen via de dubbelzijdige mannelijke pin-headers zoals weergegeven in het schema.

Stap 14: De app maken via Blynk

De app maken via Blynk
De app maken via Blynk

Het Omniboard wordt bestuurd via Bluetooth met elke smartphone via de Blynk-app. Blynk is een Android- en iOS-app waarmee je modules en widgets kunt gebruiken die kunnen communiceren met verschillende microcontrollers met Bluetooth of draadloze mogelijkheden of Bluetooth / draadloze modules, zoals de HC-05.

1. Installeer Blynk op uw telefoon.

2. Maak een account aan en log in

3. Maak een nieuw project en geef het een naam. Ik noemde de mijne " Omniboard-controller ", selecteer Arduino Uno als de microcontroller en selecteer Bluetooth als het interfacetype.

4. Sleep de volgende widgets naar het scherm: Bluetooth, Kaart, 2 knoppen en Joystick

Stap 15: Widgets koppelen met Arduino

Widgets koppelen met Arduino
Widgets koppelen met Arduino
Widgets koppelen met Arduino
Widgets koppelen met Arduino
Widgets koppelen met Arduino
Widgets koppelen met Arduino

De knop wordt gebruikt om te schakelen tussen de hoverboard-modus en de skateboard-modus. Hoverboard-modus zorgt voor nauwkeurige controle van spin en strafe terwijl een kruissnelheid wordt aangehouden. Terwijl de skateboardmodus nauwkeurige controle geeft over de voorwaartse snelheid en spin. De joystick bestuurt het skateboard met twee vrijheidsgraden die worden verwisseld door de schakelknop. De kaart zal uw huidige locatie weergeven, evenals waypoints voor andere plaatsen om naar toe te gaan. Door de bluetooth kan de interface verbinding maken met een Bluetooth-module.

Joystick-instellingen:

Selecteer "Samenvoegen" voor het uitvoertype en wijs het toe aan virtuele pin V1

Knoppen Instelling:

  • Noem de eerste knop "Hover Mode" en de tweede knop "Cruise Control".
  • Wijs de uitgang van de eerste knop toe aan virtuele pin V2 en verander de modus in "Switch".
  • Wijs de uitgang van de tweede knop toe aan virtuele pin V3 en verander de modus in "Switch".
  • Hernoem de schakelnamen van de eerste knoppen als "Hover" en "Skate" en behoud "ON" en "OFF".

Kaartinstellingen:

Wijs de ingang toe aan V4

Bluetooth-instellingen:

Selecteer de Bluetooth-widget op de Blynk-app en maak verbinding met je module. Het standaardwachtwoord voor de Bluetooth-module is '1234'

Stap 16: De Omniboard-controller programmeren

De Omniboard-controller programmeren
De Omniboard-controller programmeren
De Omniboard-controller programmeren
De Omniboard-controller programmeren
De Omniboard-controller programmeren
De Omniboard-controller programmeren

De dynamiek van het Omniboard is geprogrammeerd op basis van het dynamische algoritme dat is afgeleid van de sectie "Hoe het werkt". Elk van de 3 vrijheidsgraden, forwards, strafe en spin worden onafhankelijk berekend en over elkaar heen gelegd om te resulteren in volledige bewegingsbesturing van het Omniboard. De besturing van elke motor is lineair evenredig met de beweging van de joystick. Upload en voer de volgende code uit naar de Arduino.

#define BLYNK_PRINT Serie

#erbij betrekken

#erbij betrekken

#erbij betrekken

servomotorFR; ServomotorFL; ServomotorBR; servomotorBL;

bool motorFRrev = waar;

bool motorFLrev = waar; bool motorBRrev = waar; bool motorBLrev = waar;

vlottermotor FRang = 330,0*PI/180.0;

vlottermotorFLang = 30.0*PI/180.0; vlottermotorBRang = 210.0*PI/180.0; vlottermotorBLang = 150.0*PI/180.0;

vlottermotorFRspeedT;

vlottermotorFLspeedT; vlottermotorBRspeedT; vlottermotorBLspeedT;

vlottermotorFRspeedR;

vlottermotorFLspeedR; vlottermotorBRspeedR; vlottermotorBLspeedR;

zweven maxAccel = 10;

byte voorwaartse snelheid = 110;

byte backSpeed = 70; byte stopSnelheid = 90; // verander naar experimenteel bepaald nummer

int cruiseControl;

int yawMode;

// Je zou Auth Token in de Blynk-app moeten krijgen.

// Ga naar de projectinstellingen (moerpictogram). char auth = "8523d5e902804a8690e61caba69446a2";

Software Serieel Serieel BLE (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();

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

if (yawMode) calcRotation(x, y); anders { motorFRspeedR = 0; motorFLspeedR = 0; motorBRsnelheidR = 0; motorBLsnelheidR = 0; } schrijfToMotors(); }

ongeldige setup()

{ motorFR.attach (9); motorFL.attach(6); motorBR.attach(5); motorBL.attach(3); vertraging (1500); // wacht tot de motoren zijn geïnitialiseerd // Debug console Serial.begin (9600);

SerialBLE.begin (9600);

Blynk.begin(SerialBLE, auth);

Serial.println("Wachten op verbindingen…");

// Als je alle punten wilt verwijderen:

//mijnkaart.clear();

int-index = 1;

vlotter lat = 43.653172; vlotter lon = -79,384042; myMap.location (index, lat, lon, "waarde"); }

lege lus()

{ 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); motorBRsnelheidT = (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); }

ongeldig schrijvenToMotors()

{ float motorFRspeed = motorFRspeedT + motorFRspeedR; vlottermotorFLspeed = motorFLspeedT + motorFLspeedR; vlottermotorBRspeed = motorBRspeedT + motorBRspeedR; vlottermotorBLspeed = motorBLspeedT + motorBLspeedR;

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

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

Stap 17: De elektronicabehuizing installeren

De elektronicabehuizing installeren
De elektronicabehuizing installeren
De elektronicabehuizing installeren
De elektronicabehuizing installeren
De elektronicabehuizing installeren
De elektronicabehuizing installeren
De elektronicabehuizing installeren
De elektronicabehuizing installeren

Om te voorkomen dat alle draden en onderdelen uit de bodem bungelen, print u de bevestigde behuizing in 3D en schroeft u deze vervolgens op het skateboard met M5-schroeven.

Stap 18: Schilderen

Schilderen
Schilderen
Schilderen
Schilderen
Schilderen
Schilderen

De inspiratie voor het ontwerp van het bovendek zijn PCB-circuits en patronen. Om dit te doen, wordt eerst de onderkant van het skateboard bedekt met mijn schilderstape eromheen. Vervolgens wordt het hele bovendek gecoat met witte verf. Eenmaal droog, wordt het gemaskeerd met het negatief van het circuitpatroon en vervolgens opnieuw geverfd met een zwarte laag. Verwijder vervolgens voorzichtig de maskers van de bovenste laag en voila, een cool uitziend skateboard.

Ik moedig je aan om het ontwerp voor je eigen Omniboard te personaliseren en je creatieve vrijheid uit te oefenen.

Stap 19: Test en demo

Image
Image

Tweede prijs in de Wheels Contest 2017

Afstandsbediening Wedstrijd 2017
Afstandsbediening Wedstrijd 2017

Eerste prijs in de Remote Control Contest 2017

Aanbevolen: