Настройка и подключение принтеров с Ethernet-интерфейсом компании rkeeper
Основная информация
Для некоторых моделей принтеров (на данный момент поддерживаются модели Sprint TM200, Star 600-х и 700-х серий , Epson TM-88IV) разработан ethernet-интерфейс, который заменяет плату стандартного интерфейса RS232.
Важно: Данная статья не относиться к настройке произвольных принтеров со стандартными Ethernet-интерфейсами, а предназначена только для Ethernet-интерфейсов, разрабатываемых компанией UCS.
Преимущества использования
- Главная проблема RS232 - гальваническая неразвязанность рабочей станции и принтера с вытекающими жесткими требованиями по заземлению и нередко сгоревшие интерфейсные платы, а иногда и дорогостоящие материнские платы рабочей станции
- Удобство разводки - единая разводка локальной сети без привязки принтеров к конкретным рабочим станциям. Ethernet предоставляет пакетный способ передачи - соответсвенно на одном кабеле после свича можно подключить десятки принтеров. Легко добавить новый принтер, так как "ответвление" можно сделать в гораздо большем количестве мест
- Решение проблемы с постоянной нехваткой последовательных портов - часто приходится устанавливать платы расширеня
- Для управления Ethernet принтером в нестандандартных условиях можно применять все многообразие устройств, разработанных для Ethernet - например, беспроводные точки доступа
Реализация поддержки
Важно! Начиная с кассовой версии 6.82a и менеджерской 6.85.B поддержка ethernet-принтеров встроена в кассовый сервер.
Ограничений по кол-ву управляемых принтеров нет, также появилась возможность использовать ethernet-принтер в качестве чекового и отчетного.
Для кассовых версий ниже 6.82a программная поддержка реализована в виде библиотеки MPLEX.DLL для кассового клиента, которая позволяет управлять максимально 16-ю принтерами с одной рабочей станции. Данная библиотека реализована для совместимости со всеми версиями кассовой программы.
Изменение параметров интерфейса
При включении принтера с установленным ethernet-интерфейсом происходит печать (если установлена бумага) служебной информации в следующем виде:
IP: 172.31.32.139 MASK: 255.255.0.0 MAC: 00-47-4B-00-20-8B
Эти информация определяет текущие параметры интерфейса. Как правило, при изготовлении интерфейсы программируются на разные IP-адрес (всего возможно 255 значения, после чего адреса повторяются), но возможна ситуация, когда все интерфейсы имеют одинаковый адрес.
Для изменения адреса интерфейса используется утилита gk3Tools (не ниже версии 3.0.7.014 ftp://ftp.ucs.ru/r-keeper/Tools/GK3TOOLS/gk3Tools.rar) - процедура изменения IP-адреса такая же, как и для других Ethernet- устройств производства компании UCS и описана в документе Поддерживаемые протоколы и настройка сети.
Важно: Кассовая станция должна иметь IP-адрес из той же подсети, что и интерфейсные платы.
Примечание: Первые партии интерфейсных плат не имели возможности печати сервисной информации при включении. В таком случае, для определения текущего адреса интерфейса необходимо воспользоваться утилитой gk3NetMonitor ftp://ftp.ucs.ru/r-keeper/Tools/GK3TOOLS/gk3Tools.rar
Настройка менеджерской части
Менеджерская версии 6.85.B и выше
Для настройки ethernet-принтера в качестве отчетного и/или чекового необходимо:
- в менеджерской перейти в меню "Списки" ⇒ "Станции", выбрать в списке требуемую станцию
- открыть свойства станции и выбрать закладку "Принтеры"
- установить тип принтера "Через сервер"
- в поле "Станция" указать IP-адрес принтера
- в поле "Порт" можно указать любое значение (в данном случае не имеет значения)
- указать соотв. модель принтера
Рис. Настройка ethernet-принтера в качестве чекового/отчетного
Для настройки Ethernet-принтера в качестве сервис-принтера необходимо:
- в менеджерской перейти в меню "Списки" ⇒ "Сервис-принтеры", добавить новый или выбрать из списка существующий принтер
- в поле "Аппарат" выбрать соотв. модель принтера
- в разделе "Печать" выбрать опцию "На ethernet-принтер" и в поле "IP-адрес" ввести IP-адрес принтера
Рис. Настройка ethernet-принтера в качестве сервис-принтера
Менеджерская версии ниже 6.85
В менеджерском приложении "Редактор" создайте необходимое кол-во сервис-принтеров. В конфигурации принтера укажите модель - поддерживаются модели Star 600-й и 700-й серии (драйвер Star Roll), Epson TM-88IV (драйвер Epson TM-88III) и Sprint TM200 (драйвер TM200), печать "Через сервер", сетевое имя станции, которая будет управлять принтерами. Далее укажите порт от COM1 до COM4, отметьте флажок "Через мультиплексор" и выберите порт мультиплексора (от 1 до 4)
Важно: В данном случае значение поля порт (COM1 .. COM4) не относится к физическим портам, а определяет (совместно со значением порта мультиплексора) только параметры конкретного принтера.
Таким образом, одна станция может управлять 4х4 = 16 принтерами, как было отмечено выше.
Настройка межсерверной печати
Начиная с кассовой версии 6.83G, возможна межсерверная печать на ethernet сервис-принтера.
Для этого необходимо создать сервис-принтер с типом печати "Через другой сервер", в поле "Станция" вместо имени станции (юнита) в квадратных скобках указать идентификатор основного принтера (настроенного как "На ethernet-принтер") , поле "Порт" не имеет значения.
Примечание: Идентификатор принтера отображается в окне свойств принтера в верхнем правом углу в виде числа белого цвета и на некоторых моделях мониторов может читаться с трудом.
Также в версии 6.83G появилась возможность печати кассовых отчетов на ethernet-принтера "Через другой сервер". Для этого в настройках принтера отчетов нужно указать тип печати "Через сервер", а в поле "Станция" вместо имени станции (юнита) написать имя "принимающего" сервера, далее символ "\" (обратный слэш) и за ним в квадратных скобках номер из закладки принтера - например, RLSERV\[15], поле "Порт" не имеет значения.
Настройка кассовой части
На кассовой станции должен быть установлен сетевой протокол TCP/IP - описание возможных вариантов см. в документе Поддержка протокола TCP/IP на рабочей станции RK6
Также необходимо проверить, чтобы в директории RKCLIENT присутствовала библиотека THREAD.DLL.
Замечания для Microsoft Network Client version 3.0
Важно: При использовании на кассовой станции сетевого клиента Microsoft Network Client для взаимодействия с ethernet-устройствами должна быть запущена поддержка сокетов (sockets.exe)
Для поддержки сокетов на кассовой станции необходимо:
- в файле AUTOEXEC.BAT вставить команду SOCKETS.EXE:
................... C:\NET\net start C:\NET\sockets.exe ...................
в файле NET\TCPUTILS.INI прописать параметр hostname (раздел [tcpglobal]):
............. [tcpglobal] drivername=GLOBAL$ hostname=UNIT .............
- проверить значение параметра numsockets в разделе [sockets] конфигурационного файла TCPUTILS.INI - значение должно быть не меньше кол-ва принтеров, которыми будет управлять станция:
[sockets] ............. numsockets=4 .............
- в конфигурационном файле PROTOCOL.INI сетевого клиента проверить значение параметра NBSessions - его значение должно быть не менее 20 (максимально - 22):
[TCPIP] .............. NBSessions=20 ..............
Кассовая часть версии 6.82а и выше
Версия кассы 6.82а и выше не требует дополнительных настроек, т.к. поддержка реализована на уровне кассового сервера.
Кассовая часть версии 6.82 и ниже
Для поддержки ethernet-устройств для кассовых версий 6.82 и ниже необходимо:
- загрузить с FTP ftp://ftp.ucs.ru/r-keeper/Tools/EPRINTER обновленную библиотеку MPLEX.DLL
- записать библиотеку в корень рабочей директории RKCLIENT кассового клиента
- прописать в RKEEPER6.INI необходимое кол-во параметров в виде:
EthPrinterXX = <IP адрес интерфейсной платы>
где XX - совокупность значения порта принтера COMX (первое значение X) и порта мультиплексора (второе значение X) - см. пример далее.
После загрузки станции можно проверить, загружен модуль MPLEX.DLL или нет - в режиме регистрации необходимо нажать два раза кнопку "Справка", появится окно "Состав системы" с перечислением загруженных модулей.
В списке должна присутствовать стока вида:
MPLEX.DLL Ethernet printers (MS SOCKETS or TRUMPET or PCTCP or NW) (NW)
Если строка присутствует, значит модуль загружен успешно. Значение в последних скобках обозначает обнаруженный стек TCP/IP (в примере выше - (NW), т.е. обнаружен Novell TCP/IP Transport)
Возможные значение стеков TCP/IP:
MS SOCKETS - стандартный стек Microsoft Network Client for MS-DOS (бесплатный)
TRUMPET - пакет Trumpet TCPDRV (бесплатный)
PCTCP - стек компании FTP Software (коммерческий)
NW - Novell TCP/IP Transport
Примечание: Для вызова окна "Состав системы" можно использовать обычную компьютерную клавиатуру - для этого установите на станции клавиатурный драйвер K_KB99B.DLL и после загрузки R-Keeper два раза нажмите клавишу "Home"
Пример конфигурации для версии кассы 6.82 и ниже
Допустим, есть четыре принтера с интерфейсными платами, которым присвоены следующие IP-адреса:
- 172.31.32.41
- 172.31.32.42
- 172.31.32.43
- 172.31.32.44
В приложении "Редактор" создаем четыре сервис-принтера со следующими в параметрами:
Вариант №1:
- Порт: COM1, Через мультиплексор 1 - для первого принтера (172.31.32.41)
- Порт: COM1, Через мультиплексор 2 - для второго принтера (172.31.32.42)
- Порт: COM1, Через мультиплексор 3 - для третьего принтера (172.31.32.43)
- Порт: COM1, Через мультиплексор 4 - для четвертого принтера (172.31.32.44)
Вариант №2:
- Порт: COM1, Через мультиплексор 1 - для первого принтера (172.31.32.41)
- Порт: COM2, Через мультиплексор 1 - для второго принтера (172.31.32.42)
- Порт: COM3, Через мультиплексор 1 - для третьего принтера (172.31.32.43)
- Порт: COM4, Через мультиплексор 1 - для четвертого принтера (172.31.32.44)
Примечание: Можно создавать любые комбинации значений порта принтера (не более COM4) и порта мультипплексора. Начиная с кассовой версии 6.77g, можно создать несколько сервис-принтеров с одинаковыми параметрами (значениями порта и порта мультиплексора) - таким образом можно один принтер использовать для разных потоков сервис печати.
Исходя из наших вариантов параметров сервис-принтеров в RKEEPER6.INI необходимо прописать:
Для варианта №1:
EthPrinter11 = 172.31.32.41 EthPrinter12 = 172.31.32.42 EthPrinter13 = 172.31.32.43 EthPrinter14 = 172.31.32.44
Для варианта №2:
EthPrinter11 = 172.31.32.41 EthPrinter21 = 172.31.32.42 EthPrinter31 = 172.31.32.43 EthPrinter41 = 172.31.32.44
Начиная с кассовой версии 6.77g (до версии 6.82а) возможен такой вариант:
- Порт: COM1, Через мультиплексор 1 - принтер "Холодный цех"
- Порт: COM1, Через мультиплексор 1 - принтер "Горячий цех"
- Порт: COM1, Через мультиплексор 1 - принтер "Бар"
- Порт: COM1, Через мультиплексор 1 - принтер "Контроль шеф-повар"
Такая конфигурация позволяет использовать один физический принтер для нескольких потоков сервис-печати.
В RKEEPER6.INI достаточно прописать всего одну строку (для принтера с IP-адресом 172.31.32.41):
EthPrinter11 = 172.31.32.41
Примечание: При инициализации параметров EthPrinterХХ происходит проверка ситуации, при которой разные конфигурации принтеров используют одинаковый IP - адрес интерфейсной платы. Если такая ситуация встречается, она корректно обрабатывается (принимается только первый параметр, остальные игнорируются, т.е. печать на указанные принтера не происходит) и записывается в лог-файл MPLEX.LOG. Если необходимо организовать печать на один принтер нескольких потоков - см. выше пример для версии 6.77g
Например, если указать в RKEEPER6.INI следующие значения:
EthPrinter11 = 172.31.32.41 EthPrinter21 = 172.31.32.41 EthPrinter31 = 172.31.32.41 EthPrinter41 = 172.31.32.41
то после запуска R-Keeper в файле MPLEX.LOG будут записи вида:
Error: addr 172.31.32.41 used more than one printer
При этом печать будет происходить только на первый принтер с параметрами EthPrinter11 (т.е. порт COM1, через мультитеплексор 1), на остальные принтера печать отправляться не будет!
Решение проблем
Если при включения принтера распечатывается документ со следующим содержимым:
*** Ethernet interface *** NIC error!
это значит, что проблемы с сетевым адаптером на плате - скорее всего, такой интерфейс потребует замены или ремонта.
В некоторых случаях может помочь полный сброс интерфейсной платы в "заводские" установки:
- выключить принтер
- извлечь интерфейсную плату из принтера
- найти на плате перемычку JP1 и замкнуть ее джампером
- установить плату обратно в принтер
- включить принтер - настройки будут сброшены в "заводские"
- настроить параметры интерфейсной платы с помощью утилиты gk3Tools
- выключить принтер
- извлечь интерфейсную плату и снять джампер с перемычки JP1
- установить интерфейсную обратно - принтер готов к работе
Примечание для принтера Star TSP654D
Данный принтер является обновлением модели TSP643D - интерфейсная плата для моделей Star полностью подходит для установки, но требует установки джампера :
- найдите на интерфейсной плате блок перемычек
- замкните джампером ножки 3 и 6 (можно использовать обычный компьютерный джампер). Т.к. ножки 3 и 6 расположены по диагонали, их необходимо немного пригнуть их друг к другу:
Примечание: Интерфейсная плата будет работать с принтером Star TSP654D и без установки джампера, но устройство не будет определяться в программе gk3NetMonitor