Programming Sub-Team Problems

I am the advisor to a new team. I am becoming increasingly concerned with the programming and control sub-team and a lack of ability to make progress. We received the Robovation kit only last week and I sent one of the kids home with it and he was not able to get things going.

Where can I steer my kids for the definitive resource to gain basic control over our team robot. Any ideas/resources would be appreciated!

The biggest problem I’ve seen is knowing where to start. I printed out copies of the guide documents for the RC, OI and the EDU unit. I also copied the docs on the default, user and edu programs. Arranging them in a binder with tabs gave our group a central place for documentation.

Read the docs so you know how things work. That way you can give your group targeted tasks they can complete like:

 Install the MPLAB IDE, compiler and IFI loader
 Wire the EDU computer as shown in the guide
 Connect the EDU computer to a PC and download the default code
 Change the default code, compile and download it

It’s fairly easy when you figure out where to start.

I don’t know if there are any nearby veteren teams, but the most efficient way would be to send a few members of your programming sub-team over for an evening, and learn the basics. Most teams will show more than enough GP to mentor you in this manner.

Alternatively, you may be able to talk a nearby team’s programming mentor to visit your team for a few hours and do the same.

Team 188 has had members from teams around Toronto drop by for these kind of crash course sessions, and it has also sent mentors and students to other schools who’ve asked for help. Ask, and I’m willing to bet you’ll find another team who’ll do the same :slight_smile: .

-SlimBoJones…

http://www.chiefdelphi.com/forums/memberlist.php?do=getall&page=1&ltr=&pp=50&order=asc&postslower=0&postsupper=0&sort=username&ausername=&homepage=&icq=&aim=&yahoo=&msn=&joindateafter=&joindatebefore=&lastpostafter=&lastpostbefore=&field2=New+Jersey

Is a complete list of CD members in New Jersey (at leas according to their profile… :))

Of course, some may be inactive. YMMV. :slight_smile:

Thanks for your response, but I’m not sure where to find these documents and resources you mention.

Here’s an updated Quick Start white paper. see if this helps any.
Programming Quick Start

  • Beginners need the following to program the FIRST robot:

v FRC (Full-size Robot Controller) RC Default Code
v Microchip MPLAB & C compiler
v IFI_Loader
v A standard serial cable
v A Windows PC with a serial port or USB-to-serial converter

v C Programming Resource Library http://www.usfirst.org/robotics/C_help.htm has a great overview of the programming process.

v Learn C Programming - Developed by Carnegie Mellon and the National Robotics Engineering Consortium specifically for FIRST, this interactive website will get your team prepared for the FIRST Robotics Competition. http://www.rec.ri.cmu.edu/education/robot_builder/](http://www.rec.ri.cmu.edu/education/robot_builder/)

v FIRST Robovation - A Primer for Success Learning Modules http://www.usfirst.org/robotics/robovation/primer/index.html

  • Newer laptops no longer come with serial ports. If you have this problem one solution is to use a USB/Serial converter. Various models are available at Radio Shack, CompUSA, or online, however, some models can be temperamental and they generally take longer to download than a built-in serial port (60sec vs 10 sec). Good results have been reported using: Bafo Technologies BF-810 (~$15) and a Radio Shack USB-to-Serial port cable #26-183 ($42).

  • Documentation is your friend. Take the time to at least leaf through each manual, so you have an idea of where information can be found. Most of the basic information beginners require can be found in the IFI documents or MPLAB documents:

[list]

  • IFI Programming Reference Guide – basic how to program and download to the RC, hookup switches and sensors and do normal robot operations.
  • IFI RC Default Code Reference Guide – description of how the default code is structured and where users can add their own custom code.
  • MPLAB v6.xx Getting Started – basic how to use MPLAB and set options.
  • MPLAB C18 Users Guide – table of max numbers each variable type will store, compiler options, error messages, detailed descriptions of pragmas and some other advanced topics.
  • MPLAB C18 Libraries – details on timers, interrupts, and various other utility functions available to the programmer.

[/list][indent]o More advanced documents are also available, e.g., 18Fxx20 Data Sheet (& Errata)– PIC assembly instruction set and details on EEPROM and other chip specific topics, and several others.
[/indent]

  • Programming limits to the 2004 RC:

[list]

  • 30,720 bytes of program space is available to the user, after 2004 IFI code.
  • 1,343 bytes of ram available to the user, after 2004 code overhead.
  • 256 bytes of global variables available within any one MPLAB project file, such as user_routines.c
  • 120 bytes of variables can be declared within any single routine.

[/list][indent]o The program and data space your code has used can be checked either by the status line at the bottom of the IFI_Loader window or via the optional .map file that you can set MPLAB to generate for you. Note: the .map file lists % of program space used, but the user will have only 90% available to him or her. The .hex is ASCII and file size is no indication of code size.
[/indent]Visit the ChiefDelphi Programming forum for discussions on all programming topics, problems, and issues http://www.chiefdelphi.com/forums.

Keep it simple, if you’re giving too complex of a task in first year, they will surely be extremely confused.

Programming is expecially difficult in first year because everyone wants to become the lone cowboy and program everything at once by themselves (it seems difficult at times to co-ordinate with your peers about how to accomplish things).

Stick together, assign functions in partners, stay to minimal variations of code, stay organized, and most of all - keep it simple.

I am the student programmer for the RoboDawgs.

Last year I knew nothing about programming but learned by reading the documents in FIRST’s c programming resource library.

http://www.usfirst.org/robotics/C_help.htm

These just go over the basics.

I fall into the same boat as Mark ^ I also taught my self C recently, however I had a decent base in P Basic.

The three best resources are

  1. CBolin’s white paper
  2. The C resource library Power point on the first site
  3. Chief Del Phi, If you as a question within 20 minutes you will likely have multiple responses.