Introducción
En este post, se verá cómo leer el tiempo desde que la placa PLC basada en Arduino comenzó a ejecutarse con la función millis(). Básicamente esta función devuelve el número de milisegundos desde que el controlador comenzó a ejecutar el programa actual. Esta función es realmente útil cuando se quiere controlar el proceso comparando el tiempo
*Este valor se desbordará después de 50 días aproximadamente
Requisitos
Ethernet o 20 I/Os PLC: Ethernet PLC 20 I/Os PLC
Placas de Industrial Shields: Placas de Industrial Shields:
Función
time = millis();
Parametros
Nada
Retorno
Longitud sin signo de milisegundos desde el inicio del programa del controlador
Ejemplo
Ejemplo de código, parpadeo de una salida analógica:
unsigned long actualtime = 0; unsigned long beforetime = 0; unsigned long deltatime = 1000; bool laststate = true; void setup() { Serial.begin(9600); pinMode(Q0_0, OUTPUT); } void loop() { //Save actual time on actualtime variable actualtime = millis(); //Compare if it have passed a second if (actualtime - beforetime >= deltatime){ if (laststate){ //Digital output at HIGH position digitalWrite(Q0_0, HIGH); laststate = false; } else{ //Digital output at LOW position digitalWrite(Q0_0, LOW); laststate = true; } //Set beforetime to the actual value of microseconds beforetime = millis(); } }