TechnaPWN's 2013-2014 code for their VEX robot, Nora
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
Autos
Sounds
0-Nora.c
1-DefinitionsAndDeclarations.c
2-OtherFunctions.c
3-State.c
4-Sensors.c
5-Operator.c
6-Autonomous.c
7-Output.c
8-LCD.c
9-Sound.c
readme.md

readme.md

#TechnaPWN Toss Up

##Intro TechnaPWN's 2013-2014 code for their robot, Nora
Created by Joseph Dykstra of VRC Team #3018 for use during the 2013-2014 Vex Toss Up season

##Features:

  • Sense-Plan-Act paradigm

    • Get and store sensor data in variables
    • Decide what state it's in
    • Process variables and decide how to act upon them
    • Assign Motor, Solenoid, and LCD variables
  • Powerful Autonomous structure

    • Concise, yet easy to read/edit
    • Safe, built in time-out functionality
    • Versatile
      • Can end step via time limit, drive done, lifting done, etc.
      • Can use PID control
      • Can line follow
      • Can follow wall with ultrasonic sensors
  • Slew controller, gradually changes motor power

    • Motors don't hurt themselves as quickly
    • Voltage drop is minimized, less likely to have brown-outs
    • Less likely to tip robot when switching directions with a high COG
  • Operator control

    • Code for strafing with mecanum wheels (would work with x-drive also)
    • Built-in preset lift heights, with manual override
    • Two-driver control setup, but one driver can do it all
  • Intuitive LCD menu system (Requires potentiometer also)

    • Select and start autonomous routines, and view the elapsed time
    • Checklist to see if bot is ready to compete
    • Disable Motor/pneumatic control
    • View Battery, Analog, Digital, and Motor values
    • Advanced motor test
  • Other

    • State friendly, if you lose connection during a match, it will not wait for autonomous selection before driver control is regained
    • If the cortex has a flaky connection, and the backup battery is powering it, it will not run any motors during autonomous so that it will stay on the tile so it can be fixed.
    • Autonomous and state switching data is logged in the debug stream
    • Structures to easily set and compare previous values of a variable
    • Ultrasonic deadzone, in case subsystems occasionally get in front of the sensor
    • Can set LCD backlight to always off/on, blink fast/slow, or turn on for a few seconds every time an LCD button is pressed
    • Free to use and modify!

##License MIT