FLProg
Вход на сайт
Логин:
Пароль:
Поиск
...
Статистика
Понедельник, 11.12.2017, 03:03
Приветствую Вас Гость | RSS
Главная | Регистрация | Вход

Поиск по сайту


Форум
[ Новые сообщения · Участники · Правила форума · Поиск · RSS ]
Страница 1 из 212»
Модератор форума: support, Сергей, Anydy, Олег 
Форум » Основной » Железо - контроллеры, шилды, датчики и др. » Протоколы » Помогите разобраться с модбас
Помогите разобраться с модбас
mixalych Дата: Пятница, 29.09.2017, 20:53 | Сообщение # 1
Рядовой
Группа: Проверенные
Сообщений: 8
Награды: 0
Репутация: 0
Статус: Offline
Здравствуйте. Пытаюсь разобраться с flprog и modbus. Создал простейший скетч выключатель - диод. Пытаюсь считывать состояние цифрового входа. При запуске QModBus выводит сообщение: Could not connect serial port. В Terring modbus tools при попытке чтения пишет: Timeout Error. Timeout 1000ms.
Что я пропустил? Автор в обучающих видео задает адрес и скорость порта надо ли это делать в версии 2.5.1?
Прикрепления: 8178788.flp(51Kb)
 
Dev1 Дата: Пятница, 29.09.2017, 21:05 | Сообщение # 2
Генерал-лейтенант
Группа: Проверенные
Сообщений: 683
Награды: 13
Репутация: 17
Статус: Offline
Цитата mixalych ()
Автор в обучающих видео задает адрес и скорость порта надо ли это делать в версии 2.5.1?

Обязательно.


Win7/10-64 FLProg v3.0.2 external IDE 1.8.5

 
Dev1 Дата: Пятница, 29.09.2017, 21:11 | Сообщение # 3
Генерал-лейтенант
Группа: Проверенные
Сообщений: 683
Награды: 13
Репутация: 17
Статус: Offline
Поставил стандартный сом порт
Прикрепления: 3136605.flp(50Kb)


Win7/10-64 FLProg v3.0.2 external IDE 1.8.5

 
mixalych Дата: Пятница, 29.09.2017, 21:19 | Сообщение # 4
Рядовой
Группа: Проверенные
Сообщений: 8
Награды: 0
Репутация: 0
Статус: Offline
То же самое. Пробовал задавать адрес и скорость порта, по образцу из этого видео https://www.youtube.com/watch?time_continue=470&v=v60kZgquUU8. Результат тот же.
Прикрепления: 8072403.flp(145Kb)


Сообщение отредактировал mixalych - Пятница, 29.09.2017, 21:32
 
Sancho Дата: Суббота, 30.09.2017, 08:46 | Сообщение # 5
Генерал-майор
Группа: Проверенные
Сообщений: 546
Награды: 15
Репутация: 17
Статус: Offline
mixalych, Вам  Dev1  предложил минимальный вариант для проверки.
А Вы всё пытаетесь через soft serial, не расказав о железе между ним и программой.
Последний скетч не являетс простейшим, в отличии от поста 3.

Добавлено (30.09.2017, 08:46)
---------------------------------------------
Точно читаете один input рег ?


Если не получится на контроллере - сделаю на тразисторах и 155/176...
 
mixalych Дата: Суббота, 30.09.2017, 09:32 | Сообщение # 6
Рядовой
Группа: Проверенные
Сообщений: 8
Награды: 0
Репутация: 0
Статус: Offline
Железо: Arduino uno; uart-rs485; rs485-usb.
Загрузил скетч Dev1 прилагаю скриншоты.

Я так понимаю у меня проблемы с железом. Вроде дрова стали, ничего не ругается, а связи нет. Пробовал разные примеры с интернета, результат тот же.
Прикрепления: 8339626.png(67Kb) · 5633125.png(160Kb)


Сообщение отредактировал mixalych - Суббота, 30.09.2017, 09:59
 
Sancho Дата: Суббота, 30.09.2017, 10:29 | Сообщение # 7
Генерал-майор
Группа: Проверенные
Сообщений: 546
Награды: 15
Репутация: 17
Статус: Offline
Самое слабое звено, подозреваю на 99%, uart-rs485, особенно из ценовой политики 30-50 руб.
Попробуйте напрямую, через Serial0, usb, подключить.


Если не получится на контроллере - сделаю на тразисторах и 155/176...
 
mixalych Дата: Суббота, 30.09.2017, 10:37 | Сообщение # 8
Рядовой
Группа: Проверенные
Сообщений: 8
Награды: 0
Репутация: 0
Статус: Offline
Наверное вы правы покупал, чтобы попробовать самые дешевые.
https://ru.aliexpress.com/item.....0bkWHp

Не совсем понял как подключить напрямую, что делать с Pe-De?
 
Sancho Дата: Суббота, 30.09.2017, 10:42 | Сообщение # 9
Генерал-майор
Группа: Проверенные
Сообщений: 546
Награды: 15
Репутация: 17
Статус: Offline
Можешь ничего не делать, можешь установить "нет".

Если не получится на контроллере - сделаю на тразисторах и 155/176...
 
mixalych Дата: Суббота, 30.09.2017, 10:55 | Сообщение # 10
Рядовой
Группа: Проверенные
Сообщений: 8
Награды: 0
Репутация: 0
Статус: Offline
Спасибо. Заработало. Буду дальше учиться.
 
mixalych Дата: Суббота, 30.09.2017, 12:21 | Сообщение # 11
Рядовой
Группа: Проверенные
Сообщений: 8
Награды: 0
Репутация: 0
Статус: Offline
Собрал вот такую схему:


Работает управление и с кнопки и со скады независимо, но естественно нет обратной связи. Скада не видит что включен выключатель. Попробовал вот таким образом:

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

Добавлено (30.09.2017, 12:21)
---------------------------------------------
Проблему понял каждый новый цикл регистр обновляется по состоянию выключателя. Как решить?

Прикрепления: 2945816.png(3Kb) · 3036257.png(4Kb)
 
JonyBest Дата: Понедельник, 06.11.2017, 20:09 | Сообщение # 12
Рядовой
Группа: Проверенные
Сообщений: 16
Награды: 0
Репутация: 0
Статус: Offline
Доброго времени суток!
Чтобы не плодить темы спрошу здесь.
Пользуюсь связкой Демо-версией Simple-Scada 2 и OPC-сервер Modbus Universal MasterOPC
Все устраивает, но в последнее время возник дефицит бесплатных тегов Modbus.
Основной вопрос - как можно ЭКОНОМНО передать значения с нескольких датчиков? Сейчас каждое значение - новый тег. flprog позволяет передавать только числовые значения.
На ум приходит только одно решение - показания датчиков переводить в текст, текст складывать в нужной последовательности - переводить опять в число long integer - передача в Modbus - в Simple-Scada 2 переводим в текст, зная алгоритм, разбиваем по значениям - переводим в число - вывод.
Может есть решение полегче?


Сообщение отредактировал JonyBest - Понедельник, 06.11.2017, 20:10
 
Sancho Дата: Вторник, 07.11.2017, 06:56 | Сообщение # 13
Генерал-майор
Группа: Проверенные
Сообщений: 546
Награды: 15
Репутация: 17
Статус: Offline
Цитата JonyBest ()
Пользуюсь связкой Демо-версией Simple-Scada 2 и OPC-сервер Modbus Universal MasterOPCВсе устраивает, но в последнее время возник дефицит бесплатных тегов Modbus........

1. Значения двух датчиков кладёшь в соседние регистры, считываешь как int32(long int), в скада одно получаешь делением на 65536, другое остаток от деления на 65536. Можно похожим образом передать и три значения, зависит от размерности исходников.
2. Овен ОРС


Если не получится на контроллере - сделаю на тразисторах и 155/176...
 
JonyBest Дата: Вторник, 07.11.2017, 09:12 | Сообщение # 14
Рядовой
Группа: Проверенные
Сообщений: 16
Награды: 0
Репутация: 0
Статус: Offline
Цитата Sancho ()
Значения двух датчиков кладёшь в соседние регистры, считываешь как int32(long int), в скада одно получаешь делением на 65536, другое остаток от деления на 65536. Можно похожим образом передать и три значения, зависит от размерности исходников.2. Овен ОРС
За второе отдельное спасибо! А по первому можно пример на два и три значения, не догоняю как...
 
KSP Дата: Вторник, 07.11.2017, 09:37 | Сообщение # 15
Сержант
Группа: Проверенные
Сообщений: 41
Награды: 0
Репутация: 1
Статус: Offline
Я плохо знаком с Simple-Scada 2 и OPC-сервер Modbus Universal MasterOPC ,  но для сокращения числа переменных пользуюсь вот таким нехитрым приспособлением если время опроса датчиков не критично. В блоке слейва все наоборот я думаю понятно.
Прикрепления: 8835545.flp(100Kb)


S
 
Форум » Основной » Железо - контроллеры, шилды, датчики и др. » Протоколы » Помогите разобраться с модбас
Страница 1 из 212»
Поиск:

FLProg © 2017
Яндекс.Метрика