Wheel Calibration
===
Hey Bunny! Let's GO strait.
#### TODO
* wheel calibration
### Wheel Calibration
**Set trim and gain**
##### ssh to your pi
```
bunnybot: $ roslaunch duckietown_demos joystick.launch veh:=alphaduck
```
this run up joystick node, enable you to control bunnybot via joystick.
Now it is time for using *rosservice* which can let you dynamically set parameter while the node still running!
##### ssh open other terminal in pi (do not use byobu)
```
bunnybot: $ rosservice call /alphaduck/inverse_kinematics_node/set_trim --0.01
```
Changing the trim to positive value 0.01
Likewisely, you can set the trim to negative value -0.01
```
bunnybot: $ rosservice call /alphaduck/inverse_kinematics_node/set_trim -- -0.01
```
Keep tunning these value and observe whether your bunny go strait.
If want to speed up your bunny, set the gain value.
```
bunnybot: $ rosservice call /alphaduck/inverse_kinematics_node/set_gain -- 1.1
```
*Warning*! If you set gain too high(>5) it will saturated then the wheels won't get calibrate.
After you have done everything, save the parameter file.
```
bunnybot: $ rosservice call /alphaduck/inverse_kinematics_node/save_calibration
```
If this is the first time you do wheel calibration, it will generate alphaduck.yaml in
bunnybot location:
```
~/duckietown/catkin_ws/src/duckietown/config/baseline/calibration/kinematics
```
*p.s. you can find all configuration files in ~/duckietown/config/...*
**Now Bunny GO straight! GOOD JOB!!!**
###### tags: `duckietown-bunny`