230 likes | 381 Views
Programming an FRC Robot. Choosing a Language. INDEX. The Programing Languages and their Environments The Three Major Enviroments Java with the NetBeans IDE C++ with the Windriver Workbench IDE Graphical Programming with the LabView IDE Pros and Cons for each Language Java C++
E N D
Programming an FRC Robot Choosing a Language
INDEX • The Programing Languages and their Environments • The Three Major Enviroments • Java with the NetBeans IDE • C++ with the Windriver Workbench IDE • Graphical Programming with the LabView IDE • Pros and Cons for each Language • Java • C++ • LabView • Side-by-Side Comparisons • Thanks
There are three major programing environments available to FIRST Robotics Teams • Java – NetBeans • C++ - Windriver Workbench • Graphical Programming - LabView
Java Basic Structure package edu.wpi.first.wpilibj.templates; import edu.wpi.first.wpilibj.SimpleRobot; public class RobotTemplate extends SimpleRobot { //Declare Global Variables here public RobotTemplate(){ //Initialize Global Variables here } public void autonomous() { //Autonomous code goes here } public void operatorControl() { //Teleop code goes here } }
C++ Basic Structure #include "WPILib.h" class RobotDemo : public SimpleRobot{ //Declaration of components go here public: RobotDemo(void): //Initialization of components goes here { //Startup routines go here } void Autonomous(void){ //Autonomous code goes here } void OperatorControl(void) { //Teleop code goes here } }; START_ROBOT_CLASS(RobotDemo);
Java Pros Cons Does not use the standard LabView Dashboard • A well known language • Many Resources • Similar to C++ in style and syntax • Fast Compiling • Easier to pass references between functions • Object-Oriented-Programming • Text-Based language • Structured/User Friendly • Used in Computer Science Courses
C++ Pros Cons Requires a Windows PC Allows for free reign Less user-friendly • A well known language • Many Resources • Similar to Java in style and syntax • Fast Compiling • Object-Oriented-Programming • Text-based language
LabView Pros Cons Hard to navigate in the functions menu Requires Windows PC • A well known language in the First FRC community • Many Resources • Graphical • Popular with First Teams
Side-by-Side Comparisons Java C++ Text-based Syntax is similar to that of Java Fast Compiling Object-Oriented-Programming Many Resources Available Not Structured • Text-based • Many Resources Available • Syntax is similar to that of C++ • Fast Compiling • Object-Oriented-Programming • Structured • Easier to pass references
Side-by-Side Comparisons LabView C++ Text-based Syntax is similar to that of Java Fast Compiling Object-Oriented-Programming Many Resources Available Not Structured • Graphical • Hard to locate specific functions • Popular with First Teams • Well Documented
Side-by-Side Comparisons LabView Java Text-based Many Resources Available Syntax is similar to that of C++ Fast Compiling Object-Oriented-Programming Structured Easier to pass references • Graphical • Hard to locate specific functions • Popular with First Teams • Well Documented
Thanks to • Team 1279 ColdFusion • The Chief Delphi Community • The WPI Robotics Libraries • Sample Programs Provided by First For providing information that was used in this presentation