**

Nice presentation. This should prove helpful to teams just getting started with LabVIEW and mecanum.

There’s a small error on Page 19 which may lead some astray:

Wouldn’t it be convienient to–on the push of a button–rotate to the direction you’re traveling?

To calculate this angle, do Math.atan2(Joystick X, -Joystick Y)

Implement a PID loop–**the setpoint is the joystick angle**, and **the process variable is the gyro angle**

The above won’t work very well. The joystick angle will be -180…+180, and the gyro angle will be 0…360+

You can’t just pass the joystick angle and gyro angle to the PID as-is. The PID will not like that at all.

For example, if the joystick angle is -1 degree and the gyro is reading +359 degrees, the PID will calculate (and act upon) an error of -1-359 = -360 degrees… even though the vehicle is already pointing in the desired direction.

To use the LabVIEW PID in this situation, you need to do something like this:

```
angle_error = joystick_angle - gyro_angle;
angle_error -= 360*floor(0.5+angle_error/360);
setpoint = gyro_angle + angle_error;
process_variable = gyro_angle;
```

Example LabVIEW code for the second line in the code block above can be found here.

**