My son loves it.
Get yours at: www.makerbeam.eu
Finally got GPS working on the Cubieboard
Sometimes the solution would be easy….
…damn I swapped Rx and Tx and everything went fine,
and I was so sure I connected, documented and even checked multiple times that all is as it should.
At first I thought the level shifter isn’t working, but my brand new Open Workbench Logic Sniffer showed signals, same signals before and after shifting, and was even able to autobaudrate guess my GPS defaults which is 38400.
As I 3D printed a case for the cubieboard I needed to remove the board from the robot anyway so I had the chance to look at the tiny pin headers again, oh and yes I swapped the cables for Rx and Tx there…. damn.
Configuring ROS Dynamixel controllers
Installed the ROS hydro components for the dynamixel servos, and configured the pan tilt controllers.
Software so far looks OK, now I need to re-vive the dynamixels from the arduino and hopefully the protocol CRC errors will be gone.
<launch>
<node name=”dynamixel_manager” pkg=”dynamixel_controllers” type=”controller_manager.py” required=”true” output=”screen”>
<rosparam>
namespace: dxl_manager
serial_ports:
pan_tilt_port:
port_name: “/dev/ttyACM0″
baud_rate: 57600
min_motor_id: 1
max_motor_id: 13
update_rate: 20
</rosparam>
</node>
</launch>
<launch>
<!– Load controller configuration to parameter server –>
<rosparam file=”$(find teddy_dynamixel)/config/dynamixel_joint_controllers.yaml” command=”load”/>
<!– start specified joint controllers –>
<node name=”dynamixel_controller_spawner” pkg=”dynamixel_controllers” type=”controller_spawner.py”
args=”–manager=dxl_manager
–port=pan_tilt_port
–type=simple
pan_controller
tilt_controller”
output=”screen”/>
</launch>
pan_controller:
controller:
package: dynamixel_controllers
module: joint_position_controller
type: JointPositionController
joint_name: pan_joint
joint_speed: 2.0
motor:
id: 11
init: 512
min: 0
max: 1023
tilt_controller:
controller:
package: dynamixel_controllers
module: joint_position_controller
type: JointPositionController
joint_name: tilt_joint
joint_speed: 2.0
motor:
id: 12
init: 512
min: 0
max: 1023
Recompiling Cubieboard kernel to get ACM support
I had to recompile the kernel on the cubieboard again, to enable USB CDC ACM support to be able to migrate the dynamixel servos over from the arduino to a dedicated USB2AX controller.
CONFIG_USB_ACM=m
Move to ROS hydro supplied GSCAM
Meanwhile ROS hydro has it’s own gscam modules released, so I migrated from my own compiled module and also reconfigured the topic remapping.
ptzcam.launch file:
<?xml version=”1″ encoding=”utf-8″?>
<launch>
<node pkg=”gscam” type=”gscam” name=”gscamptz” cwd=”node” respawn=”true”>
<env name=”GSCAM_CONFIG” value=”v4l2src device=/dev/video0 always-copy=false ! video/x-raw-yuv,width=320,height=240,framerate=15/1 ! ffmpegcolorspace”/>
<remap from=”camera/image_raw” to=”/camera/ptz/image_raw” />
<remap from=”camera/camera_info” to=”/camera/ptz/camera_info” />
</node>
</launch>
Teddy Robot process monitoring
|
|
|
|
Teddy robot visual control web interface
Fever
No updates on the robot from october 10th – 20th as I am ill again with 40.5 degrees fever and need to stay in my bed eating antibiotics daily.
Visiting Thailand for holiday
Enjoying a trip to thailand with my family from 14. september to 6th december.
Public Blog of Teddy Robot
Hi folks !
I finally set up a public blog to document the project steps on creating my tricycle riding teddy bear autonomous robot.
Since I started the blog as of today, september 12th 2013, I will create lots of entries back in time to restore some kind of order in the timeline of the previous development.
Have fun,
Kobaan.