Валидатор (турникетный сканер)
Валидатор — сканер на входе или в турникете, который считывает код билета, сверяет его с базой и решает, открыть проход или отказать.
Определение
Валидатор — сканер контроля прохода: пассажир подносит билет к окошку, а устройство за доли секунды решает, открыть турникет или отказать.
Как устроен
Три узла: имидж-сканер, подсветка против бликов и полумрака, логика проверки. Камера ищет три квадрата-искателя и читает код с бумаги и с экрана; транспортные модели берут ещё Aztec и PDF417.
Связи с сервером может не быть: валидатор сверяется с офлайн-списком, залитым в память перед сменой, а проходы отдаёт пачкой при возврате сети.
Почему код не проходит
Номер один — тусклый экран: автояркость приглушает телефон, и камера видит серые пятна вместо модулей. Мешает матовая плёнка. Ротирующийся код живёт 15–60 секунд: достали билет заранее, постояли в очереди — отказ.
Связанные концепции
Валидатор — конечная точка для электронного билета. Читаемость задаёт контраст QR-кода, а про сам билет — разбор QR-код на билете.
Частые вопросы
Почему валидатор не читает QR с телефона?
Обычно виновата яркость: на автонастройке экран в помещении гаснет, и контраста не хватает. Поднимите яркость вручную, уберите блик наклоном, держите телефон в 5–10 см от стекла. Плёнка и трещины тоже мешают.
Работает ли валидатор без интернета?
Да, большинство моделей рассчитаны на офлайн. Список билетов загружают в память заранее, проверка идёт локально за доли секунды. Данные о проходах копятся в устройстве и уходят на сервер, когда появится связь.
Какой стороной подносить телефон к валидатору?
Экраном к окошку сканера, параллельно стеклу, чтобы код целиком попал в кадр. Не прижимайте телефон вплотную: камере нужна дистанция для наводки. И не проводите им мимо — дайте секунду зафиксировать кадр.
Что значит «билет уже использован»?
Код погашен раньше: по нему прошли на другом турникете или дважды отсканировали один скриншот. Одноразовый билет валидатор пропускает один раз и помечает в базе. Снять отметку можно только через кассу.