PDA

Просмотр полной версии : RS 232 в Ethernet Поделитесь знаниями



AlexLAV
22.08.2018, 09:23
Здравствуйте!
Как снимать показания приборов через Ethernet?
Помогите - наверняка вы уже не однократно решали такую задачу.
У нас есть обьекты теплоснабжения с приборами СПТ941.10Б, ТМК-Н 12, ТВ7 модель 01, Тепловычислитель ТМК-Н20 и даже один СПТ 944
Некоторые имеют, я надеюсь, интерфейс RS232 для подключения. Но не ТМК-Н-12. Приборы на отдельных очень удалённых объектах. И мне придеться за 500 километров ехать туда. И хотелось бы узнать больше, чтобы не просто сьездить 500 км туда, и 500 км обратно.
На самом деле всё очень "бедненько" в моей ситуации:
Есть некое бюджетное учреждение - для примера Школа-интернат в Горном Алтае.
Там есть котельная, в ней разумеется :-) котёл. И 1 прибор.
И сейчас туда приезжает сотрудник (не я) и снимает данные.
В этой котельной ничего (интернета) нет. В лучшем случае электричество и уголь.
Нужно ехать туда, пробрасывать кабель, подключать роутер и конвертер к прибору и решать задачу. При этом финансирования – 0. Я просто за свои купил и микротик и USR-TCP232-302 и витую пару. И на всякий случай USB модем, чтобы если не дадут подключиться к интернету, то был план Б.
Хочу сделать так: ComПорт прибора---USR-TCP232-302---Mikrotik---Internet---Mikrotik--ПК с программой типа Менеджер данных.

В чём же проблема? Все организации бюджетные и приборы учета там 2010-ых. Читаю на сайтах производителей, что могу. Спрашиваю у техподдержки.
Вот к примеру - Подключение модема к тепловычислителю ТВ7 первого исполнения требует самостоятельной распайки кабеля и спасибо производитель выложил пдф со схемой.
Если вы знаете что-либо о подключении СПТ941.10Б, ТМК-Н 12, ТВ7, ТМК-Н20, СПТ 944
через RS232 к Ethernet буду признателен за информацию.

melky
22.08.2018, 11:23
AlexLAV все зависит от ваших приборов. Вариант capzap так же не исключается.
Из перечисленных вами, есть приборы с интерфейсом но с собственным протоколом передачи данных (не всем известный Modbus). Возможно некоторые имеют импульсный выход и не имеют интерфейса, а некоторые кроме табло на лице могут не иметь ничего (как раз для варианта, предложенного capzap.

1. приборы с интерфейсом потребуют роутера с модемом. Вариант Mikrotik + Eternet-RS232(485) хорош, так как в роутере можно настроить VPN канал до сервера с реальным IP и построить сеть. Но это постоянный трафик для организации связи, смотреть в сторону тарифов аля "телемеханика" от МТС и других операторов, желательно договориться с оператором на единый счет для всех модемов. Так же оператор может (если захочет) построить вам сеть и предоставить вам точку доступа в нее, тогда все СИМ карты будут иметь серый адрес, но через предоставленную точку (определенный адрес и пул портов) вы сможете считывать показания узлов не строя свою сеть VPN, но добиться от операторов подобного решения сложно. Я как-то обращался в Мегафон, а там мальчики и девочки просто не понимают что от них хотели. Потом только у кого-то увидел, что они предлагали подобное решение или нечто похожее.
Вообще идеальный вариант, если в заведении есть интернет, они ведь все равно его проплачивают... У Микрота есть модели в которых можно настроить даже сеть + модем в резерве, но это не отменит от оплаты модема.
1а. Модемы с CSD и портом еще можно применить, если снятие показаний раз в месяц то может оказаться дешевле. Плата только по факту звонка и времени на чтение.
2. устройства с импульсным выходом потребуют регистраторов импульсов, желательно применять такие, где есть батарейка и регистратор может продолжать считать импульсы при потери питания (например отключили свет в школе, авария на линии и т.д.) Есть варианты даже с Modbus
3. а вот устройства без интерфейсов и без импульсного выхода только глазками. Например есть вариант повесить WEB камеру на какую-нибудь OrangePi кастрированную по максимуму и подключаясь к ней просто переписывать показания с прибора.

з.ы. определитесь с точным списком приборов, их протоколами и возможности снимать показания, если нет интерфейсов.
Определитесь с каналами связи в организациях, от всего этого и пляшите.
Ну если совсем совсем бюджет, есть бесплатные Scada которые смогут собирать данные со всего этого зоопарка, кроме случаев, когда это можно сделать только глазами...

AlexLAV
29.08.2018, 06:25
Итак, вот ТВ7. Вот USR-TCP232-302
Не могу программой подключиться к прибору. Как настроить связку ТВ7 и USR-TCP232-302. Зашёл на его вебморду и понял что нужно знать как это делать.

melky
29.08.2018, 11:50
качаете инструкцию и настраиваете.
1. Определить, каким способом работает родная программа - если только с COM портом, то велкам настраивать на USR виртуальный COM порт
Если может работать поверх TCP то не потребуется установка виртуального COM порта. USR - TCP сервер, программа TCP клиент.

Если у вас основная работа через Scada то виртуальный COM порт может не потребоваться, просто настраивается как TCP клиент

bender_slava_robotam
29.08.2018, 18:13
НУ если в школе 1 прибор учёта, то показания и местные могут раз в месяц списывать и передавать по телефону куда следует.
А вот если объект с зоопарком приборов, то некий контроллер всё же желателен. Поскольку такие плюшки как WIN PAC 5000 с мезонинной платой портов стоят дороговато, я бы подумал насчёт Ардуино Мега какой нибудь. Вычислительной мощности и портов у неё достаточно для решения задачи диспетчеризации. Но это так сказать решение требующее вложений труда программиста и системотехника.

kfvniiz
14.09.2018, 15:33
Сталкивались с подобной задачей. Обычно применяем GSM модем, но тут надо учитывать, что csd соединения стали весело тарифицироваться, так что опрос по нему может обойтись недешево и лучше смотреть в сторону gprs соединения. Не всегда в котельной и ИТП хороший уровень сигнала и поэтому нужно переносить модем с антенной в место где сигнал получше и антенну брать с усилением, например, antey 906. Лучше сразу озаботиться защитой, на случай хищения sim карт из модема и брать карты предназначенные для m2m, тут желательно корпоративное обслуживание. Еще нужно следить чтобы такой модем не подписался на рассылку анекдотов или гороскопов) Антенну закреплять так, чтобы ее было сложно сорвать. Модемы иногда могут виснуть, даже если брать немецкие или итальянские, а про китай типа sim300 я лучше помолчу. Если на объекте есть интернет соединение, а это больше свойственно для ИТП, а не для котельных, то конечно, лучше воспользоваться им.

О подключении разных приборов - отдельная песня. Иногда без звонка в службу поддержки не обойтись!!! Например, подключали СПТ961 по rs485 - не пашет, думаем, что за дела. Звонок в службу поддержки и вуаля - нужен специальный преобразователь от производителя другие стандартные преобразователи не пойдут, там тогда порекомендовали подключить по rs232 и один из приборов использовать в качестве ретранслятора для доступа через него к соседним приборам. И это прекрасно работало до замены приборов на новую версию (в маркеровке изменилась последняя цифра) и все, с ретрансляцией случился облом, т.к. тот софт, который мы применяли ее не поддерживал. Имхо приборы от Логики самые сложные в настройке, там где у других нужно настроить 15-20 параметров у этих нужно настроить 50, а то и более. У других типа ВКТ были дополнительные требования, что надо на один из пинов подать 9В иначе RS232 не работает, были фокусы с гальванической развязкой при подключении к компьютеру на ВКТ5 (при подключении температуры менялись на 10°С), у ВКТ7 интерфейс rs485 не работал через модем т.к. был шибко интеллектуальным. Вообщем помогает внимательное чтение документации к прибору, описания протокола обмена, если он выложен (там иногда можно узнать тонкости типа, что нужно выставить специфический формат обмена, подать куда-то питание и т.п.) и общение с службой поддержки. Частенько для доступа к настройкам нужно снимать крышку прибора и отключать защиту, а здесь может потребоваться снятие пломбы и потом повторное пломбирование. И да еще учитывать версию прошивки и модификацию платы, т.к. иногда от этих вещей протокол обмена может меняться радикально.
На верхнем уровне, в зависимости от задачи, применяли Кливер Мониторинг или ЛЭРС учет или штатные средства от производителя вычислителей. Модемы в основном использовали немецкие вначале siemens, а потом тот же siemens, но с названием cinterion, на ~150 модемов парочка была дефектных и вышла из строя в первый месяц (и была отремонтирована по гарантии), и еще от партии к партии у этих модемов может меняться поведение, что тоже доставляет, например, могут поменяться дефолтные настройки по AT&F.

Vit_tre
13.03.2019, 20:38
Ну, в общем, я его победил...
То есть, опрашиваю через USR-TCP232-302 и СПТ943 и ВКТ7,
НО... все завелось после небольшой доработки USR...
Один проводок допаять, это ж не долго.

APCS
16.04.2019, 11:09
Какой именно проводок пришлось допаять?

Vit_tre
13.11.2019, 14:17
Вот такая специфика:
45554

donenko
20.11.2023, 14:57
Кто сможет подсказать? Надо вывести данные с СПТ961 в ПР102. Возможно ли это?

melky
20.11.2023, 15:18
donenko возможно, но надо понимать схему подключения.
Например если это надо выполнить строго по месту установки СПТ961, то потребуется микроПК (промПК) что допускается к установке на объекте. Процессор ARM v7, v8 (ну или x86)
RapidScada на этот ПК + модуль автоуправления от разработчика Scada (платный). Все, далее настройка Modbus в Scada для связи с ПР102 и настройка модуля для передачи опрошенного параметра из СПТ в ПР102.

Что ПР102 выполняет? сколько у него интерфейсов ? и занятость их ?

Если ПР102 с одним интерфейсом RS485 и он занят (например какие-то модули подключены) то Scada придется делать слейвом, а тут у разработчика мягко говоря ценник не очень дешевый.
как вариант тогда ПК на X86 архитектуре, установка Windows пиратки (так как если смотреть в сторону лицензии то проще купить все таки драйвер Modbus Slave для Scada) ну и типа OPC Инсат в режиме слейва как для ПР так и для Scada... геморрой в общем :)

EFrol
20.11.2023, 15:46
Попробую объяснить простым языком. Если прибор (любой) имеет возможность (каким-либо способом) быть подключенным к ПК (к другому прибору) для передачи данных, то абсолютно точно есть возможность передавать данные как через Internet так и в ПР (Modbus).
Вопрос заключается в другом, а именно: "Как? Каким образом?". Здесь каждый решает эту задачу по разному. Универсальных решений нет.
Основной проблемой обычно является даже не интерфейс, а протокол обмена.
Если прибор поддерживает протокол Modbus, то существуют готовые устройства сбора и передачи.
Если протокол нестандартный, а придуман инженерами завода-производителя, приходиться обращаться к программистам-фрилансерам,
которые используя разные приборы (кто на что горазд), например Arduino или ПЛК304 и т.п. пишут конвертеры.
Иногда производитель предоставляет ПО (OPC-сервер, конфигуратор и т.д.), но лучше когда есть описание протокола обмена.

imaex
20.11.2023, 15:47
Кто сможет подсказать? Надо вывести данные с СПТ961 в ПР102. Возможно ли это?

Если сумеете на Owen Logic протокол обмена СП-сеть реализовать. Я не знаю - насколько это возможно, не компетентен. Само описание протокола на сайте Логики есть.

Подключаться нужно на 232-ой интерфейс СПТ (разъём Х2).

melky
20.11.2023, 15:52
в ОЛ нельзя реализовать никакой протокол вообще.
Тут вопрос насколько это человеку надо и нафига вообще ?

описание протокола есть, проблема в конфигурировании приборов Логика. На 2 трубопровода он сконфигурирован, на один и что там еще у них настраивается.
Протокол откровенно говоря - за такое программистам руки отрывают :)

EFrol
20.11.2023, 15:53
Если сумеете на Owen Logic протокол обмена СП-сеть реализовать. Я не знаю - насколько это возможно, не компетентен. Само описание протокола на сайте Логики есть.

Подключаться нужно на 232-ой интерфейс СПТ (разъём Х2).

Конвертер RS485<->RS232 стоит копейки. Думаю даже сможете найти программиста для написания конвертера. Сколько Вы готовы выложить за его работу?

imaex
20.11.2023, 15:58
то потребуется микроПК (промПК) что допускается к установке на объекте. Процессор ARM v7, v8 (ну или x86)
RapidScada на этот ПК + модуль автоуправления от разработчика Scada (платный).


ахринеть. Дешевле будет MC12 или ML9 от МЗТА купить. Для них уже есть готовые алгоблоки для работы с СП-сетью.

melky
20.11.2023, 16:00
EFrol вы про какой конвертер говорите? типа на Arduino или микроконтроллере? имхо, не заморачивался бы, если можно установить микроПК на ARM процессоре - стоимость всяких OrangePi посмотрите.
А драйвер для Логики уже давно мной написан для RapidScada и портирован на 6-ю версию. Халява :)
Для передачи из устройства в устройство только нужен Модуль Автоматического Управления для Scada, который платный. Ценник там не сильно большой.

Ну и от схемы автора зависит, может он сможет передать данные своими средствами, забирая данные из Scada по OPC UA, MQTT например, тогда и модуль не потребуется.

imaex дешевле не будет. Цена по запросу... скажите сколько стоит и какой именно ?

imaex
20.11.2023, 16:00
Конвертер RS485<->RS232 стоит копейки.

Вы, похоже, никогда не имели дела с логиковскими приборами. Поэтому даёте такие очевидные, на первый взгляд, советы. ;)

imaex
20.11.2023, 16:04
описание протокола есть, проблема в конфигурировании приборов Логика. На 2 трубопровода он сконфигурирован, на один и что там еще у них настраивается.

Да не в этом никакой проблемы, вообще.


Протокол откровенно говоря - за такое программистам руки отрывают :)

Тем не менее, люди пишут. Плюс я знаю как минимум один пример реализации на сименс S200/

EFrol
20.11.2023, 16:09
EFrol вы про какой конвертер говорите? типа на Arduino или микроконтроллере? имхо, не заморачивался бы, если можно установить микроПК на ARM процессоре - стоимость всяких OrangePi посмотрите.
А драйвер для Логики уже давно мной написан для RapidScada и портирован на 6-ю версию. Халява :)
Для передачи из устройства в устройство только нужен Модуль Автоматического Управления для Scada, который платный. Ценник там не сильно большой.

Ну и от схемы автора зависит, может он сможет передать данные своими средствами, забирая данные из Scada по OPC UA, MQTT например, тогда и модуль не потребуется.

imaex дешевле не будет. Цена по запросу... скажите сколько стоит и какой именно ?

Я говорю про вот такой, например, конвертер:
71728

Кстати я, кажется обещал Вам, исходник MQTT-клиента для этой схемы.
В конце исходника в EEPROM области настройка на оператора и MQTT:


;-------------------------------------------------------------------------
; EEPROM
DATAEE ORG 0xF000

SIM_Speed ; Скорость обмена с SIM800L
DE 3 ; Индекс 3 из таблицы UART_SpeedTable (9600)
RS485_Speed ; Скорость обмена с RS485
DE 3 ; Индекс 3 из таблицы UART_SpeedTable (9600)
RS485_Timeout
DE D'5' ; Время ожидания ответа по RS485 = 50ms
APN
DE MQTT_Server-APN-1, "\"internet.mts.ru\""
MQTT_Server
DE MQTT_ID-MQTT_Server-1, "\"srv2.clusterfly.ru\",\"9991\""
MQTT_ID
DE MQTT_UserName-MQTT_ID-1, "ModbusTool"
MQTT_UserName
DE MQTT_Password-MQTT_UserName-1, "login"
MQTT_Password
DE MQTT_Request-MQTT_Password-1, "password"
MQTT_Request
DE MQTT_Response-MQTT_Request-1, "request"
MQTT_Response
DE DATA_EE_End-MQTT_Response-1, "response"
DATA_EE_End
END


Думаю разберетесь! Компиляция в MPLAB 8.92

imaex
20.11.2023, 16:10
imaex дешевле не будет. Цена по запросу... скажите сколько стоит и какой именно ?

Так запросите ;) Несколько лет назад мне говорили, что ML9 дешевле. Если б/у не пугает, то
https://www.avito.ru/sankt-peterburg?q=контроллер+мзта&ysclid=lp6x8pre5j693816934

melky
20.11.2023, 16:15
imaex пишут, в том числе и я. Дело то не в этом, а в том, как они сами его написали. Что только стоит разрыв переменной на две страницы данных, если она не поместилась в конце первой :)
При том еще, что каждая страница формируется заголовком и CRC, даже если читаешь больше одной...
Ваша ссылка на avito открывает какую-то чушь и вместо текста ромбики с вопросами

EFrol спасибо. Будет время поразбираюсь..

imaex
20.11.2023, 16:27
Ваша ссылка на avito открывает какую-то чушь и вместо текста ромбики с вопросами


А в яндексе Вас не забанили ещё?
https://ya.ru/search/?text=%D0%BC%D0%B7%D1%82%D0%B0+%D0%BA%D0%BE%D0%BD% D1%82%D0%B0%D1%80+ml9+%D1%86%D0%B5%D0%BD%D0%B0&lr=24&search_source=yaru_desktop_common&search_domain=yaru&src=suggest_Tail

Не знаю, может тут движок форума порежет.

короче, кто хочет - тот найдёт. Я так думаю, что в 30 тыр можно уложиться.

Между прочим, у МЗТА довольно живая техподдержка, на форуме обычно бодро отвечают. Правда, я там бываю крайне редко, признаюсь.

melky
20.11.2023, 16:29
в 30-ть? да вы прямо Дед Мороз так дешево предлагать :)
Даже промПК можно взять дешевле тыщ на 10 минимум..
А еще же надо программу написать, не забыли? :)

EFrol
20.11.2023, 16:30
В любом случае при соответствующей мотивации можно написать любой конвертер. Для меня проблема одна, отладить прогу на реальном устройстве так как его нет в наличии.
Даже если нет портов на приборах (они тупо механические), в это случае берется вот такая приблуда (https://duino.ru/esp32-cam-wi-fi-modul-s-kameroy-ov2640/) (можно несколько штук) вяжется,например, с с таким роутером (https://gsm-repiteri.ru/prodazha/oborudovanie-dlya-priema-i-usileniya-signala-mts/routeri-mts/router-3g-4g-wifi-mts-874ft), заливается скетч, который раз в час, неделю, месяц, фотографирует и побликует фото на MQTT. Есть приложения для Android, которые позволяют просматривать все что публикуется на MQTT/

EFrol
20.11.2023, 16:36
Если бы ПЛК304 (https://owen.ru/product/plk304) стоил бы как ЕКОН134 (https://owen.ru/product/ekon134) - я бы даже открыл тему с готовыми конвертерами(прошивками) под различные приборы!

imaex
20.11.2023, 16:38
Даже промПК можно взять дешевле тыщ на 10 минимум..


Я Вам даже поверю. Так ведь и контроллер можно взять "дешевле тыщ на 10 минимум". А Вы там ещё что-то про скаду с платными модулями писали, не? Для ведь тоже что-то писать надо, само 100% не взлетит.

Что касается "программы" для Контара, то я готов хоть сейчас безвозмездно (т.е. даром (с) Сава) выложить. as is.

melky
20.11.2023, 16:42
imaex так сама Scada бесплатна, не? а модуль стоит 4 800 для юрлиц или вполовину для себя.
а вот такая штука на DIN рейку всего до 12-ти, которая может выполнить роль шлюза https://jethome.ru/d1p/ на борту сразу два RS485 есть...

Все давно написано, просто настроить опрос требуемого прибора и передачу в ПР.

EFrol
20.11.2023, 16:51
imaex так сама Scada бесплатна, не? а модуль стоит 4 800 для юрлиц или вполовину для себя.
а вот такая штука на DIN рейку всего до 12-ти, которая может выполнить роль шлюза https://jethome.ru/d1p/ на борту сразу два RS485 есть...

Все давно написано, просто настроить опрос требуемого прибора и передачу в ПР.

Все равно очень наворочено и, соответственно, дорого!!!
Да и вся эта функциональность умещается в 160 рубляхl (https://duino.ru/esp12e.html/)

imaex
20.11.2023, 16:52
а вот такая штука на DIN рейку всего до 12-ти, которая может выполнить роль шлюза https://jethome.ru/d1p/ на борту сразу два RS485 есть...


И на эту хрень вкорячивается RapidScada? ХЗ, может оно даже как-то и работает. Мне в этой схеме не нравится то, что SCADA - это прежде всего HMI. А по деньгам примерно то на то. По времени - кто к чему больше привык.

melky
20.11.2023, 16:56
imaex мало того, что вкорячивается, так еще и работает :) HMI под задачу можно и не ставить вообще. То есть не запускать там WEB сервер от слова совсем.
на jetHub работает ротация кондиционеров например в одной серверной. причем на версии D без всяких плюсов.

EFrol знаю, что наворочено в некотором роде. Очень жаль, что Microsoft не поддержал работу dotnet 6 на ARM v6, так то шлюзы можно было бы лепить на всяких Raspberry Zero легко.
И опять же, даже сам сервер Scada можно не ставить, только Коммуникатор, который будет опрашивать нужный прибор и слать на сервер Scada данные через VPN например.

у меня дома оно работает на Orange Pi+ 2E например в полном объеме. И Сервер и WEB

EFrol
20.11.2023, 16:59
Так что мы посоветуем автору темы?

melky
20.11.2023, 17:03
а что советовать? пусть выбирает уже готовое решение, или которое надо пилить. Опять же, мы не знаем схемы и возможностей ПР102. Может там один порт всего 485 и тот занят мастером.
Тогда все сильно усложниться, так как нужен именно слейв Modbus шлюз, который будет опрашивать при этом Логику.

Вот такой же штуки на PIC у вас нет, чтобы было два порта RS485 - один для Логики (или любого прибора) а второй для ПР и созданием Modbus регистров?

EFrol
20.11.2023, 17:17
а что советовать? пусть выбирает уже готовое решение, или которое надо пилить. Опять же, мы не знаем схемы и возможностей ПР102. Может там один порт всего 485 и тот занят мастером.
Тогда все сильно усложниться, так как нужен именно слейв Modbus шлюз, который будет опрашивать при этом Логику.

Вот такой же штуки на PIC у вас нет, чтобы было два порта RS485 - один для Логики (или любого прибора) а второй для ПР и созданием Modbus регистров?

Такая штука на PIC есть! Я как-то писал ретранслятор ModbusRTU для OPC Lectus.
71731
Описание протокола тоже. Нет времени писать конвертер.
Да и автор спрашивал: как передать через Internet?

melky
20.11.2023, 17:21
а я про передачу через Internet и не говорил :)

EFrol
20.11.2023, 17:25
Да, но автор спрашивал. Или нам плевать на него?
Главное тему создал и отвали!!!:D

melky
20.11.2023, 17:30
А, так тема старая, тут человек позже спросил как с Логики в ПР102 данные переслать. Мне просто интересно нафига?

Ладно мы там мудрили с Кондиционерами с протоколом Midea и ПР200, люди ККБ-шку мутят... а тут зачем все это?

пост 10
Кто сможет подсказать? Надо вывести данные с СПТ961 в ПР102. Возможно ли это?

как бы нет упоминаний, что именно через Internet, хотя и это возможно...

EFrol
20.11.2023, 17:38
Хочу сделать так: ComПорт прибора---USR-TCP232-302---Mikrotik---Internet---Mikrotik--ПК с программой типа Менеджер данных.


Вам надо выяснить: Какой IP у Вас будет со стороны Internet? Если белый статический, то подскажем как настроить виртуальный порт через USR-VCOM.
Иначе... Вернетесь сюда.

melky
20.11.2023, 17:40
Так сам автор вроде давно не появлялся. Да и там все за свои кровные зачем то...
А я про пост #10

EFrol
20.11.2023, 17:47
Автор вернется - однозначно. Или появится кто-то другой с таким же вопросом. А мы такие умные, а толку 0. Посоветовать-то нечего.

melky
20.11.2023, 17:50
EFrol так давайте сварганим, только прошивать мне этот PIC12F1822 вроде есть чем (PicKit 2 самопаянный есть) но ни разу их не программил.

Сделать варианты прошивок типа к MQTT, Modbus Slave и т.д.

шлюзы на RapidScada вполне рабочее решение, только требует настройки Linux и Scada. Ну и не всем подходит.

EFrol
20.11.2023, 18:02
В целях удешевления я бы MQTT-модем производил отдельно, а конвертеры RS485<->RS485 и RS485<->RS232 - отдельно.
Но с возможностью смены прошивок(перепрограммирования). Однако как отлаживаться? Очень нужен целевой прибор или хотя-бы свободный доступ к нему через тот же Internet.

У меня есть идея написать для ПЛК304 MQTT-коммуникатор и выложить его на форуме.
Тогда при наличии ПЛК304 у заказчика, можно было писать конвертер удаленно.
Но ПЛК304 очень дорог и к тому же снят с производства?!

Теперь для этих целей пытаюсь предложить MQTT-модем на PIC12+sim800 ценой около 3т.р.
Есть вариант портировать все на ESP8266 - будет дешевле.

imaex
20.11.2023, 19:02
а совсем.
на jetHub работает ротация кондиционеров например в одной серверной.

Не надо было мне тут про ротацию кондиционеров вспоминать. У меня конкретно от очередных самоделкиных НЕ работает.

EFrol
20.11.2023, 19:38
У меня есть вопрос на засыпку: OwenCloud дает RAW-доступ в RS485-сеть через ПМ-210, ПЕ-210, ПВ-210?

melky
20.11.2023, 21:48
EFrol
OwenCloud дает RAW-доступ в RS485-сеть через ПМ-210, ПЕ-210, ПВ-210? в том и дело что нет, придумавшему сие чудо тоже бы кое-что оторвать..

Давайте будем реалистами, подобные устройства периодически востребованы, но выпускать в массы бесполезно по ряду причин.
1. Например не все готовы прошивать устройства самостоятельно
2. Как менять адресацию считываемого прибора, под который заточена прошивка?
3. как менять параметры, которые требуется считывать с прибора? не всегда нужны все.
4. как добавлять к опрашиваемому прибору второй, третий, если на линии два и больше приборов?
5. как менять адрес mqtt сервера, на который подписываться

И таких как и если для подобного устройства наберется вагон и тележка.
Для примера и понимания:
приборы Логика параметрируемые, те же СПТ (это тепловычислители) могут быть подключены к одному трубопроводу, а могут и к двум.
Фактически протокол один, если мы говорим о СП сеть, но каждый прибор из этого набора отвечает по разному.
Или например счетчики Меркурий, в зависимости от наличия тарификатора будет отвечать по разному.

То есть проблемы как таковых глобальных две
1. Покупатель такого устройства должен его только настраивать, а не прошивать. Прошивка только ради смены целевого устройства.
2. Возможность конфигурирования

Без этих двух глобальных вещей это утопия...


imaex там кондиционеры управляются через протокол Midea, вкл/выкл с заданными параметрами. вроде не первый месяц уже работают, на АВОК тема есть и там логин/пароль на посмотреть...

imaex
21.11.2023, 07:48
приборы Логика параметрируемые, те же СПТ (это тепловычислители) могут быть подключены к одному трубопроводу, а могут и к двум.


При чём тут Логика? Они все такие. В кого не плюнь - Взлёт, Теплоком, Термотроник. И в чём тут проблема - я никак понять понять не могу. С Логикой проблема ровно одна - протокол СП-сети.
Насчёт одного трубопровода смешно, да.

melky
21.11.2023, 08:59
imaex Логика всего лишь пример. Не важен прибор, производитель и т.д. Если сам прибор является конфигурируемым устройством в рамках либо самого прибора, либо объекта - то прибор отдает разное количество параметров.

Это является проблемой для PIC контроллеров, так как изменить требуемый набор параметров для чтения без перепрошивки PIC невозможно.

Вот о чем я говорю, по этому совсем не смешно, когда один и тот же прибор, скажем Логика СПТ761 будет стоять на одном трубопроводе или он же на двух...
Для подобных приборов нужен не PIC, а что-то с памятью и возможностью конфига, через регистры Modbus, через примитивный WEB интерфейс, или через Терминалку, например замкнув какую-то лапу чипа, переводим в настройки, цепляемся на тот же RS485 порт, предназначенный для чтения прибора например или лучше для второй стороны и через терминалку командами настраиваем что требуется.

Вы там про СП сеть потише, у приборов у каждого свой идентификатор и свой набор адресов параметров, который от прибора к прибору отличается. Не знаю, можно ли в PIC все запихнуть...
немного для понимания по Логике, я писал драйвер для RapidScada имея в доступе разные версии приборов и с разными протоколами - RS сеть, СП сеть и М4. И разбираясь с документациями на приборы старался предусмотреть возможность конфигурирования драйвера под различные варианты использования.
А техподдержка самой Логики уже и не в курсе, как и что там было написано в их же собственном OPC сервере :) допиливают, стараясь не сломать. Предположу, что видимо из-за текучки кадров.
По этому и не представляю, как такое можно впихнуть в PIC.
А сделать устройство на PIC с кучей прошивок под каждый прибор будет утомительно...

imaex
21.11.2023, 09:30
Не знаю, можно ли в PIC все запихнуть...


А зачем? Оно кому-то нужно? Я сильно сомневаюсь. Даже не вполне понимая, что такое PIC.

Что-то универсальное пытаетесь изобразить? Удачи. Флаг в руки, барабан на шею, как говориться.

melky
21.11.2023, 09:37
imaex я не пытаюсь что-то изобразить, я спокойно сделаю любой шлюз на Scada системе. Но вот заказчикам иногда надо дешево и чтобы работало.
Например был как-то запрос на модемы для счетчиков Меркурий для трансформаторных подстанций. Цена вопроса должна была быть меньше 1,5 тысяч рублей.
Вот тут бы как раз пригодилось что-то подобное. Еще одним из условий была передача от устройства что "Света" ушла :) то есть модем должен был успеть отправить сообщение, что питание выключено.

PIC это всего лишь микроконтроллер в котором крутится программа. Любой ПР или свободно программируемый контроллер имеет мозги, где крутится программа. Просто способы записи программ разные. и языки программирования тоже.

Spawn
21.11.2023, 09:54
PIC
- pic контроллер. словосочетание в хухль, первая строка сверху.

На самом деле, тема интересная. На сколько будет востребованная, получится узнать только по факту наличия готового конвертера в руках, как минимум.

А для универсальности, нужно заложить возможность конфигурирования конвертера, сваять аналог "Конфигуратор М110". Туда же (к "Конфигуратору М110") можно и прошивальщик с прошивками "прикрутить", чтобы можно было одни и те же платы под разные конвертации "адаптировать", например...

melky
21.11.2023, 09:57
Spawn так с PIC-ами невозможно конфигурировать, только смена прошивки. То есть конфигурация путем смены прошивки, причем через программатор. всякие usb-ttl тут не катят.

Я с удовольствием бы скооперировался с EFrol, те же приборы Логика покупать точно не буду, но могу попросить людей дать опять доступ.
Вопрос как отладку проводить?, ибо это не просто. Второй вопрос, как сделать физический COM порт, который приведет на прибор через Интернет? но этот вопрос наверное быстрее можно решить, чем вариант отладки программы для контроллера.

Так же в собственном зоопарке есть разные приборы. Меркурий 236, 206, Пульсар счетчик воды, регистратор, Энергомера со Сподес протоколом.

Spawn
21.11.2023, 10:01
Spawn так с PIC-ами невозможно конфигурировать, только смена прошивки. То есть конфигурация путем смены прошивки, причем через программатор. всякие usb-ttl тут не катят.

Я с удовольствием бы скооперировался с EFrol, те же приборы Логика покупать точно не буду, но могу попросить людей дать опять доступ.
Вопрос как отладку проводить?, ибо это не просто. Второй вопрос, как сделать физический COM порт, который приведет на прибор через Интернет? но этот вопрос наверное быстрее можно решить, чем вариант отладки программы для контроллера.

Ну интерфейсный опциональный кабель... что Вы, с семёном не работали? у них всё опция...:D

EFrol
21.11.2023, 10:04
А зачем? Оно кому-то нужно? Я сильно сомневаюсь. Даже не вполне понимая, что такое PIC.
Что-то универсальное пытаетесь изобразить? Удачи. Флаг в руки, барабан на шею, как говориться.

Если внимательно просмотреть все темы форума, то около 10% вопросов так или иначе связано с проблемой подключения чего-то (не имеющего Modbus) к ПР (не имеющего ничего, кроме Modbus). К сожалению, использование ПЛК с одной стороны бьет по карману, а с другой - требует умения программировать. Если с первым, действительно, - "кому это нужно?", то ко второму люди потянулись (не зря же ST впихнули в ПР).

Вот вам схема ПР110:
71754
как видите у PIC нет проблем с программированием и конфигурированием

Если бы OWEN начал производить самые дешевые приборы типа ModbusRTU Slave <-> (RS232, RS485) с возможностью программирования,
популярность ПР резко бы возросла (возможно я ошибаюсь), т.к. это сильно расширило бы применимость ПР к решению различных задач автоматизации.

melky
21.11.2023, 10:04
не катит тут ни USB-TTL, ни еще что-то типа... Только программатор. Физически вынимается микросхема, втыкается в программатор, после смены прошивки обратно в устройство.
Даже поменять адрес mqtt сервера не получится по другому. Скорее нужна обвязка с чипом памяти типа SPI, но я не схемотехник. хз, как это все можно сделать...

EFrol в контроллер прошита firmware, мы же загружаем только программу через USB в память, которую потом контроллер выполняет.
Но тогда надо писать и оболочку для заливки программы.

EFrol
21.11.2023, 10:07
не катит тут ни USB-TTL, ни еще что-то типа... Только программатор. Физически вынимается микросхема, втыкается в программатор, после смены прошивки обратно в устройство.
Даже поменять адрес mqtt сервера не получится по другому. Скорее нужна обвязка с чипом памяти типа SPI, но я не схемотехник. хз, как это все можно сделать...

В тот исходник, который я Вам передал, можно вставить код, который позволит менять настройки MQTT через SMS сообщения.

Spawn
21.11.2023, 10:10
не катит тут ни USB-TTL, ни еще что-то типа... Только программатор. Физически вынимается микросхема, втыкается в программатор, после смены прошивки обратно в устройство.
Даже поменять адрес mqtt сервера не получится по другому. Скорее нужна обвязка с чипом памяти типа SPI, но я не схемотехник. хз, как это все можно сделать...

EFrol в контроллер прошита firmware, мы же загружаем только программу через USB в память, которую потом контроллер выполняет.
Но тогда надо писать и оболочку для заливки программы.

Блин, ну элементарный вариант (не вдаваясь в последующие "дебри"), разве нельзя без перепрошивки pic, таблицы шлюзования по адресам соотнести что-ли?

EFrol
21.11.2023, 10:11
не катит тут ни USB-TTL, ни еще что-то типа... Только программатор. Физически вынимается микросхема, втыкается в программатор, после смены прошивки обратно в устройство.
Даже поменять адрес mqtt сервера не получится по другому. Скорее нужна обвязка с чипом памяти типа SPI, но я не схемотехник. хз, как это все можно сделать...

EFrol в контроллер прошита firmware, мы же загружаем только программу через USB в память, которую потом контроллер выполняет.
Но тогда надо писать и оболочку для заливки программы.

Тогда что вот это https://owen.ru/product/komplekt_dlya_programmirovaniya_pribora_oven_pr

melky
21.11.2023, 10:15
EFrol это обычный USB-TTL :)
при чем если старые темы поищите, там подавая +5В на контакт в ПР110 его либо программируют либо опрашивают вместо ПР-МИ485, проделывал это используя адаптер Ethernet-TTL от USR

Еще раз, тот PIC12F1822 так понимаю только через программатор, а в ПР-ках стоит еще и память, либо чип имеет память, куда мы просто заливаем прошивку. Вот что-то типо таких чипов тогда и надо использовать, а не самые простые PIC-и

EFrol
21.11.2023, 10:18
EFrol это обычный USB-TTL :)

Т.е. у OWEN'а есть возможность производить дешевые конвертеры с внутрисхемным программированием через Owen Logic.
Осталось выяснить: "Кому это нужно?"

Spawn
21.11.2023, 10:22
EFrol это обычный USB-TTL :)
при чем если старые темы поищите, там подавая +5В на контакт в ПР110 его либо программируют либо опрашивают вместо ПР-МИ485, проделывал это используя адаптер Ethernet-TTL от USR

Еще раз, тот PIC12F1822 так понимаю только через программатор, а в ПР-ках стоит еще и память, либо чип имеет память, куда мы просто заливаем прошивку. Вот что-то типо таких чипов тогда и надо использовать, а не самые простые PIC-и

О!.. начала "рождаться" истина...:D

Только хотел про память писать...

melky
21.11.2023, 10:23
Блин. ну в ПР-ках стоит контроллер либо с памятью, либо память внешняя, когда мы подключаемся к их программированию, то загрузчик контроллера заливает нашу прогу или даже firmware именно в память, не трогая загрузчик.

Посмотрите внимательнее на Arduino Nano например, китайцы их продают либо с загрузчиком, либо загрузчик надо еще предварительно в нее прошить, чтобы потом подключать к Arduino IDE. А адаптеры там такого же типа USB-TTL используются или подобные.
Вот надо сделать устройство, которое можно шить при помощи таких адаптеров, в идеале простыми USB-TTL, тогда смена прошивки будет доступна всем, а не только тем, у кого есть специализированный программатор.

EFrol
21.11.2023, 10:27
Я не настаиваю именно на PIC, хотя у них есть все (и вполне достаточно, для решения именно задачи конвертирования)
71756
Код позволяет менять сам себя!!!

melky
21.11.2023, 10:28
EFrol

В тот исходник, который я Вам передал, можно вставить код, который позволит менять настройки MQTT через SMS сообщения.

а где хранятся настройки, передаваемые по SMS? в памяти SIM800? что кроме адреса можно туда влить еще?
а если требуется конвертер протокола без модема? как с настройками?

я бы за подобные устройства, но не схемотехник ни разу. Да и с паянием уже проблемы, зрение не позволяет такую мелочь паять. Ну одно, два устройства на монтажке сделаю для тестов. Дальше то что?

Spawn
21.11.2023, 10:29
а не только тем, у кого есть специализированный программатор

Так эту проблему уже давно решили, не знаю, правда, как на счет микросхем памяти, но с микропроцессорами/микроконтроллерами у производителей различного оборудования - это давно "пройденный этап". И даже спецлавки есть, которые (в 50/50) firmware "вытягивают" (ну, пытаются, по крайней мере).

melky
21.11.2023, 10:31
EFrol давайте разработаем устройство, если можно заливать настройки без программатора. мне самому иногда интересны такие штуки. Что-то в корпус на DIN рейку размером с один автомат или в два автомата..... есть такие стандартные продаются.

EFrol
21.11.2023, 10:35
У PIC в корпусе:
- FLASH память для программы
- EEPROM для хранения энергонезависимых значений
- куча различной обвязки (UART, I2C, SPI и т.л.)
- управляемый кварцевый резонатор
PIC через UART читает SMS с SIM800 и позволяет переносить инфу в свою EEPROM
тоже самое можно сделать на esp8266 за 160р. (там памяти завались просто)

EFrol
21.11.2023, 10:37
EFrol давайте разработаем устройство, если можно заливать настройки без программатора. мне самому иногда интересны такие штуки. Что-то в корпус на DIN рейку размером с один автомат или в два автомата..... есть такие стандартные продаются.

Я как раз пытаюсь разработать платку под https://www.chipdip.ru/product/d1mg
Но мне бы хотелось, чтобы OWEN обратил внимание на эту проблему.

melky
21.11.2023, 10:44
EFrol а Овен тут каким образом поможет с проблемой?
По табличке выше вижу, что USART во всех один, а каким образом сделать на них два и больше?

и каким образом заливать параметры например без модема? То есть нужна какая-то служебная перемычка и чтобы PIC к терминалке подключался для ожидания команд или что-то в этом роде, или писать что-то вроде Конфигуратора...

EFrol
21.11.2023, 10:52
EFrol а Овен тут каким образом поможет с проблемой?
По табличке выше вижу, что USART во всех один, а каким образом сделать на них два и больше?

и каким образом заливать параметры например без модема? То есть нужна какая-то служебная перемычка и чтобы PIC к терминалке подключался для ожидания команд или что-то в этом роде, или писать что-то вроде Конфигуратора...

Вы хотели поковыряться?! На схеме видно наличие перемычки. В исходнике запрограммировано прямое соединение c SIM800 при ее установке до подачи питания.
Это нужно чтобы настроить SIM800:
- выключит эхо, различные URC и много другое ненужное
- настроить белый список, отключить входящие звонки и т.д.

Можно добавить возможность конфигурировать PIC через AC4, например.
Более того, в принципе, можно легенький bootloader запихнуть и менять саму прошивку.

У PIC есть возможность менять (коммутировать) выводы к UART.
Это значить можно сделать два Modbus-мастера или мастер и слэйв, а вот вот два слэйва уже не получится (да это и не нужно).

melky
21.11.2023, 10:59
EFrol вот для PIC-ов мне все это незнакомо :) я шил только готовые прошивки когда-то. Что там и как надо делать честно хз...
Начать можно с моих приборов, что есть. Сделать конвертеры в Modbus приборов в наличии. Потом уже перейти к чему-то удаленному.
Ну и сделать вариации сквозных интерфейсов через модем, типа через mqtt, или просто как TCP клиент чтобы было подключение.

В моем случае сложность именно в конфигурировании под конкретное устройство и состав переменных отдельно взятого протокола. Чтобы пользователь не заморачивался программированием, иначе это не для широкого распространения.

EFrol
21.11.2023, 11:06
EFrol вот для PIC-ов мне все это незнакомо :) я шил только готовые прошивки когда-то. Что там и как надо делать честно хз...
Начать можно с моих приборов, что есть. Сделать конвертеры в Modbus приборов в наличии. Потом уже перейти к чему-то удаленному.
Ну и сделать вариации сквозных интерфейсов через модем, типа через mqtt, или просто как TCP клиент чтобы было подключение.

В моем случае сложность именно в конфигурировании под конкретное устройство и состав переменных отдельно взятого протокола. Чтобы пользователь не заморачивался программированием, иначе это не для широкого распространения.

Я с Вами абсолютно согласен. Если мы сделаем такой конвертер, то дальше можно реализовать подключение чего угодно.
Даже подключив потом ПМ01 (https://owen.ru/product/pm01), реализовать тот же MQTT-модем.

Я называю эту идею: Универсальный конвертер. Максимально дешевый и программируемый.

А вот идет сборка его прототипа:
71757
Платка контроллера с RS485 + RS232_TTL + импульсный БП 220v на 5v600mA

melky
21.11.2023, 11:15
EFrol напишите в личку, с чего будем начинать. Что мне надо будет купить? я еще дома гляну, что у меня валяется. точно знаю, какая-то LiLu платка есть, Arduino Nano вроде есть.
Что тут может помочь для реализации? На макетке могу спаять для тестов что-то и т.д.

Надо понять вообще состав как железа так и программной части для создания конвертера.

EFrol
21.11.2023, 11:38
Ну вообще-то как бы все уже выложено в эту тему. Все карты на столе.
- сама идея
- варианты реализации
- даже прототипы есть (RS485 Slave<->(RS485Master, RS232Master)

Я пишу на Assemblere. Может кто сможет написать IDE для Windows (для компиляции с ST и загрузки в PIC12 через ПР-КП10/ПР-КП20).
Тогда это позволило бы сделать результат массовым (общедоступным).
Может кто поможет с массовым производством?! Может предложит другую схему (более дешевую, без изменения ТЗ)?!

melky
21.11.2023, 11:57
массовое производство это всего лишь заказ уже спаянных плат у китайцев тех же.
1. разводка плат и изготовление самих плат не проблема, у меня даже контакты есть китайца (я делал пару раз платки). Основная тут проблема это не накосячить с разводкой, учитывая особенности работы - напряжения, частоты... я косячил, сделал очень тонкий проводник в одном месте, решилось перемычкой более толстого сечения. Микросхема была для шаговых двигателей...
2. Вот у кого заказать не только производство плат, но чтобы сразу и все припаяли я хз. делал платки и паял сам.

Ну и программа. я на C# немного пишу из-за Scada, на C и тем более Асме тяжело. Ну на С еще смогу код опросов приборов адаптировать наверное, на Асме вряд ли.

заказывать мелкосерийное производство в России не выгодно вообще. Даже на 2-х сторонние платы с металлизацией мне такие суммы озвучивали, что просто за страну стыдно :)
Собственно у самого была идея применять что-то готовое в виде Arduino Nano, те же ESP. И по факту разработать надо типа материнской платы, на которую потом эта ESP или Arduino припаивается, там же разъемы, интерфейсы с обвязкой и готовая плата питания.

EFrol
21.11.2023, 12:03
массовое производство это всего лишь заказ уже спаянных плат у китайцев тех же.
1. разводка плат и изготовление самих плат не проблема, у меня даже контакты есть китайца (я делал пару раз платки). Основная тут проблема это не накосячить с разводкой, учитывая особенности работы - напряжения, частоты... я косячил, сделал очень тонкий проводник в одном месте, решилось перемычкой более толстого сечения. Микросхема была для шаговых двигателей...
2. Вот у кого заказать не только производство плат, но чтобы сразу и все припаяли я хз. делал платки и паял сам.

Ну и программа. я на C# немного пишу из-за Scada, на C и тем более Асме тяжело. Ну на С еще смогу код опросов приборов адаптировать наверное, на Асме вряд ли.

заказывать мелкосерийное производство в России не выгодно вообще. Даже на 2-х сторонние платы с металлизацией мне такие суммы озвучивали, что просто за страну стыдно :)

Да. На ASM писать тяжело. Сейчас бьюсь с математикой для плавающей запятой. Т.к. некоторые приборы возвращают дробные значения (да еще в ASCII-коде), а их надо конвертировать в 4-х байтный Float, чтобы передать по Modbus.
Прототип заказывал в https://rezonit.ru/

melky
21.11.2023, 12:05
ну на C# биться со строковыми float нет проблем хоть точка разделитель, хоть запятая, все готовое есть. А на Асме наверное печалька с этим... Почему не С ? разве там нет библиотек для этих целей? или тогда код сильно большой получается?

EFrol
21.11.2023, 12:12
ну на C# биться со строковыми float нет проблем хоть точка разделитель, хоть запятая, все готовое есть. А на Асме наверное печалька с этим... Почему не С ? разве там нет библиотек для этих целей? или тогда код сильно большой получается?

Библиотека есть, но для PIC18. Сейчас портирую на PIC12. Код несильно большой - помещается!

melky
21.11.2023, 12:23
ну если только это помещается, то как поместится код опроса протокола? там нифига не настолько маленький код. И преобразование строк и преобразования из BCD в int, uint и так далее... Тот же расчет CRC табличный или в виде кода...
В общем там целый набор преобразований.
Библиотека драйвера Логики у меня занимает примерно 65 кб на C# и это без учета механизмов, которые она использует из ядра Scada системы.
PIC12 со своими 2К тут кажется и рядом не валялся, и даже 8К не спасет.

Нужна другая микросхема для конвертера однозначно.

EFrol
21.11.2023, 14:56
ну если только это помещается, то как поместится код опроса протокола? там нифига не настолько маленький код. И преобразование строк и преобразования из BCD в int, uint и так далее... Тот же расчет CRC табличный или в виде кода...
В общем там целый набор преобразований.
Библиотека драйвера Логики у меня занимает примерно 65 кб на C# и это без учета механизмов, которые она использует из ядра Scada системы.
PIC12 со своими 2К тут кажется и рядом не валялся, и даже 8К не спасет.

Нужна другая микросхема для конвертера однозначно.

Да. Тут я с Вами тоже согласен.
И когда я писал MQTT-клиента на ASM - даже был уверен, что упрусь в нехватку ресурсов.
Но сейчас смотрю на отчет компилятора:



Program Memory Usage
Start End
--------- ---------
0x000000 0x000000
0x000004 0x0002fd
0x000600 0x000671
0x000700 0x00076d
0x008007 0x008008
0x00f000 0x00f084
1122 out of 2311 program addresses used, program memory utilization is 48%

и думаю, что делать с оставшимися 52% программной памяти?!

Понимаете какая штука?! Когда Вы пишите на машино-ориентированном языке, то плотность кода максимальная.
Любой человеко-ориентированный язык наровит разбазарить и память и такты ядра.

melky
21.11.2023, 15:12
Да я все понимаю, но переписывать код на Асм я точно не буду, на это нет просто времени. Если есть возможность выбрать чип для конвертера, точнее для устройства, которое будет опрашивать приборы и предоставлять данные в Modbus, то надо исходить из того, чтобы ему хватило памяти при программировании на C.
Все таки разобраться с адаптацией кода на С думаю будет легче, чем на Асм. В любом случае надо пробовать.

просто платы типа OrangePi 2 я видел у китайцев по 2т.р. что очень скромно. Всего-то нужно добавить питание и RS485. И писать ничего особо не надо. Просто ставить Linux и настраивать.
Банально, посмотрите сколько весит в байтах таблица для CRC по Modbus, если применять табличный метод.

EFrol
21.11.2023, 15:17
Каюсь - грешен. Тоже писал под Android на Java для OrangePi Lite. Но как представлю Linux + Dalvik (JVM) + мой APP - мама дорогая!
Может лучше esp8266 за 160р. - еще по божески.

melky
21.11.2023, 15:30
я тоже склоняюсь к ESP, надо будет поизучать, ну и определиться какую купить для тестов. И что еще купить к ней, чтобы порты сделать, 485-й и 232-й.
ESP сразу с Wi-Fi? или это примочка уже к ней? типа если сразу, то простецкий WEB ей делать для конфигурации.

EFrol
21.11.2023, 16:51
я тоже склоняюсь к ESP, надо будет поизучать, ну и определиться какую купить для тестов. И что еще купить к ней, чтобы порты сделать, 485-й и 232-й.
ESP сразу с Wi-Fi? или это примочка уже к ней? типа если сразу, то простецкий WEB ей делать для конфигурации.

Да. Совершенно верно.
Вот уже работающая схема конвертера с двумя RS485, которая уже работает и с USR-VCOM и MQTT (через WiFi) и поддерживает WEB и прошивается OTA (https://ru.wikipedia.org/wiki/%D0%9E%D0%B1%D0%BD%D0%BE%D0%B2%D0%BB%D0%B5%D0%BD%D 0%B8%D0%B5_%D0%BF%D0%BE_%D0%B2%D0%BE%D0%B7%D0%B4%D 1%83%D1%85%D1%83).
71781

https://duino.ru/esp12e.html/
https://www.chipdip.ru/product/rs485-board-3.3v

melky
21.11.2023, 22:23
EFrol я правильно понимаю, что плата TTL-RS485 без автоуправления и это аналог этой ? https://aliexpress.ru/item/32826807148.html?sku_id=65004860098&spm=a2g2w.productlist.search_results.19.524abfb4H7 HnME

з.ы. просто заказал у китайцев такие платы и ESP-12F (вроде как аналог 12E)

EFrol
22.11.2023, 07:45
EFrol я правильно понимаю, что плата TTL-RS485 без автоуправления и это аналог этой ? https://aliexpress.ru/item/32826807148.html?sku_id=65004860098&spm=a2g2w.productlist.search_results.19.524abfb4H7 HnME

з.ы. просто заказал у китайцев такие платы и ESP-12F (вроде как аналог 12E)

Есть одно большое НО. Питание 5v, соответственно, и уровни будут такие же. esp8266 на 3.3v. У меня мс MAX485 с таким уровнем работать не захотела. Надо чтобы мс стояла SP3485.
Так же и для RS232 вместо MAX232 надо SP3232.

melky
22.11.2023, 08:48
EFrol меня смущает схема и сам чип 12E, у него всего один Rx,Tx и переключение происходит за счет этих модулей с программным переключением, то есть блокируется один, потом второй.
Опрос приборов не быстрое занятие, там пакеты на один запрос могут быть значительными. Будет успевать работать на два фронта эта комбинация или нужен чип ESP с двумя портами сразу?

На счет этих модульков вроде заявлена работа и на 3.3В, типа совместимы. Предположу, что там stepup стоит микросхема по питанию, типа если подал 3,3В то там где надо подтянет к 5-ти. Но ее схемы у меня нет... Блин, нифига на ней нет, видимо не ту выбрал к покупке :(

да что-то жаба задушила 430 за одну, а у китайцев не нашел. Да и нафига там этот RJ разъем сдался?, просто клеммников не достаточно?

https://aliexpress.ru/item/1005005715753117.html?sku_id=12000034098795274&spm=a2g2w.productlist.search_results.6.4c8a5d021yJ 4mg - такую заказал :) вроде лапа для управления передачей есть.

EFrol
22.11.2023, 09:14
Я почему и бросил эту схему, да перешел на PIC. Есть некоторые схемотехнические сложности, особенно при использовании RS232 = приходиться добавлять новые МС или дополнительное окружение. Макетка уже вся в хлам.
И да! У esp один полноценный аппаратный UART порт, у второго только TX (используется для вывода отладочных сообщений).
Идея заключается в следующем: Если один порт Master, то его мы слушаем только тогда, когда что-то запросили и то строго по таймауту.
Все остальное время работает Slave-порт - слушает запросы от другого Master (ПР, например).
Алгоритм: Приняли ModbusRTU по Slave -> проверили корректность пакета, преобразовали -> переключились на Master, отправили, дождались ответ, преобразовали -> переключились на Slave, отправили ответ. На ПР заранее увеличили время ожидания ответа. Так вот на PIC12F1822 схемотехнически, оказалось, реализовать проще. Да и жалко стало esp (из пушки по воробьям).
Кстати, работа с SIM800. Входной пакет SIM800 хранит у себя пока PIC его не запросит. Получив входной пакет от переключается на RS485, производит обмен, переключается на SIM800 и отправляет ответ в Internet. Т.е. и стой и стой стороны никто не начнет передачу пока PIC не разрешит. В этом случает одного UART достаточно. Только переключать его на нужный порт.

Кстати, у Вас правильный вопрос: "Нафига сдался?"
Я тоже думаю: "Нафига простому конвертеру WiFi, WEB и т.д.?"

У большинства приборов протоколы настолько простые, что иногда и PIC жалко использовать.

melky
22.11.2023, 09:28
аааа, предупреждать надо :)

надо какой-то чип с двумя портами, один всегда опрашивает прибор и складывает в регистры Modbus, а по второму порту забираем данные из регистров когда хотим... Что есть для этого ?
Ну или как обучить работать со всем этим ESP-12E ?

Были бы приборы простыми, я бы не обсуждал это. Вернее они не столько сложные, сколько дурные. Например из той же Логики можно запрашивать по одной переменной, но эта дура будет из-за одной переменной присылать целиком страницу, где эта переменная находится. Тогда проще забрать сразу несколько переменных, расположенных на странице.
Страница если что 64 б...

Делать конвертеры протокола из Modbus в ??? не совсем правильно будет, типа когда спросили Modbus, тогда пошел запрос к прибору. Это идиотизм будет какой-то.

Имхо, к портам придется добавлять обвязку, чтобы порты были гальванически развязаны. Без этого нет смысла делать устройство.

imaex
22.11.2023, 10:25
Например из той же Логики можно запрашивать по одной переменной, но эта дура будет из-за одной переменной присылать целиком страницу, где эта переменная находится.


Я, конечно. написанием протокола под СП-сеть никогда не занимался, но ни одно стороннее приложение для работы с ней даже намёка на подобное поведение не содержит. Что запросили, то и получили.

melky
22.11.2023, 10:28
imaex а вы добавьте по очередно разные переменные из одной страницы и посмотрите лог ответа прибора, очень сильно удивитесь :)
Это в М4 протоколе (гибрид СП сеть или переход откуда-то куда-то в протоколе) можно запросить одну переменную и одну получить, а в СП сеть будьте любезны в ответ схлопотать одну страницу памяти и вытащить требуемую переменную. А то и две страницы, если переменная вдруг на 8 байт и неожиданно не влезла на первую страницу...

з.ы. возможно есть какие-то другие команды по запросам переменных, но я ориентировался на документацию протокола, документацию нужного прибора и изучением логов OPC сервера Логика при работе с требуемым прибором.

Кстати ESP-12E имеет два порта UART, пины 13 и 15, в общем разбираться и разбираться...

imaex
22.11.2023, 10:39
imaex а вы добавьте по очередно разные переменные из одной страницы и посмотрите лог ответа прибора, очень сильно удивитесь :)

Да сколько угодно - без разницы. Ужасы какие-то рассказываете.

melky
22.11.2023, 10:42
imaex это не ужасы, так работает OPC сервер Логика :)
Если знаете команды из СП сеть для ответа прибором только одной переменной, напишите. Вдруг я что-то упустил и одну переменную можно запросить иначе?
Просто обычно требуется сразу несколько переменных и я группировал адреса и запрашивал сразу страницами памяти. Но это же приходилось делать даже если мне нужна всего одна переменная где-нибудь в середине списка...

imaex
22.11.2023, 10:49
Если знаете команды из СП сеть для ответа прибором только одной переменной, напишите.


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

melky
22.11.2023, 10:51
imaex понятно, вы попросили, вам ответили, но при этом вас мало интересует как именно вам отвечали, ибо вам важен результат :)

EFrol
22.11.2023, 11:06
Хорошо.
Допустим такой конвертер мы создадим.
Допустим по описанию протокола прошьем.

Как отладить без целевого прибора?
Удаленный доступ через ПК?
Что делать, если прибор уже установлен на объекте?
Выезд к заказчику?
Передать заказчику как есть?
Цена на прибор?
Сколько брать за разработку прошивки?

Было бы здорово, если бы OWEN производил, а мы бы обменивались прошивками как библиотеками ФБ.

melky
22.11.2023, 11:13
EFrol что касается Логики, ессно покупать данные приборы я не буду из своего кармана. Но люди давали доступ удаленно к данным приборам, думаю так же можно попросить дать доступ еще раз.
Проблема заключается в том, что прибор у черта на куличках, подключен через Etherneth-RS485(232), сделать виртуальный COM не проблема. А вот сделать на этот виртуальный COM связь с физическим COM портом, чтобы подключиться устройством еще ни разу не пробовал. Но по идее это возможно....
Если удастся решить данный вопрос с портами - то просто предоставление доступа к приборам по такому же принципу и необходимое время на разработку прошивки.


За разработку тех приборов, что есть у меня или предоставят в доступ ничего, цель создать устройство, ну и продавать его не в минус...
Цена на прибор - ну это только ваша(наша) жадность :)

imaex
22.11.2023, 11:21
imaex понятно, вы попросили, вам ответили, но при этом вас мало интересует как именно вам отвечали, ибо вам важен результат :)

Где здесь про "страницы"? Вы к 232-му интерфейсу приборов подключаетесь или на 485-ый ломитесь?

71793

melky
22.11.2023, 11:28
imaex это кажись из версии М4 протокола... у них там сам черт ногу сломит, а обратившись в техподдержку Логики получил ответ - мы не знаем (не помним) :)

Подключался через Etherneth - RS а какой там он у людей я не в курсе :)

imaex
22.11.2023, 11:36
Документ называется

МАГИСТРАЛЬНЫЙ ПРОТОКОЛ СПСеть
Руководство программиста
РАЖГ.00276-33

У них дофига народу во Взлёт ушло, в т.ч. разработчики протокола. Т.ч. может и правда деталей не знают. Тем более, что приборы год от года меняются. Того же СПТ961 только я 4 модификации знаю. Ладно, пусть 3.
Однако, для простого чтения оперативных параметров это не является проблемой.

melky
22.11.2023, 11:43
imaex да, уже открыл посмотрел у себя на компе... возможно перепутал с RS сетью. Так как драйвер я писал один на все, просто для всех приборов Логика. Опять же, ориентировался при этом не только на документацию, но и на работу их OPC сервера, изучая логи обмена.

Исходники драйвера еще не выкладывал на GIT, так как там полно мусора всякого разного, хотя есть и куча комментариев собственных.
Помню, что там не так все просто, как хотелось бы :)

в протоколах их, все можно было сделать гораздо проще в тех или иных местах. Просто видимо из-за давности на рынке у них такая чехарда - RS сеть, потом СП сеть, потом М4 (или наоборот два последних)...
Вообще разбираясь с разными протоколами пришел к тому, что Modbus во много лаконичнее, чем куча других.