Difference between revisions of "Motor Controller Rewrite"

From wikidb
Jump to: navigation, search
(Build)
(Source Code =)
Line 1: Line 1:
= Source Code ==
+
= Source Code =
  
TBD
+
TBD - code is in flux
  
 
= Build =
 
= Build =

Revision as of 10:54, 20 September 2017

Source Code

TBD - code is in flux

Build

Additions to ~/catkin_ws_indigo/src/phidgets_cat/CMakeList.txt

 # motor_control_hc_nav
 add_executable(motor_control_hc_nav src/motor_control_hc_nav.cpp)
 target_link_libraries(motor_control_hc_nav 
   ${catkin_LIBRARIES}
   phidget21
 )

Launch Script

Launch script in floor_hugger/launch/motor_control_nav.launch

 <launch>
     <node pkg="phidgets_cat" type="motor_control_hc_nav" name="motor_control_hc_nav" respawn="true" output="screen">
        <param name="odometry" value="/odom" />
        <param name="wheelbase" value="305" />
        <param name="pid_proportional" value="15" />
        <param name="pid_integral" value="60" />
        <param name="pid_derivative" value="0" />
     </node>
 </launch>

Test Execution

Terminal 2

The motor_control_nav launch script executes the code associated with the motor_control_hc_nav.cpp code in the phidgets_cat package.

 roslaunch floor_hugger motor_control_nav.launch

Terminal 3

 roslaunch floor_hugger odometry.launch

Terminal 4

Take the place of the navigation stack by publishing a cmd_vel message of type Twist. It has linear.x value of 0.20 m/sec and an angular.z value of 0.1 radians/sec.

 roscd floor_hugger/test/
 python motors_go_full.py 0.20 0.1
 motors_go_full.py <linear.x> <angular.z>

Terminal 5

Monitor resulting motor status with one of the following

 rostopic echo odom
 rqt_plot /cmd_vel/linear/x /odom/twist/twist/linear/x /odom/twist/twist/linear/y