Проект недоступен для бесплатного скачивания! Если вы заинтересованы в приобретении программной части проекта с функциями, описанными на данной странице, свяжитесь с: martinius96@gmail.com
Arduino LCD RFID, NFC RC522 Stopwatch Schematics Airsoft Paintball DOMINATOR

RFID DOMINATOR - секундомер для страйкбола | пейнтбол


Остерегайтесь считывателей RFID RC522 с фальшивым (не оригинальным чипом NXP RC522)! - сообщить о версии программного обеспечения 0x12 - counterfeit (не работает для DOMINATOR!)

Функциональный принцип:

  • В начале игры на дисплее отображаются 00 часов, 00 минут, 00 секунд для команды 1 (красный), команды 2 (синий).
  •       
  • У каждого игрока команды есть одна RFID-карта / браслет / метка
  •       
  • Когда карта установлена, детектор (индикатор вставки карты) подает звуковой сигнал, загорается светодиод команды, и команда начинает считать.
  •       
  • Время отсчитывается до тех пор, пока игрок второй команды не положит карту. Это остановит время для первой команды, начнет подсчет для второй команды, изменит светодиод активной команды на точку - ДОМИНАТОР.
  •       
  • Если судья ставит карту, время останавливается, светодиод гаснет. Время останавливается, пока карта не будет представлена другим игроком команды.
  •       
  • Если карта удалена, время сбрасывается и останавливается. Игра перезапускается - готовится к новой игре.
  •       

    Аппаратное обеспечение для проекта - RFID DOMINATOR:

  • Arduino Uno/NanoArduino Uno/Nano
  • RFID считыватель RC522 (13.56MHz)RFID считыватель RC522
  • Брелки / карты / браслеты ISO / IEC 14443-AБрелки / карты / браслеты ISO / IEC 14443-A
  • Детектор (пассивный зуммер)Детектор карт
  • 2x светодиодыСветодиоды - индикатор активной команды в точке
  • Принцип аппаратного обеспечения:

          
  • RFID-считыватель RF522 связывается с Arduin по шине SPI. Получает UID (RFID) RFID-карт в радиусе действия и передает их в Arduino. Он реагирует на расстояние чипа около 3 см от антенны.
  •       
  • Arduino сравнивает адрес карты в нескольких условиях, применяет цифровые состояния к диодам, запускает универсальный счетчик каждые 100 мс и управляет счетом обоих раз.
  •       
  • Время отправляется по шине I2C на дисплей символов 20x4, где оно отображается. Листинг занимает до 30 мс.
  • Максимальный диапазон времени: 99 часов, 59 минут и 59 секунд
    Потребление: около 110 мАч при напряжении питания 5 В. Подходит для питания через банк питания, зарядное устройство от телефона с выходом USB.

    Определение проекта:

  • Проект подходит для команд, клубов, спортивных сооружений, мероприятий.
  • Подходит для режимов DOMINATION, Capture Point.
  • Используй для спорта Airsoft, Paintball, Nerf Wars

  • Демонстрация функциональности RFID DOMINATOR:


    Печатная плата - (PCB) - RFID DOMINATOR - GERBER

    RFID DOMINATOR - DOSKA PLOŠNÝCH SPOJOV - DPS - PCB - RC522, Arduino - Nano, buzzer, LED, stopky, stopwatch

    Схема подключения - RFID DOMINATOR:

    Airsoft Dominator RFID

    Программа для чтения адресов RFID карт для DOMINATOR (Это не программа для RFID DOMINATOR!)

  • Эти адреса вставляются в платный проект DOMINATOR. Программа служит только для их загрузки, она не содержит запрограммированной логики DOMINATOR, секундомер...
  • Адрес карты выводится на последовательный (UART) монитор - 9600 бод / с.
  • //PROGRAM PRE NACITANIE UID RFID KARIET PRE DALSIE POUZITIE V DOMINATOR-e
    //https://arduino.php5.sk/airsoft-dominator.php
    //PRE PROJEKT RFID DOMINATOR (Airsoft, Paintball, Nerf Wars)
    //Autor: Bc. Martin Chlebovec
    
    #include <SPI.h>
    #include <MFRC522.h>
    #define RST_PIN         9
    #define SS_1_PIN        10
    #define NR_OF_READERS   1
    byte ssPins[] = {SS_1_PIN};
    MFRC522 mfrc522[NR_OF_READERS];
    void setup() {
      Serial.begin(9600);
      while (!Serial);
      SPI.begin();
      for (uint8_t reader = 0; reader < NR_OF_READERS; reader++) {
        mfrc522[reader].PCD_Init(ssPins[reader], RST_PIN);
        mfrc522[reader].PCD_SetAntennaGain(112); // set to max (00001110)
        Serial.print(F("Reader "));
        Serial.print(reader);
        Serial.print(F(": "));
        mfrc522[reader].PCD_DumpVersionToSerial();
      }
    }
    
    void loop() {
      for (uint8_t reader = 0; reader < NR_OF_READERS; reader++) {
        if (mfrc522[reader].PICC_IsNewCardPresent() && mfrc522[reader].PICC_ReadCardSerial()) {
          Serial.print(F("Reader "));
          Serial.print(reader);
          Serial.print(F(": Card UID:"));
          dump_byte_array(mfrc522[reader].uid.uidByte, mfrc522[reader].uid.size);
          Serial.println();
          Serial.print(F("PICC type: "));
          MFRC522::PICC_Type piccType = mfrc522[reader].PICC_GetType(mfrc522[reader].uid.sak);
          Serial.println(mfrc522[reader].PICC_GetTypeName(piccType));
          mfrc522[reader].PICC_HaltA();
          mfrc522[reader].PCD_StopCrypto1();
        }
      }
    }
    
    void dump_byte_array(byte *buffer, byte bufferSize) {
      for (byte i = 0; i < bufferSize; i++) {
      }
      Serial.print("Kod:");
      unsigned long kod = 10000 * buffer[4] + 1000 * buffer[3] + 100 * buffer[2] + 10 * buffer[1] + buffer[0]; //finalny kod karty
      Serial.print(kod);
    }
    

    Библиотеки для проекта RFID DOMINATOR

  • RFID --> https://github.com/miguelbalboa/rfid
  • LCD - I2C --> https://github.com/fdebrabander/Arduino-LiquidCrystal-I2C-library

  • Кнопка ДОМИНАТОР


  • Он использует кнопки ввода для команд, судей и ластика.
  • В программу можно вносить изменения, проверять длину нажатий, удерживать кнопки.
  • Кнопки заменяют считыватель RFID в методе ввода для DOMINATOR.
  • Логика, счетчик, распечатка идентичны RFID DOMINATOR.
  • Схема подключения - кнопка ДОМИНАТОР:

    Airsoft Dominator RFID