Форум OlegON > Программы и оборудование для автоматизации торговли > Оборудование > Торговые весы > CAS

Изменение формата посылки весов BW 60 на принтер : CAS

20.04.2024 5:56


14.10.2015 13:45
kosta
 
Была связка весы CAS BW 15 и принтер Intermec MP4i, нормально работали. Весы по установившемуся весу передавали информацию на принтер он распечатывал этикетку. Заменил весы на CAS BW 60, этикетка стала распечатываться с неправильным весом. Например на весах 1,08 кг - на этикетке 0,008 кг, на весах 3,42 кг - на этикетке 0,042. В настройках у весов все одинаково. Через hyperterminal вижу следующее
ST,GS,ї, 0.215 kg - это выдают bw 15
ST,NT,Ѕ, 2.60 kg - это выдают bw 60
Третий знак в терминале выглядит как смайлик со значком справа. Как я понимаю все дело во втором знаке. Вопрос как это можно привезти в соответствие.
14.10.2015 16:27
akonev
 
это с одинаковым весом на весах и при одинаковых настройках ???

я смотрю, с BW15 вы снимаете вес брутто, с BW60 вес нетто
14.10.2015 16:32
akonev
 
первая же - идиотская, знаю - мысль: на пустых BW-60 нажать кнопку >Т< (сбросить тару) :)
15.10.2015 08:36
kosta
 
Вес разный, настройки одинаковые. Когда подключаю BW 60 к принтеру он печает вес без целых кг, а гр понижает на разряд. Т.е. если на весах 5,4 кг, он печатает 0,04кг. С BW 15 все нормально. Через hyperterminal смотрел что отправляют и те и те весы, что бы увидеть разницу в посылках. Получилось вес оба отправляют правильный, а посылки отличаются вторым и третим символом.
15.10.2015 10:20
akonev
 
я уже второй раз не понял про второй и третий символы посылки )))
смотрю в сообщение и вижу второй и третий символы: буква Т и запятая
Цитата:
kosta ST,GS,ї, 0.215 kg - это выдают bw 15
ST,NT,Ѕ, 2.60 kg - это выдают bw 60
прошу ткнуть пальцем, что имеется в виду.

и не увидел ответ: это посылки с одинаковым весом на весах?
сравнивать надо всё-таки в одинаковых условиях

для большей одинаковости предлагаю кнопкой G/N переключать bw 60 в режим взвешивания с тарой (брутто), чтобы получить такое же начало посылки как на bw 15: ST,GS,
одновременно у тебя должен поменяться и восьмой байт (символ после смайлика). расскажи, какой он стал.

символ после ST,GS, - белый смайлик - он всегда одинаковый, это SOH (шестнадцетиричный код 01) = "начало заголовка"

вот то, что после него (восьмой байт посылки) - интереснее. это собственно заголовок - байт флагов.
надо находить его код в таблице ASCII и переводить в двоичное представление (проще всего виндовым калькулятором в режиме "программист")

значение битов по документации:
7 - всегда принимает значение "1"
6 - Состояние стабильности
5 - Масса больше верхнего предела (в режиме дозирования)
4 - Масса меньше верхнего предела (в режиме дозирования)
3 - Усреднение массы
2 - Масса брутто
1 - Тара
0 - Нуль

Все посылки из весов в HyperTerminal лучше писать с указанием показаний дисплея (вес, индикаторы STABLE, ->0, NET, SUM, HOLD, LO, HI, PCS, TARE)
15.10.2015 10:33
akonev
 
у меня родилась версия, что всё дело в разной дискретности весов.
у bw 15 дискретность индикации 5 грамм
у bw 60 - 20 грамм. то есть bw 60 конструктивно не могут получить вес с точностью три знака после запятой. и поэтому всегда передают 2 знака после запятой.

скорее всего, когда вы получите одинаковый байт флагов и взвесите одинаковый вес, то увидите такую картинку:
всё начало посылки одинаковое, НО! одинаковый вес отображается по-разному.
например, для веса 5.4 кг
___5.400
____5.40

программа в принтере, вероятно, толкует первые четыре знака в этом поле (или третий и четвертый знак) как килограммы, пятый пропускает (там десятичная точка), 6й-7й-8й знаки толкуются как граммы.

принтер не видит килограммы, потому что они попали в то место, где должна быть точка.
принтер видит, что с весов прилетело .40 грамм
не знаю, как там программа написана, но судя по описанию происходящего, она явно переводит для себя точку как ещё один нолик. то есть 040 грамм.

для проверки версии взвесьте что-то тяжелее 10 кг. для веса, к примеру, 15.700 принтер напечатает 1.070.

если подтвердится - оставляйте в покое весы и дальше разбирайтесь с программой в принтере.
16.10.2015 08:38
kosta
 
Акоnev, судя по всему вы правы. Большое спасибо, помогли. Теперь понимаю что трясти. Спасибо еще раз.
Часовой пояс GMT +3, время: 05:56.

Форум на базе vBulletin®
Copyright © Jelsoft Enterprises Ltd.
В случае заимствования информации гипертекстовая индексируемая ссылка на Форум обязательна.