Using the particle console, the desired rotation angle of the servo can be input. The servo pulls on a fishing wire which pulls on a set of linkages, changing how much the flower opens or closes. based on how much the wire is pulled.
For this skill development exercise, I decided to use the servo directly on the prototype mechanism I designed for my team's final project. Getting the servo itself setup and running was smooth, I just had to make sure that it was powered by an external 5V supply to run properly. Prior to using a servo and my final project mechanism, I had tried using solenoids instead. For some reason, even though I would be able to get the solenoids to trigger, they never pulled hard enough to actually pull the piston shaft back. I know the electromagnets are powered because pushing the shaft down causes it to stay instead of being sprung back up by the spring, but the coils themselves aren't generating enough force to go against the spring. I have tried both a 12V and 5V solenoid, using external 12V and 5V supplies respectively and even trying the 12V supply on the small 5V solenoid to no avail, all with the same issue. My guess is that somehow it's not drawing enough current, probably being limited by the transistor in some way.
I learned that solenoids need a ton of current to work properly, and they also get very hot. Servos and motors are very easy to control with libraries, managing all the PWM clocks and triggers in the background.
Working with my final project mechanism in particular, I learned that fishing wire was a lot more fragile than expected, as the servo I used was able to snap the wire a few times from turning too far. This unfortunately resulted in a lot of time spent repairing the mechanism.
You can upload files of up to 20MB using this form.