Introduction: Sunflower Automaton

About: I am a bicycle mechanic and tinkerer and love building stuff.
This was a 6 week project created for the Spring 2012 Things That Think course at the University of Colorado at Boulder.

Our project is an autonomous Sunflower. As in nature, the highest priority for our flower is sunlight, necessary for photosynthesis. Our Arduino controlled sunflower is constructed using 3D printing and laser cutting technologies. Primarily, our flower finds and follows the brightest source of light. This flower is different than your typical sunflower, because when a person comes close enough, the flower moves its petals to acknowledge their presence.  We were able to utilize Shape Memory Alloy (SMA), in the form of a nickel/titanium alloy (Nitinol), to facilitate the opening and closing of the flower's petals. Our goal was to combine technology with a green initiative to create a truly interactive plant.

Here's a link to a short video of the sunflower in action!

Step 1: Prototyping

Prototyping is a very important step in any project.  Since our main goal of this project was to have the sunflower find and follow a light source, our first prototype was a simple single axis light finding machine.  This prototype consists of a seesaw like apparatus with a photoresistor on each end of the see saw.  We use a stepper motor to angle the seesaw towards the brightest source of light.  This is a simple mechanism where the goal is to get the two photoresistors to have the same value.  The motor will pull the seesaw from the end where the photoresistor has the higher value (more light), and stop when the sensor values are within an allowable range of each other.  In order to make sure the motors did not continue to pull past the limit of the seesaw mechanism, we used small momentary switches that we'll call "limit switches".  We programmed the Arduino so that the motors would not turn in a given direction if the limit had been reached.

We used a simple motor driver circuit with an SN754410 H-Bridge to run the motor in this prototype.  The motor was powered by a 6-volt lantern battery.

Here's a video of the prototype in action:

Step 2: Acrylic Base

Measure the flower pot inside diameter at the bottom and top of the pot.  Use these dimensions to design a base that fits inside the pot snugly.  Ours is made out of ¼” thick clear acrylic, and is composed of 3 circular parts and two flat-sided boxes.  The lower box holds the motors inside, and has bolt holes cut out for mounting the motors.  The upper box holds the PVC pipe fitting on both sides, which makes it nice and sturdy, providing a good support for the PVC stem. Cut out the parts on the laser cutter, using ¼” acrylic.  Make sure you do enough passes so that the laser cuts all the way through.

Assemble the case using the acrylic glue, making sure the parts are squared up snugly with each other; use a clamp to hold them in place while the glue sets.

We cut a hexagonal piece of acrylic that fits around the PVC hex fitting that holds it tightly and keeps it from spinning.

Step 3: Flower Petals

This step involves constructing petals for our flower.  We wanted to make petals that moved in response to some stimulus.  We also wanted to have the petals display a less robotic movement.  After some research on Shape Memory Alloys (SMA), Flexinol muscle wire was chosen as the material of choice.  When heated, Flexinol contracts to 3-5% of its length and returns as it cools.  It is a robust material that can be cycled millions of times and is easily controlled by Arduino.  Our favorite part about this material is the organic motion that it gives the flower!

The petals are constructed from a heavy card stock paper as the main support material.  The muscle wire is then attached to one side of the paper petal.  The circuit is completed using copper tape since it is flexible, solderable and generally easy to work with.  The Flexinol is crimped at both ends and soldered at the crimps to the copper tape.  Once in place, the wire can be sewn using a needle and thread to the paper.

When a current is passed through the Flexinol, it contracts, causing the petal to bend inward (on the side the wire is attached to).  As the wire cools, the paper stretches the wire out and the petal returns to its original shape.

We used a synthetic fabric to wrap the paper petals to give them a more aesthetically pleasing look.  This was done by cutting out a piece of fabric for the front that was slightly larger than the paper petal.  Fold the edges over and glue using a hot glue gun.  The back side of the petals was covered in the same manner, but using a piece of fabric that was the same size as the petal, for a nice clean fit.

Here's a video of our first test of the muscle wire petal:

Here's a video of all the muscle wire petals in action, mounted to the neck:

Step 4: Motor Mounts and Pulleys

In this step we laser cut some 1/4" acrylic for mounting the stepper motors to either side of the motor/circuit box.  We wanted to make sure the motors had strong mounts since there would be a fair amount of torque.  The motor mounts were then glued to the motor box with acrylic glue.

The next step was to laser cut some pulleys out of 1/8" acrylic.  The pulleys consisted of 3 pieces each.  An outer piece and an inner piece which were the same size.  These flanked the central piece which was slightly smaller diameter.  The outer and inner pieces were chamfered so the monofilament would not slide off the pulley.  These pieces were then attached with bolts and glued with acrylic glue.

Step 5: Neck and Face

We wanted our flower head to be able to move in the same way that a real sunflower moves--from front to back and side to side, bending at the neck, maintaining the organic ‘look’ of a real sunflower. In order to accomplish this, we brainstormed and created some prototypes that helped us visualize what the hinge mechanism would look like. Using copper tubing and bolts, we created a joint that hinges in two directions, but it didn’t have quite the fluidity that we wanted. Also, it was time consuming to make, and didn’t allow for wires or cables to pass through the center.

Enter SolidWorks and 3D printer. Solidworks is a 3D modeling program that allows you to design anything that you can imagine, and a 3D printer allows you to create, in 3D, a real, usable object. The design for the neck is similar to the prototype that we created with copper pipe, but is bigger (to allow wires to pass through), it has more segments (each segment is shorter) and the pivots are positioned at 45 degree intervals (to allow for more fluid motion).

The neck is made up of 7 identical links. These links are designed so that one end will fit inside the other and join using simple pins and holes.The entire neck and head are all printed at once, meaning no assembly required! *Be sure to allow enough clearance space between the pin and the hole so that the printer can place support material between them. If there is not enough space, the parts will melt together and will not move relative to each other.

Here's a quick clip of the neck prototype visualized in SolidWorks:

Step 6: Stem

The stem is what connects the flower pot and the electronics in it to the moving head and the sensors imbedded in it. It is made from 1-1/4" PVC pipe, 1/2" copper pipe and 1/4" acrylic. Designing the stem was probably the most challenging part of the project since the stem is multifunctional.  It houses the electronic wires (to control the petal movement and to carry signals from the proximity sensors and the photoresistors), the control cables (fishing line), and it houses the limit sliders.

To make the PVC part, cut it down to 12" in length, and cut 3mm wide grooves in the stem (tracks for the limit sliders) 9mm long using a cutoff saw. Our saw cut perfect width slots to fit the 1/8" acrylic. These slots must be 90 degrees away from each other and we chose to put them at different ends of the tube.

End Caps: The end caps are made from two pieces of 1/4" acrylic glued together. The outer diameter is the same on both, but the inner diameter on the inner piece is just big enough to slide over the end of the copper pipe, while the outer piece hole diameter is a bit smaller so that it doesn't slide over the pvc. With both end caps in place, the copper pipe is hels firmly in the middle.

Limit Sliders: The limit sliders are built using two pieces of acrylic.  The 1/4" piece is cut on the laser cutter and then shaped using sandpaper match the inside of the pvc. It has a slot in it to receive the 1/8" thick piece, which is glued in place. slide up and down in tracks cut into the PVC stem. On each end of the tracks, a momentary pushbutton is installed (with hot glue) so that as each limit slider arrives at the end of the track, it depresses the pushbutton. These buttons are wired up to the Arduino so that the program can turn off the motors when the neck reaches the end of its travel. Tie a 3 foot section of the  25lb test fishing line to each side of each limit slider, and install the sliders in the PVC tube and run the fishing line through the corresponding holes in the end caps.

Step 7: Control Circuits

Here are the two custom circuit boards that we designed for the project.  The first board handles the limit switches and the photo resistors.  There are 2 photoresistors and 2 limit switches per axis.  The axes are designated North/South and East/West.

The second board is a dual variable-voltage regulator with MOSFET switches to control the muscle wire petals.  This board serves two purposes.  The variable voltage regulator is needed because we have two different diameters of Flexinol muscle wire (200 um and 250 um), which require 11.5V / 600mA and 12V / 1A respectively.  Since the muscle wire pulls more current than the Arduino can handle (500 mA max), we use a MOSFET to turn on each circuit with the Arduino.

Step 8: Custom Wiring

We had to make several custom cables to make the project look nice and allow easy disassembly and reassembly.  We used mostly Cat-5 single stranded cable since it allowed for easy identification of sensors by color.  

We ended up using 4 power supplies, connecting all of their grounds to each other as well as the arduino and our control circuits.

Step 9: Assembly

This was the most challenging part of the process.  We had to fish all the cabling through the neck and stem (through the conduit), and then we neatly routed and secured it in the base.  The really difficult part was doing this while neatly routing the monofilament control line through the stem and attaching to the head and motors.  These series of pictures give a good idea of the general assembly process.

Step 10: Finishing Touches

To make our sunflower look real, we painted it and 'flocked' it. Flocking is the fuzzy stuff that you see on the surface of fake flowers or christmas decorations. This involves a few steps:
1. Masking - Taping off areas that you don't want to paint. We used plastic bags to cover the bigger areas (the pot and the flower head) and masking tape for the smaller areas.
2. Painting* - We used ordinary spay paint, with a few coats. While it was still wet, we applied the...
3. 'Flocking' - This stuff comes in a shaker bottle (similar to kitchen spices) and is sprinkled on the paint as it is drying. The instructions recommend using spray adhesive, but applying it directly to the wet paint worked perfectly.
4. Removing masking - When the paint has dried and you are done flocking, pull off the masking, being careful not to pull up the paint.
5. Touch up - Use a paintbrush or  a toothpick to paint in any areas that you missed with the spray paint.  We just sprayed the paint into a cup and used that to touch up. Remember to flock the areas that you touched up!

*Paint in a well-ventilated area, and wear proper saftey gear, like a respirator.

To make the mossy grass for the flower pot, we cut out a piece of cardstock paper so that it sits on top of the acrylic pase and fits inside the rim of the flower pot. We cut a hole in the middle for the stem and a slit from the outside to the center so that we could put it on and take it off. We then used hot glue (or hot goo, as we like to call it) to apply the moss to the paper.

Step 11: It's Alive!


It was a lot of work over the 6 week time period.  We have a few improvements we'd like to add to the sunflower.  We'd like to clean up the power supply situation.  We plan on using an ATX power supply harvested from an old desktop computer to avoid all the unnecessary AC to DC converters we're using now.  We would like to reduce the torque requirements from the motors by adding a gear drive to each of the motors.  The main issue we had requiring more torque was the use of a thermal camera in our prototype.  The sunflower's hardware and firmware currently support the use of a thermal camera to track warm objects (ie: humans and other mammals), but the added weight of the head with the camera mounted overpowered our motors.

We hope you have enjoyed our project as much as we have creating it!  Please post comments with questions/suggestions/etc as we would love some feedback!
Robot Challenge

Participated in the
Robot Challenge

Arduino Challenge

Participated in the
Arduino Challenge

Make It Real Challenge

Participated in the
Make It Real Challenge