Programming an FRC Robot Choosing a Language 1. INDEX The Programing Languages and their...
-
Upload
angelica-ball -
Category
Documents
-
view
216 -
download
0
Transcript of Programming an FRC Robot Choosing a Language 1. INDEX The Programing Languages and their...
2
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
4
There are three major programing environments available to FIRST
Robotics Teams
• Java – NetBeans• C++ - Windriver Workbench• Graphical Programming - LabView
6
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
}
}
9
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);
17
JavaPros• 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
Cons
• Does not use the standard LabView Dashboard
18
C++Pros
• A well known language• Many Resources• Similar to Java in style
and syntax• Fast Compiling• Object-Oriented-
Programming• Text-based language
Cons
• Requires a Windows PC• Allows for free reign• Less user-friendly
19
LabView
Pros• A well known language in
the First FRC community• Many Resources• Graphical• Popular with First Teams
Cons• Hard to navigate in the
functions menu• Requires Windows PC
20
Side-by-Side Comparisons
Java• Text-based• Many Resources
Available• Syntax is similar to that of
C++• Fast Compiling• Object-Oriented-
Programming• Structured• Easier to pass references
C++• Text-based• Syntax is similar to that of
Java• Fast Compiling• Object-Oriented-
Programming• Many Resources
Available• Not Structured
21
Side-by-Side Comparisons
LabView• Graphical• Hard to locate specific
functions• Popular with First Teams• Well Documented
C++• Text-based• Syntax is similar to that of
Java• Fast Compiling• Object-Oriented-
Programming• Many Resources
Available• Not Structured
22
Side-by-Side Comparisons
LabView
• Graphical• Hard to locate specific
functions• Popular with First Teams• Well Documented
Java• Text-based• Many Resources
Available• Syntax is similar to that of
C++• Fast Compiling• Object-Oriented-
Programming• Structured• Easier to pass references