FLProg
Вход на сайт
Логин:
Пароль:
Мы в VK
Поиск
Статистика


Яндекс.Метрика
Пятница, 09.12.2016, 10:44
Приветствую Вас Гость | RSS
Главная | Регистрация | Вход

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


Форум
[ Новые сообщения · Участники · Правила форума · Поиск · RSS ]
Страница 1 из 3123»
Модератор форума: support, Сергей 
Форум » Основной » Спросить у знатоков » Modbus помогите советом (Modbus)
Modbus помогите советом
confiden
Дата: Пятница, 23.09.2016, 22:41 | Сообщение # 1
Рядовой
Группа: Проверенные
Сообщений: 22
Награды: 0
Репутация: 0
Статус: Offline
Здравствуйте. нужна помощь.
не могу осуществить двухсторонний обмен. С мастера отправляется значение АЦП в слейв, а вот одновременно получить значение температуры со слейва в мастер никак. В чем дело? подскажиете
Прикрепления: master.flp(76Kb) · slave.flp(78Kb)


Сообщение отредактировал confiden - Пятница, 23.09.2016, 22:42
 
Tehnics Дата: Пятница, 23.09.2016, 23:28 | Сообщение # 2
Рядовой
Группа: Проверенные
Сообщений: 23
Награды: 2
Репутация: 0
Статус: Offline
У Вас в настройках слейва и мастера скорость 19200, а настройки скорости в платах 9600.
Прикрепления: 4002535.jpg(37Kb)
 
confiden Дата: Пятница, 23.09.2016, 23:39 | Сообщение # 3
Рядовой
Группа: Проверенные
Сообщений: 22
Награды: 0
Репутация: 0
Статус: Offline
Сейчас сменил настройки портов и привел их в соответствие. Полагаю что при настройке модбаса, скорость выставленная в блоке идет в приоритете. Результата нет. Мастер не получает от слэйва данные о температуре , но при этом передает значение АЦП. прилагаю измененные файлы  Flprog.
Что то я делаю не так, но не понимаю что.
Нужны советы опытных
Прикрепления: 4444103.flp(76Kb) · 6505176.flp(78Kb)
 
Sancho Дата: Суббота, 24.09.2016, 09:37 | Сообщение # 4
Лейтенант
Группа: Проверенные
Сообщений: 92
Награды: 1
Репутация: 2
Статус: Offline
confiden, Вам жизненно необходимо слать Float, или всё-таки умножить переменную на 10 или 100, преобразовать в INT и отправить одним регистром. В мастере восстановить не проблема.

Если не получится на контроллере - сделаю на тразисторах и 155/176...
 
confiden Дата: Суббота, 24.09.2016, 09:52 | Сообщение # 5
Рядовой
Группа: Проверенные
Сообщений: 22
Награды: 0
Репутация: 0
Статус: Offline
Да нет можно и int переменную. Я уже перепробовал все что возможно. Интересно что если с мастера не слать код ацп. То я могу получать температуру со слэйва. У меня не получается именно двухсторонний обмен. Толи я что забываю сделать , толи баг программы
 
Sancho Дата: Суббота, 24.09.2016, 09:58 | Сообщение # 6
Лейтенант
Группа: Проверенные
Сообщений: 92
Награды: 1
Репутация: 2
Статус: Offline
confiden, Да, ещё. Вы как-то странно, излишне много рисуете всяких блоков передачи данных в порт. На мой взгляд.
Попробуйте так.
У меня, к сожалению, Ваш код мастера не открывается.
Прикрепления: Test_ModBus_222.flp(42Kb)


Если не получится на контроллере - сделаю на тразисторах и 155/176...
 
confiden Дата: Суббота, 24.09.2016, 10:55 | Сообщение # 7
Рядовой
Группа: Проверенные
Сообщений: 22
Награды: 0
Репутация: 0
Статус: Offline
на основе вашего примера собрал мастер и слайв устройство. результат тот же.код ацп из мастера уходит , а в ответ температура со слайва не возвращается. Оба файла снова приложу. Я полагаю что есть какая от вещь которая сходу мне не ясна
Прикрепления: master_2.flp(78Kb) · Test_Modbus_222.flp(81Kb)
 
Sancho Дата: Суббота, 24.09.2016, 11:30 | Сообщение # 8
Лейтенант
Группа: Проверенные
Сообщений: 92
Награды: 1
Репутация: 2
Статус: Offline
Сори, обновлюсь до 1.15...

Добавлено (24.09.2016, 11:30)
---------------------------------------------
На слэйве всё отображается?


Если не получится на контроллере - сделаю на тразисторах и 155/176...
 
confiden Дата: Суббота, 24.09.2016, 11:50 | Сообщение # 9
Рядовой
Группа: Проверенные
Сообщений: 22
Награды: 0
Репутация: 0
Статус: Offline
Да на слайве отражается код ацп мастера. Что интересно . Если убрать из мастера функцию передавать ацп и оставить только возможность забирать у слэйва данные о температуре- то тоже все нормально. И int и float отлично передаётся . Но одновременно отправить и принять ступор

Добавлено (24.09.2016, 11:50)
---------------------------------------------
Возникает ощущение что адаптер 485 не производит переключение приём передача. Может есть какие то ограничения по Пину используемому для переключения приём передача? Не ясен мне этот вопрос

 
Sancho Дата: Суббота, 24.09.2016, 11:52 | Сообщение # 10
Лейтенант
Группа: Проверенные
Сообщений: 92
Награды: 1
Репутация: 2
Статус: Offline
Слэйв не успевает между запросами мастера. Нужно разнести запросы чтения и записи в мастере по циклам. Сейчас подумаю..

Если не получится на контроллере - сделаю на тразисторах и 155/176...
 
Sancho Дата: Суббота, 24.09.2016, 12:04 | Сообщение # 11
Лейтенант
Группа: Проверенные
Сообщений: 92
Награды: 1
Репутация: 2
Статус: Offline
Попробуй вот так

Добавлено (24.09.2016, 12:04)
---------------------------------------------
Пин не причём. Если есть обмен - значит пин работает.

Прикрепления: master_2_ver2.flp(81Kb)


Если не получится на контроллере - сделаю на тразисторах и 155/176...
 
confiden Дата: Суббота, 24.09.2016, 12:52 | Сообщение # 12
Рядовой
Группа: Проверенные
Сообщений: 22
Награды: 0
Репутация: 0
Статус: Offline
Я сейчас не могу глянуть проект. Но честно говоря не представляю как разнести по циклам. Полагаю блок должен формировать паузы при переключении
 
Sancho Дата: Суббота, 24.09.2016, 13:27 | Сообщение # 13
Лейтенант
Группа: Проверенные
Сообщений: 92
Награды: 1
Репутация: 2
Статус: Offline
Не спешим с циклами. Попробуешь ver2 - посмотрим...

Если не получится на контроллере - сделаю на тразисторах и 155/176...
 
confiden Дата: Суббота, 24.09.2016, 21:05 | Сообщение # 14
Рядовой
Группа: Проверенные
Сообщений: 22
Награды: 0
Репутация: 0
Статус: Offline
Попробовал загрузил данный код. Результат тот же самый.
Полагаю при компиляции проекта нет разницы.
Хотя честно говоря не проверял.
Что то не так все.
Есть что то еще видимо что не дает нормально в данном случае функционировать

Добавлено (24.09.2016, 21:05)
---------------------------------------------
Парни помогите еще кто нибудь каким советом. Может кто попробует смоделировать, ну не идет никак из головы данная проблема

 
Rovki Дата: Воскресенье, 25.09.2016, 08:05 | Сообщение # 15
Генерал-лейтенант
Группа: Модераторы
Сообщений: 824
Награды: 16
Репутация: 13
Статус: Offline
Мастер не должен посылать запросы слейву чаще чем слейв ответит на первый запрос ,причем если измеритель медленный ,то нет смысла чаще считывать данные ..

Электронщик до мозга костей и не только
 
Форум » Основной » Спросить у знатоков » Modbus помогите советом (Modbus)
Страница 1 из 3123»
Поиск:

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