Anti-Phone Woodpecker

For my stupid pet trick, I made a woodpecker that pecks the phones. The concept is that the woodpecker does not like the phones because they make people anti-social. Here is the video of my product:

And here is the coding for the woodpecker to peck.

#include <Servo.h> 
 
Servo myservo;  // create servo object to control a servo 
                // twelve servo objects can be created on most boards
 
int pos = 0;    // variable to store the servo position 
int mySwitch = 2;

void setup() 
{ 
  pinMode(mySwitch, INPUT);
  myservo.attach(9);  // attaches the servo on pin 9 to the servo object 
} 
 
void loop() 
{ 
  if (digitalRead(mySwitch == HIGH)) {
  for(pos = 0; pos <= 180; pos += 1) // goes from 0 degrees to 180 degrees 
  {                                  // in steps of 1 degree 
    myservo.write(pos);              // tell servo to go to position in variable 'pos' 
    delay(1);                       // waits 1ms for the servo to reach the position 
  } 
  for(pos = 180; pos>=0; pos-=1)     // goes from 180 degrees to 0 degrees 
  {                                
    myservo.write(pos);              // tell servo to go to position in variable 'pos' 
    delay(1);                       // waits 1ms for the servo to reach the position 
  }
  } else {
    myservo.write(0);
  } 
} 

I used an example that is provided by arduino, and changed the delay time so that the woodpecker pecks frequently enough.

Here, I tried creating a switch in a way that the woodpecker only clicks when the switch is closed. However, it did not work. I think that using an if else statement is correct, but misery.write(0) does not work as I think it does. I should be able to find out how I can do about it, but for now, I need to do other things so I cannot allocate the time to improving this product.

 

 

Leave a Reply