Go to Post Here's some food for thought: Does your FRC program need the students, or do the students need your FRC program? - sanddrag [more]
Home
Go Back   Chief Delphi > Technical > Technical Discussion
CD-Media   CD-Spy  
portal register members calendar search Today's Posts Mark Forums Read FAQ rules

 
Closed Thread
Thread Tools Rate Thread Display Modes
  #16   Spotlight this post!  
Unread 04-11-2012, 22:43
MetalJacket's Avatar
MetalJacket MetalJacket is offline
Has read the 2014 manual
AKA: Jesse Gibson
FRC #2068 (The Metal Jackets)
Team Role: CAD
 
Join Date: Oct 2012
Rookie Year: 2011
Location: Virginia
Posts: 164
MetalJacket has a spectacular aura aboutMetalJacket has a spectacular aura aboutMetalJacket has a spectacular aura about
Re: Programming Team's Role

Quote:
Originally Posted by inkspell4 View Post
I was also thinking of goals and team responsibilities for the programming team
Some good goals for a programming team are to make an autonomous mode that can consistently score (or at least consistently do what it should), and to try to make the drivers' jobs easier by integrating autonomous functionality into the control code.
__________________
Team Role = !artTeam
2011 - Logomotion
- Virginia Regional : Tournament Semi-Finalist, Gracious Professionalism Award
2012 - Rebound Rumble
- Chesapeake Regional : Tournament Finalist, Gracious Professionalism Award
2013 - Ultimate Ascent
- Virginia Regional : Gracious Professionalism Award
  #17   Spotlight this post!  
Unread 04-11-2012, 23:14
efoote868 efoote868 is offline
foote stepped in
AKA: E. Foote
FRC #0868
Team Role: Mentor
 
Join Date: Mar 2006
Rookie Year: 2005
Location: Noblesville, IN
Posts: 1,412
efoote868 has a reputation beyond reputeefoote868 has a reputation beyond reputeefoote868 has a reputation beyond reputeefoote868 has a reputation beyond reputeefoote868 has a reputation beyond reputeefoote868 has a reputation beyond reputeefoote868 has a reputation beyond reputeefoote868 has a reputation beyond reputeefoote868 has a reputation beyond reputeefoote868 has a reputation beyond reputeefoote868 has a reputation beyond repute
Re: Programming Team's Role

Depending on the size of your team (and the number of individuals interested in programming), the roles on your programming team and goals are going to be different.

You should start in the preseason with a set of goals of things you'd like to be able and know how to do on the robot, and then work as time allows to try each one. That way, once you get to the build seaon, you won't be scratching your head thinking "how do I use a gyro in code?" and you'll be familiar with finding documentation on problems that may arise (part of being an engineer - you don't necessarily need to know what something is, you need to know how to find it quickly).

Once the game is announced, you'll be able to describe to the mecanical team your abilities and your limitations (I know how to use a camera to orient the robot towards a target, but I don't know how to calculate the distance to determine wheel speed.)
You'll also be able to ask for sensors in parts of the robot (I need an optical encoder somewhere near each drive wheel so that I can have the robot automatically drive at a specific speed,) which should make the robot more of a robot and less of a remote controlled vehicle.

As the robot nears completion, you'll know what the structure of your code should look like in order to do tasks, and what the operator interface should look like in order to control the robot (when the driver presses this button, the robot should orient itself towards a target, and the driver will know it's done when this LED flashes)

You'll also need code to test the orientation of motors and pneumatics, one at a time. It'll be a good idea to have an abstraction layer where that's all defined, so when you're working in higher up code you don't care if 254 is forward or reverse, your math makes sense.

Lastly, you'll be responsible for the autonomous mode. This will be game dependent, but it's a good idea to have high level functions implemented (DriveForward(distance), TurnLeft(degrees), MoveArm(configuration)) and tested, so putting together a few strategies isn't a pain.
__________________
Be Healthy. Never Stop Learning. Say It Like It Is. Own It.

Like our values? Flexware Innovation is looking for Automation Engineers. Check us out!
  #18   Spotlight this post!  
Unread 05-11-2012, 11:24
mgurgol mgurgol is offline
Registered User
FRC #1094
 
Join Date: Jan 2006
Location: St Louis MO
Posts: 76
mgurgol is just really nicemgurgol is just really nicemgurgol is just really nicemgurgol is just really nicemgurgol is just really nice
Re: Programming Team's Role

I believe one of the roles of the programming team is to assist the mechanical/electrical teams with debugging the individual systems.

Develop a set of tools (the supplied examples are a great starting point) that will allow you to isolate the individual systems.

For example, you should have code that will test an individual encoder, run each motor individually (or in tandem is using two motors with a gearbox), test individual solenoids etc.. This will allow the team to debug connection problems and help isolate problems to have them corrected sooner.

When the season begins, I have the programmers look into the examples and use them for this purpose. It makes trouble shooting easier to look at only one part of the system at a time, rather than the entire robot, which can be overwhelming.
  #19   Spotlight this post!  
Unread 05-11-2012, 12:14
MARS_James's Avatar
MARS_James MARS_James is offline
Always Scouting
AKA: James Comstock
FRC #0179 (The Children of The Swamp)
Team Role: Tactician
 
Join Date: Jan 2010
Rookie Year: 2006
Location: Jupiter, Florida
Posts: 1,966
MARS_James has a reputation beyond reputeMARS_James has a reputation beyond reputeMARS_James has a reputation beyond reputeMARS_James has a reputation beyond reputeMARS_James has a reputation beyond reputeMARS_James has a reputation beyond reputeMARS_James has a reputation beyond reputeMARS_James has a reputation beyond reputeMARS_James has a reputation beyond reputeMARS_James has a reputation beyond reputeMARS_James has a reputation beyond repute
Send a message via AIM to MARS_James
Re: Programming Team's Role

I will tackle our programming teams role in two ways. What the lead does and what the team does

First the Programming Group Lead:
•Programming Group Lead is to assure that all coding being done for the robot is done in an orderly and timely fashion.
•Programming Group Lead is to be the liaison between mentors of the group and the students of the group.
•Programming Group Lead will work to teach new students the current language of the team.
•Programming Group Lead is expected to communicate with the Mechanical Group Lead about the direction the robot is taking and any components that have been changed as not to waste the groups time on a task that will not be used.
•Each Group Lead is responsible for dividing up tasks among students in their sub-team.
•Group Leads are expected to be in the Pit to answer judges questions unless they are participating in another regional activity (field team, Chairmans presenter, ETC.).

Now for the remainder of the team their roles are much simpler.
-Listen to the group lead about the tasks you are assigned
-Be honest about your skills and ask questions if you are confused
- Learn how to deploy code, run debug, reset code, and know the safety rules of the robot.
__________________
Driving Record: 24-8
Coaching Record: 66-31
2014 South Florida Regional Woodie Flowers Finalist


  #20   Spotlight this post!  
Unread 05-11-2012, 21:53
techkid86's Avatar
techkid86 techkid86 is offline
Magic Programer
FRC #3044 (0xBE4)
Team Role: Alumni
 
Join Date: Jan 2011
Rookie Year: 2010
Location: ballston spa
Posts: 58
techkid86 is an unknown quantity at this point
Talking Re: Programming Team's Role

Im not sure what has already been said, but this is my input.... ((get it? input?.... nvm))

anyway, as the head of the programing team on my robotics teams, I have plenty of responsibilities in coordinating with other teams, and bringing up ideas.

in the preseason, you have to bring all new programmers up to speed with the language and methods used by the team. teach em the trade!

programers are engineers too, so their ideas for a mechanical contraption are no less serious than a mechanical team's idea. their job in the design process is to come up with ideas, and be able to admit their limitations to the other teams. you always have to be thinking about your limitations, and thinking of new ways to control the robot. say the mechanical teams says.... "We want to make this awesome arm with 14 degrees of rotation." first thing you have to think is..... Can we program it? and is it worth it? if the answer to either is no, it is the programer's responsibility to announce that.

the other thing is, if it is an idea you want to go with, think from the beginning how you want to control it. if you want a feed back control loop, you have to tell the other teams you want a sensor in there from the beginning.

next, in terms of the building the robot, you have to coordinate with the electrical team and mechanical team to find where you need and want sensors. the earlier the better.

next in the actual programing....
1: plan. plan how you are going to program it. any control loops, and any special algorithms you are going to need.
2: make it. program it.... pretty self explanatory.
3: test it. you have to make sure it works. work out all the bugs.
4: modify it. you almost never get something you want to keep all the way through the competition, so you have to be able to change code mid competition.

I hope this helps!
__________________
"you can build a perfect machine out of imperfect parts" -Urza

Last edited by techkid86 : 05-11-2012 at 21:54. Reason: forgot something
Closed Thread


Thread Tools
Display Modes Rate This Thread
Rate This Thread:

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

vB code is On
Smilies are On
[IMG] code is On
HTML code is Off
Forum Jump


All times are GMT -5. The time now is 02:01.

The Chief Delphi Forums are sponsored by Innovation First International, Inc.


Powered by vBulletin® Version 3.6.4
Copyright ©2000 - 2017, Jelsoft Enterprises Ltd.
Copyright © Chief Delphi