Roboceratops is a 14 degree of freedom animatronic triceratops. It has a custom joystick and a carrying case that looks like it was made by Adam Savage.

Everything after this is Robert in his own words.

This is Roboceratops, my Robot Dinosaur.

Inspired by a childhood love of dinosaurs, I wanted to try and make a member of the ceratopsian group. And to attempt to give the feel and personality of a juvenile dinosaur.

I have been working on this project for almost a year, as and when time and money allowed. It is still a work in progress, with a few kinks to iron out. Here’s what I have so far.

Code

I have implemented full Forward and Inverse Kinematics, which runs at around 60 cycles/sec. Its movements are limited by the 2 Degree of Freedom front legs. These limit the body translations to X (forward/back) and Z (height). It also means that the point of rotation for yaw is located between the front legs.

I am attempting to code the locomotion, however it does feel like trying to teach a toddler to walk as it does like to tumble over. The limitation of the front leg also effects the locomotion, it is unable to strafe, and it also has a point of locomotive rotation located between the front legs, which essentially makes the robot rear steer.

Mechanics

The Robot currently has 14 Degrees of Freedom using the following:

Jaw – 1x 9g Servo

Neck – 2x Hitec HS 55

Tail – 1x Hitec HS 645 MG

Front Legs – 2x Hitec HS 645 MG ea

Rear Legs – 3x Hitec HS 645 MG ea *Probably needs HS 5645 MG’s or better

The head and body are made from laser cut MDF, 3 and 6mm respectively. The legs are made from aluminium square bar, and are covered with upholstery foam to add volume to the limbs.

Robot Electronics

2x Pololu Mini Maestro 12-Channel Servo Controllers. Could be replaced with a single 18-Channel Version.

Currently these are the only electronics on the robot. They are receiving servo position commands over serial cable from the controller as well as power from an external power supply.

Controller Electronics

1x Arduino Mega 2560

1x 128×64 Graphical LCD

2x 3-axis Analogue Joystick

Future

I intend to add more to the robot, things to do include:

An on-board micro-controller – giving the option for autonomous behaviours,

Battery – Removing the need to be tethered for power.

Wireless Communication – either Zigbee or Bluetooth.

IMU – to add extra dynamic stability with a PID feedback loop.

Pressure/Contact detection in the feet – for dynamic locomotion.

Wireless Communication – either Zigbee or Bluetooth.

SD Card – store different programs and record and playback behaviours/routines.

IMU – to add extra control options.

Battery – increase the portability and ease of use.