Chief Delphi

Chief Delphi (http://www.chiefdelphi.com/forums/index.php)
-   Programming (http://www.chiefdelphi.com/forums/forumdisplay.php?f=51)
-   -   Programming - Getting Started (http://www.chiefdelphi.com/forums/showthread.php?t=30976)

Ryan M. 15-01-2006 20:47

Re: Programming - Getting Started
 
Quote:

Originally Posted by brianoconnor2f2
Hey Thanks fellas This is my first year and I'm a programmer and am used to C++, C isnt much different but I still need all the help I can get. Thanks.

-Matt

There are many very willing people on CD... just remember we aren't mind readers. When you run into a question you can't find an answer to, ask that specifically. :)

Packmon's_girl 16-01-2006 16:09

Re: Programming - Getting Started
 
I tried to get a look at the dogle, and sorry for spelling mistakes now, but the link would not work.

Mark McLeod 16-01-2006 16:28

Re: Programming - Getting Started
 
Here’s an AndyMark dongle you can purchase.

Here’s the wiring schematic so you can make your own.

MattK 19-01-2006 16:22

Re: Programming - Getting Started
 
Quote:

Originally Posted by Mark McLeod
Here’s an AndyMark dongle you can purchase.

Here’s the wiring schematic so you can make your own.

Will these work with the '06 controler? Will a dongle bridging 5 and 8 activate autonomous?

pclements 21-01-2006 11:35

Re: Programming - Getting Started
 
Quote:

Originally Posted by CrashZero
This is a good overview. But all you people talking about having programming "teams" i ask you : how is it that you get a team, for my team its always just me. And new programmers out there don't be discuraged when you get blamed for *every* problem the robot has. And don't think that you will get any fame out of the robot even if it does work. Everyone else in the team gets that. But hey us programmers get to have all the fun so i soppose it's a fair trade. :D

I think that every body works hard as a team, there is no programmers if their is no robot! i think that some people need to get their priorities straight. if the robot is not built properly then their is no reason that programmers are needed. I have been trying to tell that to my fellow programmers that think their super man too.

Mark McLeod 22-01-2006 11:32

Re: Programming - Getting Started
 
Quote:

Originally Posted by MattK
Will these work with the '06 controler? Will a dongle bridging 5 and 8 activate autonomous?

Yes, the disable and Autonomous switches work on the '06 RC.
The "Practice" switch in the schematic no longer serves a purpose in post-2004 controllers.

aaronm_k 20-05-2006 06:04

Re: Programming - Getting Started
 
Quote:

Originally Posted by Noah
1) Programming will take more time than you expect, especially if you want autonomous to work. Tell the team that the robot needs to be driving and in your (the programmer's) hands with at least three days before shipping.

Or, more realistically, expect to spend all of your first Regional testing and debugging the code, since the robot wasn't finished even as it was being put in the crate.

Quote:

Originally Posted by Noah
2) Rookies: Don't program without sleep. Sure, you'll hear the experienced programmers bragging about a 36-hour code marathon, but all that means is that they are good at procrastinating. And working without sleep.

True, you won't be productive without sleep. Still, there's a certain perverse pleasure in being able to say "I slept no more than 4 hours in the 4 nights I spent at Nationals!"

Quote:

Originally Posted by Noah
6) When testing your robot, lift it off the ground. Prop it up somehow. This can save lives! (well, shins, anyways)

Better yet, have the mechanical team build a cart that allows the wheels to spin freely. If you're traveling by car or bus, you can bring it to the Regionals, where they don't let you drive your robot in the pit area. Also, have someone on the OI tether cable or radio modem cable at all times, ready to unplug it if the robot goes crazy. It really does keep people from getting run over by a 150lb robot!

Matt Krass 20-05-2006 11:41

Re: Programming - Getting Started
 
Quote:

Originally Posted by aaronm_k
SNIP!
Also, have someone on the OI tether cable or radio modem cable at all times, ready to unplug it if the robot goes crazy. It really does keep people from getting run over by a 150lb robot!

For that purpose you should really develop an autonomous/disable dongle. The schematic is available from IFIs website here:
http://www.ifirobotics.com/docs/comp...guide-reva.pdf

This allows you to kill the robot from the OI instantly, with no doubt, and test autonomous mode as if the field activated it, so you don't need to play with the autonomous activation code and risk accidentally starting it mid-match (Been there!). I highly recommend a dongle for every team and if you're not confident in your skills at making one you can purchase from AndyMark here:
http://andymark.biz/mode-switch.htm

Some people also go with spring loaded switches, so all you have to do is let go and the robot is disabled, problem with those is they become a pain for longtime testing.

Eric Finn 15-09-2006 19:16

Re: Programming - Getting Started
 
A few basic tips:
  • Remember, your entire program is basically a loop. As such, you do not need to use loops, just ifs. And anyways, using loops will cause Bad Things™ to happen.
  • Counters should be static.
  • The fast user routines need to be executed in the alloted time. As such, do not do too much inside the fast user routines. You can increment a counter inside the fast user routines and do calculations with it in the slow user routines. If the fast user routine code takes longer than it is allowed to, Bad Things™ will happen.
  • On Software Testing/Ship Day, come early, bring lots of caffeine, bring lights and extension cords, and make sure some electrical and mechanical people are there, along with the tools they need. Do not expect to get to software testing until later in the day. Losing your cool on Software Testing/Ship Day can cause Bad Things™ to happen.
  • Document everything very well.
  • Do not work with input/output (I/O) ports by calling them by name. Use #define. Also, all the names of I/O ports are in IFI_aliases.h.
  • Convert analog input to digital.
  • kevin.org
  • Don't reinvent the wheel.
  • Many software problems can be solved by plugging wires in.
  • Kevin Watson hasn't figured out the accelerometer yet. He was working on it during the 05-06 build season.
  • If you use comment blocks, don't comment out code blocks. Use preprocessor commands (#if 0, #if 1, #else, #endif). If there is a comment block inside a commented-out code block, Bad Things™ will happen.
  • Spelling, semicolons, parenthesis, curly braces.
  • Syntax errors appear on the lines below missing semicolons.

Bored 16-01-2007 17:23

Re: Programming - Getting Started
 
Our main programmer that did most of the work went to a different school so I'm actually going to have to learn to code C this year.
This topic is a real help thanks guys.

udzap 16-01-2007 17:28

Re: Programming - Getting Started
 
Cool this is perfect for a beginner programmer as I.

marccenter 16-01-2007 20:04

Re: Programming - Getting Started
 
Mark,
I have already looked for some articles on autonomous programming and have found a few. Do you have a favorites list or best list for less experience autonomous programmers?

slloyd 17-01-2007 00:40

Re: Programming - Getting Started
 
hi peoples,

i just registered so that i could thank kevin for his work on the software and making it as dummy proof as possible - believe me i need it!

this is the first year our team has used the camera and it is quite the challenge. your code is readable, i can follow along with your train of thought & our team has a pretty bright student handling the guts of the camera work (i give him the hard stuff, while i just read manuals :o ). with these three things i think we have a fighting chance at getting a camera functional AND useful!

thx again, keep up the great work!

slloyd

Brad Voracek 17-01-2007 00:51

Re: Programming - Getting Started
 
Where do you guys get your D15 pin connectors for making the autonomous dongle? And also for game ports so you can wire switches to your control box etc... I can't seem to find these anywhere.

Phalanx 17-01-2007 00:58

Re: Programming - Getting Started
 
Quote:

Originally Posted by Brad Voracek (Post 558670)
Where do you guys get your D15 pin connectors for making the autonomous dongle? And also for game ports so you can wire switches to your control box etc... I can't seem to find these anywhere.

Everything you should need can be had from Jameco:
15 Conductor 24 AWG Bulk Cable 100ft
http://www.jameco.com/webapp/wcs/sto...roductId=31844

Solder Cup D-Sub Connector, DB15 Male
http://www.jameco.com/webapp/wcs/sto...roductId=15035

Assembled Hood Kit, DB15/HD26 Gray
http://www.jameco.com/webapp/wcs/sto...roductId=15019

Toggle Switches - 2 State
http://www.jameco.com/webapp/wcs/sto...duct Id=76523

Toggle Switches - 3 State
http://www.jameco.com/webapp/wcs/sto...duct Id=21910


All times are GMT -5. The time now is 11:20.

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