Lab_interaccio/2014/secuenciador_luz/secuenciador_luz.ino

244 lines
7.7 KiB
Arduino
Raw Normal View History

2025-02-25 21:29:42 +01:00
//definicio de pins
#define p1 3
#define p2 5
#define p3 6
#define p4 9
#define p5 10
#define p6 11
////////////////////definicio de intensitat/temps
#define tloop 300
//#define tloop 300
////////POSTA t13 840
#define i1 250
#define t11 0
#define t12 0
#define t13 140
#define t14 1250
////////NIT
#define i2 200
#define t21 100
#define t22 840
#define t23 5420
#define t24 6250
////////ESTEL
#define i3 150
#define t31 2500
#define t32 4500
#define t33 5000
#define t34 5840
////////ALBA
#define i4 250
#define t41 5440
#define t42 6250
#define t43 6670
#define t44 7090
////////MATI
#define i5 250
#define t51 6670
#define t52 7500
#define t53 8320
#define t54 9580
////////TARDA t63 8740
#define i6 200
#define t61 7500
#define t62 7900
#define t63 10000
#define t64 10000
///////////////////////////////////////////////////
void setup(){
//pinMode(fadePin, OUTPUT);
Serial.begin(9600);
}
void loop(){
int tdelay=tloop/10;
int t=0;
//PIN 11111
int timerampup1 = t12-t11;
float timefadeup1 = timerampup1/i1;
int vup1=0;
float tauxup1=0;
int timerampdo1 = t14-t13;
float timefadedo1 = (float)timerampdo1/i1;
int vdo1=i1;
float tauxdo1=0;
//PIN222222
int timerampup2 = t22-t21;
float timefadeup2 = (float)timerampup2/i2;
int vup2=0;
float tauxup2=0;
int timerampdo2 = t24-t23;
float timefadedo2 = (float)timerampdo2/i2;
Serial.println(timefadedo2);
int vdo2=i2;
float tauxdo2=0;
//PIN333333
int timerampup3 = t32-t31;
float timefadeup3 = (float)timerampup3/i3;
int vup3=0;
float tauxup3=0;
int timerampdo3 = t34-t33;
float timefadedo3 = (float)timerampdo3/i3;
int vdo3=i3;
float tauxdo3=0;
//PIN444444
int timerampup4 = t42-t41;
float timefadeup4 = (float)timerampup4/i4;
int vup4=0;
float tauxup4=0;
int timerampdo4 = t44-t43;
float timefadedo4 = (float)timerampdo4/i4;
int vdo4=i4;
float tauxdo4=0;
//PIN555555
int timerampup5 = t52-t51;
float timefadeup5 = (float)timerampup5/i5;
int vup5=0;
float tauxup5=0;
int timerampdo5 = t54-t53;
float timefadedo5 = (float)timerampdo5/i5;
int vdo5=i5;
float tauxdo5=0;
//PIN666666
int timerampup6 = t62-t61;
float timefadeup6 = (float)timerampup6/i6;
int vup6=0;
float tauxup6=0;
int timerampdo6 = t64-t63;
float timefadedo6 = (float)timerampdo6/i6;
int vdo6=i6;
float tauxdo6=0;
while (t<10000){
//PIN 11111111
if (t<t11){
analogWrite(p1, 0);}
else if (t>=t11 & t<t12){
if (t>=t11+tauxup1){
analogWrite(p1,vup1+1);
vup1=vup1+1;
tauxup1=tauxup1+timefadeup1;}}
else if (t>=t12 & t<t13){
analogWrite(p1, i1);}
else if (t>=t13 & t<t14){
if (t>=t13+tauxdo1){
analogWrite(p1,vdo1-1);
vdo1=vdo1-1;
//Serial.println(vdo1);
tauxdo1=tauxdo1+timefadedo1;}}
else if (t>=t14){
analogWrite(p1, 0);}
//PIN2222222
if (t<t21){
analogWrite(p2, 0);}
else if (t>=t21 & t<t22){
if (t>=t21+tauxup2){
analogWrite(p2,vup2+1);
vup2=vup2+1;
tauxup2=tauxup2+timefadeup2;}}
else if (t>=t22 & t<t23){
analogWrite(p2, i2);}
else if (t>=t23 & t<t24){
if (t>=t23+tauxdo2){
analogWrite(p2,vdo2-1);
vdo2=vdo2-1;
Serial.println(vdo2);
tauxdo2=tauxdo2+timefadedo2;}
}
else if (t>=t24){
analogWrite(p2, 0);}
//PIN33333333
if (t<t31){
analogWrite(p3, 0);}
else if (t>=t31 & t<t32){
if (t>=t31+tauxup3){
analogWrite(p3,vup3+1);
vup3=vup3+1;
tauxup3=tauxup3+timefadeup3;}}
else if (t>=t32 & t<t33){
analogWrite(p3, i3);}
else if (t>=t33 & t<t34){
if (t>=t33+tauxdo3){
analogWrite(p3,vdo3-1);
vdo3=vdo3-1;
tauxdo3=tauxdo3+timefadedo3;}}
else if (t>=t34){
analogWrite(p3, 0);}
//PIN44444444
if (t<t41){
analogWrite(p4, 0);}
else if (t>=t41 & t<t42){
if (t>=t41+tauxup4){
analogWrite(p4,vup4+1);
vup4=vup4+1;
tauxup4=tauxup4+timefadeup4;}}
else if (t>=t42 & t<t43){
analogWrite(p4, i4);}
else if (t>=t43 & t<t44){
if (t>=t43+tauxdo4){
analogWrite(p4,vdo4-1);
vdo4=vdo4-1;
tauxdo4=tauxdo4+timefadedo4;}}
else if (t>=t44){
analogWrite(p4, 0);}
//PIN555555555
if (t<t51){
analogWrite(p5, 0);}
else if (t>=t51 & t<t52){
if (t>=t51+tauxup5){
analogWrite(p5,vup5+1);
vup5=vup5+1;
tauxup5=tauxup5+timefadeup5;}}
else if (t>=t52 & t<t53){
analogWrite(p5, i5);}
else if (t>=t53 & t<t54){
if (t>=t53+tauxdo5){
analogWrite(p5,vdo5-1);
vdo5=vdo5-1;
tauxdo5=tauxdo5+timefadedo5;}}
else if (t>=t54){
analogWrite(p5, 0);}
//PIN6666666666
if (t<t61){
analogWrite(p6, 0);}
else if (t>=t61 & t<t62){
if (t>=t61+tauxup6){
analogWrite(p6,vup6+1);
vup6=vup6+1;
tauxup6=tauxup6+timefadeup6;}}
else if (t>=t62 & t<t63){
analogWrite(p6, i6);}
else if (t>=t63 & t<t64){
if (t>=t63+tauxdo6){
analogWrite(p6,vdo6-1);
vdo6=vdo6-1;
tauxdo6=tauxdo6+timefadedo6;}}
else if (t>=t64){
analogWrite(p6, 0);}
delay(tdelay);
t = t + 1 ;}
}