Best way to improve my coding skills for next year?

What is the best way to improve my coding skills in LabVIEW for the next season?

I want to learn how to have more control on my robot,
do more complex things in autonomous mode,
and learn how to do things with the vision processing.

Please advice me about websites to learn from or things I should focus on.
Thank you! :slight_smile:

http://team358.org/files/programming/ControlSystem2009-/LabVIEW/ has a lot of code snippets for any function of the robot.

https://decibel.ni.com/content/community/first/frc has tutorials from National Instruments themselves. A good place to look

I would say the most important thing is to get the simulation tools working. Once you have that, you can then begin to develop and test your ideas without needing a real robot. That is great for two big reasons: 1) you can develop and test your code from the comfort of your home, and 2) you don’t have to worry about breaking something if you make a mistake.

After you get the simulation running, there are a lot of ideas on chiefdelphi if you search. Here are a few things to try:

  • Shooter speed control: bang-bang vs. PID

  • Arm control: use an encoder or potentiometer with a PID controller to control an arm to pre-set posititions.

  • Autonomous: use wheel encoders and a gyro to keep track of distance and heading. Use PID to keep your robot driving straight and to drive a set distance.

  • Autonomous: control your autonomous routines through some sort of script

One thing that i have always found important when looking at code is that you understand:

-how it works
-why it works
-when it doesn’t work
-what is happening behind the scenes

It is important to not only understand that the code or function does something but you should understand to a certain degree why and how it does it.

For working at home away from the robot you can also use labview with an arduino and develop good coding habits and begin advancing your knowledge of control structures

Also don’t be afraid to break off and learn Anouther language as learning how to do something in many different ways will help you understand the logic

Great idea :slight_smile:
what is bang-bang?
and how does the algorithm of driving straight with PID works?

Thx for the help :slight_smile:
Is there a thread with all of these ideas in one place?

No, they’re not in one place - you’ll need to search.

Here’s a thread on bang-bang vs. PID for shooter speed control: http://www.chiefdelphi.com/forums/showthread.php?t=114366&highlight=bang

Thx.

What about the driving straight with PID? How does it work?

Your gyro tells you what your heading is. When you start driving straight, remember what the heading is. As you drive, if your heading drifts clockwise, steer a little bit counter-clockwise. And visa versa.

You could also use the difference between left and right encoder counts to figure out what direction you are driving, but the gyro has the nice property of not caring whether or not your wheels are slipping.