|
|
|
Получение данных с весов через rs232
|
|||
|---|---|---|---|
|
#18+
Здравствуйте Уважаемые ! Прошу не пинать если вопрос уже поднимался, лучше ткните носом :( Суть задачи: Есть весы производства ФизТех с весовым терминалом Т3. Программа (серверOLE automation VES_CONTROL) предлагаемая производителем для получения веса на компе не устраивает. По этому очень чешутся руки написать самому внешнюю компоненту для 1С на Delphi. Опыт программирования есть (хоть и не большой), но давно не занимался. В документации к весам нашел следующее: Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. Хотелось бы сразу спросить может у кого есть исходники, былоб вообще шоколадно ;) А так застопорился на мысли как эту строку (0A 74 10 00 A2 0D) преобразовать в человеческий вид. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.09.2011, 17:31 |
|
||
|
Получение данных с весов через rs232
|
|||
|---|---|---|---|
|
#18+
*keeper*, 0A 74 10 00 A2 0D = 10.74 классика а лучше себе не взрывать мозг, а использовать их родной драйвер, в случае косячков будет на кого свалить :) поверь, я тож в свое время такой фигней занимался :)) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.09.2011, 17:36 |
|
||
|
Получение данных с весов через rs232
|
|||
|---|---|---|---|
|
#18+
Так вопрос-то в чём ? Ты не умеешь работать с байтами/битами ? Складируешь принятые байты в буфер, пока не встретишь 0D, а дальше смотришь, что там лежит. Преобразовать двоично-десятичное значение "74 10 00" в 10.74 сумеешь ? )))) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.09.2011, 17:42 |
|
||
|
Получение данных с весов через rs232
|
|||
|---|---|---|---|
|
#18+
demian111*keeper*, 0A 74 10 00 A2 0D = 10.74 классика а лучше себе не взрывать мозг, а использовать их родной драйвер, в случае косячков будет на кого свалить :) поверь, я тож в свое время такой фигней занимался :)) Ну, задачка-то простая. Только тебе ещё нужно анализировать и предпоследний байт, бит D7 - там знак числа Я в 2004 году делал интерфейс к весам CAS, работают до сих пор. А их COM-объект глючил по страшному. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.09.2011, 17:43 |
|
||
|
Получение данных с весов через rs232
|
|||
|---|---|---|---|
|
#18+
defecatorА их COM-объект глючил по страшному. Странно, обычно на косяки производитель реагирует. хотя в данном случае протокол обмена простой, и тем более документирован, может ты и прав. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.09.2011, 17:51 |
|
||
|
Получение данных с весов через rs232
|
|||
|---|---|---|---|
|
#18+
defecatorА их COM-объект глючил по страшному. Спрашивается: задлянафига их вообще делают? Для асинхронного (a-la RS232) обмена ничего лучше непосредственной работы с портом вроде бы нет... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.09.2011, 18:13 |
|
||
|
Получение данных с весов через rs232
|
|||
|---|---|---|---|
|
#18+
Соколинский БорисdefecatorА их COM-объект глючил по страшному. Спрашивается: задлянафига их вообще делают? Для асинхронного (a-la RS232) обмена ничего лучше непосредственной работы с портом вроде бы нет... у нас сейчас похожая задача, но надо данные как-то выгрызать после запроса на апач (т.е. тынца в ссылку на страничке). а сервер и машина с сомпортом - разные. пхп говорят можно сом/оле юзать = при определенных насторойках и т.п. пока идея есть поставить дельфовый ехе, который будет слушать сом-порт (локально) и порт - в машине. шоб по запросу с сервера мочь отдать данные (через сокеты). вроде если дрова умеют сом - можно тоже самое реализовывать и через пхп. может на этот случай и делают? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.09.2011, 18:44 |
|
||
|
Получение данных с весов через rs232
|
|||
|---|---|---|---|
|
#18+
Вау! Не ожидал , что так быстро ответите. Спасибо! defecatorТак вопрос-то в чём ? Ты не умеешь работать с байтами/битами ? Складируешь принятые байты в буфер, пока не встретишь 0D, а дальше смотришь, что там лежит. Преобразовать двоично-десятичное значение "74 10 00" в 10.74 сумеешь ? )))) Хотелось хоть одним глазком увидеть наглядный примерчик. Получения этой самой строки и её дальнейшего разбора. (с чужими велосипедами всегда легче ;)) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.09.2011, 19:14 |
|
||
|
Получение данных с весов через rs232
|
|||
|---|---|---|---|
|
#18+
demian111*keeper*, 0A 74 10 00 A2 0D = 10.74 классика а лучше себе не взрывать мозг, а использовать их родной драйвер, в случае косячков будет на кого свалить :) поверь, я тож в свое время такой фигней занимался :)) Их родной очень не устраивает. Его бы доработать, добавить универсальности и ошибки исправить. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.09.2011, 19:16 |
|
||
|
Получение данных с весов через rs232
|
|||
|---|---|---|---|
|
#18+
defecatordemian111*keeper*, 0A 74 10 00 A2 0D = 10.74 классика а лучше себе не взрывать мозг, а использовать их родной драйвер, в случае косячков будет на кого свалить :) поверь, я тож в свое время такой фигней занимался :)) Ну, задачка-то простая. Только тебе ещё нужно анализировать и предпоследний байт, бит D7 - там знак числа Я в 2004 году делал интерфейс к весам CAS, работают до сих пор. А их COM-объект глючил по страшному. Может поделитесь своим ноу-хау? Буду премного благодарен. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.09.2011, 19:18 |
|
||
|
Получение данных с весов через rs232
|
|||
|---|---|---|---|
|
#18+
*keeper*Хотелось хоть одним глазком увидеть наглядный примерчик. А в чём проблема? В MSDN приведён очень даже наглядный пример... Posted via ActualForum NNTP Server 1.4 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.09.2011, 19:57 |
|
||
|
Получение данных с весов через rs232
|
|||
|---|---|---|---|
|
#18+
Dimitry Sibiryakov*keeper*Хотелось хоть одним глазком увидеть наглядный примерчик. А в чём проблема? В MSDN приведён очень даже наглядный пример... Ткните носом пожалуйста. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.09.2011, 20:35 |
|
||
|
Получение данных с весов через rs232
|
|||
|---|---|---|---|
|
#18+
*keeper*defecatorпропущено... Ну, задачка-то простая. Только тебе ещё нужно анализировать и предпоследний байт, бит D7 - там знак числа Я в 2004 году делал интерфейс к весам CAS, работают до сих пор. А их COM-объект глючил по страшному. Может поделитесь своим ноу-хау? Буду премного благодарен. Код исключительно под весы CAS, там совсем другой протокол обмена. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.09.2011, 20:58 |
|
||
|
Получение данных с весов через rs232
|
|||
|---|---|---|---|
|
#18+
*keeper*Ткните носом пожалуйста. http://msdn.microsoft.com/en-us/library/aa363196%28v=VS.85%29.aspx Posted via ActualForum NNTP Server 1.4 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.09.2011, 21:24 |
|
||
|
Получение данных с весов через rs232
|
|||
|---|---|---|---|
|
#18+
Dimitry Sibiryakov, спасибо конечно, но думаю самостоятельно не разберусь. Там примеры на C ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.09.2011, 08:32 |
|
||
|
Получение данных с весов через rs232
|
|||
|---|---|---|---|
|
#18+
*keeper*Dimitry Sibiryakov, спасибо конечно, но думаю самостоятельно не разберусь. Там примеры на C Берешь TurboPower AsyncPro, там есть компонент для работы с последовательным портом. Изучаешь примеры и начинаешь принимать поток данных от весов. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.09.2011, 10:00 |
|
||
|
Получение данных с весов через rs232
|
|||
|---|---|---|---|
|
#18+
defecator, Там примеров очень много, но они все по моему не в тему. Я вот нашел компонент TComPort вот пытаюсь что-то получить. Никак не пойму как работать с получеными данными. Открываю пример , который шел вместе с компонентой. Есть исходники приложения ComExample Вижу PortMon'ом вот такое 102319 10:47:15 ComExample.exe IRP_MJ_READ Serial0 Length 6 102319 10:47:15 SUCCESS Length 6: 0A 45 40 01 A2 0D на табло терминала -140,50 кг вроде все так но как мне с этими данными работать не пойму в терминал валятся символы ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.09.2011, 10:54 |
|
||
|
Получение данных с весов через rs232
|
|||
|---|---|---|---|
|
#18+
defecatorБерешь TurboPower AsyncPro, там есть компонент для работы с последовательным портом. Изучаешь примеры и начинаешь принимать поток данных от весов.Можно даже фришный TcomPort. Успешно использовал для работы с весами CAS. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.09.2011, 11:17 |
|
||
|
Получение данных с весов через rs232
|
|||
|---|---|---|---|
|
#18+
LSVdefecatorБерешь TurboPower AsyncPro, там есть компонент для работы с последовательным портом. Изучаешь примеры и начинаешь принимать поток данных от весов.Можно даже фришный TcomPort TurboPower AsyncPro на 300% фришный )))) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.09.2011, 11:35 |
|
||
|
Получение данных с весов через rs232
|
|||
|---|---|---|---|
|
#18+
*keeper*defecator, Там примеров очень много, но они все по моему не в тему. Я вот нашел компонент TComPort вот пытаюсь что-то получить. Никак не пойму как работать с получеными данными. Открываю пример , который шел вместе с компонентой. Есть исходники приложения ComExample Вижу PortMon'ом вот такое 102319 10:47:15 ComExample.exe IRP_MJ_READ Serial0 Length 6 102319 10:47:15 SUCCESS Length 6: 0A 45 40 01 A2 0D на табло терминала -140,50 кг вроде все так но как мне с этими данными работать не пойму в терминал валятся символы В общем, мне кажется, что, наверное, пора в форум работа или нанять программиста.... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.09.2011, 11:36 |
|
||
|
Получение данных с весов через rs232
|
|||
|---|---|---|---|
|
#18+
defecator, Мне хочется самому разобраться. Но знаний и практики не хватает. По этому и обратился за помощью к Вам. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.09.2011, 11:42 |
|
||
|
Получение данных с весов через rs232
|
|||
|---|---|---|---|
|
#18+
defecator, Хотя бы подскажите как работать с получеными данными. Ну вот получил я строку из порта, что с ней дальше надо сделать, чтоб разложить по байтам и по битам (на сколько я понял надо четвертый байт разбирать по битам) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.09.2011, 11:46 |
|
||
|
Получение данных с весов через rs232
|
|||
|---|---|---|---|
|
#18+
*keeper*102319 10:47:15 SUCCESS Length 6: 0A 45 40 01 A2 0D на табло терминала -140,50 кг вроде все так но как мне с этими данными работать не пойму в терминал валятся символы Перевести из BCD формата в двоичный, поставить правильно десятичную точку и знак: (dat[1]+dat[2]*100+dat[3]*10000)*exp(-(dat[4] and $07)*ln(10))*(1-((dat[4] and $80) shr 6 )) где dat:array[0..5] of byte - данные из порта. Примерно так - не проверял ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.09.2011, 11:52 |
|
||
|
Получение данных с весов через rs232
|
|||
|---|---|---|---|
|
#18+
*keeper*defecator, Хотя бы подскажите как работать с получеными данными. Ну вот получил я строку из порта, что с ней дальше надо сделать, чтоб разложить по байтам и по битам (на сколько я понял надо четвертый байт разбирать по битам) Ты получаешь не строку, а просто отдельные байты. Складируешь их в некий буфер, пока не встретишь $0D. Не забывать, что буфер может переполняться - мало ли, какая ошибка будет. Если переполнение - сбрасываешь буфер, и копишь заново. НУ я не знаю, как тебе ещё объяснить.....Как работать с массивами ? С индексами массивов ? Могу ещё посоветовать начать читать книжки по Object Pascal.... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.09.2011, 11:54 |
|
||
|
Получение данных с весов через rs232
|
|||
|---|---|---|---|
|
#18+
x1ca4064*keeper*102319 10:47:15 SUCCESS Length 6: 0A 45 40 01 A2 0D на табло терминала -140,50 кг вроде все так но как мне с этими данными работать не пойму в терминал валятся символы Перевести из BCD формата в двоичный, поставить правильно десятичную точку и знак: (dat[1]+dat[2]*100+dat[3]*10000)*exp(-(dat[4] and $07)*ln(10))*(1-((dat[4] and $80) shr 6 )) где dat:array[0..5] of byte - данные из порта. Примерно так - не проверял Sorry, формула преобразования bcd-bin содержит ошибку, но я уверен, что Вы разберетесь. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.09.2011, 00:32 |
|
||
|
Получение данных с весов через rs232
|
|||
|---|---|---|---|
|
#18+
x1ca4064x1ca4064пропущено... Перевести из BCD формата в двоичный, поставить правильно десятичную точку и знак: (dat[1]+dat[2]*100+dat[3]*10000)*exp(-(dat[4] and $07)*ln(10))*(1-((dat[4] and $80) shr 6 )) где dat:array[0..5] of byte - данные из порта. Примерно так - не проверял Sorry, формула преобразования bcd-bin содержит ошибку, но я уверен, что Вы разберетесь. Нет, похоже без вашей помощи не обойтись. Помогите, если не трудно конечно. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.09.2011, 10:24 |
|
||
|
Получение данных с весов через rs232
|
|||
|---|---|---|---|
|
#18+
*keeper*x1ca4064пропущено... Sorry, формула преобразования bcd-bin содержит ошибку, но я уверен, что Вы разберетесь. Нет, похоже без вашей помощи не обойтись. Помогите, если не трудно конечно. Ты для начала хотя бы сделай корректный приём данных от весов..... А разбор принятого - дело десятое ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.09.2011, 10:42 |
|
||
|
Получение данных с весов через rs232
|
|||
|---|---|---|---|
|
#18+
defecator, Что значит корректный? Данные с весов я получаю, даже в том же примере с компонентой. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.09.2011, 10:55 |
|
||
|
Получение данных с весов через rs232
|
|||
|---|---|---|---|
|
#18+
*keeper*defecator, Что значит корректный? Данные с весов я получаю, даже в том же примере с компонентой. Корректный - это значит со складыванием в буфер, контролем возможного переполнения при сбое синхронизации (ну вот не принялся $0D) и определением того факта, что данные в буфере готовы для дальнейшего анализа. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.09.2011, 11:05 |
|
||
|
Получение данных с весов через rs232
|
|||
|---|---|---|---|
|
#18+
defecator, Тогда ответьте на вопрос. Каков должен быть размер буфера, с учетом того что устройство посылает информация размером 6 байт? Такой же - 6 байт? И при приеме сначала анализировать первый и последний? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.09.2011, 11:09 |
|
||
|
Получение данных с весов через rs232
|
|||
|---|---|---|---|
|
#18+
*keeper*defecator, Тогда ответьте на вопрос. Каков должен быть размер буфера, с учетом того что устройство посылает информация размером 6 байт? Такой же - 6 байт? И при приеме сначала анализировать первый и последний? 6 байт, и сделать буфер кольцевой - как самый простой вариант. Добавление нового байта в конец буфера выталкивает самый старый. Приняли $0D - буфер готов для анализа. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.09.2011, 11:12 |
|
||
|
Получение данных с весов через rs232
|
|||
|---|---|---|---|
|
#18+
defecatorДобавление нового байта в конец буфера выталкивает самый старый. Зачем? Если посылка фиксированной длины, то достаточно сказать ReadFile чтобы читал шесть байт и проверять, что их пришло действительно шесть. Он вернётся когда примет все шесть (или истечёт таймаут). Posted via ActualForum NNTP Server 1.4 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.09.2011, 11:30 |
|
||
|
Получение данных с весов через rs232
|
|||
|---|---|---|---|
|
#18+
Dimitry SibiryakovdefecatorДобавление нового байта в конец буфера выталкивает самый старый. Зачем? Если посылка фиксированной длины, то достаточно сказать ReadFile чтобы читал шесть байт и проверять, что их пришло действительно шесть. Он вернётся когда примет все шесть (или истечёт таймаут). Ну это если юзать голый API. А если юзать AsyncPro или другой компонент, то они, как правило, возвращают по событию байты по мере их поступления из порта. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.09.2011, 11:48 |
|
||
|
Получение данных с весов через rs232
|
|||
|---|---|---|---|
|
#18+
x1ca4064, (dat[1]+dat[2]*100+dat[3]*10000)*exp(-(dat[4] and $07)*ln(10))*(1-((dat[4] and $80) shr 6 )) Повашей формуле данные не верные по тому что они в десятичном формате, а нужно их представить в 16-ном Как видно на картинке по формуле показания -164,69 , а на приборе -140,45 Если строку 10 69 64 1 162 13 представить в 16-ном виде будет 0A 45 40 01 A2 0D что как раз будет соответствовать действительности - 140,45 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.09.2011, 13:41 |
|
||
|
Получение данных с весов через rs232
|
|||
|---|---|---|---|
|
#18+
*keeper*x1ca4064, (dat[1]+dat[2]*100+dat[3]*10000)*exp(-(dat[4] and $07)*ln(10))*(1-((dat[4] and $80) shr 6 )) Повашей формуле данные не верные по тому Хм....Похоже на претензию ? ))))) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.09.2011, 14:06 |
|
||
|
Получение данных с весов через rs232
|
|||
|---|---|---|---|
|
#18+
defecator*keeper*x1ca4064, (dat[1]+dat[2]*100+dat[3]*10000)*exp(-(dat[4] and $07)*ln(10))*(1-((dat[4] and $80) shr 6 )) Повашей формуле данные не верные по тому Хм....Похоже на претензию ? ))))) Я Вас умоляю ;) не смешите мои подковы (c) :) Хочу действительно разобраться (хотя в положительном результате очень сомневаюсь). Опыта и так мало, а с байтами/битами вообще не доводилось работать (а уж с их математикой вобще напряг). ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.09.2011, 16:04 |
|
||
|
Получение данных с весов через rs232
|
|||
|---|---|---|---|
|
#18+
defecator, Подскажите. Если переменной присваивать значение 16-ричное, то какого типа она должна быть? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.09.2011, 16:08 |
|
||
|
Получение данных с весов через rs232
|
|||
|---|---|---|---|
|
#18+
*keeper*Если переменной присваивать значение 16-ричное, то какого типа она должна быть? Строкового. Шестнадцатиричные числа существуют только в строках. Но на самом деле тебе это не нужно. Описанный в первом же посте "двоично-десятичный код" означает, что каждые четыре бита (так же именуемые нибблом) содержат одну десятичную цифру. Posted via ActualForum NNTP Server 1.4 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.09.2011, 16:20 |
|
||
|
Получение данных с весов через rs232
|
|||
|---|---|---|---|
|
#18+
*keeper*defecator, Подскажите. Если переменной присваивать значение 16-ричное, то какого типа она должна быть? вам не нужно присваивать 16-ричное значение. если пользуетесь справкой дельфи на символе $ нажмите F1 вы работаете с байтом byte. при присвоении байту значения - он все равно останется байтом. если у вас доюникодная дельфа, то символ char тот же байт. не поленитесь почитать про азы - двоичные операции, and, or, Xor, SHR и т.д. их всего пригоршня - зато потратив три часа вы избежите массы ошибок. переменные типа integer single кодируются так же байтами. я использовал вариантный рекорд для работы с "распарсиванием" этих переменных. ваш случай проще - парсить не нужно. и т.к. это ком порт - там нет "мегаскоростей". так что и "супер быстрый" код не нужен. достаточно работающего без ошибок. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.09.2011, 16:23 |
|
||
|
Получение данных с весов через rs232
|
|||
|---|---|---|---|
|
#18+
*keeper*[ Опыта и так мало, а с байтами/битами вообще не доводилось работать (а уж с их математикой вобще напряг). Что-то мне подсказывает, что начать надо с определения, что такое Бит и что такое Байт..... Потом перейти к операциям И, ИЛИ, сдвиги влево-вправо... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.09.2011, 16:29 |
|
||
|
Получение данных с весов через rs232
|
|||
|---|---|---|---|
|
#18+
defecator*keeper*[ Опыта и так мало, а с байтами/битами вообще не доводилось работать (а уж с их математикой вобще напряг). Что-то мне подсказывает, что начать надо с определения, что такое Бит и что такое Байт..... Потом перейти к операциям И, ИЛИ, сдвиги влево-вправо... я знаю что такое бит и байт и операции и, или слабо но помню ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.09.2011, 16:44 |
|
||
|
Получение данных с весов через rs232
|
|||
|---|---|---|---|
|
#18+
*keeper*Повашей формуле данные не верные по тому что они в десятичном формате, а нужно их представить в 16-ном С каждым dat[1],dat[2],dat[3] проделайте преобразование: 10*(x shr 4)+(x and $0F) - Может и получится... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.09.2011, 21:17 |
|
||
|
Получение данных с весов через rs232
|
|||
|---|---|---|---|
|
#18+
x1ca4064*keeper*Повашей формуле данные не верные по тому что они в десятичном формате, а нужно их представить в 16-ном С каждым dat[1],dat[2],dat[3] проделайте преобразование: 10*(x shr 4)+(x and $0F) - Может и получится... Я думаю, что в свете *keeper*я знаю что такое бит и байт и операции и, или слабо но помню твой совет пройдёт впустую ))))) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.09.2011, 22:32 |
|
||
|
Получение данных с весов через rs232
|
|||
|---|---|---|---|
|
#18+
Вот никак не пойму, каким образом 0A 45 40 01 A2 0D дешифруется в 140,45 :) Пусть даже #13#10#45#40#01#A2 А2 особенно смущает... А если просто, как в школе, "проюстировать"? Т.е. положить 1г - посмотреть, 2г - посмотреть, 3г - посмотреть, 5г - посмотреть, 10г - посмотреть, ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.09.2011, 23:14 |
|
||
|
Получение данных с весов через rs232
|
|||
|---|---|---|---|
|
#18+
GatorВот никак не пойму, каким образом 0A 45 40 01 A2 0D дешифруется в 140,45 :) Пусть даже #13#10#45#40#01#A2 А2 особенно смущает... А если просто, как в школе, "проюстировать"? Т.е. положить 1г - посмотреть, 2г - посмотреть, 3г - посмотреть, 5г - посмотреть, 10г - посмотреть, A2 - это байт с битами статусов. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.09.2011, 23:18 |
|
||
|
Получение данных с весов через rs232
|
|||
|---|---|---|---|
|
#18+
Типа как тут: авторНомер бита Содержимое бита D0 Три младших бита D1 определяют положение D2 десятичной точки D3 Флаг счетного режима D4 Флаг переполнения D5 Весы успокоены D6 Произведено тарирование D7 Знак числа ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.09.2011, 23:21 |
|
||
|
Получение данных с весов через rs232
|
|||
|---|---|---|---|
|
#18+
defecatorA2 - это байт с битами статусов. И что теперь, тупо его ловить в цикле, не кинув XOFF и не бросив CTS? хе-хе-хе ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.09.2011, 23:22 |
|
||
|
Получение данных с весов через rs232
|
|||
|---|---|---|---|
|
#18+
GatordefecatorA2 - это байт с битами статусов. И что теперь, тупо его ловить в цикле, не кинув XOFF и не бросив CTS? хе-хе-хе Зачем ? Ловить $0D - это конец пакета. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.09.2011, 23:23 |
|
||
|
Получение данных с весов через rs232
|
|||
|---|---|---|---|
|
#18+
ОК. А что такое $0A? Начало? Мне ближе интерпретация CRLF / LFCR То-то он в картинке три байта из четырёх показал кракозябрами. Нет чтобы нормальными пакетам... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.09.2011, 23:31 |
|
||
|
Получение данных с весов через rs232
|
|||
|---|---|---|---|
|
#18+
x1ca4064x1ca4064пропущено... Перевести из BCD формата в двоичный, поставить правильно десятичную точку и знак: (dat[1]+dat[2]*100+dat[3]*10000)*exp(-(dat[4] and $07)*ln(10))*(1-((dat[4] and $80) shr 6 )) где dat:array[0..5] of byte - данные из порта. Примерно так - не проверял Sorry, формула преобразования bcd-bin содержит ошибку, но я уверен, что Вы разберетесь. Видимо ошибка в определении положения десятичной точки. При переключении на терминале положения "," на экране бред какой-то получается. Разясните кто-нибудь вот эту часть формулы: exp(-(dat[4] and $07)*ln(10))*(1-((dat[4] and $80) shr 6 )) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 29.09.2011, 09:34 |
|
||
|
Получение данных с весов через rs232
|
|||
|---|---|---|---|
|
#18+
GatorОК. А что такое $0A? Начало? Мне ближе интерпретация CRLF / LFCR То-то он в картинке три байта из четырёх показал кракозябрами. Нет чтобы нормальными пакетам... Если сделать буфер кольцевой, то достаточно ловить приход $0D, а дальше анализировать уже буфер. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 29.09.2011, 09:59 |
|
||
|
Получение данных с весов через rs232
|
|||
|---|---|---|---|
|
#18+
defecatorЕсли сделать буфер кольцевой, то достаточно ловить приход $0D, а дальше анализировать уже буфер. Ага, и если из шести байт пропало по дороге три, то результаты будут - обхохочешься... Posted via ActualForum NNTP Server 1.4 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 29.09.2011, 11:02 |
|
||
|
Получение данных с весов через rs232
|
|||
|---|---|---|---|
|
#18+
Dimitry SibiryakovdefecatorЕсли сделать буфер кольцевой, то достаточно ловить приход $0D, а дальше анализировать уже буфер. Ага, и если из шести байт пропало по дороге три, то результаты будут - обхохочешься... А этот момент, как я уже сказал выше и повторю специально для тебя, не умеющего думать и читать: defecatorдостаточно ловить приход $0D, а дальше анализировать уже буфер ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 29.09.2011, 11:05 |
|
||
|
Получение данных с весов через rs232
|
|||
|---|---|---|---|
|
#18+
Dimitry SibiryakovdefecatorЕсли сделать буфер кольцевой, то достаточно ловить приход $0D, а дальше анализировать уже буфер. Ага, и если из шести байт пропало по дороге три, то результаты будут - обхохочешься... ну КС судя по описанию, тут в принципе нет, так что подход простой: три запроса, при состоянии "все установилось". сверка . определение "средневероятного" - и он суть правильный. а если это весы для взвешивания вагонов, то одно деление = 60кг ))))) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 29.09.2011, 11:07 |
|
||
|
Получение данных с весов через rs232
|
|||
|---|---|---|---|
|
#18+
JudeDimitry Sibiryakovпропущено... Ага, и если из шести байт пропало по дороге три, то результаты будут - обхохочешься... ну КС судя по описанию, тут в принципе нет, так что подход простой: три запроса, при состоянии "все установилось". сверка . определение "средневероятного" - и он суть правильный. а если это весы для взвешивания вагонов, то одно деление = 60кг ))))) определение "средневероятного"??? Это еще зачем? Не проще ли брать стабильный вес и передавать его программе? ЗЫ Весы обычные платформенные, до 300 кг вроде, может и меньше. Сечас терминал работает без платформы по этому показывает отрицательное значение. Есть интересное наблюдение, если по разъему подключения платформы на обратной стороне терминала провести пальцем - показания меняются. Мне для тестов больше ничего и не надо. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 29.09.2011, 15:33 |
|
||
|
Получение данных с весов через rs232
|
|||
|---|---|---|---|
|
#18+
*keeper*Judeпропущено... ну КС судя по описанию, тут в принципе нет, так что подход простой: три запроса, при состоянии "все установилось". сверка . определение "средневероятного" - и он суть правильный. а если это весы для взвешивания вагонов, то одно деление = 60кг ))))) определение "средневероятного"??? Это еще зачем? Не проще ли брать стабильный вес и передавать его программе? ЗЫ Весы обычные платформенные, до 300 кг вроде, может и меньше. Сечас терминал работает без платформы по этому показывает отрицательное значение. Есть интересное наблюдение, если по разъему подключения платформы на обратной стороне терминала провести пальцем - показания меняются. Мне для тестов больше ничего и не надо. Есть требования стандартов (если вам придется проходить сертификацию, то их придется соблюдать). для упомянутого вам необходимо ДОКАЗАТЬ что ваше средство визуализации использует(отображает) корректные данные. обычно, например если вы имеете тензодатчик и пишите ПО для контроллера, то вы выбираете 5-6 показаний, проводите автоколибровку(или не проводите, тогда переколибровка - не ваша проблема, а вот ошибка при колибровке - ваша), и потом выбраковываете "лишние" данные. тут могут и не остановившиеся переходные процессы, и наводки, и скачки напряжения и черти шо. как правило если датчик "умный" все это делают граждане разработчики датчика и вам дают "поверенный" сигнал. но за "комутацию" т.е. то как датчик и ваша машина связаны, разработчики не отвечают. например была похожая задача, где сигнальное заземление, присоединили к "земле" на которой висели ТЭНы, сварочные аппараты, станки и т.п. данные я получал стабильно и без ошибок, пока не "подрубали" что-то, что сводило мои усилия на нет.(временами вместе с компом накрывало). так что в зависимости от того, что ТРЕБУЕТСЯ можно (а иногда и нужно) делать контрольную сумму (в вашем случае не поможет, т.к. нет у вас на той стороне контрольной суммы). Иногда можно брать результаты трех-пяти последних замеров и давать усредненный результат, дабы, например, если иногда "стреляет" ложный результат, выбраковать его двумя - тремя "правильными". например на одном датчике давления, время от времени выдавало +40% показания. (типало его). если ничего из этого не надо - то вам же легче. ни гистерезис не надо учитывать ни еще многое чего по теории измерения. остается изучить вопросы: - что делать если часть байт "потерялось" (не принял буфер - глюкнуло где-то сами весы, на шнур кто-то наступил)))) - что делать если весы "зависли". (или сом-порт завис). ну и остальное всплывет в процессе. Желаю удачи. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 29.09.2011, 16:12 |
|
||
|
Получение данных с весов через rs232
|
|||
|---|---|---|---|
|
#18+
*keeper*Judeпропущено... ну КС судя по описанию, тут в принципе нет, так что подход простой: три запроса, при состоянии "все установилось". сверка . определение "средневероятного" - и он суть правильный. а если это весы для взвешивания вагонов, то одно деление = 60кг ))))) определение "средневероятного"??? Это еще зачем? Не проще ли брать стабильный вес и передавать его программе? ЗЫ Весы обычные платформенные, до 300 кг вроде, может и меньше. Сечас терминал работает без платформы по этому показывает отрицательное значение. Есть интересное наблюдение, если по разъему подключения платформы на обратной стороне терминала провести пальцем - показания меняются. Мне для тестов больше ничего и не надо. Надо анализировать бит D5 в предпоследнем байте - там признак, что весы уравновесились ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 29.09.2011, 16:22 |
|
||
|
Получение данных с весов через rs232
|
|||
|---|---|---|---|
|
#18+
defecator*keeper*пропущено... определение "средневероятного"??? Это еще зачем? Не проще ли брать стабильный вес и передавать его программе? ЗЫ Весы обычные платформенные, до 300 кг вроде, может и меньше. Сечас терминал работает без платформы по этому показывает отрицательное значение. Есть интересное наблюдение, если по разъему подключения платформы на обратной стороне терминала провести пальцем - показания меняются. Мне для тестов больше ничего и не надо. Надо анализировать бит D5 в предпоследнем байте - там признак, что весы уравновесились Так я об этом и говорю. Устройство-то простецкое. Калибровка весов - задача вообще другого отдела и они это делают. Мне нужно только упростить задачу получения того веса, что на табло в 1С. Для этого и решил написать внешнюю компоненту. благо примеров в интернете хоить и не навалом но есть. Результаты уже кое какие есть. Единственная засада - мало знаний. Понял как узнать, что тот или иной бит включен/выключен в нужном байте. Код: plaintext Остальные по аналогии быдем вычленять. Очень понравился вариант в одной формуле предложенной x1ca4064 Код: plaintext И еще не решил как мне полученые байты представить в 16-ричном виде. Может подскажете? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 30.09.2011, 08:40 |
|
||
|
Получение данных с весов через rs232
|
|||
|---|---|---|---|
|
#18+
*keeper*И еще не решил как мне полученые байты представить в 16-ричном виде IntToHex ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 30.09.2011, 09:48 |
|
||
|
Получение данных с весов через rs232
|
|||
|---|---|---|---|
|
#18+
*keeper*Разясните кто-нибудь вот эту часть формулы: exp(-(dat[4] and $07)*ln(10))*(1-((dat[4] and $80) shr 6 )) dat[4] and 7 - младшие 3 бита exp(x*ln(10)) - 10 в степени x (dat[4] and $80) shr 6 - старший бит, умноженный на 2 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 30.09.2011, 16:23 |
|
||
|
Получение данных с весов через rs232
|
|||
|---|---|---|---|
|
#18+
Все получилось. Всем спасибо за помощь! Если кому нужно могу поделиться. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.10.2011, 14:36 |
|
||
|
Получение данных с весов через rs232
|
|||
|---|---|---|---|
|
#18+
*keeper*Все получилось. Всем спасибо за помощь! Если кому нужно могу поделиться. нужно. напомни что за весы у тебя? фирма, название? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.10.2011, 15:09 |
|
||
|
Получение данных с весов через rs232
|
|||
|---|---|---|---|
|
#18+
Нужно коневчно, розшарь где-нибудь пример на файлообменнике, например нам бы с весами шенк... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.10.2011, 15:11 |
|
||
|
Получение данных с весов через rs232
|
|||
|---|---|---|---|
|
#18+
Jude*keeper*Все получилось. Всем спасибо за помощь! Если кому нужно могу поделиться. нужно. напомни что за весы у тебя? фирма, название? А что, самому посмотреть ПЕРВОЕ сообщение топика не судьба ? *keeper*Есть весы производства ФизТех с весовым терминалом Т3 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.10.2011, 15:19 |
|
||
|
Получение данных с весов через rs232
|
|||
|---|---|---|---|
|
#18+
Весовщик С., Исходники и используемые компоненты D7, а так же пример использования на 1с v7.7 и 8.1 t3vk.rar ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.10.2011, 15:25 |
|
||
|
Получение данных с весов через rs232
|
|||
|---|---|---|---|
|
#18+
*keeper*Весовщик С., Исходники и используемые компоненты D7, а так же пример использования на 1с v7.7 и 8.1 t3vk.rar Ща заценим )))))))) Ох, заценим... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.10.2011, 15:31 |
|
||
|
Получение данных с весов через rs232
|
|||
|---|---|---|---|
|
#18+
defecator*keeper*Весовщик С., Исходники и используемые компоненты D7, а так же пример использования на 1с v7.7 и 8.1 t3vk.rar Ща заценим )))))))) Ох, заценим... че-то 404(((( не успел я заценить( ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.10.2011, 15:33 |
|
||
|
Получение данных с весов через rs232
|
|||
|---|---|---|---|
|
#18+
Извиняюсь. вот рабочая сцылка. Исходники и используемые компоненты D7, а так же пример использования на 1с v7.7 и 8.1 t3vk.rar ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.10.2011, 16:44 |
|
||
|
Получение данных с весов через rs232
|
|||
|---|---|---|---|
|
#18+
defecator Ща заценим )))))))) Ох, заценим... Критика приветствуется ;) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.10.2011, 16:45 |
|
||
|
Получение данных с весов через rs232
|
|||
|---|---|---|---|
|
#18+
Для тестирования дома (без весов) использовал следующий софт: Virtual Null Modem создает соединения виртуальных COM портов, есть возможность выбрать каким кабелем будет соединение. В моем случае нужен нуль-модемный. 65 кб пересылает бесплатно :) COM Port Data Emulator - Freeware позволяет эмулировать устройства подключенные к COM порту. Я создал в hex - редакторе файлик с таим содержимым: 0A 74 10 00 A2 0D, и посылал его в нужный порт. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.10.2011, 16:53 |
|
||
|
Получение данных с весов через rs232
|
|||
|---|---|---|---|
|
#18+
В вообщении 11414446 исправленная ссылка. Желающие могут качать. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.10.2011, 10:09 |
|
||
|
Получение данных с весов через rs232
|
|||
|---|---|---|---|
|
#18+
Приветствую. Тоже понадобилось написать программку, считывающую показатели с весов. Пока не могу найти документации по формату обмена весов CAS RW-P через RS-232C с компьютером. Весы будут через пару недель, пока готовлюсь теоретически. Не могли бы Вы поделиться информацией по считыванию данных с этих весов (формат передаваемых данных) или примером исходника, о котором Вы написали. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.09.2013, 16:51 |
|
||
|
Получение данных с весов через rs232
|
|||
|---|---|---|---|
|
#18+
Почти все CAS весы работают по одному и тому же протоколу. Описание приаттачил ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.09.2013, 16:59 |
|
||
|
Получение данных с весов через rs232
|
|||
|---|---|---|---|
|
#18+
а почему не 485-ый протокол? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.09.2013, 17:00 |
|
||
|
Получение данных с весов через rs232
|
|||
|---|---|---|---|
|
#18+
andreymxа почему не 485-ый протокол? Потому что CAS работают только через RS232 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.09.2013, 17:27 |
|
||
|
Получение данных с весов через rs232
|
|||
|---|---|---|---|
|
#18+
Из описания на сайте авторНе тратьте своё время на долгую разработку собственного ПО, его внедрение и не всегда удачные эксперименты. Использование «ITProject RFID Server 2.0» позволит вам сразу приступить к внедрению любой RFID-системы на предприятии. «ITProject RFID Server 2.0» легко масштабируется, т.е. сегодня вы можете внедрить одно RFID решение, а завтра - другое и т.д. Очень важно, что для этого вам не потребуется использование нового программного обеспечения для решения других задач. Полезная ссылка http://www.itproject.ru/oborudovanie_torgovlya_sklad/vesoizmeritelnoe_oborudovanie/avtomobilnye_vesy/cas_rw_p ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.09.2013, 21:06 |
|
||
|
Получение данных с весов через rs232
|
|||
|---|---|---|---|
|
#18+
Anatoly PodgoretskyИз описания на сайте авторНе тратьте своё время на долгую разработку собственного ПО, его внедрение и не всегда удачные эксперименты. Использование «ITProject RFID Server 2.0» позволит вам сразу приступить к внедрению любой RFID-системы на предприятии. «ITProject RFID Server 2.0» легко масштабируется, т.е. сегодня вы можете внедрить одно RFID решение, а завтра - другое и т.д. Очень важно, что для этого вам не потребуется использование нового программного обеспечения для решения других задач. Полезная ссылка http://www.itproject.ru/oborudovanie_torgovlya_sklad/vesoizmeritelnoe_oborudovanie/avtomobilnye_vesy/cas_rw_p Бесполезная ссылка, так как за это уродство ещё и денег хотят немеряно ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.09.2013, 21:41 |
|
||
|
Получение данных с весов через rs232
|
|||
|---|---|---|---|
|
#18+
А чем конкретно уродство ? Posted via ActualForum NNTP Server 1.5 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.09.2013, 22:26 |
|
||
|
Получение данных с весов через rs232
|
|||
|---|---|---|---|
|
#18+
В начале 2000-х написал пару программ, и они проработали какое-то время. А потом перешёл в другое подразделение ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.09.2013, 22:31 |
|
||
|
Получение данных с весов через rs232
|
|||
|---|---|---|---|
|
#18+
Гаджимурадов РустамА чем конкретно уродство ? В том, что вместо того, чтобы напрямую залезть в порт и нативно вытащить оттуда данные, предлагается костылёк ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.09.2013, 22:38 |
|
||
|
Получение данных с весов через rs232
|
|||
|---|---|---|---|
|
#18+
Почему именно костылёк-то? Posted via ActualForum NNTP Server 1.5 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.09.2013, 23:59 |
|
||
|
Получение данных с весов через rs232
|
|||
|---|---|---|---|
|
#18+
Гаджимурадов РустамПочему именно костылёк-то? Ну так платное решение - почти посредник между программой и устройством. Даже не драйвер, а некий "ITProject RFID Server" ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.09.2013, 00:37 |
|
||
|
Получение данных с весов через rs232
|
|||
|---|---|---|---|
|
#18+
Не мешай народу торговать. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.09.2013, 11:39 |
|
||
|
Получение данных с весов через rs232
|
|||
|---|---|---|---|
|
#18+
defecator, Спасибо, придут весы, проверю. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.09.2013, 12:39 |
|
||
|
Получение данных с весов через rs232
|
|||
|---|---|---|---|
|
#18+
Всем привет! Столкнулся с подобной проблемой распознавания данных в протоколе передачи от платформенных весов. Весовой Терминал Т12(Ц) (Физтех). Задача стоит в аппаратном преобразовании данных от весов к компьютеру. Т.е изменить протокол передачи. В терминале в настройках нет нужного протокола, и придется сейчас его реализовать на аппаратном уровне. Но для этого я должен понять что там ходит от терминала. Получил такой лог данных Com порта от терминала: 13 AC FF 48 4C FF 6E 24 E8 FE 13 2C FF 48 4C FF 9E 1B E8 FE 97 99 FF 48 4C FF 2E 1B 68 FE 07 4C FF C8 99 FE 6E 0D E8 FE 07 4C FF C8 99 FF 16 05 68 FE 13 2C FF 08 AC FF Сейчас еще пытаюсь понять где тут начало пакета,а где его конец. Это кусок потоковой передачи данных. Предполагаю что FF означает конец пакета, но как-то не вяжется... Может кто подскажет на какой протокол это похоже? И как его разобрать? На табло было значение 100 кг. когда я получил эти данные. А эти: 13 AC FF 06 4C FF 6E 1A 92 FE 97 99 FF 48 4C FF FE 1A 02 FE 97 99 FF 48 4C FF EE 1A D2 FE 07 4C FF C8 99 FF EE 5A D2 FE 07 4C FF 48 20 FF Когда на табло было 0. Я так понимаю, что терминал округляет полученные данные от датчиков и выводит на табло 0, а по факту наверное там гуляет вес, т.к. ни одного одинакового пакета разобрать не смог. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.03.2018, 18:20 |
|
||
|
Получение данных с весов через rs232
|
|||
|---|---|---|---|
|
#18+
Dr_Grizzly, Эти весы поддерживают разные протоколы обмена. Какой на них сейчас выставлен? Визуально, этот поток байт выглядит так, как будто скорость обмена выбрана неправильно. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.03.2018, 19:29 |
|
||
|
Получение данных с весов через rs232
|
|||
|---|---|---|---|
|
#18+
x1ca4064Визуально, этот поток байт выглядит так, как будто скорость обмена выбрана неправильно. И/или четность/стопбит. Проэксперементируй с even/7 и no/8 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.03.2018, 21:06 |
|
||
|
Получение данных с весов через rs232
|
|||
|---|---|---|---|
|
#18+
x1ca4064Dr_Grizzly, Эти весы поддерживают разные протоколы обмена. Какой на них сейчас выставлен? Я вот тоже это видел в инструкции к весам, что там несколько протоколов. Но вчера я к ним первый раз попал, и по инструкции пытался попасть в меню. По итогу, в меню попал, и вижу два раздела Set, Test, Scale. Других разделов меню не смог вытащить, какие только комбинации не пробовал... В Set провалится не дает никак. Пока щелкал увидел еще пару надписей это OUT, ETF, LOG. Таких пунктов даж в инструкции нет(кроме OUT)... поэтому пока сложно сказать с чем я столкнулся... Сейчас там стоит чья-то программа которая с одного com порта получает данные, передает их на другой сом порт в другом формате, а с другого сом порта в третий уже подключена перемычка. Это благо, что у компа есть 4 сом порта... Вот такой вот "костыль" собран был спецом из физтеха. Похоже что он тоже не смог выбрать нужный протокол. Поэтому я решил собрать на Ардуине преобразователь протокола и давать данные уже в нужном виде на один порт. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.03.2018, 06:10 |
|
||
|
Получение данных с весов через rs232
|
|||
|---|---|---|---|
|
#18+
YuRockx1ca4064Визуально, этот поток байт выглядит так, как будто скорость обмена выбрана неправильно. И/или четность/стопбит. Проэксперементируй с even/7 и no/8 Сегодня после обеда получу снова доступ к ним, и попробую со скоростями поиграть ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.03.2018, 06:29 |
|
||
|
Получение данных с весов через rs232
|
|||
|---|---|---|---|
|
#18+
Dr_Grizzly, Осциллографом смотрится протокол без особых сложностей. Можно посчитать. Лет 20 назад такое делал. Сейчас с запоминающими сильно проще. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.03.2018, 10:22 |
|
||
|
Получение данных с весов через rs232
|
|||
|---|---|---|---|
|
#18+
а что, к весам не идет инструкции? На сайте производителя мануалов по протоколам тоже нет? Странно как-то. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.03.2018, 11:28 |
|
||
|
Получение данных с весов через rs232
|
|||
|---|---|---|---|
|
#18+
Поймал на 38400 такую штуку. При разных стоповых 7/8. Часть в ASCII часть в HEX поймал Код: pascal 1. 2. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.03.2018, 11:58 |
|
||
|
Получение данных с весов через rs232
|
|||
|---|---|---|---|
|
#18+
Уже что-то ближе к теме: AA 00 02 04 00 00 00 20 8C C8 68 04 00 32 00 0C 58 F9 69 04 00 32 00 0C 59 28 FF 10 55 AA 00 02 04 00 00 00 20 8C C8 68 04 00 32 00 0C 58 F9 69 04 00 32 00 0C 59 28 FF 10 55 AA 00 02 04 00 00 00 20 8C C8 68 04 00 32 00 0C 58 F9 69 04 00 32 00 0C 59 28 FF 10 55 AA 00 02 04 00 00 00 20 8C C8 68 04 00 32 00 0C 58 F9 69 04 00 32 00 0C 59 28 FF 10 55 AA 00 02 04 00 00 00 20 8C C8 68 04 00 32 00 0C 58 F9 69 04 00 32 00 0C 59 28 FF 10 55 AA 00 02 04 00 00 00 20 8C C8 68 04 00 32 00 0C 58 F9 69 04 00 32 00 0C 59 28 FF 10 55 AA 00 02 04 00 00 00 20 8C C8 68 04 00 32 00 0C 58 F9 69 04 00 32 00 0C 59 28 FF 10 55 AA 00 02 04 00 00 00 20 8C C8 68 04 00 32 00 0C 58 F9 69 04 00 32 00 0C 59 28 FF 10 55 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.03.2018, 12:06 |
|
||
|
Получение данных с весов через rs232
|
|||
|---|---|---|---|
|
#18+
Dr_GrizzlyЭто благо, что у компа есть 4 сом порта... Вот такой вот "костыль" собран был спецом из физтеха. Похоже что он тоже не смог выбрать нужный протокол. Поэтому я решил собрать на Ардуине преобразователь протокола и давать данные уже в нужном виде на один порт. Достаточно поставить com0com или аналогичгые виртуальные порты, и можно обойтись единственным com-портом: программа перевода формата есть, т.е. нет нужды делать что-то на ардуине. Если есть возможность, запустите на управляющем компе какой-либо снифер последовательного порта - узнаете, с какими параметрами обмена программа перевода формата открывает порт. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.03.2018, 12:21 |
|
||
|
Получение данных с весов через rs232
|
|||
|---|---|---|---|
|
#18+
x1ca4064Если есть возможность, запустите на управляющем компе какой-либо снифер последовательного порта - узнаете, с какими параметрами обмена программа перевода формата открывает порт.Да, это быстрее всего будет. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.03.2018, 12:34 |
|
||
|
Получение данных с весов через rs232
|
|||
|---|---|---|---|
|
#18+
если есть софт, который может что-то принять, то проще всего посмотреть как он порты настраивает. вирутальными, как сказали, com0com. им же можно и траффик посмотреть, что реально передаётся в обе стороны. в общем - тот или иной сниффер в руки и вперед. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.03.2018, 20:11 |
|
||
|
|

start [/forum/topic.php?all=1&fid=58&tid=2041103]: |
0ms |
get settings: |
9ms |
get forum list: |
16ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
188ms |
get topic data: |
8ms |
get forum data: |
2ms |
get page messages: |
72ms |
get tp. blocked users: |
1ms |
| others: | 237ms |
| total: | 541ms |

| 0 / 0 |
