RoboRio - quasics/quasics-frc-sw-2015 GitHub Wiki
The National Instruments RoboRIO is the central processor and "brain" of your robot. All commands from the drivers and FMS fall to the RoboRio, even those delegated to other controllers (e.g. Arduino). The Rio gets its power directly from the power distribution panel, and connects to the Robot Radio over Ethernet and the Robot Signal Light through a specialized port.
- Ethernet
- Primarily used to connect to the robot radio, but can be used for wired connections to the driver station
- Relay
- Offer connections to motor relays In forward and backward directions.
- DIO
- Used for digital (On/Off) inputs and outputs (e.g. limit switches) not otherwise covered.
-
PWM
- Used for (pseudo) analog control of devices
- Analog In
- Used to read non-digital inputs (e.g. potentiometers)
- RS-232
- A basic serial communications port running at 3.3 volts. One transmit line, one receive line, a common ground and nothing else.
-
CAN bus
- A simple, 2 wire serial bus. Can connect to multiple devices (including motor controllers and the PCM. The PDP must be connected to the RIO over CAN.
-
I2C
- Another serial bus. May be used for sensors or for communications between boards.
-
SPI
- Yet another serial bus. Similar use cases to the I2C
- Expansion Bus
- Offers expansion capabilities to the RIO. We usually use this for the NavX, but other options are available
- USB A ports
- Master USB ports. We have historically used these either for power or for single USB cameras.
- USB B port
- Used to update RIO firmware and as an alternative to Ethernet for driver station communications.