HackSpace – September 2019

(Jacob Rumans) #1
LENS

papers that proposed how the worm
moves (locomotion), and forages for food.
Since no existing robot incorporated both
these ideas, it seemed like a good plan to
build a robot that modelled them.
In the spring of 2017, Australian
robot-builder Shane Gingell joined the
project, and he and I proceeded to forge
ahead. We ended up with two versions of
the C. elegans robot. The first is a
Raspberry Pi processor implementation,


and the second is an ESP32 MicroPython
system on a chip (SoC) implementation.
Both implementations are a combined
effort. Shane spearheaded the design and
initial build, and I built the versions used for
external demos, as well as supplying
software to run the simulation.


LOCOMOTION
The first version was based on a Raspberry
Pi board, and accomplished one of the
goals: locomotion.
The robot consists of nine articulated
segments, which is a simplification from
the twelve segments in the real worm.
Each is segment mounted on a pair of
wheels. Locomotion is achieved, as it is in
C. elegans, by moving in a snake-like
manner that relies on surface friction. The
wheels are hence not powered and exist
to provide a suitable contact surface with
the ground.

Each segment is a 3D-printed component
that articulates with its neighbours via
servos. The electronic components are
mounted on platforms fastened to several
of the segments. We both purchased and
assembled Tarantula 3D printers to print
the parts. However, considering that 3D

printing services are typically easy to
obtain, and in hindsight, dealing with the
challenges of DIY printing, building, and
operating a printer did delay the completion
of the robot (personally speaking!).
The Raspberry Pi Zero W is a full-fledged
microprocessor that included wireless
communication capability. A PWM board

Above
The worm body designed
and ready to be 3D-printed

Future implementations
These could include:


  • Touch response. C. elegans responds to
    touch on its nose by reversing direction.

  • A Jupyter Notebook to provide a
    programming interface to the robot. This
    might also support software exercises
    related to C. elegans, such as how the
    neural network can be optimised to
    achieve sensorimotor coordination for
    touch response.


Above
The head section of the worm holds
the distance sensors

Since no existing robot incorporated both


these ideas, it seemed like a good plan to


build a robot that modelled them

Free download pdf