=====Тревожная кнопка===== В каждом классе у учительского стола устанавливаем "тревожную кнопку" для оперативного оповещения охраны о нестандартной ситуации. Одна из проблем таких "кнопок" в школе - случайная активация. Для решения этой проблемы необходима предварительная авторизация пользователя. В проекте для авторизации используется RFID-технология. В школе у всех персональные RFID-карты. В качестве "тревожной кнопки" используется бесконтактный считыватель RFID карт RDM6300 с частотой 125 кГц. Сигнал тревоги передается на пульт охраны, где включается красный светодиод, соответствующий кабинету. ====Схема==== {{ :firebutton:firebutton.png?direct&400 |}} ====Код==== #include #define pinLED 13 #define pinRFID 10 SoftwareSerial RFID(pinRFID, 3); // пин TX и пин RX для RFID Plus // номер обнаруженной карты byte newCard[14] = {0,0,0,0,0,0,0,0,0,0,0,0,0,0}; // номер карты учителя byte teacherCard[14] = {2,55,67,48,48,57,48,68,56,56,55,66,51}; byte bSim; void setup() { RFID.begin(9600); // SoftwareSerial to RFID reader pinMode(pinLED, OUTPUT); Serial.begin(9600); // serial (UART) to computer // digitalWrite(pinLED, HIGH); // delay(1000); } void loop() { RFID.listen(); delay(100); bSim = RFID.read(); if (bSim == 2) { newCard[0] = bSim; Serial.print(newCard[0]); Serial.print(" "); for (int i = 1 ; i < 13 ; i++) { newCard[i] = RFID.read(); Serial.print(newCard[i]); Serial.print(" "); } Serial.println(); } if (newCard[0] == teacherCard[0] && newCard[1] == teacherCard[1] && newCard[2] == teacherCard[2] && newCard[3] == teacherCard[3] && newCard[4] == teacherCard[4] && newCard[5] == teacherCard[5] && newCard[6] == teacherCard[6] && newCard[7] == teacherCard[7] && newCard[8] == teacherCard[8] && newCard[9] == teacherCard[9] && newCard[10] == teacherCard[10] && newCard[11] == teacherCard[11] && newCard[12] == teacherCard[12] && newCard[13] == teacherCard[13]) { digitalWrite(pinLED, HIGH); delay(1000); } else { digitalWrite(pinLED, LOW); } delay(1000); }