 
 #include <TimeAlarms.h>

#include <TimeLib.h>


#include <Servo.h>
Servo servo;
int angle = 10;

void setup() {
  Serial.begin(9600);
  setTime(8,29,50,1,1,11); // Setting Time to Saturday 8:29:00am Jan 1 2011 (1)
  Alarm.alarmRepeat(8,30,0, MorningAlarm);  //(2)
  Alarm.alarmRepeat(8,31,0, EveningAlarm);  

 

  servo.attach(8);
  servo.write(angle);
}
void loop() 
{ 
  digitalClockDisplay();
  Alarm.delay(1000); // wait one second between clock display
 // scan from 0 to 180 degrees

}


//(3)
void MorningAlarm(){
  Serial.println("Alarm: - turn lights off");
  
    for(angle = 10; angle < 180; angle++)  
  {                                  
    servo.write(angle);               
    delay(5);                   
  } 
  // now scan back from 180 to 0 degrees
  for(angle = 180; angle > 10; angle--)    
  {                                
    servo.write(angle);           
    delay(5);       
  }
} 
      
  

void EveningAlarm(){
  Serial.println("Alarm: - turn lights off");
  
    for(angle = 10; angle < 180; angle++)  
  {                                  
    servo.write(angle);               
    delay(5);                   
  } 
  // now scan back from 180 to 0 degrees
  for(angle = 180; angle > 10; angle--)    
  {                                
    servo.write(angle);           
    delay(5);       
  } 
  }


void digitalClockDisplay()
{
  // digital clock display of the time
  Serial.print(hour());
  printDigits(minute());
  printDigits(second());
  Serial.println(); 
}


void printDigits(int digits)
{
  Serial.print(":");
  if(digits < 10)
    Serial.print('0');
  Serial.print(digits);
}
 
