Stap 13: Programma en Tune Platform
De code vereist verschillende bibliotheken zoals: encoder, mediaan uitgevoerd, gemiddelde uitgevoerd, en PID.
De PID-bibliotheek kan gemakkelijk worden weggewerkt, zoals alleen het proportionele deel wordt gebruikt voor de controle van de stepper motor hoek.
Het scherm moet een eerste kalibratie. In het begin deel van de code onder "touch scherm spullen" kalibratie kunnen waarden worden ingevoerd. Uncomment "Serial.print(measured_x_pos)" en "Serial.println(measured_y_pos)" aan de onderkant van de hoofdlus om de ruwe scherm lezingen weer te geven. Raak het scherm aan de aangeklaagde locaties onder de sectie "touch scherm stuff" en voer de weergegeven waarden in de code. Na kalibratie, commentaar opnieuw de seriële prints.
De bedieningsknop quadrature wordt gebruikt om waarden tijdens operatie. De Arduino IDE seriële monitor kan worden gebruikt om de waarden weer te geven. De eerste waarde die wordt weergegeven is het hoofdbesturingselement lus keer in ons. Deze waarde mag niet meer dan 5 MS, want dat is het interval van de oproep van de hoofdlus. De drukknop quadrature wordt gebruikt om door te gaan naar de volgende waarde. De volgende drie waarden zijn de evenredige afgeleide en de integrale winsten. Deze waarden kunnen worden aangepast met behulp van de knop om de gewenste afstemming. De bal moet snel verplaatsen naar de locatie instellen met minimale overschrijding. De waarden zullen verloren gaan tijdens macht cyclus dus ze moeten handmatig worden ingevoerd in code na tuning voltooid is. Verschuivingswaarden voor de X- en Y-richtingen kunnen vervolgens worden aangepast. De bal zal worden verschoven ten opzichte van de gewenste positie als het platform niet niveau is en integraal winst is niet gebruikt. Wijzig de verschuivingswaarden naar het midden van de bal op het platform als "0 patroon" is ingesteld. Verschillende bal patronen kunnen worden geselecteerd met 8 patronen op dit moment geprogrammeerd met behulp van parametrische vergelijkingen. Het tempo van de bal beweging is ook aangepast met de variabele "patroon rate"; kleinere aantallen gelijkstaan aan snellere beweging van de bal. De eindwaarde is "patroon richting", waarin de richting van de beweging van de bal.
De verstrekte code is functioneel maar nog steeds een work in progress. Voel je vrij om verbeteringen en delen.
Vergeet niet om plezier te hebben!