Cientificosaficionados.com

Los foros de los científicos aficionados de la red.
Fecha actual Mar Oct 17, 2017 3:11 pm

Todos los horarios son UTC + 1 hora [ DST ]




Nuevo tema Responder al tema  [ 5 mensajes ] 
Autor Mensaje
NotaPublicado: Mié Ene 11, 2017 2:27 pm 
Desconectado
Avatar de Usuario

Registrado: Vie Oct 07, 2011 2:01 pm
Mensajes: 266
País: ESPAÑA
Ciudad: Alicante
Bueno, espero que pueda ser de ayuda al mayor numero de personas posible, quitando un error tonto
para poder alargar el tiempo de apertura. Por el resto la confirmación la devuelve OK.

Aquí os dejo el código.

long S=0; //Segundos transcurridos desde puesta en marcha. Pin 2 Pulsador.
long CV=0; //Contador ciclos del programa. Pin 3 Final de carrera apertura.
byte EP=0; //Estado puerta 1 para abierta 0 para cerrada. Pin 4 Final de carrera cierre.
long TIA=0; //Tiempo inicio apertura. Pin 5 Final de carrera cierre.
byte TRA=90; //Tiempo recorido apertura. Pin 10 Motor apertura.
byte TA=90; //Tiempo puerta abierta. Pin 11 Cerradura.
long TIC=0; //Tiempo inicio de cierre. Pin 12 Motor cierre.
byte TRC=90; //Tiempo recorrido cierre. Pin 13 Señal aviso marcha.
byte TRCC=3; //Tiempo recorrido cierre para el cerrojo.
byte TC=5; //Tiempo cerrojo.
byte TSA=10; //Tiempo señal de aviso puesta en marcha.
int TVC=900; //Tiempo verificacion cierre.
byte TPVC=0; //Tiempo proxima verificacion cierre.
int SP=0; //Segudos pulsador.
int TIPA=0; //Tiempo incremeto puerta abierta.

void setup()
{
for(byte i=1;i<6;i++){pinMode(i,INPUT);}
for(byte i=14;i>9;i--){pinMode(i,OUTPUT);}
}

void loop() {

//RELOJ CONTADOR DE SEGUNDOS
CV++;
if(CV>=160000){S++;CV=0;}

// TIEMPO INCREMENTO PUERTA ABIERTA
SP=-10;
//TIPA=SP*900; // Por algún motivo que desconosco cuando activo esta orden genera un error.


//SECUENCIA APERTURA PUERTA
if(digitalRead(2)==1&&EP==0){EP=1;TIA=S;TIC=2140000000;digitalWrite(13,HIGH);digitalWrite(10,LOW);digitalWrite(12,LOW);}
if(S=TIA+TSA){digitalWrite(10,LOW);digitalWrite(11,HIGH);digitalWrite(12,HIGH);}
if(S=TIA+TSA+TRCC){digitalWrite(12,LOW);digitalWrite(10,HIGH);}
if(S=TIA+TSA+TC){digitalWrite(11,LOW);}
if(S=TIA+TSA+TRCC+TRA){digitalWrite(10,LOW);digitalWrite(13,LOW);}
if(S=TIA+TSA+TRCC+TRA+TA+TIPA){digitalWrite(13,HIGH);}
if(S=TIA+TSA+TRCC+TRA+TA+TIPA+TSA){digitalWrite(10,LOW);digitalWrite(12,HIGH);}
if(S=TIA+TSA+TRCC+TRA+TA+TIPA+TSA+TRC){digitalWrite(10,LOW);digitalWrite(12,LOW);digitalWrite(13,LOW);SPP=0;}

//CONTROL PULSADOR PULSADO
while(digitalRead(2)==1){
//RELOJ CONTADOR DE SEGUNDOS
CV++ ;
if(CV>=160.000){S++;CV=0;SP++;}
//CONTROL FINALES DE CARRERA
if(digitalRead(3)==1){digitalWrite(10,LOW);digitalWrite(13,LOW);}
if(digitalRead(4)==1||digitalRead(5)==1){TIC=TRCC+S;if(S==TIC){digitalWrite(12,LOW);EP=0;}}
//CONTROL PUERTA CERRADA
if(digitalRead(4)==0 && digitalRead(5)==0 && EP==0 && S==TPVC ){TPVC=S+TVC;digitalWrite(12,HIGH);}
}

//SECUENCIA CIERRE PUERTA
if(digitalRead(2)==1&&EP==1){EP==0;TIC=S;TIA=2140000000;digitalWrite(13,HIGH);digitalWrite(10,LOW);digitalWrite(12,LOW);}
if(S=TIC+TSA){digitalWrite(10,LOW);digitalWrite(12,HIGH);}
if(S=TIC+TSA+TRC){digitalWrite(10,LOW);digitalWrite(12,LOW);digitalWrite(13,LOW);}

//CONTROL FINALES DE CARRERA
if(digitalRead(3)==1){digitalWrite(10,LOW);digitalWrite(13,LOW);}
if(digitalRead(4)==1||digitalRead(5)==1){TIC=TRCC+S;if(S==TIC){digitalWrite(12,LOW);EP=0;}}

//CONTROL PUERTA CERRADA
if(digitalRead(4)==0 && digitalRead(5)==0 && EP==0 && S==TPVC ){TPVC=S+TVC;digitalWrite(12,HIGH);}

//CONTROL PULSADOR PULSADO
while(digitalRead(2)==1){
//RELOJ CONTADOR DE SEGUNDOS
CV++;
if(CV>=160.000){S++;CV=0;}
//CONTROL FINALES DE CARRERA
if(digitalRead(3)==1){digitalWrite(10,LOW);}
if(digitalRead(4)==1||digitalRead(5)==1){TIC=TRCC+S;if(S==TIC){digitalWrite(12,LOW);EP=0;}}
//CONTROL PUERTA CERRADA
if(digitalRead(4)==0 && digitalRead(5)==0 && EP==0 && S==TPVC ){TPVC=S+TVC;digitalWrite(12,HIGH);}
}
}


Arriba
 Perfil  
 
NotaPublicado: Jue Ene 12, 2017 12:26 am 
Desconectado
Avatar de Usuario

Registrado: Lun Mar 29, 2010 11:47 am
Mensajes: 1606
País: España
Ciudad: Alcorcón Madrid
Vicen escribió:
//TIPA=SP*900; // Por algún motivo que desconozco cuando activo esta orden genera un error.
Curiosamente, a mí me daba error esta otra línea:
int SP=0; //Segundos pulsador.

error escribió:
sketch_jan11a:13: error: expected unqualified-id before 'volatile'
sketch_jan11a:13: error: expected `)' before 'volatile'
sketch_jan11a:13: error: expected `)' before 'volatile'


Parece ser que ese tipo de error lo da cuando usamos como nombre de variable una palabra reservada. Al cambiarle el nombre a la variable ha desaparecido el problema.

_________________
Qué bien y qué pronto, le dijo la tonta al tonto.


Arriba
 Perfil  
 
NotaPublicado: Jue Ene 12, 2017 1:08 am 
Desconectado
Avatar de Usuario

Registrado: Vie Oct 07, 2011 2:01 pm
Mensajes: 266
País: ESPAÑA
Ciudad: Alicante
Gracias Troglodita, Pero esa fue la primera causa que contemple y ni si quiera anulando esa variable y creando nuevas funcionaba.Pero si a ti te funciona. sera algo interno de mi ordenador lo de la variable SP fue un cambio de ultima hora viendo que podía abreviar un poquito mas en su origen era SPP.

Y te deseo que seas un mal negocio para los médicos y los señores de la PARCA.


Arriba
 Perfil  
 
NotaPublicado: Jue Ene 12, 2017 11:19 pm 
Desconectado
Avatar de Usuario

Registrado: Lun Mar 29, 2010 11:47 am
Mensajes: 1606
País: España
Ciudad: Alcorcón Madrid
Vicen escribió:
sera algo interno de mi ordenador
En un foro a alguien le pasaba lo mismo y era por usar una palabra reservada, pero curiosamente tenía dos placas Arduino de distintos modelos; dependiendo de cuál de las dos tuviera seleccionadas en la configuración le daba error o no. :?:

_________________
Qué bien y qué pronto, le dijo la tonta al tonto.


Arriba
 Perfil  
 
NotaPublicado: Vie Ene 13, 2017 2:49 pm 
Desconectado
Avatar de Usuario

Registrado: Vie Oct 07, 2011 2:01 pm
Mensajes: 266
País: ESPAÑA
Ciudad: Alicante
Error subsanado, he hecho la comprobación en otro ordenador y da ok en todas las comprobaciones. Ahora estoy en el accionamiento a distancia mediante wifi, he encontrado un programa que lo hace y estoy en la adaptación de los dos, lo que me esta costando es encontrar información sobre la librería WIFI para poder interpretar las ordenes del mismo.


Arriba
 Perfil  
 
Mostrar mensajes previos:  Ordenar por  
Nuevo tema Responder al tema  [ 5 mensajes ] 

Todos los horarios son UTC + 1 hora [ DST ]


¿Quién está conectado?

Usuarios navegando por este Foro: No hay usuarios registrados visitando el Foro y 1 invitado


No puede abrir nuevos temas en este Foro
No puede responder a temas en este Foro
No puede editar sus mensajes en este Foro
No puede borrar sus mensajes en este Foro

Buscar:
Desarrollado por phpBB® Forum Software © phpBB Group
Traducción al español por Huan Manwë para phpbb-es.com