3D gedrukte Remote Controlled BB8 Droid - Make cursus (4 / 8 stap)

Stap 4: Voorbereiding van de Code


Deze code wilt gebruiken, moet u een paar bibliotheken voor de Arduino IDE. U moet de PID, I2CDev en MPU6050 bibliotheken. Deze bibliotheken zijn gemaakt door een aantal slimme mensen, dus zorg ervoor om hen te danken. Jeff Rowberg gemaakt de bibliotheken voor het MPU6050 en de I2CDev. Brett Beauregard gemaakt de PID-bibliotheek. Ik nam de tijd om te gaan door middel van de voorbeeld en header bestanden naar de code volledig te begrijpen en erachter te komen hoe het allemaal werkt.

  • Om te beginnen, door deze bibliotheken te uploaden naar uw Arduino IDE.
  • Start met de MPU6050, zullen we om te testen en kalibreren van dit apparaat vóór bewerking.
  • Om het te testen, gebruik de voorbeeldcode in de MPU6050 map onder voorbeeld >> MPU6050_DMP6. Deze code kunt u het apparaat testen en controleren van de werking. De code is ingesteld voor het weergeven van de yaw, worp, en roll gegevens aan u via de seriële poort op de Arduino.
  • Zodra de test is voltooid en succesvolle, open de map MPU6050 kalibratie en open het bestand van de Arduino. Dit bestand zal de MPU6050 om een bepaalde positie te kalibreren, dus zorg ervoor om het te plaatsen op een plat oppervlak. De kalibratie-tijd kan een paar minuten duren, als het bevriest enkel opnieuw het. Het zal geven u verschuiving waarden die uw MPU6050 zal sluiten aan het nulpunt, de enige waarde die groot is de waarde van de z-as versnellingsmeter vanwege ernst. Neem deze waarden en steek ze in de code voor de ruwe test van MPU6050_DMP6. Uw lezingen moeten veel nauwkeuriger worden.
  • Het HC-06-apparaat kan worden geconfigureerd in een gewenste weergavenaam, hebben een gewenst wachtwoord en werken op een gewenste baudrate. Om dit te wijzigen, door het BlueTooth_Example_Code-bestand te gebruiken. Neem een kijkje op de PDF mits, dit bevat opdrachten waarmee u de snelheid van het naam- en baudrate van het apparaat wijzigen. Wijzigen van de naam van het apparaat is optioneel, maar ik beveel de baud-rate omzetten in 57600. Alle opdrachten worden opgestuurd via de seriële poort van de Arduino IDE na de HC-06 is aangesloten en de code geladen en wordt uitgevoerd is.
  • De app die ik voor dit project gebruikte heet de "Joystick Bluetooth Commander". Dit app is beschikbaar op de app store van Google. Als u gebruiken een andere bluetooth-toepassing wilt, moet u verschillende code te gebruiken.
  • Het BlueTooth_Joystick_App_Code-bestand gebruiken om te testen dat u om gegevens te van de app verkrijgen zijn. Je moet koppelen van de HC-06-apparaat met uw telefoon vóór de test. De code voor de HC-06 zal hoogstwaarschijnlijk 1234 of 0000 standaard
  • Om te testen van de motoren, het Motor_Code_Example-bestand te gebruiken. Dit bestand kan u uitvoeren van de motoren en het bepalen van de kleinste PWM-signaal dat krijgt ze beginnen draaien. Tuning van de motoren is nodig omdat niet alle motoren starten of draai aan het zelfde tarief.

Zodra alle de eerste testen is voltooid, kunt u op verplaatsen naar het New_BB8_Code bestand. U moet controleren of pin verbindingen, MPU6050 offsets en HC-06 baud-rate. Zodra dat is gebeurd, kunt u uploaden van de code en test alles uit. De code is ontworpen om de gebruiker om te bepalen van de richting dat BB8 zal rol terwijl het houden van het hoofd in de verticale positie. De PID zal moeten worden afgestemd, maar kan niet tot de kern is gemonteerd.

Ik zal het uitleggen van de functies van de onderstaande code:

  • init_imu(); -Dit wordt gebruikt voor het initiëren van de MPU6050 en de ideale instellingen ingesteld. Dit is ontleend aan de MPU6050-voorbeeldcode.
  • motorSetup(); -Dit wordt gebruikt om in te stellen van alle de pinnen voor de motor bestuurder uitgangen.
  • getValues(); -Dit wordt gebruikt voor het verkrijgen van de lezingen voor de yaw, worp, en rollen van de MPU6050.
  • blueTooth(); -Dit wordt gebruikt voor de opstelling van de HC-06 en de gegevens van de app op de telefoon ontvangen.
  • pidCompute(); -Dit wordt gebruikt voor het uitvoeren van de PID-regelaar om af te stemmen op het setpoint en produceren een PWM-signaal voor de motoren.
  • motorControl(); Dit wordt gebruikt om te controleren van BB8 in de gewenste richting en ook PWM signaal om te houden van het hoofd in de opwaartse positie.

Gerelateerde Artikelen

Balancing plaat spel - Ramy Mounir - MAKE cursus!

Balancing plaat spel - Ramy Mounir - MAKE cursus!

Dit instructable ontstond vervulling de project-eis van de Makecourse bij de Universiteit van Zuid-Florida (www.makecourse.com)HalloMijn naam is Ramy Mounir, en ik ben de maker van een student ingeschreven in de MAKE-cursus op de Universiteit van Zui
Drank Dispenser Alexander Murphy MAKE cursus

Drank Dispenser Alexander Murphy MAKE cursus

Dit instructable ontstond vervulling de project-eis van de Makecourse bij de Universiteit van Zuid-Florida (www.makecourse.com)HalloMijn naam is Alexander Murphy, en ik ben in de MAKE-cursus op de Universiteit van Zuid-Florida. Voor najaar 2014, heb
DIY Arduino Remote Control en Lego RC voertuig!

DIY Arduino Remote Control en Lego RC voertuig!

UPDATE (8/29/13): dank u lezers voor uw enthousiasme en soort opmerkingen met betrekking tot dit project! Het is een geweldige reis sinds ik begon dit project terug in maart, maar ik ben erg blij met het resulterende product en de opwinding waarmee h
IOS/Android Remote Controlled Blimp met Video-Feedback

IOS/Android Remote Controlled Blimp met Video-Feedback

In een luchtballon van een oog.Dit project was de blikvanger van mijn artiest In residentie in Instructables.Zoals RC blimps mijn passie zijn, wilde ik zeker doen van sommige blimp project tijdens mijn verblijf op Instructables.  Toen kwam ik de Dens
Met behulp van 433 MHz Remote Controlled schakelaars op Arduino

Met behulp van 433 MHz Remote Controlled schakelaars op Arduino

Ik denk dat iedereen weet die extern gecontroleerde schakelaars die in hun meest eenvoudige vorm komen in een aantal (meestal 3) voor switcheable apparaten aansluiten op het lichtnet stopcontact en die ontvangt een stekker van een lamp of iets en dat
Remote Controlled Confetti kanon

Remote Controlled Confetti kanon

Confetti kanonnen zijn een heleboel plezier. Een explosie van confetti kan een feest beter maken. Maar het is niet altijd handig zijn als iemand naast het kanon te verrekenen. Dus vandaag ga ik u tonen hoe te maken van een externe gecontroleerde conf
DIY levensgrote telefoon gecontroleerd BB8 Droid

DIY levensgrote telefoon gecontroleerd BB8 Droid

Vandaag, I 'm gonna leren u hoe te bouwen een werken, levensgrote, Starwars BB-8-droid telefoon-gecontroleerd ! In deze tutorial gaan we alleen gebruiken van huishoudelijke materialen en een beetje Arduino circuits.`Mijn Gift van Kerstmis voor Papa:
Remote controlled webcam met behulp van de Arduino, SensorMonkey, jQuery en Justin.tv

Remote controlled webcam met behulp van de Arduino, SensorMonkey, jQuery en Justin.tv

Web in te schakelen voor uw interactieve sensoren over desktop, smartphone en tablet apparaten.Deze tutorial beschrijft in detail hoe met de gratis SensorMonkey -service op afstand besturen van een pan en tilt webcam aangesloten op een Arduino met ni
Arduino Remote Control (ARC)

Arduino Remote Control (ARC)

In dit project, zullen we het maken van een Arduino Remote Control (ARC) die elke infrarood (IR) afstandsbediening in hex of enige andere vorm ontcijferen en deze gebruiken om te schakelen LED on/off!Het is een vrij eenvoudig project en zou kunnen wo
Remote Controlled onderzeeër / Underwater ROV

Remote Controlled onderzeeër / Underwater ROV

wat is er leuker dan het verkennen van de diepten van donker, het vinden van nieuwe visplaatsen, boot onderhoud of schat met uw zeer eigen Remote Controlled onderzeeër ontdekken? I 'm gonna worden verwijst naar de extern gecontroleerde onderzeeër als
Hoe aan remote controle van uw iPhone, iPad van computer - via USB

Hoe aan remote controle van uw iPhone, iPad van computer - via USB

Hoe om remote control afstandsbediening,, iPhone iPad vanaf computer verbinding maakt via USB - werken op Windows of MacUw iOS-apparaat moet zijn jailbroken voor dit om te werken. Deze tutorial zal niet gaan over hoe jailbreak uw apparaat.Zorgen voor
Bouwen van een enorme RC MONSTER TRUCK - Golf Cart wielen - bromfiets Motor - Remote Controlled

Bouwen van een enorme RC MONSTER TRUCK - Golf Cart wielen - bromfiets Motor - Remote Controlled

hier is een DIY te bouwen van een enorme RC Monster Truck. U zult moeten hebben een lasser.Ik heb genoten zien remote controlled vrachtwagens een lange weg afgelegd in de afgelopen paar decennia. Ik heb zelfs het bezit verscheidene van hen langs de w
Remote Controlled kreeft

Remote Controlled kreeft

ik weet dit gekke klein kind, alles wat hij wilde voor Kerstmis een externe gecontroleerde Kreeft was.Hij vroeg zijn ouders... hij gevraagd Santa... hij vroeg iedereen die wilde luisteren.Helaas...  "Surf - Remote Controlled kreeft - niet overeenkome
Aflevering 7: Remote Controlled ballon van het Water

Aflevering 7: Remote Controlled ballon van het Water

deze zomer, zorg ervoor dat u bereid bent om het loon van een water gevecht met The Remote Controlled ballon van het Water!De nieuwste creatie van dom uitvindingen zorgt ervoor dat u droge blijven zult terwijl uw vijanden doorweekte krijgen!Gewoon ki