On-line: Andrey, гостей 1. Всего: 2 [подробнее..]
АвторСообщение
администратор




Пост N: 392
Зарегистрирован: 17.05.05
ссылка на сообщение  Отправлено: 06.10.06 14:01. Заголовок: Com_read ?


Имеются электроные весы с возможностью связи с компом по COM порту.
Родная скорость обмена 14400
Посылаю в порт нужную команду , в ответ теоретически должен получить 9 байт.
Пример в 16 виде 00 00 00 00 00 00 00 77 0D
Получив 00 00 77 и преобазовав его в DEC/100 получаю вес 1.19 кг
Где OD признак конца передачи. В 8 ,7 ,6 байтах лежит сам вес.
Иногда в эти 9 байт попадает не понятно откуда взявшийся мусор.
Например мы ждем 00 00 00 00 00 00 00 77 0D а реально получаем
00 00 00 00 АА 00 FF 00 FF FF FF FF 00 77 0D
Как с этим бороться ?
Считываю так com_read(cport,com_count(cport)) , где cport номер COM порта + дальнейшая обработка
на символ конца и тд
Как от хлама избавиться , потому как изредка, но бывает что программа считывает не верный вес ?

Спасибо: 0 
ПрофильЦитата Ответить
Ответов - 19 [только новые]


администратор




Пост N: 393
Зарегистрирован: 17.05.05
ссылка на сообщение  Отправлено: 06.10.06 14:59. Заголовок: Re:


Может есть какая то другая библиотека для Clipper по работе с портами ?

Спасибо: 0 
ПрофильЦитата Ответить



Пост N: 7
Зарегистрирован: 22.03.06
ссылка на сообщение  Отправлено: 06.10.06 15:25. Заголовок: Re:


Dima пишет:

 цитата:
Как от хлама избавиться , потому как изредка, но бывает что программа считывает не верный вес ?



А не шлют ли весы вместе с весом и статус (вес стабилен/не стабилен)?
Если нет такой возможности можно самому смоделировать такой статус
например пока три подряд считанных значения веса не будут равны.
У меня стабильность веса проверяется по статусу с весов,
функции работы с портом - тулсовские, пробовал еще IOLIB.


Спасибо: 0 
ПрофильЦитата Ответить



Пост N: 24
Зарегистрирован: 07.08.06
ссылка на сообщение  Отправлено: 06.10.06 15:37. Заголовок: Re:


У меня обмен идёт не с весами, а с терминалом для считывания бонусных карт по протоколу UNIPOS. Так вот: когда я принимаю от терминала любое сообщение, то в конце идёт контрольный байт, по которому можно проверить, что строка передана именно та, которую я получил. У тебя, как я понял, контрольный байт "от весов" не передается. Но ты сказал, что вес содержится в байтах 6,7 и 8 (самый левый байт имеет номер = 1). Что тогда должно быть в других байтах ? Если ТОЛЬКО нули, то мусор с большой вероятностью можно отсечь именно этим правилом (т.к. он, скорее всего, не будет "выбирать", в какие байты ему записаться). Понятно, что это не решение проблемы, но другого в голове пока нет.


Спасибо: 0 
ПрофильЦитата Ответить
администратор




Пост N: 394
Зарегистрирован: 17.05.05
ссылка на сообщение  Отправлено: 06.10.06 16:23. Заголовок: Re:


p519446 пишет:

 цитата:
когда я принимаю от терминала любое сообщение, то в конце идёт контрольный байт,


Виноват , не правильно я описал , контрольная сумма там есть (склероз)
[реклама вместо картинки]

Кстати фирменная прога из 5 снятий только 2 раза снимает вес а 3 раза пишет что ошибка снятия.

kia пишет:

 цитата:
например пока три подряд считанных значения веса не будут равны.


А это идея :)

Вообщем пока временно увеличили задержку с 200 мс до 210........

Спасибо: 0 
ПрофильЦитата Ответить



Пост N: 8
Зарегистрирован: 22.03.06
ссылка на сообщение  Отправлено: 06.10.06 16:55. Заголовок: Re:


Dima пишет:

 цитата:
Вообщем пока временно увеличили задержку с 200 мс до 210........



Проверку стабильности веса все равно делать желательно
т.к. всегда есть внешние воздействия на весы (прошел рядом человек/машина/паровоз...)
и записался ошибочный вес

Спасибо: 0 
ПрофильЦитата Ответить



Пост N: 25
Зарегистрирован: 07.08.06
ссылка на сообщение  Отправлено: 06.10.06 17:29. Заголовок: Re:


Имхо, можно просто игнорировать любое сообщение от весов, если контрольный байт не совпадает с вычисленным. И не менять задержку (мусор туда всё равно попадать будет).
BTW, а там кабель от весов до компа какой длины ? Может, он чересчур длинноват ? ;)

Спасибо: 0 
ПрофильЦитата Ответить
администратор




Пост N: 395
Зарегистрирован: 17.05.05
ссылка на сообщение  Отправлено: 06.10.06 18:49. Заголовок: Re:


p519446 пишет:

 цитата:
а там кабель от весов до компа какой длины ?


да не кабель нормальный ;) метр с лишним не больше....

Всем спасибо , буду думать !!!

Спасибо: 0 
ПрофильЦитата Ответить
постоянный участник


Пост N: 52
Зарегистрирован: 13.10.05
ссылка на сообщение  Отправлено: 09.10.06 09:08. Заголовок: Re:


Я для работы с платформенными весами я использовал библиотеки Tools для Сlipper5.1
Стабилизацию проверял просто - сравнивал значение получаемое из порта, через какой-то промежуток времени и если оно не менялось то это и есть вес.

Спасибо: 0 
ПрофильЦитата Ответить
администратор




Пост N: 401
Зарегистрирован: 17.05.05
ссылка на сообщение  Отправлено: 22.10.06 14:14. Заголовок: Re:


Еще вопросик.
Обнаружил что если открыть порт и что то в него пихануть а затем его закрыть Com_close ,
то на самом деле порт не закрывается и закрывается только тогда когда полностью выходим
из программы. Во как
Для этого теста использовал PortMon от sysinternals.com
В приниципе это вроде ни как не влияет на работу программы но тем не менее не порядок.
Как решить ?

Спасибо: 0 
ПрофильЦитата Ответить



Пост N: 1
Зарегистрирован: 23.10.06
ссылка на сообщение  Отправлено: 23.10.06 16:01. Заголовок: Re:


а что ты понимаешь под "закрыть порт"? и что значит "он не закрывается"?

тулсовые ком-функции у меня тоже иногда врали на фискальном регистраторе) ИНОГДА

возможно, они просто глючные

ЗЫ. Дима! У меня вроде раньше на нике suv2 был пароль ************* Теперь не пускает!

Спасибо: 0 
ПрофильЦитата Ответить
администратор




Пост N: 403
Зарегистрирован: 17.05.05
ссылка на сообщение  Отправлено: 23.10.06 17:02. Заголовок: Re:


suv пишет:

 цитата:
а что ты понимаешь под "закрыть порт"? и что значит "он не закрывается"?


Грю же чекал этой прогой PortMon от sysinternals.com , там все видно ;)
А проверялась моя прога на Clipper и фирменная под Windows для этих весов , так вот она сняла
вес и порт закрыла , у меня фиг ;) Все видно по монитору PortMon.

PS
Ник suv2 поправил ;)

Спасибо: 0 
ПрофильЦитата Ответить



Пост N: 10
Зарегистрирован: 23.10.06
ссылка на сообщение  Отправлено: 23.10.06 17:20. Заголовок: Re:


как поправил? где поправил? с каким паролем мне заходить?

что тебе от того, что там кто-то что-то показывает?

байты продолжают поступать, если ты порт закрыл?

и зачем вообще его закрывать - ну совершенно непонятно

Спасибо: 0 
ПрофильЦитата Ответить
администратор




Пост N: 404
Зарегистрирован: 17.05.05
ссылка на сообщение  Отправлено: 23.10.06 17:24. Заголовок: Re:


suv
Заходи с suv2

Спасибо: 0 
ПрофильЦитата Ответить



Пост N: 33
Зарегистрирован: 07.08.06
ссылка на сообщение  Отправлено: 24.10.06 00:04. Заголовок: Re:


У меня порт также НЕ закрывается до тех пор, пока прогу полностью не завершить. И не "иногда", а ВСЕГДА. И когда кассиры в конце дня хотят запустить какую-то еще "штатную" хрень для обмена через ТОТ ЖЕ com-порт с тем же устройством (терминалом считывания магнитно-чиповых карт), то эта штатная прога НЕ может открыть ком-порт.
Может, это не клипперная ф-ция врёт, а виндусовая ДОС-машина (vdm.exe) такая "умная" ? Я в ней еще и не такую странность знаю (когда открытые файлы можно "отложенно грохнуть" в другом окошке -- SUV не даст соврать, тоже натыкался на это...)

Спасибо: 0 
ПрофильЦитата Ответить



Пост N: 11
Зарегистрирован: 09.07.08
ссылка на сообщение  Отправлено: 08.12.08 12:17. Заголовок: Народ, а не подкине..


Народ,
а не подкинете любезно примерную структуру проги, которая опрашивает счётную машинку банкнот, а то я сам никогда не пользовался ф-ями COM_*. Ведь кроме открыть-считать-закрыть надо ещё видимо проверять готвоность машинки, начало и конец передачи и т.п.?
Заранее благодарен.

Спасибо: 0 
ПрофильЦитата Ответить
администратор




Пост N: 1144
Зарегистрирован: 17.05.05
ссылка на сообщение  Отправлено: 08.12.08 15:54. Заголовок: PRG_MAN Для этого н..


PRG_MAN
Для этого нужно иметь протокол обмена этой счетной машинки.

Спасибо: 0 
ПрофильЦитата Ответить



Пост N: 12
Зарегистрирован: 09.07.08
ссылка на сообщение  Отправлено: 08.12.08 17:52. Заголовок: Протокол узнаю. Толь..


Протокол узнаю. Только принципиально это что-то изменит?
Не хочется изобретать велосипед

Спасибо: 0 
ПрофильЦитата Ответить
администратор




Пост N: 1145
Зарегистрирован: 17.05.05
ссылка на сообщение  Отправлено: 08.12.08 18:05. Заголовок: PRG_MAN пишет: Толь..


PRG_MAN пишет:

 цитата:
Только принципиально это что-то изменит?


Нужно смотреть на протокол обмена.
я связывал кассовые аппараты , весы и еще всякое железо и везде были разные
подходы в зависимости от протокола обмена.

Спасибо: 0 
ПрофильЦитата Ответить



Пост N: 13
Зарегистрирован: 09.07.08
ссылка на сообщение  Отправлено: 10.12.08 09:14. Заголовок: Хорошо.Тогда конкрет..


Хорошо.Тогда конкретнее пообщаемся попозже, когда принесут машинку.

Спасибо: 0 
ПрофильЦитата Ответить
Ответ:
1 2 3 4 5 6 7 8 9
большой шрифт малый шрифт надстрочный подстрочный заголовок большой заголовок видео с youtube.com картинка из интернета картинка с компьютера ссылка файл с компьютера русская клавиатура транслитератор  цитата  кавычки моноширинный шрифт моноширинный шрифт горизонтальная линия отступ точка LI бегущая строка оффтопик свернутый текст

показывать это сообщение только модераторам
не делать ссылки активными
Имя, пароль:      зарегистрироваться    
Тему читают:
- участник сейчас на форуме
- участник вне форума
Все даты в формате GMT  3 час. Хитов сегодня: 6
Права: смайлы да, картинки да, шрифты да, голосования нет
аватары да, автозамена ссылок вкл, премодерация откл, правка нет