2018/2019 FIRST Robotics Control System Team 236 1
(click on a component to go to its slide) 2
The Robot Powered solely by 12V battery RoboRIO- is the computer on the robot Controlled by Java code on the roborio joysticks and controller (wireless) onboard sensors Drivers Station on the laptop 3
Laptop / Joysticks / Controller Driver Station on laptop 4
Radio on Robot Allows you to control the robot wirelessly Wireless communication between the robot (roborio and Laptop Radio is configured by special computers at competition POE goes in this port (orange split cable) Ethernet connections for power over ethernet and roborio connection 5
Battery Is the only source of power on the robot Provides 12 Volts DC to the Power Distribution Panel (PDP) Red/Black connections on PDP used to distribute power from battery to all electrical components on the robot Red wire connects to + Black wire connects to - (ground or common) Always be aware of polarity when connecting any electrical component on the robot 6
Power Distribution Panel (PDP) Provides power from battery to ALL electronics Red/Black connections provide 12V DC from battery to robot electronic equipment connects to battery Slots for fuses 7
RoboRIO Computer on the robot Java code for the robot is deployed onto the roborio Controls motor controllers, relays, most sensors, the robot signal light, and custom electronics CAN is used for TalonSRX motor controllers connects to radio Digital I/O connects to limit switches, sensors, and custom electronics for most motor controllers 8
Voltage Regulator Module (VRM) Provides power (from the PDP) to components that require regulated power Regulated power will NOT decrease in voltage when the battery is low, or if there is a large load. This is used for things that need constant power camera power in from PDP ex: radio, camera radio 9
Motors Only certain motors are allowed by the competition manual Motors get DC power from motor controllers battery power ----> PDP ----> motor controllers ---->motor 10
Motor Controllers Motor controllers (MCs) are wired between the PDP and the motor Provide power to motors - but with intelligence also (PWM signal) MCs use a PWM control signal to determine how much of the 12-Volt battery voltage to provide to the motor at any moment: no voltage partial voltage forward partial voltage reverse full voltage forward full voltage reverse PWM control signal is carried to motor controller on a PWM cable PWM signal comes from the roborio (except Talon SRX motor controller has onboard computing power and uses the CAN bus for control signals) Control Signals originate from: Operator Interfaces (joysticks, controller connected to the laptop) Onboard Sensors (limit switches, encoders, optical sensors) Robot code (Java code deployed on the roborio) 11
Victor (old model Motor Controller) Used to control a motor Gets input voltage from PDP (V+/V-) leads Output voltage is applied to Motor (M+/M- leads) PWM cable provides control signal (from roborio PWM port) VV+ Indicator LED : Orange: No signal (neutral signal) Flashing Orange: Stop Signal Green - Full Forward Red - Full Reverse No LIght - forward/reverse 1-99% In BRAKE mode a Motor Controller will short together the motor +/- to make the motor stop faster. In COAST mode the applied voltage will go to zero to allow the motor to coast to a stop. 12
Victor SP (newer model Motor Controller) Used to control motors LEDs indicate status POWER (from PDP) * Solid orange - PWM signal is neutral Blink orange - no PMW signal Blink red -Reverse PWM signal, blinks proportional to input Solid red - Full Reverse PWM signal applied Blink green - Forward PWM signal, blinks proportional to input Solid green - Full Forward PWM signal applied Red/Orange - damaged hardware Brake/Coast Cal Button: Red = Brake Off = Coast *Also has PWM cable for control signal (not shown in this photo) Connection to motor 13
Talon SRX (newer Motor Controller with onboard computing and CAN bus) Power (from PDP) used for direct connection to encoder used to control motors uses a CAN bus to connect to each other and the roborio Talon SRXs are connected to each other via the CAN bus, and only one is connected to the roborio, rather than each controller having a PWM directly to the roborio has onboard computing power which frees up the roborio and speeds up the processing special capabilities built in for easier programming to control robot s motion in autonomous CAN connection LED indicator Connections to motor 14
Servo A servo is a small, low power motor that can only rotate 180 degrees. There is no way to control the speed of a servo, instead you tell the servo which angle to be at. You cannot do this with a normal motor without some sensors and a lot of programming. A servo connects directly to a PWM port on the roborio. It does NOT use a motor controller. It requires that the 6V jumper next to the PWM port is in place on the roborio. 15
Spike Relay Controls motor, but only full forward, full reverse, or off Connects power from PDP directly to load (such as a motor) Uses yellow 20 Amp non-resetting fuse. This fuse will not reset if blown and will need to be replaced. Connection to power distribution panel Connection to load (such as a motor, light, compressor, etc). Connection to Relay ports on roborio (commands relay to pass power forward or reverse, or not to pass any power) Indicator Light: Orange-Off Red-Reverse Green-Forward 16
ONBOARD SENSORS Limit Switches Has COM, NO and NC connections COM connects to DIO Signal port on RoboRio NO connects to GND NC connects to POWER NO-normally open no current flows until switch is pressed. Is normally an open circuit (non-connected) NC-Normally closed lets current flow until switch is pressed. Is normally a closed circuit (connected) 17
ONBOARD SENSORS Digital Encoders Measure RPM, direction, and angle of rotating shaft Many counts per each revolution, so can be used for very accurate determination of number of revolutions or partial revolutions Attached to robot drive shaft, can be used to measure distance wheel has traveled very accurately for autonomous motion Has A and B channels that each connect to a different digital input on the roborio DIO ports 18
EN - Rotary Optical Encoder ENS1J-B28-L00128L (128 cycles per revolution) Series 63R, Series 61K 19
ONBOARD SENSORS Optical Sensor (Counter) Can count number of revolutions on spinning objects like a wheel (using a light beam) Only one count per revolution Banner brand QS18VN6D (D=shorter range, 18 ) (LV=longer range, 21 ) brown wire connects to red on VRM (12V) or PDB blue wire connects to black on PDB white wire connects to DIO signal port on roborio black wire is not connected Count = number of counts per second. Convert to RPM for setspeed command 20
ONBOARD SENSORS navx Gyro measures angles used mostly for turning in auto mounts directly onto roborio 21
Camera Connects to roborio by USB Driver can see the camera s view from the SmartDashboard (on the computer) when the robot is connected Can be used as a sensor for vision processing 22
Pneumatics (air) The robot pneumatic system uses the power of compressed air to push a piston on a pneumatic cylinder Air compressor fills air tanks with high pressure air (120 psi) Regulator provides lower pressure air (60 psi) to solenoid valves Robot code commands solenoid valves open/closed to move pneumatic pistons All parts are connected using pneumatic tubing Solenoid valves and compressor are powered from the Pneumatics Control Board (PCB) PCB gets regulated power from the power distribution panel (PDP) 23
Pneumatics Secondary Regulator (anything<60) Compressor Primary regulator (60 psi) Air Storage Tanks (120 psi) Solenoid valve Solenoid valve Solenoid valve Cylinder Cylinder Cylinder 24
Pneumatic Control Module (PCM) used to control pneumatics (air) provides power to compressor and up to 8 solenoid valves receives power from special regulated power connections on bottom of PDP 25
Pneumatics cont d 26
Double Solenoid Valve Connects to the solenoid channels on the PCM Can only be switched to A or B Will remain in the position it was in last when power is removed Controls pneumatic cylinder 1 2 Output 1 Output 2 Input 3 Switched to A Lets air from input through Lets air come out Lets air through to and leave the valve 1 Switched to B Lets air come out and leave the vale Lets air come Lets air through to through from input 2 3 27
Others Robot signal light (RSL) Main Breaker *** This is how you turn the robot on and off 28
All of it 29
Must follow chart provided in Season Manual for required wire sizes Lower gauge (AWG) means a thicker wire Battery to power distribution board uses 6 AWG 30
Used for PWM, Relay, and sensor connections Made up of connector housing and either male or female inserts The three leads are spaced at 0.1 apart Wires are crimped into male/female inserts which are inserted into housing. Can make your own so that the cable is exactly the right length Female Finished Connector Male Wire with female connectors 31
Some are have little covers We mainly use the quick disconnect type Yellow is for thick wires, blue is for medium thick wires, and red is for really thin wires. Color only affects the part where the wire goes in, and not the size of the connector that is sticking out. From left to right: Yellow/blue butt connectors-joins two wires (not good) Yellow fork-connects to screws on victor/jaguar Red ring-connects to screws on victor We have all three types The top row has built in heat shrink 32
thin Crimp connectors Same yellow blue red Also, there are two thicknesses of the male/female ends We mainly use the thicker ones Some are covered and others are not Can connect to each other to make longer wires Can connect to the tabs on the end of the spike Can connect to tabs that we put on the Victors thick Anderson connector used for batteries 33
Useful Resources Getting Started with the 2018 FRC Control System https://s3.amazonaws.com/screensteps_live/exported/wpilib/2078/6165 /Status_Light_Quick_Reference.pdf?1483638812 (Provides info on what indicator lights mean for many FRC electronic components) https://firstfrc.blob.core.windows.net/frc2017/pneumatics-manual.pdf (FRC Pnuematics Manual) FRC Electrical Bible (work in progress by Team 2853) 34
Programming Driver Station RoboRIO Web Dashboard 35
Driver Station Sends all commands to control the robot Operation Tab robot mode enable/disable the robot from running Elapsed time displays the amount of time since the robot was enabled error messages/ print statements robot status (comms, battery life, etc) 36
Diagnostics Tab lights turn green when the item is connected 37
Setup Tab The team number allows the driver station to communicate with the roborio that is configured for that team It will also set up your network for that number select SmartDashboard here to open the SmartDashboard for Power Up you can input field configurations (which side of the scale/switches are your alliance s color) to mimic FMS data sent to your robot at the start of the match The practice round timings can be changed, and match sound effects can be enabled 38
Charts Tab Spikes in the green and blue lines indicate network problems Yellow indicates battery voltage Red indicates crio CPU usage If it is 100% then the program has a problem and the robot will not be controllable 39
RoboRIO Web Dashboard roborio-236-frc.local allows you to view various info about the roborio and other components when the robot is connected see info about roborio and update its firmware TalonSRX s - change ID s, update firmware, tune motion control 40