Paso 5: Software
Para compilar el software para este combinado IR y K tipo de módulo con termopar que es necesario primero instalar tres 3 bibliotecas. La biblioteca de pfodIRTemp para el sensor de temperatura del IR, la biblioteca de pfodMAX31855 para el módulo de termopar de tipo K de Adafruit, la biblioteca pollingAnalogRead para el control de voltaje de la batería. Después de instalar estas 3 bibliotecas puede compilar el bosquejo CombinedIRTypeK.ino .
Freetronics Adafruit suministro y bibliotecas para el sensor de infrarrojos y el módulo de termopar de tipo K, respectivamente. Sin embargo estas bibliotecas utilizan bucles de espera y retrasos para recoger las lecturas, aunque los retrasos en la biblioteca de termopar de tipo K Ardafruit son pequeños. Uso de estas bibliotecas bloquearía la FioV3 de manejo pfod comandos y el envío de respuestas cada vez que hacían una lectura de temperatura.
Para superar esto y para mantener la FioV3 sensible a las comunicaciones de bluetooth/wifi escribí nuevas bibliotecas que se evitan usando bucles de espera y retrasos.
Como se señaló anteriormente la Junta de FioV3 incluye un cargador de batería. El código de este módulo también incluye a un monitor de voltaje de la batería para que sean alertados cuando el módulo debe ser conectado a la USB para recargar la batería. Leyendo el voltaje de la batería requiere una conversión A/D, pero el método AnalogRead() proporcionado por el estándar código de Arduino tiene dos fallos. Uno bloquea el bucle principal cuando un AnalogRead() se lleva a cabo típicamente 15 22mS retraso para cada AnalogRead(). La segunda falla es que la biblioteca estándar de Arduino no descarta el primer resultado después de la tensión de referencia ha cambiado, según lo recomendado por la pajina de Atmel para los procesadores micro utilizados por Arduino. La biblioteca de pollingAnalogRead soluciona los problemas de ambos y es utilizado por este software.
Calibración de medición de batería
El voltaje de referencia para el ADC tiene amplia tolerancia (+-10%), entonces la medida de voltaje de la batería necesita calibrarse. En mi caso me mide 4.14V para cuentas de 586, es decir, cuentas * 0.0071 == voltios. Así cuenta un corte voltaje de 3.6V = 510. Debajo de este el menú mostrará "Recargue ahora" \
Conclusión
Completa esta compilación.