here is the code I have written so far:
// Printhead Gram
int PrintheadPin = 13; // PRINTHEAD connected to digital pin 13
//Crank Gram
int FatmotorPin = 12; // PRINTHEAD connected to digital pin 13
// Slide Projector
#include <buttons.h>
#include <Servo.h>
Button B;
Servo myservo; // create servo object to control a servo
int pos = 0; // variable to store the servo position
//8mm Projector - Twins
#include <Servo.h>
Servo projectorservo; // create servo object to control a servo
int potpin = 0; // analog pin used to connect the potentiometer
int val; // variable to read the value from the analog pin
//8mm Projector - Blind man
#include <Servo.h>
Servo projectorservo2; // create servo object to control a servo
int potpin2 = 1 ; // analog pin used to connect the potentiometer
int val2; // variable to read the value from the analog pin
void setup()
// Printhead gram
{
{
pinMode(PrintheadPin, OUTPUT); // sets the digital pin as output
}
// Slide Projector
{
B.assign(7);
B.setMode(OneShotTimer);
B.setTimer(1500);
B.setRefresh(500);
myservo.attach(9); // attaches the servo on pin 9 to the servo object
}
//Crank gram
{
pinMode(FatmotorPin, OUTPUT); // sets the digital pin as output
}
// 8mm Projector - Twins
{
projectorservo.attach(10); // attaches the servo on pin 9 to the servo object
}
// 8mm Projector - Blind man
{
projectorservo2.attach(11); // attaches the servo on pin 9 to the servo object
}
}
void loop()
{
//Printhead gram
{
digitalWrite(PrintheadPin, HIGH); // sets the PRINTHEAD on
delay(4000); // waits for 4 seconds
digitalWrite(PrintheadPin, LOW); // sets the PRINTHEAD off
delay(180000); // waits for 1:80
}
//Crank gram
{
digitalWrite(FatmotorPin, HIGH); // sets the PRINTHEAD on
delay(200000); // waits for 2 minutes
digitalWrite(FatmotorPin, LOW); // sets the PRINTHEAD off
delay(180000); // waits for 1:80
}
// Slide Projector
switch(B.check()) {
case ON:
for(pos = 0; pos < 20; pos += 1) // goes from 0 degrees to 20 degrees
{
myservo.write(pos); // tell servo to go to position in variable 'pos'
delay(200);
}
for(pos = 0; pos < 20; pos += 1) // goes from 0 degrees to 20 degrees
{
myservo.write(pos); // tell servo to go to position in variable 'pos'
delay(200);
}
for(pos = 0; pos < 20; pos += 1) // goes from 0 degrees to 20 degrees
{
myservo.write(pos); // tell servo to go to position in variable 'pos'
delay(200);
}
for(pos = 0; pos < 20; pos += 1) // goes from 0 degrees to 20 degrees
{
myservo.write(pos); // tell servo to go to position in variable 'pos'
delay(200);
}
for(pos = 0; pos < 20; pos += 1) // goes from 0 degrees to 20 degrees
{
myservo.write(pos); // tell servo to go to position in variable 'pos'
delay(200);
}
for(pos = 0; pos < 20; pos += 1) // goes from 0 degrees to 20 degrees
{
myservo.write(pos); // tell servo to go to position in variable 'pos'
delay(200);
}
for(pos = 0; pos < 20; pos += 1) // goes from 0 degrees to 20 degrees
{
myservo.write(pos); // tell servo to go to position in variable 'pos'
delay(200);
}
for(pos = 0; pos < 20; pos += 1) // goes from 0 degrees to 20 degrees
{
myservo.write(pos); // tell servo to go to position in variable 'pos'
delay(200);
}
for(pos = 0; pos < 20; pos += 1) // goes from 0 degrees to 20 degrees
{
myservo.write(pos); // tell servo to go to position in variable 'pos'
delay(200);
}
for(pos = 0; pos < 20; pos += 1) // goes from 0 degrees to 20 degrees
{
myservo.write(pos); // tell servo to go to position in variable 'pos'
delay(200);
}
for(pos = 0; pos < 20; pos += 1) // goes from 0 degrees to 20 degrees
{
myservo.write(pos); // tell servo to go to position in variable 'pos'
delay(200);
}
for(pos = 0; pos < 20; pos += 1) // goes from 0 degrees to 20 degrees
{
myservo.write(pos); // tell servo to go to position in variable 'pos'
delay(200);
}
for(pos = 0; pos < 20; pos += 1) // goes from 0 degrees to 20 degrees
{
myservo.write(pos); // tell servo to go to position in variable 'pos'
delay(200);
}
for(pos = 0; pos < 20; pos += 1) // goes from 0 degrees to 20 degrees
{
myservo.write(pos); // tell servo to go to position in variable 'pos'
delay(200);
}
for(pos = 0; pos < 20; pos += 1) // goes from 0 degrees to 20 degrees
{
myservo.write(pos); // tell servo to go to position in variable 'pos'
delay(200);
}
for(pos = 0; pos < 20; pos += 1) // goes from 0 degrees to 20 degrees
{
myservo.write(pos); // tell servo to go to position in variable 'pos'
delay(200);
}
for(pos = 0; pos < 20; pos += 1) // goes from 0 degrees to 20 degrees
{
myservo.write(pos); // tell servo to go to position in variable 'pos'
delay(200);
}
for(pos = 0; pos < 20; pos += 1) // goes from 0 degrees to 20 degrees
{
myservo.write(pos); // tell servo to go to position in variable 'pos'
delay(200);
}
for(pos = 0; pos < 20; pos += 1) // goes from 0 degrees to 20 degrees
{
myservo.write(pos); // tell servo to go to position in variable 'pos'
delay(200);
}
for(pos = 0; pos < 20; pos += 1) // goes from 0 degrees to 20 degrees
{
myservo.write(pos); // tell servo to go to position in variable 'pos'
delay(200);
}
for(pos = 0; pos < 20; pos += 1) // goes from 0 degrees to 20 degrees
{
myservo.write(pos); // tell servo to go to position in variable 'pos'
delay(200);
}
for(pos = 0; pos < 20; pos += 1) // goes from 0 degrees to 20 degrees
{
myservo.write(pos); // tell servo to go to position in variable 'pos'
delay(200);
}
for(pos = 0; pos < 20; pos += 1) // goes from 0 degrees to 20 degrees
{
myservo.write(pos); // tell servo to go to position in variable 'pos'
delay(200);
}
for(pos = 0; pos < 20; pos += 1) // goes from 0 degrees to 20 degrees
{
myservo.write(pos); // tell servo to go to position in variable 'pos'
delay(200);
}
for(pos = 0; pos < 20; pos += 1) // goes from 0 degrees to 20 degrees
{
myservo.write(pos); // tell servo to go to position in variable 'pos'
delay(200);
}
for(pos = 0; pos < 20; pos += 1) // goes from 0 degrees to 20 degrees
{
myservo.write(pos); // tell servo to go to position in variable 'pos'
delay(200);
}
for(pos = 0; pos < 20; pos += 1) // goes from 0 degrees to 20 degrees
{
myservo.write(pos); // tell servo to go to position in variable 'pos'
delay(200);
}
for(pos = 0; pos < 20; pos += 1) // goes from 0 degrees to 20 degrees
{
myservo.write(pos); // tell servo to go to position in variable 'pos'
delay(200);
}
for(pos = 0; pos < 20; pos += 1) // goes from 0 degrees to 20 degrees
{
myservo.write(pos); // tell servo to go to position in variable 'pos'
delay(200);
}
for(pos = 0; pos < 20; pos += 1) // goes from 0 degrees to 20 degrees
{
myservo.write(pos); // tell servo to go to position in variable 'pos'
delay(200);
}
for(pos = 0; pos < 20; pos += 1) // goes from 0 degrees to 20 degrees
{
myservo.write(pos); // tell servo to go to position in variable 'pos'
delay(200);
}
for(pos = 0; pos < 20; pos += 1) // goes from 0 degrees to 20 degrees
{
myservo.write(pos); // tell servo to go to position in variable 'pos'
delay(200);
}
for(pos = 0; pos < 20; pos += 1) // goes from 0 degrees to 20 degrees
{
delay(200);
myservo.write(pos); // tell servo to go to position in variable 'pos'
delay(49000); // delays the servo at 20 degrees
myservo.write(20); // puts the servo at 20 in a stable manner
break;
}
// 8mm Projector - Twins
{
val = analogRead(potpin); // reads the value of the potentiometer (value between 0 and 1023)
val = map(val, 0, 1023, 0, 50); // scale it to use it with the servo (value between 0 and 180)
projectorservo.write(val); // sets the servo position according to the scaled value
delay(0);
}