Подключение нестандартных весов к VtormetCRM: настройка шаблона обмена данными
Когда нужен шаблон обмена данными
VES.VtormetCRM из коробки поддерживает большинство популярных весов. Но шаблон понадобится, если:
- Весы старые (советского производства) — с нестандартным протоколом.
- Импортные весы с закрытым протоколом — производитель не предоставил документацию.
- Самодельные или доработанные весы — с собственной логикой выдачи данных.
- Нестандартный COM-порт — например, весы подключаются через USB-COM переходник и выдают мусорные данные.
- Специфический формат данных — вес передаётся в виде текста с лишними символами.
Как работает шаблон обмена данными
Шаблон — это набор правил, который описывает, какую информацию отправляют весы и как из неё выделить вес.
1. Строка данных
Весы отправляют строку символов, например: +000123.5 kg
2. Шаблон ищет вес
Правило: взять всё, что после знака "+" и до пробела.
3. Извлекает значение
Результат: 000123.5 преобразуется в число 123.5
VES.VtormetCRM позволяет гибко настраивать такие правила: указывать начало строки, разделители, игнорируемые символы, формат числа.
Форматы данных и протоколы
Прежде чем настраивать шаблон, нужно понять, что именно отправляют ваши весы. Для этого потребуется терминал для COM-порта (например, PuTTY или встроенный монитор порта).
Типичные форматы данных:
| Тип | Пример строки | Описание |
|---|---|---|
| Текстовый с разделителями | ST,GS, 123.5,kg,ST | Вес находится между запятыми |
| Фиксированная позиция | 123.5 kg | Вес всегда на позициях 5-12 |
| С префиксом | WEIGHT:123.5 | Вес идёт после слова WEIGHT: |
| Бинарный | 0x02 0x31 0x32 0x33 ... | Сложный случай, требует преобразования |
Для бинарных протоколов может потребоваться дополнительная настройка (endianness, смещение). VES.VtormetCRM поддерживает и такие форматы.
Пошаговая настройка шаблона
- Подключите весы к компьютеру и установите VES.VtormetCRM.
- Откройте настройки COM-порта — укажите скорость (baud rate), биты данных, стоп-биты, чётность. Эти параметры должны соответствовать настройкам весов (обычно 9600,8,N,1).
- Перейдите в раздел "Шаблон обмена".
- Включите режим отладки — чтобы видеть, что приходит с весов.
- Посмотрите на отладочные данные. Скопируйте пример строки, которую отправляют весы.
- Опишите правило извлечения веса — укажите, с какого символа начинается число, чем заканчивается, есть ли разделители.
- Сохраните шаблон и проверьте, что вес определяется корректно.
Примеры шаблонов для разных весов
Пример 1: Весы с префиксом "WT:"
Строка: WT: 123.45 kg
Настройки: Начало поиска после "WT: ", до пробела. Убрать все символы, кроме цифр и точки.
Регулярное выражение: WT:\s*([\d.]+)
Пример 2: Старые советские весы
Строка: +00123.5 кг (фиксированная длина, вес с 6 по 12 символ)
Настройки: Позиция начала 6, длина 7 символов, обрезать пробелы, знак + игнорировать.
Пример 3: Импортные весы с запятой в качестве разделителя
Строка: S,123,45,kg,0 (вес во втором поле)
Настройки: Разделитель ",", взять второй элемент (индекс 1), заменить запятую на точку.
Пример 4: Бинарный протокол (Mettler Toledo)
Данные: Байты: 0x02,0x31,0x32,0x33,0x2E,0x35,0x03 (это текст "123.5" в ASCII, обрамлённый STX/ETX)
Настройки: Удалить STX (0x02) и ETX (0x03), остальное преобразовать в текст.
В VES.VtormetCRM можно сохранить несколько шаблонов и переключаться между ними.
Типичные ошибки и их решение
| Ошибка | Причина | Решение |
|---|---|---|
| Данные не приходят | Неправильные настройки COM-порта (скорость, биты). Не тот порт. | Проверьте в диспетчере устройств номер порта. Уточните параметры у производителя весов. Попробуйте разные скорости (4800, 9600, 19200). |
| Приходят "кракозябры" | Несовпадение формата данных (например, весы шлют текст, а вы ждёте бинарный). | Посмотрите данные в HEX-режиме, чтобы понять реальный формат. Настройте кодировку (обычно CP866 или Windows-1251). |
| Вес определяется нестабильно | В строке есть лишние символы, пробелы, меняется формат. | Настройте более точное регулярное выражение. Добавьте фильтрацию (оставить только цифры и точку). |
| Несколько строк в одном пакете | Весы отправляют данные пачками. | Настройте разбивку по символу конца строки (CR/LF). |
| Вес приходит только по запросу | Весы работают в режиме "запрос-ответ". | Настройте отправку команды запроса (например, "W\r\n") перед чтением. |
Продвинутые настройки
Для сложных случаев VES.VtormetCRM поддерживает:
- Регулярные выражения — для гибкого поиска веса в строке.
- Преобразование формата — замена запятой на точку, удаление пробелов, перевод в число.
- Отправка команд — для весов, требующих инициализации или опроса.
- Усреднение веса — если весы дают скачущие значения.
- Фильтрация стабильности — брать вес только после нескольких одинаковых показаний.
Если не получается настроить самим
Мы предлагаем помощь в подключении нестандартных весов:
- Удалённая помощь — наш специалист подключится к вашему компьютеру, проанализирует данные с весов и настроит шаблон за 1-2 часа.
- Разработка драйвера — для очень сложных случаев (бинарные протоколы с контрольной суммой) можем разработать индивидуальный драйвер.
- Консультация — если у вас есть документация на весы, мы поможем расшифровать протокол.
Стоимость удалённой настройки — от 3 000 рублей. Если потребуется разработка драйвера, цена обсуждается индивидуально.
Часто задаваемые вопросы
Нужна помощь с подключением нестандартных весов?
Напишите нам в Telegram, пришлите пример данных с весов — мы подскажем решение или настроим шаблон удалённо.