Cliente de tiempo de Internet Arduino (8 / 10 paso)

Paso 8: Estándar vs horario

Construido este bosquejo para el tiempo actual, y estamos a tiempo de ahorro de luz diurna, que es GMT -4. Cuando cambia de nuevo a hora estándar (GMT -5), el código del reloj debe ser editado y re subido, así que vamos a añadir un interruptor para eliminar ese dolor de cabeza.

En primer lugar, necesitamos leer un switch para determinar el formato, entonces necesitamos cambiar un código basado en los resultados de que leer.

Vamos a utilizar pin 6 del interruptor, como el escudo de Ethernet se utiliza pines 4, 10, 11, 12 y 13.

Conectar un interruptor entre pin 6 y masa. Usted no necesita una resistencia de pullup, pues utilizaremos un integrado en el arduino usando el comando INPUT_PULLUP.

Para hacer este trabajo, usted necesita RESET o ciclo de alimentación de tu Arduino entre cambios, como el código del interruptor no está en bucle vacío.

Aquí está el código afectado tal y como actualmente está:

/ * Seleccione el desplazamiento (en segundos) a su hora local
Este ejemplo es GMT - 4 * /
const timeZoneOffset largo =-14400 L;

cambiar a / * Seleccione el desplazamiento (en segundos) a su hora local
Este ejemplo es GMT - 4 * /
largo timeZoneOffset;

Agregar esto antes de instalación de vacío:

Interruptor de horario de verano
int dstPin = 6;   interruptor conectado al pin digital 5
int dstVal = 0;     variable para almacenar el valor leído

y cambiar la función de getTimeAndDate() int entero con el código siguiente:

No altera esta función, es utilizado por el sistema
int getTimeAndDate() {}

Interruptor de zona horaria

pinMode (dstPin, INPUT_PULLUP);      pone el pin digital 6 como entrada y activa Levante resistencia
dstVal = digitalRead(dstPin);   leer la entrada de pin
Si (dstVal == 1) {}
timeZoneOffset =-14400 L;
} else {}
timeZoneOffset =-18000 L;
}

int bandera = 0;
UDP.Begin(localPort);
sendNTPpacket(timeServer);
Delay(1000);
Si (Udp.parsePacket()) {}
UDP.Read(packetBuffer,NTP_PACKET_SIZE);  Lea el paquete en el buffer
highWord largo sin firmar, lowWord, época;
highWord = palabra (packetBuffer [40], packetBuffer[41]);
lowWord = palabra (packetBuffer [42], packetBuffer[43]);
época = highWord << 16 | lowWord;
época = época - 2208988800 + timeZoneOffset;
bandera = 1;
setTime(epoch);
ntpLastUpdate = now();
}
regresar de bandera;
}

Artículos Relacionados

Conducir a una página web en tiempo real usando Arduino, SensorMonkey y Processing.js

Conducir a una página web en tiempo real usando Arduino, SensorMonkey y Processing.js

visualización remota de datos en tiempo real.Este tutorial describe detalladamente cómo utilizar el servicio gratuito de SensorMonkey para datos de los sensores en tiempo real push desde un Arduino a una página web para la visualización con Processin
Domótica inteligente con Android + Ethernet Internet + Arduino

Domótica inteligente con Android + Ethernet Internet + Arduino

Domótica se convierte cada vez más popular y asequible y fascina a la gente. Internet ofrece tales posibilidades como nunca antes. Impresiona a tus amigos mostrando el Smartphone que puede activar/desactivar la lámpara en sus millas Apartamento lejos
El Gizmo de Internet Arduino

El Gizmo de Internet Arduino

el Arduino Internet Gizmo es un dispositivo USB, Arduino y RFID para navegación web.  El cacharrito funciona mediante la colocación de una etiqueta RFID en la parte superior el gizmo.  El gizmo lee la etiqueta de RFID y envía el número de etiqueta ví
Reloj de tiempo Real de Arduino con alarma y sensores ambientales

Reloj de tiempo Real de Arduino con alarma y sensores ambientales

Reloj de Arduino, con respaldo de batería (reloj en tiempo real), tiempo, fecha, alarma, temperatura, humedad, presión, LCD, salida, entrada de teclado, dormir modo, blanco de iluminación (4 X) LED LCD con control de intensidadPaso 1: Lista de piezas
Reloj en tiempo Real de Arduino DS3231 con color TFT

Reloj en tiempo Real de Arduino DS3231 con color TFT

Construcción de un reloj de tiempo real con un pantalla TFT a color es muy fácil utilizando Arduino. La pantalla muestra la hora, la fecha, la temperatura del currect a lo largo de la temperatura MAX y MIN que ha medido. Vamos a construirlo!Paso 1: O
Internet Arduino controlado ranura en T XY mesa

Internet Arduino controlado ranura en T XY mesa

esto es ridículamente fácil (en términos de uso de la herramienta de poder - vea abajo) manera de hacer una precisión inferior tabla XY.  Con la amplia disponibilidad de la T-ranura extrusiones en Amazon y Ebay y utilizando simples mejoras para el ho
Ploteo de datos en tiempo real de Arduino usando Python (matplotlib)

Ploteo de datos en tiempo real de Arduino usando Python (matplotlib)

Arduino es fantástico como un intermediario entre tu ordenador y un circuito electrónico crudo. Usando la interfaz serial, puede recuperar información de los sensores conectados a su Arduino. (También puede enviar información a través de la interfaz
Registro de temperatura en tiempo real con Arduino, NodeJS y Plotly!

Registro de temperatura en tiempo real con Arduino, NodeJS y Plotly!

La motivación para este proyecto surgió después de leer sobre el deseo de Zuckerberg para crear una casa inteligente para uno de sus proyectos de 2016. Siendo yo había intrigado, quería tratar de implementar una aplicación de registro de temperatura
Monitor de tiempo simple utilizando Arduino + Ubuntu

Monitor de tiempo simple utilizando Arduino + Ubuntu

Bueno, hace un año, empecé a pensar en cómo el tiempo de seguimiento. Utilizando la forma simple, precisa como como es necesario y posible acceder desde cualquier lugar mediante internet. La propuesta es medir la temperatura (celsius), humedad (%) y
Registrador de eventos de tiempo basados en Arduino

Registrador de eventos de tiempo basados en Arduino

Código fuente de ejemplo para un Arduino basado en registrador de datos de tiempo transcurrido el evento.  Muestra interrupciones, registro asincrónico y contacto de rebotan.  Destinados a un interruptor de posición de rueda, registra tiempo en el qu
Servidor de tiempo Web de Arduino

Servidor de tiempo Web de Arduino

Objetivo de este instructable para conseguir saber usar shield Ethernet para diversas aplicaciones, se trata de una de las aplicaciones, en esto podemos medir temperatura, humedad, intensidad de la luz, presión.Muestra el estado actual y registros de
Guía simple para el ajuste de hora en un reloj DS3231/DS3107/DS1337 en tiempo Real con Arduino UNO

Guía simple para el ajuste de hora en un reloj DS3231/DS3107/DS1337 en tiempo Real con Arduino UNO

El DS3231 es un altamente exacto, ampliamente utilizado Real Time Clock (RTC), como sus contrapartes ligeramente menos precisas, DS3107 y DS1337. Antes de que puede ser útil, sin embargo, debe ajustarse la hora correcta. Este Instructable es estricta
Lectura de entradas analógicas en tiempo Real utilizando Arduino y trazar usando LabVIEW

Lectura de entradas analógicas en tiempo Real utilizando Arduino y trazar usando LabVIEW

Cuando estaba haciendo mis proyectos uno de la parte fue lectura de datos analógicos y lo trazado. Desde entonces he no encontrado ningún artículo o instructable con material confiable hacerlo pensé en escribir los pasos que finalmente utilicé para r
Reloj en tiempo real de Arduino usando el Ds1302

Reloj en tiempo real de Arduino usando el Ds1302

Esta semana he decidido que quiero construir un reloj. Quiero un reloj quesiempre el momento adecuado para que eso necesito un componente que puede hacer que algunas investigaciones y encontré el ds1302.Paso 1: Ver el videoHice un video en YouTube do