Presentation is loading. Please wait.

Presentation is loading. Please wait.

28-OCT-09 BREAKOUT SESSION Team 3125 Programming/Electrical Subteams Cody Harris Technical Director.

Similar presentations


Presentation on theme: "28-OCT-09 BREAKOUT SESSION Team 3125 Programming/Electrical Subteams Cody Harris Technical Director."— Presentation transcript:

1 28-OCT-09 BREAKOUT SESSION Team 3125 Programming/Electrical Subteams Cody Harris Technical Director

2 Introduction Programming  “Programs the robot control interface and autonomous mode” (Team 3125 Handbook)  Pre-Season: Algorithm Development, Learn Syntax  Build Season: Design and Implement Robot Software  Drive Season: Work Pit Crew, Troubleshoot  Post-Season: Make code accessible for next year’s team Electrical  “Works with the mechanical team to design and implement the electronics of the robot” (Team 3125 Handbook)  Pre-Season: Learn Control System layout, Soldering Techniques, etc.  Build Season: Construct Control System, Implement Software, Wire Robot  Drive Season: Work Pit Crew, Troubleshoot  Post-Season: Ensure Control System is ready for next year’s team

3 Programming Pre-Season Algorithm Development (October – Mid-November)  Think Like a Computer  Understand Object-Oriented Programming  Determine necessary classes and patterns of inheritance  Write Pseudocode to solve a problem Selection of Language (Mid-November)  Sun Microsystems Java Development Kit (BETA Release)  National Instruments LabView (Graphical Programming)  C/C++ with FRC API (Less specific documentation) Learn Syntax of Selected Language (Mid-November – December)

4 Algorithm Development Algorithm: A method of solving a problem involving a finite series of steps Binary Decision-Making Flow-chart layout Symbology

5 Think Like a Computer Mass Casualty Incident START Triage

6 Putting it all Together – PB&J Lab How do you make a peanut butter and jelly sandwich?

7 Level of Detail Breadth vs. Depth

8 Subroutines, Interrupts, Parameters, Returns What about breathing?  Repetitive tasks are defined in subroutines  Subroutines can be called from another method by name, or called when the program is interrupted, such as by a timer or a button press  A subroutine can require a parameter, or piece of data, be provided every time it is called that it will use in the routine; interrupts can pass the interrupter as a parameter  Once the routine is done, the program goes back to where it left off; it can pass a piece of data in return based on its execution, or it can pass void to indicate it is complete

9 Pseudocode Pseudocode is an abstraction of source code  Pseudocode is language-specific, but there are strong similarities between C/C++ and Java pseudocode  Pseudocode is not strictly defined, as it is for human interpretation  A method pseudocode would look like this: (, )  { Do something Do something else If something is true Do something Otherwise Do something Different Return something }

10 Example of Pseudocode

11 Electrical Pre-Season Learn Control System (October – Mid-December)  National Instruments “Compact RIO” Microcontroller  FRC Driver Station  Pulse Width Modulation  Proportional-Integral-Derivative Controller hardware Tools of the Trade (October – Kickoff)  Soldering techniques  Electrical safety  Working with Programmers  Electronics Testing and Evaluation  Oscilliscopes

12 Control System

13 Driver Station

14 Compact RIO

15 Digital Side Car http://houston.txfirst.org/files/train/controller09.pdf

16 Tools of the Trade

17 Oscilloscope – Purpose and Operation PWM Demo

18 Summary Non-Mechanical Technical Fields  Programming (“Brains” of the bot)  Electrical (“Nerves and bloodstream” of the bot”) Next Workshop  Programming: “Skeleton Programming” for Aim High! Game  Electrical: How to format and work with the cRIO Assistant Position  Effective Span of Control (1 Supervisor : 3-7 Subordinates)  Interested Juniors: Details at next meeting, or contact me

19 Future Meetings Online Chats via Skype Online IMs via AIM, FacebookIM, etc. Conference Call Service In-house meetings will be held on Mondays and Wednesdays  Mondays will be a short business meeting of the entire team to ensure subteams are coordinated  Wednesday meetings, by subteam, will consist of workshops; teams may meet online as an alternative when practical

20 Questions?


Download ppt "28-OCT-09 BREAKOUT SESSION Team 3125 Programming/Electrical Subteams Cody Harris Technical Director."

Similar presentations


Ads by Google