Pokojový teploměr
Každých 10 sekund přečte hodnotu z adresy senzoru a vypíše ji na displej. Pro okrasu je zde i malá uvítací animace při zapnutí teploměru.
Cílem tohoto projektu bylo vyvinout bezpečnostní systém, který využívá světelnou závoru a zvukový alarm k monitorování a zabezpečení prostoru při průchodu osob. Systém byl navržen tak, aby byl umístěn u dveří a při zaznamenání průchodu osoby spustil zvukový alarm na dobu 3 vteřin. Kromě toho systém také započítával počet průchodů osob, čímž poskytoval informace o celkovém počtu průchodů. Z důvodu rozsahu vzdálenosti byl namísto infračerveného senzoru překážek použit průmyslový senzor od společnosti SICK (WTB12-3P2411). V zapojení má senzor samostatné relé a to z důvodu galvanického oddělení kvůli jeho provoznímu napětí, které je v rozsahu 12-30V DC a napětí arduina, které činí 5V DC.
#include<Arduino.h> const int sensorPin = 8; // Pin, ke kterému je připojen světelný senzor const int alarmPin = 7; // Pin, ke kterému je připojen zvukový alarm const unsigned long alarmDuration = 3000; // Doba trvání alarmu v milisekundách (3 vteřiny) unsigned long lastDetectionTime = 0; int peopleCount = 0; // Počet průchodů void setup() { pinMode(sensorPin, INPUT); pinMode(alarmPin, OUTPUT); digitalWrite(alarmPin, LOW); Serial.begin(9600); // Inicializace sériové komunikace pro výpis počtu průchodů } void loop() { int sensorValue = digitalRead(sensorPin); if (sensorValue == HIGH) { // Zaznamenán průchod osoby lastDetectionTime = millis(); digitalWrite(alarmPin, HIGH); // Spustit alarm peopleCount++; // Zvýšit počet průchodů Serial.println("Pocet pruchodu: " + String(peopleCount)); // Výpis počtu průchodů do sériového monitoru } // Zastavit alarm po 3 vteřinách if (millis() - lastDetectionTime >= alarmDuration) { digitalWrite(alarmPin, LOW); } }
Každých 10 sekund přečte hodnotu z adresy senzoru a vypíše ji na displej. Pro okrasu je zde i malá uvítací animace při zapnutí teploměru.
Tento projekt slouží k měření teploty, tlaku a času a k jejich zobrazení na OLED displeji. Současně data vypisuje na sériovou linku.