Rookie needs LabVIEW help (and more)

Hi there. I’m a rookie mentor (electrical engineer) for a rookie team (3164 Thundercats) here in Tampa.

We are trying to set up the control system according to the document 2010 FRC Control System-Getting Started-Rev-0-7.pdf. We’ve decided to use LabVIEW although we don’t have any experience with this software (but we don’t have any C++ or Java either so it seemed the lesser of three evils!). We got the 2010 Game Robot Project.lvproj downloaded to the cRIO and we can get two CIM motors to work fine with arcade control. Our problem is that we follow the instructions to try out tank drive and cannot get it to work. We have verified that both joysticks work and are putting the Z-wheel in the down (-) position, but it doesn’t change out of arcade drive. Can anyone help or point to the VI in LabVIEW where it looks for the Z-wheel position?

On another point, can someone please direct us to instructions on how to wire up the camera on the robot, and set it up for use with the cRIO? We have done the password change per the above manual.

Finally, is there anywhere where the 2010 Game Robot Project is described in detail - i.e. maybe an explanation of what each VI does? As complete rookies the only chance we will have to “program” is to modify existing code.

Thanks in advance for any help you can give.

Robot Project:
I don’t know of any write-up on the structure of the Robot Project.
In the Project Explorer window you’ll see “Team Code”. These are the files you will be changing. Leave the others alone. Here are the most important vi’s:

  • Begin.vi - this is where you should Open all the devices you’ll be using.
  • Finish.vi - this corresponds to Begin.vi and is where you should close all your devices.
  • Teleop.vi - is your regular teleoperated driver code and where Arcade Drive is setup, and where you’d change it to Tank Drive.
  • Autonomous Independent.vi - where you’ll program your autonomous moves.
    Tank Drive is not programmed into this default Robot Project, so no amount of Z-throttle fiddling will change anything. Look in Teleop.vi and you’ll see the Arcade Drive icon.
    A good source of LabVIEW training are the videos done by http://frcmastery.com/

Camera:
If you’ve setup the camera password, then it gets cabled with a cross-over Ethernet cable (pink in the KOP) to port 2 on the cRIO. It must be port 2 only.
To wire it you cut the cord off the wall plug they gave you in the KOP so you have the barrel connector. The bare wires at the other end connect to the built-in gray Wago connector on the Power Distribution Panel.
You can see the wiring here:

Another useful thing is context help. To do this when labview is open click on help>context help. If you then mouse over an icon it gives a description of what it does. I have attached a screen shot of this below.

Typically in labview the ports on the left are input into sub VI’s and ports on the right are output

Many thanks guys.

Mark, great information - thank you. This really gives us something to work on now.

Elmer_Fud, thanks for tip on LabVIEW - I didn’t know this was there and I’m sure it will help.

I’m sure there will be many more questions.

Another help source is lvmastry.com/tipjar. He is a LabVIEW integrator/trainer and FRC mentor and has many hours of FRC specific training videos on his website.

Greg McKaskle