Stap 7: Aangepaste Controller
Uw station-team kan komen naar u en zeggen, "We willen hiermee onze robot kunt". Met dit voorbeeld zal ik u tonen hoe gemakkelijk het is om aan te passen uw code naar een domeincontroller dan de Attack3. Als een terzijde zijn Xbox-controllers meestal niet een zeer goede controller voor het besturen van uw robot. De zorg van de asymmetrische joysticks rijden rechte een challenge met tank station en de geringe omvang van de joysticks ervoor zorgen dat de besturingselementen zeer gevoelig. Om te beginnen, download u de Joystick Explorer utility programma voor WPILib. Voorsprong op opwaarts en sluit uw joystick. Zorg ervoor dat de controller van het dropdownmenu is geselecteerd. Verplaats de joysticks en observeren wat as aantal wijzigingen. U moet een x en een y-as opnemen voor elk van uw joysticks (en misschien een z-as, afhankelijk van uw specifieke controller). Nu u Ga naar uw code en plaats deze as-nummers te gebruiken. Verwijder uw huidige functie van de myRobot.TankDrive of myRobot.ArcadeDrive en voeg de volgende code in de periodieke functie van teleop.
Tank station:
myRobot.TankDrive(stick.GetRawAxis(<left_y_axis>), stick.GetRawAxis(<right_y_axis>));
Tank station met Z-as voor de snelheid:
myRobot.TankDrive(stick.GetRawAxis(<left_y_axis>) * stick.GetRawAxis(<left_z_axis>), stick.GetRawAxis(<right_y_axis>) * stick.GetRawAxis(<right_z_axis>));
Arcade aandrijving:
myRobot.ArcadeDrive(stick.GetRawAxis(<y_axis>), stick.GetRawAxis(<x_axis>));
Arcade aandrijving met Z-as voor de snelheid:
myRobot.ArcadeDrive(stick.GetRawAxis(<y_axis>) * stick.GetRawAxis(<z_axis>), stick.GetRawAxis(<x_axis>));
Je zal uiteraard moeten de wijzigen om iets te veranderen met combinatie eromheen aan de as-nummers die u hebt genoteerd in de Joystick Explorer.