At the competition this year, we had one of the most massive problems with programming. Starting at the day after shipping with our testing robot until competition day 2 of 3, our java programming wouldn’t work. Within a hour, we were able to fully program our bot with labview thanks to a few UNLV students. Now to insure this doesn’t happen again, we are looking to teach 2 or 3 of our team members labview, including myself; the team leader. We have some old test code to work with.
The first thing I want to know is the basics to creating tank drive, we tried to get it working at competition but the computer didn’t seem to let us so we were left to die the rest of the competition with arcade drive. All of us are trained to drive tank drive with a few who know the bits and pieces of driving arcade. I’m gonna watch some youtube tutorials some teams have made to learn and then teach other team members. Anyone able to give me some tips on that?
Also, as soon as competition was back, my computer stopped allowing the build of software saying a VI was missing. I feel it may be a stupid question asking, but what is a VI and what can I do to fix this? I thought maybe it was our coding so I downloaded a old set of labview code from another team and no change. Any tips?
Any tips on anything else would be appreciated. ::rtm:: Here I go!
VI stands for Virtual Instrument. LabVIEW stands for Laboratory Virtual Instrument Engineering Workbench. These names are better left as acronyms today, but act as reminders of when LabVIEW was primarily used to build SW UIs for lab instruments.
To build a tank drive robot, I’d start by building the robot project and opening up the TeleOp VI from the project. I’d also open the Tank Drive Example project by going to View>>Getting Started. On the Getting Started window, click on Examples in the lower right. This will bring up a list of LV example projects which are very useful for seeing FRC specific LV code as well as for running the code, playing with parameters to fit it to your robot or test bench, and verifying that items work as expected. Note that you will need to set the IP address of the cRIO by right clicking on the properties of the target.
The example simplifies things by smashing the entire framework into a single VI, but looking at the Drive specific portions, pay attention to the fact that there are two joysticks being opened instead of one. In the framework, the joysticks are being opened and stored in the Begin VI. Next notice that there are calls to retrieve the axis from the joysticks – similar to the original project. Finally, notice that the Arcade Drive VI was replaced with a Tank Drive.
If you find this too dense, ask more detailed questions.
If you have an error message saying that a VI is missing, please pay attention to the VI name. If the VI name is something that you wrote, it may be necessary to show LV where the VI is. This is normally caused by moving a LV project or source around but not moving all of the source, or by changing the relative paths.
Greg McKaskle
Thank you lots Greg! The explination helps a lot. I found that example for tank drive. The teleop was totally missing. I created a new file and moved that from another project to this one and cleared it out. If i copy the exact tank drive example map and set the USB’s and such… will that fully work if i paste it inside the teleop vi? if not what do I need to do. That code will work for what i need it to so far. I just want to make sure there is nothing else I need.
Right now I have done that paste. I was gonna try running the code since the bot is in my bedroom as we speak for the weekend. If it will work I’ll leave it and add my pneumatics. We dont know what went wrong, we never deleted anyting as we know of but all we know is we have to rewrite our teleop from scratch.
Thanks again
It is a little unclear what you’ve pasted. If you put a loop, especially an infinite loop inside teleop, that will not work well.
I’d suggest doing reading through the code a few times, making your best paste, and then posting a picture of the code for review.
Greg McKaskle
When every I see requests for help learning LabView, I always point to LVMastery.com. These are the best tutorials I have seen for learning LV. Also, don’t neglect to follow the link to FRCMastery where you will find updates that are specific to 2010.