+ All Categories
Home > Documents > Team 3125 Programming/Electrical Subteams

Team 3125 Programming/Electrical Subteams

Date post: 02-Feb-2016
Category:
Upload: stian
View: 35 times
Download: 2 times
Share this document with a friend
Description:
Team 3125 Programming/Electrical Subteams. 28-Oct-09 Breakout session. Cody Harris Technical Director. Introduction. Programming “Programs the robot control interface and autonomous mode” (Team 3125 Handbook) Pre-Season: Algorithm Development, Learn Syntax - PowerPoint PPT Presentation
Popular Tags:
20
28-OCT-09 BREAKOUT SESSION Team 3125 Programming/Electrical Subteams Cody Harris Technical Director
Transcript
Page 1: Team 3125 Programming/Electrical  Subteams

28-OCT-09 BREAKOUT SESSION

Team 3125Programming/Electrical

Subteams

Cody HarrisTechnical Director

Page 2: Team 3125 Programming/Electrical  Subteams

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

Page 3: Team 3125 Programming/Electrical  Subteams

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)

Page 4: Team 3125 Programming/Electrical  Subteams

Algorithm Development

Algorithm: A method of solving a problem involving a finite series of steps

Binary Decision-MakingFlow-chart layoutSymbology

Page 5: Team 3125 Programming/Electrical  Subteams

Think Like a Computer

Mass Casualty Incident START Triage

Page 6: Team 3125 Programming/Electrical  Subteams

Putting it all Together – PB&J Lab

How do you make a peanut butter and jelly sandwich?

Page 7: Team 3125 Programming/Electrical  Subteams

Level of Detail

Breadth vs. Depth

Page 8: Team 3125 Programming/Electrical  Subteams

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

Page 9: Team 3125 Programming/Electrical  Subteams

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:

<return type> <method name>(<p 1>, <p 2>) {

Do somethingDo something elseIf something is true

Do somethingOtherwise

Do something DifferentReturn something

}

Page 10: Team 3125 Programming/Electrical  Subteams

Example of Pseudocode

Page 11: Team 3125 Programming/Electrical  Subteams

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

Page 12: Team 3125 Programming/Electrical  Subteams

Control System

Page 13: Team 3125 Programming/Electrical  Subteams

Driver Station

Page 14: Team 3125 Programming/Electrical  Subteams

Compact RIO

Page 15: Team 3125 Programming/Electrical  Subteams

Digital Side Car

http://houston.txfirst.org/files/train/controller09.pdf

Page 16: Team 3125 Programming/Electrical  Subteams

Tools of the Trade

Page 17: Team 3125 Programming/Electrical  Subteams

Oscilloscope – Purpose and Operation

PWM Demo

Page 18: Team 3125 Programming/Electrical  Subteams

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

Page 19: Team 3125 Programming/Electrical  Subteams

Future Meetings

Online Chats via SkypeOnline 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

Page 20: Team 3125 Programming/Electrical  Subteams

Questions?


Recommended