Hobby roboticist Jochen Alt created his robotic Pixar lamp inspired by the incredibly cute animated short “Luxo Jr.” Alt's “Luci” can't hop about like Luxo Jr., but she shares some of the same curiosity and playfulness.
Luci's processing uses an ODROID-U3 running Ubuntu Linux with computer vision using OpenCV and Boost. Luci's servo-driven movements are controlled by an ATMega processor.
The ODROID control board has a self-made Arduino shield on top. The ATMega provides Pulse Width Modulation (PWM) for the servos, controls relays, and regulates the voltage for the servos to provide smooth movement for the initial position.
Luci’s body is made from birch wood, with pivots using brass axes and ball bearings, and springs to off-load some weight. Servos drive the turning of the base, moving the head, and extending and contracting the upper and lower struts.
Alt created a 3D model of the head and linkages with TurboCAD. The head is 3D printed from ABS plastic. There is another servo inside the head to allow it to turn.
The ODROID software controls the complex stuff like facial recognition and trajectory planning for the movements. The trajectory planning is done with a module that looks for a face and interacts it.
Luci scans the environment by inspecting a 3D grid until a face is detected. Luci follows the biggest face and switches into the face interaction mode. The detected face is tracked and fed into the kinematics. Luci always looks at that face regardless of other movements.
Luci can move back quickly to express surprise, shyly move towards a face, watch from various angles, move down and watch a face from below, move up and nod in agreement, etc.
Alt has created a fun and interactive robot that really captures some of the personality from Pixar’s original characters.