A robotic installation that lets the participant experience a tentacled existence.
produced by: Eevi Rutanen
“To be a one at all, you must be a many.”
The installation tracks the movement and pose of the participant. Based on the movement, two motors manipulate the limbs of a tentacled, intestine-like creature suspended by strings in the style of a marionette puppet. The creature’s movements mirror the movements of the participant, striving to create an impression of parallel existence and trans-species communication.
Concept and background research
I was inspired by Donna Haraway’s idea of “tentacular thinking”—a metaphor for a nonlinear, multiple, networked existence similar to Deleuze and Guattari’s (1980) concept of the rhizome:
The tentacular are not disembodied figures; they are cnidarians, spiders, fingery beings like humans and raccoons, squid, jellyfish, neural extravaganzas, fibrous entities, flagellated beings, myofibril braids, matted and felted microbial and fungal tangles, probing creepers, swelling roots, reaching and climbing tendrilled ones. The tentacular are also nets and networks, it critters, in and out of clouds. Tentacularity is about life lived along lines — and such a wealth of lines — not at points, not in spheres. “The inhabitants of the world, creatures of all kinds, human and non-human, are wayfarers”; generations are like “a series of interlaced trails.”
Haraway reminds us how we are not singular beings, but limbs in a complex, multi-species network of entwined ways of existing. Our bodies and minds are not just made of us, but also (for example) of billions of bacteria inhabiting our guts. In my installation I wanted to make this notion of parallel existences—tentacles, guts and other beings—tangible and affective. After all, as Haraway points out, the word tentacle comes from the Latin tentaculum, meaning “feeler,” and tentare, meaning “to feel” and “to try”.
From the visual and mechanical perspective, I was inspired by Jordan Wolfson’s kinetic installation Colored Sculpture (2016), where he creates a visually striking and unnerving image with a large-scale robotic marionette puppet.
Initially I planned to use skeleton tracking for obtaining the user’s limb positions, but it proved to be almost impossible since the support for Kinect skeleton tracking on macOS has been deprecated. After many failed attempts, I resolved to follow a more simple approach: In stead of tracking complete limbs and joints, I decided to just track the hands.
The minimal required code for adequately tracking hand positions turned out to be quite simple in the end. I based the basic depth image processing on the Kinect Fiery Comet lab assignment. For acquiring the distance of the user, I simply scanned the bottom row of pixels of the Kinect depth image to determine the brightest pixel (i.e. the closest object). With the distance of the user defined, it was easy to apply thresholding on the image to differentiate the contour of the user from the background. I then searched for the leftmost and rightmost point of the contour to detect the positions of the user’s hands. Despite not being a completely fool-proof way of tracking the hand positions, this approach worked well for the requirements of the project. I also experimented with hand tracking using machine learning with Wekinator, but came to the conclusion that mapping the vertical movement of the hands to the movement of the tentacles was so straight-forward that is was unnecessary to use machine learning for the task.
The vertical position of the user’s hands is sent to the Arduino via serial communication. The Arduino program simply maps the received data to a 0-180 degree rotation of the motors. Initially I planned to use more powerful stepper motors, but because of their high price and noise level, I concluded in using the micro servos I already had. The gear system turned out to be (quite unexpectedly) the most complex and time-consuming part of the project. Because the servos can only rotate 180 degrees, I had to design a transmission for increasing the speed, since I needed the string to wind a longer distance to achieve a substantial movement in the puppet. I designed the cogwheels in the Gear Generator and laser cut them from acrylic. The design of the gear train saw multiple iterations where I experimented with different gear ratios, materials and arrangements. Saskia Freeke’s installation SCROLLLLLL was a useful reference, as well as several basic articles on gears (see Explain That Stuff, Robot Shop). The components were all custom designed and fabricated with laser cutting and 3D printing. I found it astounding how complex such a simple piece of machinery is after all!
However, increasing the speed of the smaller cog meant that the torque was decreased accordingly. The micro servos were weak to begin with, and the addition of the gears made the movement even more strained. Despite being designed to be quite light, the limbs of the puppet turned out to be almost too heavy for the motors. In the end, the tentacular creature was made from tubes sewn from PCV fabric and filled with wadding. Because turning dozens of narrow, stiff and slippery fabric tubes inside out was quite arduous, I was forced to invent several manoeuvres for making the process easier.
Plan for the gear train design:
Initially I wanted to have several users controlling the puppet simultaneously, in the spirit of the concept of “one being many”. However, due to the restricted time and the complexity of the build of the gear train I ended up tracking just one participant. I already wrote the code for tracking multiple people, so adding the mechanics should be quite straight-forward although time-consuming and material-intensive.
Replacing the motors with more powerful servos would be an obvious point of improvement. It would also be interesting to try a plotter-style stepper motor setup that would allow movement in all axis.
I faced a lot of unexpected setbacks during the project, from not getting the skeleton tracking to work to spending days designing and constructing the gear trains. For the purposes of this module, the emphasis of the project could have been more on the code and less on the physical aspects. Then again, the simple program does what is required, so there really is no need to embellish the code further.
The movement of the robot is not as smooth and consistent as I imagined, but I think the slightly irregular and twitchy motion creates an interesting effect.
I certainly learned a lot from the gear episode, and actually quite enjoyed tackling the engineering problems. The look and feel of the physical artefact is very important to me, so I wish I had had more time to experiment with the design and materials of the tentacle creature. I would like the appearance of the installation to be even more disturbing and alien, since I think the current materials and colours render it a bit too tame and childish. Overall, I’m decently satisfied with the project despite having to cut corners on certain decisions. I’m sure the experience will be useful when building more robotic installations in the future.
Deleuze, G. and Guattari, F. (1980) A Thousand Plateaus. London and New York: Continuum.
Papatheodorou, T. (2018) Fiery Comet in Workshops in Creative Coding 1.