New things! Everything is progressing nicely. Did additional testing on the 230VAC detection circuit and wrote software to read SHT31 digital humidity/temperature sensors. Also added a ClosedLoop function so analog inputs can be used to compare to store values and have an outputs act on the comparison.
230VAC detection
Finally I had the time to properly measure the mains voltage inputs. No shorts or anything… So I decided to go on and plug in the mains voltage into the Artemis.
The 230VAC detection circuit is connected to D48 (ICP5 on the Arduino), which mean I could potentially measure the exact frequency of the mains AC voltage. Still, I do not require to have that, so instead I built a simple timer that resets if the phase comes up, and counts down if the phase disappears. This way I always have a stable reading on the signal, even when the Artemis accidentally measures on an exact phase zero crossing.
if (digitalRead(PIN_230V_DETECT) == LOW) // Active? Reset Timer.
{
TIM_50HzDetect = 10;
}
else
{
if (TIM_50HzDetect) // Not active -> count 2 zero and stay.
{
TIM_50HzDetect--;
}
}
Read more »
Posted in Automation, Paludarium
Tagged 230VAC detection, 50Hz detect, 60Hz detect, AC voltage detection, Artemis, closed loop, closedloop, closedLoop(), humidity sensor, I2C, I2C sensor, mains detection, paludarium, paludarium controller, SHT31, SHT31 sensor, temperature sensor
Hi Loek! Kan zeker, misschien wel handig om even te wachten totdat in ieder geval de hardware is opgebouwd en…