Имя: Пароль:
1C
1С v8
Подключение редких весов (лабораторные Ohaus) по rs232 к 1C.
0 StormProff
 
13.08.20
16:34
Добрый день, уважаемые.
Есть вопрос, можно ли считать в 1С вес по ком-порту с весов если к ним не прилагается компонента.
Например к весам серии Ohaus Adventurer AX прилагается программка которая считывает вес и показывает его, значит ком порт работает в принципе на передачу веса.
Но это не гарантирует, что я подключусь популярной компонентой vk_rs232.dll или us_rs232.dll к весам и смогу получить вес?
Был ли у кого подобный опыт решения таких задач?
1 Кирпич
 
13.08.20
16:36
Документацию найди и подключайся
2 kolts23381
 
13.08.20
16:38
Устанавливаете монитор ком порта, считываете вес с помощью программки, разбираете протокол.
3 Chieftain
 
13.08.20
16:39
https://dmx.ohaus.com/WorkArea/showcontent.aspx?id=4294968588
на 57 странице все команды
4 StormProff
 
13.08.20
16:47
(3) ого, спасибо, команды есть. раз компанента не представлена, то я беру стандартную и отправляю строку с командой а в ответ получаю строку с ответом? хм, хм)
5 Garykom
 
гуру
13.08.20
16:49
(4) Не все так просто если не эмуляция по usb а физический rs-232
Там надо скорость, четность и прочие стоп биты правильно выставить, что не все компоненты умеют
6 fisher
 
13.08.20
16:55
О! А какие, кстати, посоветуете нормальные компоненты для работы с ком-портом из 1С? Разные какие-то пробовал, везде какие-то бока вылазят. Самая беспроблемная была MSCOMM32.ocx
7 kolts23381
 
13.08.20
17:20
Пример кода для считывания веса. Можете адаптировать под свои весы. Компонента MSCOMM32.ocx  
КонтроллерВесов = Новый COMОбъект("MsCommLib.MsComm.1");    
КонтроллерВесов.CommPort  = 1;
КонтроллерВесов.Settings  = "2400,N,8,1";
КонтроллерВесов.PortOpen  = Истина;    
Shell = Новый COMОбъект("WScript.Shell");
Shell.run("timeout /t 1", 0, -1);
Shell = Undefined;    
СтрокаВес = КонтроллерВесов.Input;
Если НЕ ПустаяСтрока(СтрокаВес) Тогда        
    МассивСигналов = СтрРазделить(СтрокаВес, "G", Ложь);
    Для каждого ТекСтрока Из МассивСигналов Цикл        
        Если СтрДлина(ТекСтрока) = 16 Тогда                
            Количество = Число(Прав(ТекСтрока, 8));
            Прервать;                
        КонецЕсли;        
    КонецЦикла;          
КонецЕсли;    
КонтроллерВесов.PortOpen  = Ложь;
8 vde69
 
13.08.20
18:01
весы кстати вполне нормальные и довольно распространенные... обратитесь в ЗАО ПКФ Сапфир, я когда там работал продал их не одну сотню...


вот инструкция и вполне сностная документация https://vesmarket.ru/manual/AX.pdf
9 big
 
14.08.20
04:53
(6)(7) Раньше эта компонента была небесплатная. А как сейчас?
10 fisher
 
14.08.20
08:58
(9) У нее как было так и осталось странное лицензирование тех далеких времен кода она появилась, т.к. она была лицензирована для поставки в комплекте то ли с Vusual FoxPro, то ли что-то в этом духе. Лицензирование проверяется ключиком в реестре. Т.е. почти все кто ее юзают - нарушают правила ее лицензирования. Другое дело, что за древностью и фактически "списанию" этой компоненты правообладателем вряд ли кто будет к этому придираться.
11 fisher
 
14.08.20
09:00
Отчасти из-за неясности "лицензионной чистоты" этой компоненты я и спрашивал про современные достойные альтернативы.
12 DrLekter
 
14.08.20
09:04
Всегда хватало vk_rs232. Единственная сложность - когда в протоколе присутствуют непечатаемые символы, но для таких случаев есть hex-версия этой же компоненты - там вообще что угодно можно получить, хоть 00.
13 DrLekter
 
14.08.20
09:05
Главное, разобрать это всё потом )
14 Garykom
 
гуру
14.08.20
09:11
15 Garykom
 
гуру
14.08.20
13:20
(14)+ у кого есть rs232 железки потестите плиз и напишите на мыло
16 uno-group
 
14.08.20
14:35
Не нравятся мне сом порты. В последнее время стараюсь апаратную часть на ардуино запрограммировать и в сетевой интерфейс перейти.
17 Garykom
 
гуру
14.08.20
14:36
(16) дык я подобную идею для фискальников давным давно продвигал

типа принт-сервер
18 StormProff
 
08.09.20
12:42
(14) отлично получилось с OHAUS-ов снять вес с помощью (14). Там и компонента и обработка на УФ. Спасибо автору
Пользователь не знает, чего он хочет, пока не увидит то, что он получил. Эдвард Йодан