repository: git://github.com/neobotix/neo_driver
Contents
This package gets maintained by neobotix, for bugreports, support requests and contributing see this page
cob_base_drive_chain
This package is a ros interface for controlling multiple can-open motors via ros.
Topics to subscribe / publish and configuration parameters
Subscribed Topics
cmd_joint_traj (trajectory_msgs/JointTrajectory)- send drive commands to each drive
Published Topics
joint_states (sensor_msgs/JointState)- publishes the joint state of each drive
Parameters
numberOfMotors ()- how many motors are connected to the can network?
- how fast can the drives turn?
- how often per second should the can network be queried
- how is the computer connected to the can network?: [0: Dongle, 1: USB, 2: PCI ]
- what is the can device path ( for example /dev/pcanepp24 )
- network of esd cards? [0: no, 1: yes]
- [0: 1000 kbit/s, 1: 500 kbit/s, 2: 250 kbit/s, 3: 125 kbit/s, 4: 50 kbit/s, 5: 20 kbit/s, 6: 10 kbit/s]
- the efficiency of the gear (e.g. 0.9 )
- check jointnames in the incomming joint trajectory [true/false]
- home all drives at the same time [true/false]
- the buffer length
- the control_type of drive nr. * [2: velocity control, 1: position control, 0: torque control]
- what's the joint name of drive nr. * ( for example front_wheel_joint )
- how many encoder increments are measured per revolution
- how many increments can be maximal returned per second?
- the gear ratio
- the belt ratio
- the direction of the motor [1, -1]
- the maximal velocity of drive nr. *
- the max. motor acceleration in increments per second^2
- ()
- do you want to home this drive [true/false]
- the zero position offset in increments
- the home velocity in rad per second
- the type of home event
- the homedigin
- after this time the homing procedure times out
- If this parameter is set, the parameter specifies the can id of a drive which should be coupled to the homed drive
- this parameter sets the velocity of the coupled drive
- ()
- the can identifier for motor nr * (for example 0 )
Troubleshooting
the neo_base_drive_can_node does not start properly
are the pcan modules are loaded properly?
- lsmod | grep pcan
or
- cat /proc/pcan
if these modules are not loaded you can try:
- # sudo modprobe pcan
or
- #insmod /path/to/pcan.ko
if this still fails you've to rebuild the pcan drivers.
/proc/pcan exists but i fail to communicate with it
cat /proc/pcan should display your device (for example [dng] or [usb] ) if not you've to recompile the pcan driver with your modules included.
I don't receive any can message although I can send motor commands:
set the pcan net_dev compile flag to false and recompile the pcan driver
neo_base_drive_can fails to load the parameters for my drives
make sure that the configuration ( param: drive*/) exists for every drive ( param: numberOfMotors )
Add your own Problem and Solution here