|
|
|
![]() |
|
|||||||
|
||||||||
![]() |
|
|
Thread Tools |
Rating:
|
Display Modes |
|
|
|
#1
|
||||
|
||||
|
Team 39, 2008 LabVIEW Beta Code
http://hhsrobotics.org/forums/viewtopic.php?f=4&t=3
We just released the first revision. More coming soon. rev0.1-- this revision only includes the teleoperated mode. it has been tested on the robot. Enjoy! |
|
#2
|
|||
|
|||
|
Re: Team 39, 2008 LabVIEW Beta Code
Could you post images of the VIs? My team does not have access to LabView yet.
|
|
#3
|
||||
|
||||
|
Re: Team 39, 2008 LabVIEW Beta Code
Quote:
I will post the pics sometime tonight |
|
#4
|
|||||
|
|||||
|
Re: Team 39, 2008 LabVIEW Beta Code
For the health of your board there, you might want to set permissions so people don't have to register to download this file. Else you'll be getting a rather lot of one-time registrations.
EDIT: Second point, pictures are going to be slightly more meaningful, because all of us out here are lacking the dozens of WPI VIs needed to make sense of your code. Nevertheless, I'd like to suggest that you look into "Enumeration Constants" for passing your states around, instead of variable length strings. Eric will probably swoop in here and declare that we have so much processing power that it doesn't matter... But I think some things just shouldn't be done. Plus, enumeration constants will make your state-flow code immune to typos in your states. Last edited by Kevin Sevcik : 07-10-2008 at 19:36. |
|
#5
|
||||
|
||||
|
Re: Team 39, 2008 LabVIEW Beta Code
Quote:
Quote:
Thanks for the suggestions. |
|
#6
|
||||
|
||||
|
Re: Team 39, 2008 LabVIEW Beta Code
|
|
#7
|
|||
|
|||
|
Re: Team 39, 2008 LabVIEW Beta Code
The cRIO's PowerPC/FPGA combo is obviously far more processing-capable than the old IFI setup. However, that's no reason to write sloppy and inefficient code.
With a bit of LabVIEW experience, you'll learn to appreciate the value of the enumerated type (as in C/C++). I would strongly encourage every LabVIEW programmer to use this datatype wherever possible. It's always good practice to remove "magic numbers" from your code. Russ |
|
#8
|
||||
|
||||
|
Re: Team 39, 2008 LabVIEW Beta Code
I looked through the code - and I have to wonder if it isn't time for FIRST to release some explanations of how the system is going to function.
I looked at it and was completely confused as to how it was supposed to work - and I'm betting other people are going to have the exact same reaction. |
|
#9
|
|||||
|
|||||
|
Re: Team 39, 2008 LabVIEW Beta Code
Tom,
I think the code looks.... reasonably straight forward. But then, I'm a bit used to deciphering Labview code. It looks like most every function is going to be run through those XYZ-Open,Something,Close function blocks. Open XYZ on Port B at Slot A, either when the robot is turned on or when initializing into a mode. Do something to it. Close it when your robot turns off, stops needing it, or stops running the Labview code. I imagine the latter is important to not forget, since it could possibly confound things if you don't close these ports when you stop the code to make a programming change. I'm a little concerned that I don't see any DaqMX tasks in this code. I realize it's slightly advanced stuff, but it's important slightly advanced stuff. You can set up hardware timed data sampling tasks that run at much higher frequencies than your background processing tasks, as well as setting up custom scales and all sorts of other things. Hopefully it's just that beta teams haven't gotten around to looking at that sort of thing yet, as opposed to it not being an option. Borna, A few followup questions from an interested bystander: 1. I assume the pink wires in and out of the various modules (DigMd, AnlgMd) are carrying module configuration info. Are the shift registers you have on these module configuration lines actually necessary? Could they instead just be simple tunnels, as with the Joystick in your main loop? 2. Is 25 Hz just a random loop timing decision on your part, or is it the recommended max loop rate? 3. The Victor/PWM modules seem to have some sort of deadband and transform setup. Does that configuration happen in a separate module? |
|
#10
|
||||||
|
||||||
|
Re: Team 39, 2008 LabVIEW Beta Code
Quote:
Quote:
Quote:
For example, The deadband control for Victor is a boolean value, whether to scale the inputs to eliminate the victor deadzone and center on 127 (rather then 132) or not. Last edited by Joe Ross : 08-10-2008 at 13:49. Reason: fixed update rate |
|
#11
|
||||
|
||||
|
Re: Team 39, 2008 LabVIEW Beta Code
Quote:
too keep the new data for the next loops, shiftregisters are needed. but in our case as of now, tunnels would work the same. ================================================== ==== For our code as of now, we dont need to sample the inputs more that 25hz since thats the only time they are needed. once we get to gyros or accelerometers, sampling fater would come in handy. I promise the next revision looks much better. |
|
#12
|
|||||
|
|||||
|
Re: Team 39, 2008 LabVIEW Beta Code
Quote:
|
![]() |
| Thread Tools | |
| Display Modes | Rate This Thread |
|
|
Similar Threads
|
||||
| Thread | Thread Starter | Forum | Replies | Last Post |
| Posting LabView Code Easily? | Greg Marra | NI LabVIEW | 17 | 25-11-2009 16:49 |
| LabView FRC Toolkit code level issue | KHall | National Instruments LabVIEW and Data Acquisition | 2 | 11-06-2008 10:40 |
| [TBA] Match Archives 2008 (beta) | Greg Marra | The Blue Alliance | 16 | 07-10-2007 14:39 |
| Configuring Labview code to easyC | team877 | LabView and Data Acquisition | 6 | 16-01-2007 09:21 |
| LabView Gear Tooth Sensor Code | SkiRacer | LabView and Data Acquisition | 2 | 17-01-2006 03:53 |