RobotC voor VEX Cortex (7 / 9 stap)

Stap 7: Autonome functies

Autonome functies, zijn een leuke en eenvoudige manier om uw code netjes en opgeruimd houden. Als het gaat om programmeren hen, zijn ze geplaatst voordat het vooraf autonome, maar na de competitie omvat (zie galerie). Een heleboel voorbeelden van de functie kan worden gevonden in de RobotC bestanden.

Programmeren van een standaard zet:

Hieronder vindt u een code voor een standaard zet, uitleg zijn commentaar in de code.

 void standardMove(int time, int power) { // void is a type of loop, we are creating a motor[BackL] = power; // function called "standardMove", in this motor[FrontL] = power; // function, an int of time, and power is motor[BackR] = power; // created, and called within the loop. motor[FrontR] = power; // If you wanted the robot to move forward wait1Msec(time); // for 1 second, at the power of 80, you motor[BackL] = 0; // would write "standardMove(1000, 80);". motor[FrontL] = 0; // This works because the "1000" is replacing motor[BackR] = 0; // the "time", and 80 is replacing the "power". motor[FrontR] = 0; // Stop motors once done. } 

Programmeren van een standaard lift:

Het programmeren van een standaard lift is in wezen hetzelfde als een station, allen u werkelijk moet doen is de motor namen wijzigen en de werkelijke functie van de naam. Daarom is een uitleg niet nodig.

 void standardLift(int time, int power) { motor[BackL] = power; motor[TopL] = power; motor[BackR] = power; motor[TopR] = power; wait1Msec(time); motor[BackL] = 0; motor[TopL] = 0; motor[BackR] = 0; motor[TopR] = 0; } 

Programmering een Gyro-beurt:

Nu hebben wij de meer netelige deel, programmeren van een gyro-beurt. Er zijn verschillende manieren om dit te doen, wat heel eenvoudig toch niet zo betrouwbaar, en wat meer ingewikkeld met drift correcties, die betrouwbaarder zijn. Gelukkig voor ons, heeft RobotC reeds verstrekt een drift correctie programma, dus het is allemaal kopiëren en plakken in onze eigen functie!

 #define TURN_SLOWDOWN 100 int degrees = 0; int error = 5; void gyroTurn(int bearing) { int currentBearing = SensorValue[Gyro]; int targetBearing = bearing + currentBearing; if (bearing > 0) { // Left turn while (SensorValue[Gyro] < targetBearing - TURN_SLOWDOWN) { motor[BackL] = -50; motor[FrontL] = -50; motor[BackR] = 50; motor[FrontR] = 50; } while (SensorValue[Gyro] < targetBearing) { motor[BackL] = -20; motor[FrontL] = -20; motor[BackR] = 20; motor[FrontR] = 20; } motor[BackL] = 0; motor[FrontL] = 0; motor[BackR] = 0; motor[FrontR] = 0; } else { // Right turn while (SensorValue[Gyro] > targetBearing + TURN_SLOWDOWN) { motor[BackL] = 50; motor[FrontL] = 50; motor[BackR] = -50; motor[FrontR] = -50; } while (SensorValue[Gyro] > targetBearing) { motor[BackL] = 20; motor[FrontL] = 20; motor[BackR] = -20; motor[FrontR] = -20; } motor[BackL] = 0; motor[FrontL] = 0; motor[BackR] = 0; motor[FrontR] = 0; } } 

Zorg ervoor dat u kopieert de hele code, met inbegrip van de "#define" en de gehele getallen.

Gerelateerde Artikelen

3D gedrukte Raspberry Pi Tablet en wieg voor VEX praktijk velden

3D gedrukte Raspberry Pi Tablet en wieg voor VEX praktijk velden

Ik ben een middelbare school senior in McLean, VA Ik koos voor het ontwerpen en monteren van een 3D afdruk Raspberry Pi tablet samen met een aangepaste VEX toren bijlage voor gebruik in mijn school robotica-lab.Mijn school is onderdeel van het progra
De baas vak Bot

De baas vak Bot

welkom aan de baas vak Bot instructable, of als we willen noemen, de Bo-Bo-Bot. De Bot Bo-Bo is ontworpen om het gebruik van extreem lage kosten materiaal om mensen om te bouwen van een robot zonder dure kits. Onze Bot Bo-Bo geschiedt met behulp van
Vex Robotics Tractor Pull kampioen

Vex Robotics Tractor Pull kampioen

De trekker trek project voor Vex Robotics daagt de student op zoek naar manieren om het verhogen van de robot werk zonder kracht te verhogen. Studenten zijn vrij om te veranderen van hun robot op enigerlei wijze behalve het hebben van meer dan 2 moto
Snelheid wagon (drifting robot)

Snelheid wagon (drifting robot)

Video van het eindproduct invoegenDeze robot is ontworpen rond het concept van het drijven. Het is een leuke project als je je verveelt en willen iets wat lijkt op een RC auto. Deze robot werd gebouwd met behulp van VEX Robotics onderdelen, hoewel al
Wii Nunchuk Controller

Wii Nunchuk Controller

Deze tutorial leert u hoe u kunt besturen VEX motoren met een Wii Nunchuk.Het kan erg handig zijn als u wilt controleren uw robot met een Arduino en niet een VEX cortex en controller.Stap 1: materialen Arduino UNOWii NunchukLaptop/ComputerDraadloze M
32 x 32 RGB LED Plasma w / STM32F4.

32 x 32 RGB LED Plasma w / STM32F4.

Er zijn al een paar tutorials daar tonen hoe een 32 x 32 RGB LED weergave bepalen.Dit project heeft enkele lichte variaties met de volgende functies:Op basis van een STM32F401RE eval PensionSoftware gegenereerd door STM32CubeMX BSP (v1.4.0 gebruikt h
Sparky - DIY Web-Based Telepresence Robot

Sparky - DIY Web-Based Telepresence Robot

de naam Sparky is gebaseerd op een acroniem voor zelf portret artefact Roving Chassis ik een lastige titel voor een kunstproject begonnen in de vroege jaren 90. Sinds die tijd Sparky geëvolueerd van een oversized RC speelgoed met een paar baby monito
VersaBot - materiaal Custimaziton Robot

VersaBot - materiaal Custimaziton Robot

deze robot werd ontworpen met behulp van Invetor 2012 en 2013. De instructies die alleen zijn een hulpmiddel om mensen een plek om te beginnen uit, maar blijven krijgen te laten hun eigen unieke persoonlijke functies toe te voegen. De robot wordt kee
Bouwen van een robotachtig wapen voor de wetenschap Olympiade

Bouwen van een robotachtig wapen voor de wetenschap Olympiade

voor degenen die om te worstelen de juiste onderdelen vinden, proberen te achterhalen hoe samen te stellen hen, of moeite hebt met code, dit de juiste plaats is! Dit instructable is een volledige documentatie van Newton South High School Science Team
90 graden Adapter voor VexPro VersaPlanetary versnellingsbak voor eerste Robotics

90 graden Adapter voor VexPro VersaPlanetary versnellingsbak voor eerste Robotics

Het team van Killer Bees Robotics ontwikkeld deze oplossing in 2015 en nu zouden wij graag delen met allen van de eerste roboticagemeenschap.Het VexPro VersaPlanetary versnellingsbak systeem is een van de meest veelzijdige en flexibele onderdelen ooi
REST gebaseerde Web Services toe te voegen aan IoT apparaat voor het toezicht op IO

REST gebaseerde Web Services toe te voegen aan IoT apparaat voor het toezicht op IO

Dit project is om een eenvoudige RESTful Web service bibliotheek voor IoT-apparaten. De bibliotheek is geschreven met C taalcode en WIZwiki-W7500ECO platform Raad van WIZnet. Met het, gebruikers kunnen een RESTful Web service implementeren op IoT app
Bouwen van uw Android Apps voor de controle van IoT-apparaten met behulp van REST API

Bouwen van uw Android Apps voor de controle van IoT-apparaten met behulp van REST API

Een paar weken geleden, heb ik uitgevoerd REST web service bibliotheek voor WIZwiki-W7500ECO board. Ik heb gepost op Instructables, (Featured content!)Heb ik besloten om mijn eigen Apps voor de controle op mijn bord met REST API's. Mijn Apps gemaakt
Hoe krijg ik de Mythoclast Vex in Destiny

Hoe krijg ik de Mythoclast Vex in Destiny

De Mythoclast Vex is een krachtig wapen gevonden in Bungie de eerste-persoonsschutter lot. Het is dat de spelers wapen belt "oneerlijke", "gebroken" en "overpowered".Dus hoe krijg je het?Stap 1: Een Level omhoogU gaat moeten
Hoe te kiezen voor een MicroController

Hoe te kiezen voor een MicroController

het gebruikt om te worden dat het aantal verschillende microcontroller chips beschikbaar voor de hobbyist vrij beperkt is. Je moet gebruiken wat je zou kunnen beheren van de postorder chip-dealer te kopen, en dat de keuze voor een klein aantal chips