AI/Physical Digital Assistant Project

“Petting Zoo” is a project developed by experimental architecture and design studio Minimaforms. The project is a life-like robotic environment that aims to question how future environments could enable new forms of communication with everyday objects. Within this installation the mechanical “pets” interact and play with humans, simulating lifelike behavior through kinesis, sound and illumination. These interactions are stored by the “pet”, enabling it grow and learn and evolve over time.

My project is quite similar- I hope to have a personalized assistant that can interact with you, so I’m trying to learn how to recreate the “Petting Zoo” project. The biggest difficulty was finding a material that could both be rigid and flexible, while being operated by an arduino. Initially I settled on the design visible on the second image. I decided to use wood, and kerfed it in intervals as pictured. This allowed the wood to bend, but due to the presence of the wooden slivers, not so much that it would snap. This unfortunately still proved to be too delicate, and on top of that the force required to bend the wood exceeded that which could be feasibly emitted by the motor, so I continued my research.


I discovered a Hackaday project that was doing something similar to the “Petting zoo” project, as far as structure.

This project consisted in creating a cable mechanism that could control a tentacle, enabling it to move in different directions. I’m hoping that I can make something like this and combine it with arduino-controlled servos to make my project work.

Materials List:

  • qty 18: wheel hubs + set screws
  • qty 18: Delrin vertebrae segments
  • qty 2 x 18: 4-40 x 3-16 in. button head screws
  • qty ~25 feet (7.62 m): 1/32″ diameter wire rope
  • qty 4: Wire Crimp Ferrules
  • qty 4: Wire Loop Ferrules
  • qty 4: uncrimped remaining wire rope lengths
  • qty 4: wire ropes with end-stop style crimp
  • qty 1: speedometer cable or (better) flexible shaft cut to 24 inches (610 mm)
  • qty 4: continuous-length extension spring (aka: spring guide) at 24-inch (610) lengths
  • qty 4: continuous-length extension spring (aka: spring guide) at 24-inch (610) lengths
  • qty 4: continuous-length extension spring at 18-inch (457 mm) lengths (You can cut these with a hefty wire cutter)

Each vertebrae segment consists of a wheel hub, a delrin plate, and two screws. The wire ropes are what are pulled on to shift the segments, and the speedometer cable is what makes up the “spine”.





Unfortunately I only have some knowledge of Javascript and Java through Processing and P5.js so the code I can write to make my ideas happen is fairly limited due to the weakness of the environment I’m writing it in, but I have found a couple work arounds that should lead to a rough sort of facial recognition. Most of the face detection work has been done for me thanks to Processing having an OpenCV library, which deals heavily with computer vision. My software is supposed to identify a face using OpenCV. It then converts it to black and white, with the program highlighting contours of a face in black and white. Due to the binary nature of the colors presented I can then use the get() and pixels[] functions to create an array grid over the face, that then identifies whether the squares of the grid are over a black part or a white part. Because contours of a face vary from person to person, where the white and black is on the grid should allow the computer to have a rough understanding of a face, and therefore which face.

Screen Shot 2017-02-06 at 4.36.46 PM.png

Screen Shot 2017-02-06 at 4.38.21 PM.png


When it would notice which face was which, the software would be able to make the hardware interact with the user in a specified manner, one that would have to be coded by me.


Leave a Reply

Fill in your details below or click an icon to log in: Logo

You are commenting using your account. Log Out /  Change )

Google+ photo

You are commenting using your Google+ account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )


Connecting to %s