Recent Updates

  • Updated on: Jul 23, 2013

    Default Commands

    In some cases you may have a subsystem which you want to always be running a command no matter what. So what do you do when the command you are currently running ends? That's where default commands come in.

  • Updated on: Jul 23, 2013

    Creating a robot project - Java

    This article is about command based programming in Java, if you are programming in C++ click here to skip ahead to learning about subsytems.

  • Updated on: Jul 23, 2013

    Adding Commands and Subsystems - Java

    A newly created command based robot project will have a set of default files and packages that were provided by the template. Using these files will make it easy to extend the default program into a custom robot program for your application.

  • Commands and Subsystems each are created as classes in C++. The plugin has built-in templates for both Commands and Subsystems to make it easier for you to add them to your program.

  • Updated on: Jul 23, 2013

    Installing the C++ Workbench plugin

    This article is about command based programming in C++. If using Java, click here.

    There is a plugin for Workbench that will make the creation and editing of command-based robot programs much simpler. The plugin had built-in templates for various types of commands, subsystems, and an overall robot program template. To use the plugin it must first be installed from the internet.

  • Updated on: Jul 23, 2013

    Creating a robot project - C++

    Create a command-based robot project by using one of the template projects that are provided with the Wind River Workbench plugins.

  • Updated on: Jul 22, 2013

    Running commands on Joystick input

    You can cause commands to run when joystick buttons are pressed, released, or continuously while the button is held down. This is extremely easy to do only requiring a few lines of code.

  • Updated on: Jul 22, 2013

    Synchronizing two commands

    Commands can be nested inside of command groups to create more complex commands. The simpler commands can be added to the command groups to either run sequentially (each command finishing before the next starts) or in parallel (the command is scheduled, and the next command is immediately scheduled also). Occasionally there are times where you want to make sure that two parallel command complete before moving onto the next command. This article describes how to do that.

  • Updated on: Jul 17, 2013

    Pointers and addresses

    There are two ways of declaring an object variable: either as an instance of the object or a pointer to an instance of the object. In the former case the variable holds the object and the object is created (“instantiated”) at the same time. In the latter case the variable only has space to hold the address of the object. It takes another step to create the object instance using the new operator and assign its address to the variable.

  • This article details how to use the Austria Microsystems AS5145B Magnetic Encoder (FIRST Choice P/N fc-13-062) with the FRC Control System