This micro-project explores a possible physical-output of a single hobby Servo connected to an Arduino. A narrative approach was taken to demonstrate a real-life use for an automated blind system. Using construction paper, wire, string and foam-core, I was able to develop a simple Venetian-blind system that can be operated by the wiggling 180 degree motion of programmed arm on the Servo. There is a lot of potential with this kind of object and software/hardware as the time it is opened and closed as well as the angle to which it is opened can be determined by factors relating to daily sunlight and user comfort. In the context of a smart home, this automated gadget can adjust to shade an interior from the sun or open to let in radiant heat or a breeze.
</code> <code></pre> #include <Servo.h> const int SERVO_PIN = 9; Servo wiggling_servo; void setup(void) { Serial.begin(115200); wiggling_servo.attach(SERVO_PIN); } void loop(void) { for (int i = 0; i < 4; i = i+1) { const float center = 90.0; // in degrees const float magnitude = 90.0; // in degrees const float period = 4.0; // in seconds, duration of cycle const float interval = 0.1; // in seconds, duration of each step int cycle_steps = period / interval; for (int step = 0; step < cycle_steps; step++) { float phase = step * (2*M_PI/cycle_steps); float angle = center + magnitude * sin(phase); wiggling_servo.write(angle); delay(1000*interval); } } Serial.println("cycle done."); } <pre></code> <code>
Leave a Reply
You must be logged in to post a comment.