Skip to content

Animatronics: robotics progress

So, i’ve been making slow but steady progress… not fast enough to warrant more frequent blog posts. Some accomplishments:

  • use multiple ROS nodes to synchronize and control movement; both blinks and eye rolls are currently performed
  • optionally activate motor controller, which is the Adafruit Servo Hat
  • use the Raspberry Pi camera and OpenCV to locate faces and broadcast this on a ROS topic
  • connect ROS on a VirtualBox VM to a master running on a Raspberry Pi
  • create an overly-simplistic URDF model of the head with eyes — no moving joints yet


Using OpenCV Haar Cascades filter is pretty compute intensive for the Raspberry Pi, and it would be good to at least decouple the camera IO from the image processing.


There’s a tutorial for how to use ROS with multiple machines. Here’s the brief summary: connect them over IP and on the other nodes, export this variable:

export ROS_MASTER_URI=http://your_ros_master_ip:11311

Now you can skip a tutorial!

Yet to-do (short term)

  • figure out how to use tf2 to transform the seen face to eye direction
  • convert eye direction to servo position
  • build a head, mount eyes and camera
  • use a ROS camera source to decouple the IO from the OpenCV processing, which can speed up

Posted in Make, Robotics.

Tagged with , , , , , , , .

0 Responses

Stay in touch with the conversation, subscribe to the RSS feed for comments on this post.

You must be logged in to post a comment.