My favorites | Sign in
Project Home Wiki Issues Source
READ-ONLY: This project has been archived. For more information see this post.
Search
for
InterfaceControlDocument  
Interface Control Document (ICD) for software subsystem interfaces
Updated Feb 17, 2013 by BrandenC...@gmail.com

Introduction

This document will define ALL of the data structures which will be transmitted between the three robot software subsystems (Robot, GUI/DS, Vision).

We no longer use JSON

Sadly, we gave up on JSON because none of the libs we tried worked exceedingly well for the cRIO and the PandaBoard. We have transitioned to a home-made serialization/deserialization system. It can represent data in both a binary and text form. Though this requires a bit more bug testing on our part, this approach allows us to use textual serialization while debugging, and binary serialization when deploying production code. So, we get efficiency when we need it, and ease-of-troubleshooting when we need it. Yay.

Pandaboard to Robot

Field Type
target angle theta (yaw) double
target angle gamma (pitch) double
shooting speed double

Robot to Drivers' Station

Field Type
Operator Control ? bool
Vision Control ? 0 bool
Hang lift 1 bool
Cam Forward 2 bool
Cam Reverse 3 bool
Hopper 4 bool
Spatula 5 bool
Launcher kicker 6 bool
Encoder: Left int
Encoder: Right int
Gyro Angle double
Joystick: 1: X double
Joystick: 1: Y double
Joystick: 2: X double
Joystick: 2: Y double
Drivetrain Straight P 7 double
Drivetrain Straight I 8 double
Drivetrain Straight D 9 double
Drivetrain Turn P 10 double
Drivetrain Turn I 11 double
Drivetrain Turn D 12 double
Launcher P 13 double
Launcher I 14 double
Launcher D 15 double
Launcher power double
Launcher Angle double
Drivetrain power: L double
Drivetrain power: R double

Powered by Google Project Hosting