Reakčná hra pre dvoch hráčov – Arduino Uno
Reakčná hra pre dvoch hráčov na arduino UNO.
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);
}
}
Reakčná hra pre dvoch hráčov na arduino UNO.
Po prvních pokusech s moduly CC1101 433.92Mhz jsem se po čase rozhodl si vyzkoušet napsat program na jednoduché ovládání led diody tak aby jeden modul pravidelně vysílal hodnoty které se na druhém modulu vyhodnotí a tento pak bude pravidelně blikat led diodou. Po tomto programu a jeho odzkoušení jsem se rozhodl si napsat další program na zjištění číselných hodnot tlačítek na dálkovém ovladači pro bezdrátové zásuvky 433Mhz, a tyto pak ovládat dalším napsaným programem na zapínání a vypínání zásuvky. Pro ovládání jsem použil Arduino Nano které jsem pro testování osadil do Arduino IO shieldu, pro komunikaci mezi Arduino a modulem CC1101 jsem použit 8 – kanálový obousměrný převodník logických úrovní (5V – 3.3V) a pro napájení celé sestavy jsem použil vyrobený napájecí zdroj s výstupním napětím 8V pro napájení Arduino Nano, 5V a 3.3V pro napájení převodníku a modulu CC1101. Uvedené přípravky rozšiřují zapojení uveřejněná v [1].