Фиксация превышений скорости с печатью на принтере
Алгоритм ведёт архив превышений скорости транспортным средством и по команде выводит архив на печать. Работает на приборах 10 и 7x с интерфейсом RS-232 и картой microSD или памятью eMMC.
Алгоритм построен на EasyLogic — общий порядок загрузки описан в статье «Подключение устройств через алгоритмы EasyLogic».
Подключение принтера
Заголовок раздела «Подключение принтера»Подойдёт любой принтер с интерфейсом RS-232, поддерживающий стандартные команды ESC/POS, — например, встраиваемый панельный термопринтер JP-QR203.

Настройка прибора
Заголовок раздела «Настройка прибора»-
В настройках включите модули RS-232 и GNSS, примените настройки и перезагрузите прибор.
-
В настройках последовательных портов для порта RS-232, к которому подключён принтер, выберите тип периферии Нет.
-
В Терминале командой
CLEARSCRIPTудалите все алгоритмы, которые занимают этот же порт RS-232. -
Загрузите алгоритм:
SCRIPT galileosky/overspeedingreporter0Для загрузки с сервера нужен доступ в интернет — GPRS или Wi-Fi. При медленном соединении загрузка может занять несколько минут. Имя загруженного алгоритма появится на вкладке Устройство в строке EasyLogic. При локальном подключении алгоритм можно загрузить из
.bin-файла на вкладке EasyLogic. -
Перезагрузите прибор.
Как алгоритм работает
Заголовок раздела «Как алгоритм работает»После запуска алгоритм 10 секунд ждёт инициализации файловой системы прибора, затем читает свои настройки из файлов конфигурации. Дальше циклически сравнивает текущую скорость с заданным ограничением. При превышении в архив записывается начало события; пока движение с превышением продолжается, запись обновляется по росту скорости, поэтому в архиве остаётся максимальная скорость за всё событие.
Архив ведётся в пределах заданной длительности — самые старые записи удаляются. Файлы архива
лежат в каталоге overspeeds/. Не изменяйте файлы каталога алгоритма вручную.
Команды принимаются всё время работы алгоритма; новые параметры применяются сразу. Печать архива не прерывает фиксацию превышений.
Настройки алгоритма хранятся в файле overspeeds/settings. Часовой пояс — общая настройка
с модулем автоинформатора, поэтому он хранится отдельно, в файле time_zone в корне
файловой системы.
Команды OVERSPEEDREP
Заголовок раздела «Команды OVERSPEEDREP»С момента старта прибора и до окончания инициализации настроек на любую команду приходит
ответ wait init settings. На команду с неподдерживаемым номером — unknown cmd=%d.
| Команда | Что делает |
|---|---|
OVERSPEEDREP 1 | Показать текущие параметры |
OVERSPEEDREP 2,v | Задать регистрационный номер ТС |
OVERSPEEDREP 3,L | Задать ограничение скорости |
OVERSPEEDREP 4,h | Задать длительность архивирования |
OVERSPEEDREP 5,z | Задать часовой пояс |
OVERSPEEDREP 6 | Напечатать архив |
Команды 2…5 отвечают тем же, чем команда 1, — строкой текущих параметров:
vrn=%s;speed limit=%d,setTime=%d,histLength=%d| Поле | Значение |
|---|---|
vrn | Регистрационный номер ТС |
speed limit | Установленное ограничение скорости, км/ч |
setTime | Дата и время установки ограничения |
histLength | Длина архива, с |
Пример ответа:
vrn=ABCDEFGHIJKLMNOPQRST;speed limit=110,setTime=2024-04-15 13:50:07 UTC+05,histLength=259200Регистрационный номер ABCDEFGHIJKLMNOPQRST, ограничение 110 км/ч установлено 15 апреля
2024 года в 13:50:07 при часовом поясе UTC+5, длина архива — 3 дня (259 200 с).
Параметры
Заголовок раздела «Параметры»| Параметр | Команда | Значение |
|---|---|---|
v | OVERSPEEDREP 2,v | Регистрационный номер ТС, до 20 символов. Пример: OVERSPEEDREP 2,X911HK159BY |
L | OVERSPEEDREP 3,L | Ограничение скорости, км/ч; по умолчанию 100. Пример: OVERSPEEDREP 3,150 |
h | OVERSPEEDREP 4,h | Длительность архивирования, с; по умолчанию 259 200 (3 суток). Пример: OVERSPEEDREP 4,86400 — 1 сутки |
z | OVERSPEEDREP 5,z | Смещение от Гринвича, ч; −23…+23, по умолчанию 0. Пример: OVERSPEEDREP 5,-2 — UTC−2 |
Печать архива
Заголовок раздела «Печать архива»OVERSPEEDREP 6Ответ — print started. Через 2 секунды начинается вывод на печать; одновременно печатаемое
содержимое дублируется в диагностику.

Диагностика
Заголовок раздела «Диагностика»Включите канал Алгоритмы и скрипты в Каналах диагностики.
Работа алгоритма
Заголовок раздела «Работа алгоритма»| Сообщение | Значение |
|---|---|
overspeed begin v=%d | Зафиксировано начало превышения скорости |
overspeed up v=%d | Скорость выросла в пределах текущего события |
overspeed end | Событие превышения закончилось |
p%d init! / p%d init? | Порт для печати инициализирован / ошибка инициализации: не хватает памяти, прибор не перезагружен после загрузки алгоритма (рядом будут сообщения Port Initialization error) либо версия прошивки устарела |
p%dw? | Ошибка записи в порт — не хватает ресурсов либо ошибка порта |
Содержимое печати
Заголовок раздела «Содержимое печати»| Сообщение | Значение |
|---|---|
--- start of printing --- | Начало вывода на печать |
Current time:YYYY-MM-DD hh:mm:ss | Текущие дата и время печати |
TimeZone: UTC%s%d | Установленный часовой пояс |
VRN: %s | Регистрационный номер ТС |
Speed limit: %d km/h | Установленное ограничение скорости |
Limit set: YYYY-MM-DD hh:mm:ss | Дата и время установки ограничения |
Overspeedings in last %d hours: | Заголовок блока превышений с длиной архива |
%d.From YYYY-MM-DD hh:mm:ss to YYYY-MM-DD hh:mm:ss, %d km/h | Начало и окончание события превышения, максимальная скорость за событие |
No events | Событий превышения не зафиксировано |
--- end of printing --- | Окончание вывода на печать |
Ошибки файловой системы
Заголовок раздела «Ошибки файловой системы»Все сообщения ниже означают неисправность файловой системы — проверьте карту microSD или память eMMC.
| Сообщение | Значение |
|---|---|
w."%s"[%d]?v=%d | Ошибка записи в файл настроек |
r."%s"? | Ошибка чтения файла настроек |
fRead? | Ошибка чтения файла архива |
fWrite? | Ошибка записи в файл архива |
fDel? | Ошибка удаления файла |
fRen? | Ошибка переименования файла |
См. также: Подключение устройств через алгоритмы EasyLogic · Ограничители скорости