Существуют ли бесплатные драйвера для подключения весов CAS к 1С:Розница?

Системный администратор 1С v8.3 (Управляемые формы) 1С:Розница Управленческий учет Торговля и дистрибуция
← На главную

Проблема подключения торгового оборудования к 1С:Розница 2.2 часто упирается в отсутствие бесплатных или качественных драйверов. Особенно остро этот вопрос стоит для популярных весов серии CAS ER-JR. Официальные представители часто предлагают платные компоненты или демо-версии с ограниченным функционалом. В этой статье мы подробно разберем, как можно подключить весы CAS бесплатно, используя штатные возможности 1С, стандартные протоколы и альтернативные методы настройки.

Вариант 1: Использование стандарта OPOS (OLE for Retail POS)

Рассмотрим наиболее современный и «чистый» способ интеграции. Многие администраторы забывают, что компания CAS выпускает бесплатные драйверы стандарта OPOS. В современных конфигурациях 1С (начиная с Розницы 2.2) встроена поддержка универсального драйвера 1С:Электронные весы (OPOS).

Разберем этот процесс по шагам:

  1. Скачаем и установим CAS OPOS Driver с официальных ресурсов дистрибьюторов (например, с белорусского или украинского сайтов CAS).
  2. Запустим утилиту настройки OPOS (обычно она называется OPOS Scale Setup).
  3. Добавим новое устройство, выберем нужный COM-порт и укажем модель весов. Важно задать логическое имя устройства (LDN), например, CAS_Scale.
  4. В 1С:Розница перейдем в раздел Подключаемое оборудование.
  5. Создадим новый экземпляр весов, выбрав обработчик драйвера 1С:Электронные весы (OPOS).
  6. В настройках 1С укажем созданное нами в утилите имя CAS_Scale.

Этот метод позволяет работать с весами без покупки лицензий у сторонних разработчиков драйверов.

Вариант 2: Использование протокола CAS-AD и сторонних бесплатных библиотек

Проанализируем технические особенности весов CAS ER-JR. Данная модель поддерживает несколько протоколов передачи данных, которые можно переключить в сервисном меню весов (параметр Set). Самый распространенный — протокол AD.

В этом режиме весы постоянно транслируют текущий вес в COM-порт. Для работы с этим потоком данных можно использовать старые бесплатные версии драйверов от Штрих-М или АТОЛ (версии 6.x), которые поддерживали протоколы конкурентов. Однако стоит помнить, что найти такие дистрибутивы сейчас становится все сложнее.

Вариант 3: «Лайфхак» — подключение через штатный сканер штрихкода

Если нам нужно просто получать вес в РМК (рабочее место кассира) и мы не хотим использовать специализированные драйверы весов, воспользуемся нестандартным, но эффективным методом. Суть заключается в том, что весы в режиме Stream Mode отправляют текстовую строку.

Посмотрим, как реализовать этот алгоритм:

  1. Переведем весы в режим постоянной передачи данных.
  2. В 1С настроим новое устройство в категории Сканеры штрихкода, выбрав тип подключения COM-порт.
  3. Укажем номер порта и параметры связи (обычно 9600 bps).

Теперь 1С будет воспринимать входящие данные от весов как «штрихкод». Чтобы превратить этот штрихкод в значение веса, нам потребуется небольшая доработка в модуле формы или в модуле менеджера оборудования. Проанализируем пример кода для обработки такого события:


// В процедуре обработки внешнего события от сканера
Процедура ОбработкаВнешнегоСобытия(Источник, Событие, Данные)
    Если Источник = "ИмяНашегоКомПортаВесов" Тогда
        // Очищаем полученную строку от лишних символов (единиц измерения, префиксов)
        // Обычно строка выглядит как "  0.500 kg"
        ЧистыйВесСтрокой = СтрЗаменить(Данные, "kg", "");
        ЧистыйВесСтрокой = СокрЛП(ЧистыйВесСтрокой);
        
        Попытка
            ТекВес = Число(ЧистыйВесСтрокой);
            // Устанавливаем вес в текущую строку чека
            Элементы.ТабличнаяЧастьТовары.ТекущиеДанные.Количество = ТекВес;
        Исключение
            Сообщить("Ошибка распознавания данных с весов!");
        КонецПопытки;
    КонецЕсли;
КонецПроцедуры

Этот метод полностью бесплатен и не зависит от внешних DLL, требующих лицензирования.

Вариант 4: Проверка аппаратной части (кабель)

Выясним причину, по которой даже бесплатные утилиты (например, APTest) могут не видеть весы. Часто проблема кроется в кабеле RS-232. Для весов CAS ER-JR требуется специальная распиновка. Стандартный «компьютерный» кабель может не подойти.

Распиновка кабеля CAS (DB9F - DB9F):

Без правильной распайки (Cross-link) передача данных не начнется, какой бы драйвер вы ни использовали.

Вариант 5: Универсальный сервер весов

Если вы обладаете навыками программирования, можно рассмотреть вариант написания простейшего COM-объекта или использования готовых скриптов на Python/C#. Скрипт опрашивает порт и сохраняет значение веса в текстовый файл или отдает по HTTP-запросу. 1С в свою очередь считывает этот файл или обращается к локальному адресу. Это позволяет избежать проблем с привязкой лицензий к «железу» компьютера, о чем упоминалось на форумах.

Резюме

Для подключения весов CAS к 1С:Розница 2.2 без лишних затрат рекомендуем сначала попробовать OPOS-драйвер от производителя. Если это кажется сложным, метод с эмуляцией сканера штрихкода является самым надежным и «бессмертным» решением, так как он использует только встроенные механизмы платформы 1С.

← На главную