PDA

Просмотр полной версии : Видео урок написания своего приложения опрашивающего устройства по Modbus



hilih
19.12.2014, 23:05
Интересен ли будет кому-нибудь такой урок? Начиная от установки, VB6, например и кончая опросом какого-нибудь ТРМ или другого прибора. Урок включает в себя: Установку VB6, создание проекта, написание процедуры опроса устройства по протоколу Modbus или ОВЕН, вывод значения измеряемой величины в текстовом поле, архивирование в Excel.

Урок будет прост. Методы сугубо мои, будь то подключение библиотеки протокола или же прописывание самого протокола.

Необходимо: Visual Basic 6 (так, как он проще всего), библиотека протокола OWEN.

Yegor
20.12.2014, 06:32
Нет, не надо)) Зачем такие вещи спрашивать? Боитесь, что видео испортится к тому моменту, когда оно кому-то понадобится? Можете — делайте. Только слитно пишите: видеоурок.

Вольд
20.12.2014, 12:25
Ни какой труд не пропадет даром.

hilih
20.12.2014, 20:23
Если видео не востребовано, зачем его делать?
Вы уже сделали свой текстовый урок. Я хотел сделать немного проще.
Наверное не буду.

Иванов Виктор
23.12.2014, 14:07
Здравствуйте, пожалуйста покажите видео урок! Я как раз чем то подобным занимаюсь

hilih
24.12.2014, 16:55
Для того, чтобы его показать, я должен его сделать.
Если будет время сделаю. :)

nn19999
05.03.2015, 12:28
давно надо было сделать!!тем более на VB6 !!!Когда можно будет посмотреть???

Kostennikov
06.03.2015, 14:31
Мое мнение нужен. Особенно если это не использование библиотек, а с самого самого. от работы с сериал порт до механики работы протокола

hilih
02.05.2015, 21:55
http://www.youtube.com/watch?v=ZKP4VazO-RE

Сделал. Опрос контроллера ПЛК 150 через Modbus TCP.

hilih
05.05.2015, 21:48
Ещё бы мог сделать пример опроса устройства по Modbus TCP через локальную сеть или интернет, для OC Android или Windows Phone, используя eclipse. Помнится, делал для Windows Mobile, затерялось где-то.
Без donate не буду.

BETEP
06.05.2015, 08:53
Есть такая штука как BitConverter.ToSingle
https://msdn.microsoft.com/ru-ru/library/system.bitconverter.tosingle%28v=vs.90%29.aspx

BitConverter в сочетании с Array.Reverse идеально подходит для модбаса.

ну и отдельного потока для опроса не хватает....

Yegor
06.05.2015, 09:14
Есть NModbus (C#) и libmodbus (C). Как пользоваться первым я уже рассказывал: http://www.owen.ru/forum/showthread.php?t=20122

hilih
06.05.2015, 09:15
Есть такая штука как BitConverter.ToSingle
https://msdn.microsoft.com/ru-ru/library/system.bitconverter.tosingle%28v=vs.90%29.aspx

BitConverter в сочетании с Array.Reverse идеально подходит для модбаса.

ну и отдельного потока для опроса не хватает....


С нетерпением ждём вашего примера с битконвертером.

BETEP
06.05.2015, 09:36
разбор байтов в модбасовском ответе по нужным форматам
nn-номер байта с которого разбор начинается.

Select Case tFormat_SelectedIndex(x)
Case 0 'INT
Array.Reverse(inBuffer, nn, 2)
dataStr(x) = BitConverter.ToInt16(inBuffer, nn)
nn = nn + 2
Case 1 'UINT
Array.Reverse(inBuffer, nn, 2)
dataStr(x) = BitConverter.ToUInt16(inBuffer, nn)
nn = nn + 2
Case 2 'DINT
If nn >= bez_srs - 2 Then Exit For
Array.Reverse(inBuffer, nn, 4)
dataStr(x) = BitConverter.ToInt32(inBuffer, nn)
nn = nn + 4
Case 3 'UDINT
If nn >= bez_srs - 2 Then Exit For
Array.Reverse(inBuffer, nn, 4)
dataStr(x) = BitConverter.ToUInt32(inBuffer, nn)
nn = nn + 4
Case 4 'REAL
If nn >= bez_srs - 2 Then Exit For
Array.Reverse(inBuffer, nn, 2)
Array.Reverse(inBuffer, nn + 2, 2)
dataStr(x) = BitConverter.ToSingle(inBuffer, nn)
nn = nn + 4
End Select

Есть NModbus (C#)
хорошая библиотека, и на VB без проблем, и не нужно с сокетами заморачиваться.

hilih
06.05.2015, 19:47
В моём примере отсутствует зависимость от сторонних библиотек. Что не мало важно.

BETEP
06.05.2015, 23:21
:) http://bash.im/quote/415033 только лопату покупать в данном случае не нужно.

К видео исходник приложить нужно, иначе толку мало...А на BitConverter.ToSingle нет смысла обижаться, знали бы Вы об этом раньше, не нагородили бы кучу строк при преобразовании к float.
Обычно за подсказки благодарят.

hilih
09.05.2015, 00:14
Прежде чем купить лопату, ты должен сначала деньги где-то достать. На это уйдёт больше года.
Плюс люди узнают нутро протокола.

К тому же я за олдскульное программирование. Не кодил ты на асме. Там вообще нет библиотек.

voale
28.04.2016, 09:09
Прежде чем купить лопату, ты должен сначала деньги где-то достать. На это уйдёт больше года.
Плюс люди узнают нутро протокола.

К тому же я за олдскульное программирование. Не кодил ты на асме. Там вообще нет библиотек.

а можно сделать такой же мануал, но для C# ? , был бы очень признателен.
я тоже считаю что понимать как работает MODBUS TCP да и любая другая вещь -нужно, чтобы быстро искать и понимать на каком уровне могут происходить
ошибки. спасибо

melky
28.04.2016, 09:22
Тоже использую BitConverter и не только. Штатные процедуры C# для тех или иных задач очень экономят время и код.

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

voale, если вам не в лом разбирать чужие исходники, есть прекрасная реализация Modbus TCP, RTU, ASCII у разработчика Rapid SCADA, исходники лежат на гитхабе. Найдете через официальный сайт.
Изучайте, творите и так далее... Как раз на C#

login-l
29.05.2016, 20:50
Ещё бы мог сделать пример опроса устройства по Modbus TCP через локальную сеть или интернет, для OC Android или Windows Phone, используя eclipse. Помнится, делал для Windows Mobile, затерялось где-то.
Без donate не буду.

Алексей, очень нужен пример для OC Android. Если не видеоурок, то хотя бы пояснение, как написать приложение под Android для отображения состояния входа, а также отображение состояние выхода и его вкл/выкл, например для ПЛК110. Буду крайне признателен.

capzap
29.05.2016, 21:00
Алексей, очень нужен пример для OC Android. Если не видеоурок, то хотя бы пояснение, как написать приложение под Android для отображения состояния входа, а также отображение состояние выхода и его вкл/выкл, например для ПЛК110. Буду крайне признателен.
а что jamod не портируется?

Scream
29.05.2016, 21:09
Алексей, очень нужен пример для OC Android. Если не видеоурок, то хотя бы пояснение, как написать приложение под Android для отображения состояния входа, а также отображение состояние выхода и его вкл/выкл, например для ПЛК110. Буду крайне признателен.

Есть тут на форуме каскада, она умеет по modbus tcp отображать состояние входов и т.п.

login-l
29.05.2016, 21:44
Каскада - это не мой случай, мне нужно разобраться с вопросом написания своих приложений под Андроид.
Jamod - попробую, спасибо.

hilih
03.11.2019, 23:43
Programming in Android studio link modbus tcp with Delta DVP 12SE PLC
https://www.youtube.com/watch?v=cHXrzB8142I&t=8s

Спасибо.