Система учета прихода/ухода сотрудников

Я начал свой путь hardware разработки с микроконтроллера ESP32

Купил в amazon вышло все в 20 евро

Думал что можно на нем сделать, включать выключать лампочки не интересно и пришла в голову идея а что если сделать систему учета прихода ухода сотрудников

Задачи следующие:

  1. Определить что сотрудник пришел в офис

  2. Определить что он ушел

В голову пришла идея сканирования сети WIFI так как в большинстве случаев сотрудник в офисе всегда подключается к сети и будет подключен до ухода

Определить что сотрудник пришел в офис

ESP32 умеет подключатся к WIFI сети и я сделал ARP сканирование сети так как она работает на FreeRTOS и большинство привычных функций типа выдергивания ARP таблицы уже было вместе с проектами

Бизнес логика

  1. Изначально у сотрудника состояние “в офисе“ стоит 0

  2. Сканирование делается раз в минуту

  3. Как только сотрудник подключается к системе состояние “в офисе“ становится 1

  4. Если сотрудник уходит я даю ему шанс подключиться к сети в 15 минут

  5. Если прошло более 15 минут после того как он был в сети то я его считаю ушедшим в то время когда я его видел

  6. Но сотрудник может продолжить свое рабочее время если успеет “покурить“ в течении 15 минут

В итоге вышло примерно так

Приход в офис

Уход с офиса

Запартнерился с другом кто делал параллельный проект и решили внедрить эту систему ему в проект. Но к сожалению эта реализация не сработала так как у него работники работали в большом объекте где нету 100% покрытия вайфай сети и система показывала только косвенные данные

Исходники проекта

https://github.com/thisisdingo/mac-scanner

1
Subscribe to my newsletter

Read articles from Мичил Хабаров directly inside your inbox. Subscribe to the newsletter, and don't miss out.

Written by

Мичил Хабаров
Мичил Хабаров

Занимаюсь коммерческой разработкой с 2013 года Мои рекорды 30K RPS (Запросов в секунду) 6KK MAU (Пользователей в месяц)