Имя: Пароль:
1C
1С v8
Весы METTLER TOLEDO Panda 7 интеграция с 1С
,
0 Phoenixxx
 
19.07.22
11:33
Уважаемы коллеги добрый день.
В покрасочном цехе автосервиса, для смешивания красок, установлены весы METTLER TOLEDO Panda 7 (выпускались до 2012г). Весы высокого класса точности, позиционировались именно для этих целей. Прекрасно себя зарекомендовали и не смотря на возраст работают без нареканий. Дешевые аналоги им в подметки не годятся.
Сейчас встал вопрос по интеграции их в 1С (конфигурация Альфа Авто 5). Но я не могу найти для этих весов никаких утилит и драйверов, а уж тем более обработок. Судя по RS шланчику, идущему до компьютера и безжизненно повисшему в 5 см от задней панели ПК, попытки были и раньше, но со слов сторожил не увенчались успехом. Весы были популярны в своё время в этой отрасли и ходят слухи, что в каких-то дилерских центрах проблема была решена, но кем и как история умалчивает.
По сути от весов требуется только передача веса.
Нашёл мануал, но он не решает проблемы.
Написал официалам, но там тоже тишина.
Буду признателен за любую информацию по данному вопросу.
1 NorthWind
 
19.07.22
11:56
на зипсторе какие-то протоколы для MT выложены, но непохоже, что они для данной модели. Думаю, что тут нужен будет программист, весы и кучка экспериментов.
2 NorthWind
 
19.07.22
12:03
вроде как у этих весов, если верить мануалу, есть режим, при котором они постоянно передают данные на интерфейс. Если это действительно так, то особенных проблем быть не должно - можно просто подвесить какой-нибудь монитор компорта и посмотреть, чего они там отправляют... После чего написать получение и разбор через какую-нибудь компоненту работы с компортом.
3 arsik
 
гуру
19.07.22
12:05
Судя по этому  - https://www.mt.com/dam/product_organizations/industry/IndustrialTerminals/30566814%20OPOS%20Driver%20access%20instructions%20for%20MT%20COM%20website.pdf
для начала тебе нужен Mettler Toledo OPOS Administrator
А там уже разберешся :)
4 NorthWind
 
19.07.22
12:05
стр. 22 английского мануала, Aut.Mod -> Aut.S Ir - interface continuously transmit data // я вот это имею в виду
5 Федя Тяпкин
 
19.07.22
12:18
(0) попробуй какой нибудь утилитой просто "послушать" com порт. может он там явно вес отдает.
6 vde69
 
19.07.22
12:22
у метлера RS-232 интерфейс, протокол одинаковый, подойдет софт от любой модели метлера... пошукай на ювелирных конфигурациях...
7 NorthWind
 
19.07.22
12:33
8 Phoenixxx
 
20.07.22
05:41
Всем большое спасибо. Будем копать.
9 Phoenixxx
 
20.07.22
05:52
(4) есть возможность скинуть manual. В тех что я нашёл
https://www.mt.com/es/en/home/library/operating-instructions/industrial-scales/Panda7_7X_7X2_operating_instructions.html
ни слова про это: Aut.Mod -> Aut.S Ir - interface continuously transmit data
10 Phoenixxx
 
20.07.22
05:58
(9) Упс... Подкрутил зрение и именно в этой инструкции нашёл
Interface continuously transmits data
11 Phoenixxx
 
20.07.22
06:51
(3) Не могу найти
Mettler Toledo OPOS Administrator
может кто ссылочкой поделится?!
12 NorthWind
 
20.07.22
08:05
(11) у меня есть подозрение, что софтина эта свободно не выложена. Если она все же нужна, лучше пообщаться с самим Меттлером, если его представительство, конечно, еще работает в России. Другой вопрос, что не вполне понятно, зачем она вам. Есть же зацепка с передачей данных в порт, настройки порта - доступны. Настраиваете, берете любой монитор компорта, хотя бы Putty или CommTest от SlyDiman или еще что-нибудь подобное, и смотрите, чего там с них сыпется...
13 arsik
 
гуру
20.07.22
08:34
(11) Ну это отправная точка. Я так понимаю весы работают по стандарту OPOS, а значит возьми любой софт для OPOS весов.
14 NorthWind
 
20.07.22
08:48
(13) это не торговые, а порционирующие весы
15 NorthWind
 
20.07.22
08:55
то есть, строго говоря, производственные. Они предназначены для смешивания компонентов в определенной пропорции. По идее, в подобных весах обмен должен идти в две стороны - в весы из системы загружаются рецепты с пропорциями. Но тут уж я не знаю кухню ТС.
16 Phoenixxx
 
21.07.22
10:10
(12) Официалам я сразу написал. Пообещали ответить, но пока тишина.
Mettler Toledo OPOS Administrator действительно нужна как отправная точка чтоб был "контрольный образец".
В сторону порта уже начал рыть, просто раньше не сталкивался.
Сейчас решил поставить там M-ER 326 AFU-6.01 а Pandu заберу себе для экспериментов. )
17 NorthWind
 
21.07.22
10:28
(16) OPOS - это протокол для торговых железок в основном. У вас не торговые весы, а специализированные, для малярного производства (в руководстве так и написано paint scale). Поэтому у меня нет уверенности что они будут дружить с этой софтиной. Если возникнут затруднения с ее получением, я думаю, лучше сосредоточиться на том, какой реальный протокол используется на уровне компорта.
18 NorthWind
 
21.07.22
10:28
если не возникнут - ну, тогда можно попробовать :)
19 Phoenixxx
 
21.07.22
10:52
(15) По сути это обычные весы II-класса точности (лабораторные), нужна точность 0.1 гр. с наименьшим пределом от 5 гр.
Никаких рецептур в них не выгружается и не может, они только взвешивают, ещё "знают" пропорциональное и штучное взвешивание, но это не круто.
Вся автоматизация процесса решается сторонними HW&SW это я и пытаюсь реализовать.
Для этого мне нужно получить с них вес, ну и супер вариант если бы я научился посылать с компа команду ТАРА.
На весах Штрих я делал подобные вещи, там вся инфа и драйвера в легком доступе.
Для понимания процесса:
1. стороння рецептурная программа по номеру цвета или по данным спектрофотометра выдает рецепт на заданный объем краски (список пигментов и их вес).
2. далее маляр (колорист) ставит на весы специальный стаканчик в который по рецепту добавляет компоненты и после каждого компонента оттаривает весы.
3. затем этот стаканчик вкладывается в другой стаканчик подключается к пистолету и красится.
Так как количество пигментов большое и в одном рецепте их может быть 10-20, стоит задача автоматизировать процесс списания компонентов (пигментов) в 1С, а для это мне нужны данные с весов.
Конечно Pandu с почестями похоронить, но они реально хорошие и удобные для этой задачи. Поэтому охота побороться, ну и задачка интересная для собственного развития.
20 Phoenixxx
 
21.07.22
11:15
(13) Возможно я не правильно понимаю, но для OPOS всё равно нужен драйвер устройства. Ну либо OPOS-драйве для конкретной железки.
По моему OPOS - это лишь унифицированный набор команд который как раз реализуется на уровне драйвера, а кто же переведёт эти команды на понятные железке, это и должен сделать драйвер...
Или я не прав и OPOS реализуется на аппаратном уровне и все железки с поддержкой этого стандарта понимают одинаковые команды?
21 Кирпич
 
21.07.22
11:18
(20) тебе нужна ВК для работы с COM портом. Поищи. Такие есть.
22 Кирпич
 
21.07.22
11:21
Через эту ВК посылай команды на весы и слушай ответ. Вот и весь драйвер
23 yopQua
 
21.07.22
11:22
(21) не нужен тут драйвер, нужна софтина, которая будет ловить данные с ком порта, потом эти данные надо розобрать где что. для начала включите режим постоянной передачи данных в весах, в инструкциях есть описание, потом возьмите любую утилиту, которая может принимать данные с порта, настройки порта по умолчанию есть так же в мануалах, посмотрите на данные, которые получит утилита и если повезет, то там будет все понятно, что где, если нет, то долгие страдания по раскодировке данных
24 Phoenixxx
 
21.07.22
11:24
(21) Это я уже понял. Спасибо.
25 Кирпич
 
21.07.22
11:24
вот, например
https://github.com/tarasii/1c_rs232
26 yopQua
 
21.07.22
11:24
после(!!) этого возьмете вк от ромикса например и будете из 1С прослушивать порт и разбирать данные веса программно
27 arsik
 
гуру
21.07.22
11:26
28 Phoenixxx
 
21.07.22
11:27
Всё таки классный форум, и участники!
На других вопрос просто проигнорили...
29 Кирпич
 
21.07.22
11:34
30 Кирпич
 
21.07.22
11:39
вот еще https://github.com/Garykom/rs232
автор здесь тусуется
31 arsik
 
гуру
21.07.22
11:40
Вот еще есть вариант, но возможно не подойдет, т.к. там весы с этикетками, но возможно протокол на чтение такой же.
https://scale-soft.com/mettler_toledo_tiger_p.htm
32 Garykom
 
гуру
21.07.22
11:41
(30) гы
33 Garykom
 
гуру
21.07.22
11:42
Не советую использовать (25) и (30) глюки разные и сеанс 1С должен висеть захватив порт

Идеально задача решается через микросервис, который общается по rs-232 с весами и по http (и как сервер и как клиент дергая http-сервис в 1С опубликованный) с 1С
34 arsik
 
гуру
21.07.22
11:44
+(31) Там даже для 1С есть интерфейс
35 arsik
 
гуру
21.07.22
11:45
(33) GO? :)
36 Garykom
 
гуру
21.07.22
11:47
(35) да на Golang отличный вариант
37 Garykom
 
гуру
21.07.22
11:52
(36)+ берется нечто вроде https://github.com/tarm/serial
и добавляется https://github.com/gorilla/mux
получается суперкомпактное и простое в понимании и поддержке/допилке решение
причем кроссплатформенное, как вариант повесить рядом с весами какую то малинку/апельсинку
38 arsik
 
гуру
21.07.22
11:56
(16) Просто позвони в любое их представительство в России и попробуй выйти на технического специалиста. У н их есть софт
https://www.mt.com/ru/ru/home/site_content/contact_regional_offices.html
39 Кирпич
 
21.07.22
11:56
(37) Остапа понесло
40 yopQua
 
21.07.22
11:56
(33) гы, начинается
41 NorthWind
 
21.07.22
13:32
(19) ну пока что все те же рекомендации - подключайте слушалку порта и смотрите чего весы передают. Если увидите какие-то байты - можно взять имеющуюся доку по протоколам и попытаться понять, похоже ли это на что-то описанное там. Если похоже, можно дальше раскуривать этот протокол на предмет посылки команды "тара". В принципе, на первом этапе вам нафиг не нужна ни 1С, ни компоненты работы с портом, нужна только удобная терминальная программа, дока и весы с компом.
42 NorthWind
 
21.07.22
13:33
и кабель, конечно
43 Федя Тяпкин
 
21.07.22
15:25
Можно впринципе слушать порт из 1С без внешних компонент. Вот сто лет назад делал для каких то весов.
Текст = Новый ЧтениеТекста();//"\\.\COM1", КодировкаТекста.ANSI);
    
    Попытка
        Текст.Открыть("\\.\COM3", РаботаСОборудованиемСервер.ПолучитьКодировкуПоМоделиВесов(ТекущиеВесы));
    Исключение
        Текст.Открыть("\\.\COM1", РаботаСОборудованиемСервер.ПолучитьКодировкуПоМоделиВесов(ТекущиеВесы));
    КонецПопытки;
    
    Стр = Текст.ПрочитатьСтроку();//Текст.ПрочитатьСтроку();
    Сч = 0;
    Пока Сч < 200 Цикл //Стр <> Неопределено Цикл // строки читаются до символа перевода строки
        Стр = Текст.ПрочитатьСтроку();
        Сообщить(Стр); //НЕ КОММЕНТИРОВАТЬ ЭТУ СТРОКУ !!! ИНАЧЕ ВЕСЫ НЕ РАБОТАЮТ!
        scr = Новый COMОбъект("WScript.Shell");
        scr.Run("ping 127.0.0.1 -n 0,01",0,1);
        ОчиститьСообщения();//И ЭТУ ТОЖЕ
        Если Сред(Стр, 1, 3) = "<01" И Сред(Стр, 13, 2) = "KG" Тогда
            //Эту сроку обрабатываем.
            Вес = Число(Сред(Стр, 6, 7));
            Прервать;
        КонецЕсли;
        
            Если СтрДлина(Стр)=12 И Сред(Стр, 10, 2) = "KG" Тогда
                    //Сообщить(Сред(Стр, 10, 2));
        //Эту сроку обрабатываем.
        //Сообщить(Сред(Стр,5,5));
            Вес = Число(Сред(Стр, 5, 5));
            
            Прервать;

пингами и "сообщить" делал задержку)
44 Федя Тяпкин
 
21.07.22
15:28
а для других весов мне админы на питоне написали утилитку которая сохраняла вес в файл, и я его оттуда забирал
45 Федя Тяпкин
 
21.07.22
15:29
+(43) в конце обязательно делать Текст.Закрыть();
что бы не занимать порт
46 arsik
 
гуру
21.07.22
16:02
(43) Тогда уж лучше через поток читать.
47 NorthWind
 
21.07.22
16:20
(43)     Пока Сч < 200 Цикл//Стр <> Неопределено Цикл // строки читаются до символа перевода строки

        Стр = Текст.ПрочитатьСтроку();
        Сообщить(Стр);//НЕ КОММЕНТИРОВАТЬ ЭТУ СТРОКУ !!! ИНАЧЕ ВЕСЫ НЕ РАБОТАЮТ!

        scr = Новый COMОбъект("WScript.Shell");
        scr.Run("ping 127.0.0.1 -n 0,01",0,1);
        ОчиститьСообщения()//И ЭТУ ТОЖЕ

Это называется "чего только 1Сники не придумают, чтобы обойти ограничения платформы" :))
48 NorthWind
 
21.07.22
16:26
и все же следует понимать, что такой варик катит только для случая, когда у вас железка отправляют что-то постоянно и в виде, похожем на текст. Это бывает не всегда. Бывают и нетекстовые символы, кроме того, бывает такое, что их надо и отправлять, а не только получать.
49 yopQua
 
21.07.22
16:28
(43) это шляпа, работает только в 1% случаев и тоже не без глюков
50 yopQua
 
21.07.22
16:32
нормальный объект для компорта из шарпа, питона или еще чего, только не из 1С, т к его просто нет, все сделает как надо. на одних весах надо посылать, потом принимать, другие постоянно льют, третьи по кнопке принт выкидывают данные и т д.
пс. есть вк rs232 для 1С от миллиона и одного автора,  есть микрософтовские библиотеки типа mscomm32, можно и свою написать миллион вторую
51 yopQua
 
21.07.22
16:34
но сначала(!!) надо понять что они выкидывают и можно ли это привести к человеческому виду, а потом уже о вк думать.
а чтобы понять что они выкидывают, достаточно простого hyperterminal например из венды или еще какого аналога, способного слушать порт
52 yopQua
 
21.07.22
16:37
+ 49
+ надо настройки порта в винде выставить по скорости, четности и т д и перегрузить машину, на всякий случай
53 Phoenixxx
 
22.07.22
05:03
Всем большое спасибо за всю информацию. Подменю пациента этими "M-ER 326 AFU-6.01" и начну эксперименты.
А то не удобно в цеху ковыряться.
54 ДедМорроз
 
22.07.22
22:09
OPOS драйвер - это прокладка,которая позволяет оборудование подключать как Com-объект и нужна для интеграции с системами,которые кроме OPOS ничего не умеют.
55 mva333
 
27.07.22
10:23
(53) Есть опыт использования Panda 7 в 1С 8.2
56 Phoenixxx
 
11.08.22
05:00
(55) Добрый день. Если есть поделитесь пожалуйста.
57 NorthWind
 
11.08.22
06:53
(56) вы еще не сделали? Уж ветке скоро месяц...
58 Phoenixxx
 
11.08.22
07:08
Пока нет времени. Навалили другие задачи эта по приоритету ниже. (57)
59 uno-group
 
11.08.22
09:49
Вы хоть терминалом смотрели что с порта поступает инфа или нет. И выложили бы что идет. Обычно там передается вес и признак того, что он стабилизировался или нет.
60 Phoenixxx
 
11.08.22
10:38
(59) Ещё не смотрел.
Самому интересно победить этот вопрос. Обещаю выложить все наработки.
Пока проблемы со временем.
(55) очень охота чтоб поделились опытом
61 yopQua
 
11.08.22
10:40
(60) думаю 55 это рыночное предложение
62 NorthWind
 
11.08.22
11:05
(61) я тоже так думаю. Если бы чуваку было бы не жаль, сбросил бы хоть в общих чертах структуру посылки и что там как. А раз интересничает, значит, скорее всего хочет денег за помощь в вопросе.
63 mva333
 
11.08.22
11:42
(56) 1. https://manualzz.com/doc/4188164/mettler-toledo-multirange-ind690#p92 вот полный список команд для работы через com порт
2. Для работы с COM портом использую MSCOMMLib.MSComm
Если нужна еще информация, то пишите в скайп mva333
64 mva333
 
11.08.22
11:45
(61) (62) Все бесплатно в сообщении (63)
65 mva333
 
11.08.22
11:45
там полный расклад команд и ответов
66 yopQua
 
11.08.22
12:56
:)
67 uno-group
 
11.08.22
13:41
Если бы автор хотел решить проблему то за 20 дней глянул бы любым терминалом что эти весы посылают в ком порт. скачать программу терминала 5 минут. 5 минут подключить. он на эту тему больше потратил.
68 Phoenixxx
 
12.08.22
04:37
(67) Весы стоят в покрасочном цеху.
69 Phoenixxx
 
12.08.22
04:43
(63) Спасибо большое
70 uno-group
 
12.08.22
09:31
(68) "Судя по RS шланчику, идущему до компьютера и безжизненно повисшему в 5 см от задней панели ПК," за 20 дней вас в него не пустили на 5 минут. вставить флешку с программой терминала вставить шнурок и записать файл данных которые сыплется в компорт?
71 yopQua
 
12.08.22
09:43
(70) да не надо оно ему, что вы надрываетесь
72 uno-group
 
12.08.22
15:26
(71) Дык я остальным. Автору возможно еще в 1 день дали правильный совет он не потрудился до сих пор ничего проверить. смысл советовать что то новое.