1. Обязательно представиться на русском языке кириллицей (заполнить поле "Имя").
  2. Фиктивные имена мы не приветствуем. Ивановых и Пупкиных здесь уже достаточно.
  3. Не писать свой вопрос в первую попавшуюся тему - вместо этого создать новую тему.
  4. За поиск, предложение и обсуждение пиратского ПО и средств взлома - бан без предупреждения.
  5. Рекламу и частные объявления "куплю/продам/есть халтура" мы не размещаем ни на каких условиях.
  6. Перед тем как что-то написать - читать здесь и здесь, а студентам - обязательно здесь.
  7. Не надо писать в ЛС администраторам свои технические вопросы. Администраторы форума отлично знают как работает форум, а не все-все контроллеры, о которых тут пишут.

Подключение Millimar N1702M к СПК-107

Ответить

Автор темы
dines
здесь недавно
здесь недавно
Сообщения: 3
Зарегистрирован: 09 янв 2019, 11:00
Имя: Денис
Благодарил (а): 2 раза

Подключение Millimar N1702M к СПК-107

Сообщение dines »

Добрый день,
Имеется панель Овен СПК-107, в которой есть COM-порт, поддерживающий режим работы RS485. И соответственно документация по работе с этой панелью и несколькими протоколами (включая Modbus) в среде Codesys.

Также имеется измерительный прибор Millimar N1702. На его входе индуктивный датчик, на выход выдаются результаты измерений (перемещения этого датчика), но выход только цифровой с интерфейсом RS485. Штатно этот блок подключается к преобразователю RS485->USB (из той же линейки N1700) и далее на компе под Windows есть специальное ПО и исходники на C#. На компе всё работает.

Но нужно подключить этот Millimar N1702 не к компьютеру, а к панели Овен СПК-107. Трудность в том, что Mahr не даёт никакой информации о протоколе передачи данных, известно только что интерфейс RS485 и всё. Как бы соединить проводом то не проблема, а вот как дальше работать, как извлекать данные?

Такая задача вообще осуществима? Если да, то может быть есть какой то алгоритм действий, с чего можно начать, что бы попробовать определить протокол...
Аватара пользователя

dtv
завсегдатай
завсегдатай
Сообщения: 575
Зарегистрирован: 04 фев 2014, 08:41
Имя: Тарас Валерьевич
Страна: Россия
город/регион: Екатеринбург
Благодарил (а): 59 раз
Поблагодарили: 89 раз

Подключение Millimar N1702M к СПК-107

Сообщение dtv »

Преобразователь, скорее всего, создаёт в ПК виртуальный COM-порт. Программа работает с ним, как с обыкновенным СОМ-портом. Изучайте исходники на предмет организации протокола обмена данными.
Взгляд знатока намного уже кругозора неуча. Ю.Базылев

Parliament74
корифей
корифей
Сообщения: 792
Зарегистрирован: 16 ноя 2016, 11:33
Имя: Максим Владимирович
Страна: Россия
город/регион: Магнитогорск
Благодарил (а): 16 раз
Поблагодарили: 202 раза

Подключение Millimar N1702M к СПК-107

Сообщение Parliament74 »

Прежде всего, необходимо уяснить для себя, что Modbus (у СПК) и RS485 (у Millimar) - это совсем не одно и тоже (хотя ради прикола можно попробовать посадить Millimar на Modbus-сниффер и посмотреть, но я на 146% уверен, что если бы у производителя там был Modbus, то он бы и писал про Modbus).

Затем далее, вам необходимо данные с щупа получать именно в СПК чтобы чем-то там дальше управлять? Или просто надо данные оператору например видеть?

Если именно в СПК надо, то такая задача осуществима, поскольку производитель специально выложил исходники для "There is an option to communicate directly with the N 1700 modules using a third-party software" - прямого подключения N1700 к чужому софту.
Если в исходниках вы не понимаете, что за данные отправляет N1700, то для вас эта задача становится не осуществима.

На СПК-1xx DOOM запускали, так что на С#, конечно же, проблематично будет софтину под Linux накатать, ну а под C++ без проблем. Но если вы под Linux не умеете писать программы на C++, то для вас снова эта задача становится не осуществима.

А если надо просто данные с щупа забирать и смотреть, то покупается готовый ПК (C 1700 PC) от Mahr за 2589 EUR. Ну или софтина берётся (Cockpit) за 899 EUR.

Автор темы
dines
здесь недавно
здесь недавно
Сообщения: 3
Зарегистрирован: 09 янв 2019, 11:00
Имя: Денис
Благодарил (а): 2 раза

Подключение Millimar N1702M к СПК-107

Сообщение dines »

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

Parliament74, данные с щупа нужно просто видеть оператору. Но поскольку эти измерения нужно проводить в цехе, где установка компа не представляется возможной, то и был выбран СПК-107 по причине практичности и удобства как монтируемый в щит компактный прибор с резистивным сенсорным экраном. Выбор был сделан практически наугад (экспериментальный вариант), так как опыта работы с СПК до сих пор не было. Ну и была надежда подключить к СПК штатными средствами, в Codesys. На счёт программирования под Linux на С++, это тогда вообще отказываться от работы в Codesys и полностью писать своё прикладное ПО? В этом случае это слишком сложная (неподъёмная в данном случае) для меня задача. А ПК (C 1700 PC) от Mahr за 2589 EUR и софт Cockpit за 899 EUR я видел, но поскольку таких стендов измерения нужно далеко не один, получается очень дорого. Проще поискать компактный компьютер с Windows и сенсорным экраном (с этого и надо было начинать, но ранее уже был куплен СПК-107, вот и приходится скрещивать "бульдога с носорогом").
Сейчас изучаю исходники на C#, может всё таки удастся понять что там за протокол обмена данными используется, вероятно какой то свой, если получится, то в Codesys предусмотрена возможность работы с нестандартными протоколами, главное понять его суть, что является очень трудной задачей для меня.

Parliament74
корифей
корифей
Сообщения: 792
Зарегистрирован: 16 ноя 2016, 11:33
Имя: Максим Владимирович
Страна: Россия
город/регион: Магнитогорск
Благодарил (а): 16 раз
Поблагодарили: 202 раза

Подключение Millimar N1702M к СПК-107

Сообщение Parliament74 »

dines, здесь сами смотрите, конечно, но я бы проще планшет под Windows купил обычный (в пределах 10 т.р. найти можно), чем боролся с C++ и Linux, да и в случае большого количества стендов будет проще со всем этим хозяйством работать.
Ещё в защищённом исполнении планшеты такие есть, но мне кажется проще дешёвые менять периодически...

Parliament74
корифей
корифей
Сообщения: 792
Зарегистрирован: 16 ноя 2016, 11:33
Имя: Максим Владимирович
Страна: Россия
город/регион: Магнитогорск
Благодарил (а): 16 раз
Поблагодарили: 202 раза

Подключение Millimar N1702M к СПК-107

Сообщение Parliament74 »

Да, наткнулся на тему 8-ми летней давности:
http://asutpforum.ru/viewtopic.php?t=799

В теории, наверное, можно RS485 от Millimar переделать аппаратно в тот же Modbus или в те же 4-20, тогда хоть куда можно будет подключать датчик. Производитель к тому же грозился любой протокол в любой другой протокол сделать при необходимости, можете с ними попробовать пообщаться по поводу цены такого удовольствия...
Аватара пользователя

hell_boy
почётный участник форума
почётный участник форума
Сообщения: 1746
Зарегистрирован: 18 янв 2009, 12:25
Имя: Дмитрий
Страна: Россия
город/регион: Москва
Благодарил (а): 6 раз
Поблагодарили: 132 раза

Подключение Millimar N1702M к СПК-107

Сообщение hell_boy »

dines писал(а): 10 янв 2019, 04:40 да, на компе драйвер преобразователя создаёт виртуальный COM порт.
С работой на компе вообще проблем нет, я там на базе исходников создал своё приложение.
Беглый анализ исходников тестовой программы на С++ показал:
- протокол у них называется "MarNet"
- тестовая программа работает через "N1700.dll", исходников которой не предоставлено
- "N1700.dll" в свою очередь является оболочкой для вызовов функций "ftd2xx.dll" из комплекта драйвера преобразователя USB-RS485
Про реверсинг вызовов "ftd2xx.dll" существуют тонны информации.
На всякий случай, исходники были в файле "Millimar--N1700--1.01-16--SD.zip", скачанном с офсайта https://www.mahr.com/en/Services/Produc ... ve-probes/ Кнопка "Download"
"Умные люди обсуждают идеи, средние - события, а глупые - людей" Л.Н. Толстой

Автор темы
dines
здесь недавно
здесь недавно
Сообщения: 3
Зарегистрирован: 09 янв 2019, 11:00
Имя: Денис
Благодарил (а): 2 раза

Подключение Millimar N1702M к СПК-107

Сообщение dines »

В общем, приостановили пока эту тему, и остановились на платформе с Windows, тут вариантов много, и мини-ПК и планшеты и промышленные компьютеры в защищённых корпусах и т.д. Но тем не менее, для себя (в целях самообразования) по мере времени продолжу ковырять исходники от Mahr.

Да, я с этого же архива и брал исходники "Millimar--N1700--1.01-16--SD.zip". Там есть на C++ пример консольного приложения, и на C# пример оконного WindowsForm. Вот на C# и пишу сейчас. И да, там связь через "N1700.dll" идёт, но поскольку в программировании я разбираюсь на поверхностном уровне, то с набегу не получается разобраться, требуется время на изучение всех тонкостей и советы, вот и обратился сюда. Спасибо всем за активность.

Тему 8-ми летней давности почитаю, спасибо за ссылку.
Ответить

Вернуться в «ОВЕН»