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

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


Внимание всем пользователям программы FLProg! В течении ближайших двух дней будет осуществляться переход на новую платформу
Чтобы продолжить общение на форуме вы можете перейти сюда
Сообщения оставленные на старом форуме будут утеряны безвозвратно
Приятного Вам Нового года и до встречи в новом 2018 году
С уважением Администрация flprog.ru
Форум
[ Новые сообщения · Участники · Правила форума · Поиск · RSS ]
  • Страница 1 из 2
  • 1
  • 2
  • »
Модератор форума: support, Сергей, Anydy, Олег  
Форум » Основной » Обсуждение программы FLProg (Не багтрекер, и не хотелки. Делимся опытом!!) » Программная смена сетевого адреса modbus.
Программная смена сетевого адреса modbus.
Rovki Дата: Среда, 13.12.2017, 19:15 | Сообщение # 1
Генерал-полковник
Группа: Модераторы
Сообщений: 1427
Награды: 30
Репутация: 13
Статус: Offline
Приходится часто использовать коммуникации .В случае производства небольшой партии одинаковых устройств работающих с RS485 приходится прошивать разные адреса устройств если их несколько в сети .Хорошо было бы что бы была возможность программно менять через сетевой регистр (выбранный) адрес устройства .Например во всех устройствах по умолчанию адрес 1 .НО если я ставлю в сеть еще одно устройство ,то я временно выключаю 1 устройство ,подключаю второе с адресом 1 и меняю его сетевой адрес ,например 2 .Адрес 2 записывается в энергонезависимую память и теперь в сети 2 устройства с адресом 1 и 2 .Во многих китайских модулях с RS485 такая возможность есть .Возможно ли такое реализовать в FLprog?

Электронщик до мозга костей и не только
 
nalnik Дата: Четверг, 14.12.2017, 06:22 | Сообщение # 2
Полковник
Группа: Проверенные
Сообщений: 349
Награды: 8
Репутация: 2
Статус: Offline
Rovki

после записи адреса нужно сделать reset.
Прикрепления: 7411605.jpg(26.9 Kb) · 4612737.jpg(62.9 Kb) · 5475167.jpg(141.9 Kb)


Я не злопамятный, Я записываю.

Сообщение отредактировал nalnik - Четверг, 14.12.2017, 07:48
 
Sancho Дата: Четверг, 14.12.2017, 09:08 | Сообщение # 3
Генерал-лейтенант
Группа: Проверенные
Сообщений: 605
Награды: 18
Репутация: 20
Статус: Offline
Цитата Rovki ()
НО если я ставлю в сеть еще одно устройство ,то я временно выключаю 1 устройство ,подключаю второе с адресом 1 и меняю его сетевой адрес ,например 2
Сделайте загрузочный проект с адресом, например, 111, и Вам при добавлении устройств по одному не придётся ничего отключать... Или не используйте в сети работающий адрес 1.


Если не получится на контроллере - сделаю на тразисторах и 155/176...
 
support Дата: Четверг, 14.12.2017, 09:49 | Сообщение # 4
Автор программы
Группа: Администраторы
Сообщений: 1004
Награды: 46
Репутация: 28
Статус: Offline
Цитата Rovki ()
.Возможно ли такое реализовать в FLprog?
 Да возможно. Ветка модбас в дереве проекта - специальные возможности -  Задание Slave адреса.
Вытягиваете это пункт на схему, создается блок. Какое значение на входе блока будет (Byte), такой и будет адрес слейва. Меняется на лету без рестарта контроллера. Ну а задавать его можно как через EEPROM, ну или просто задать его микриками на плате.


Разработчик программы FLProg
 
Rovki Дата: Четверг, 14.12.2017, 13:51 | Сообщение # 5
Генерал-полковник
Группа: Модераторы
Сообщений: 1427
Награды: 30
Репутация: 13
Статус: Offline
Цитата support ()
Ну а задавать его можно как через EEPROM, ну или просто задать его микриками на плате.
Спасибо .Склоняюсь к программой задаче адреса ,без перепрошивки самого проекта


Электронщик до мозга костей и не только
 
Sancho Дата: Четверг, 14.12.2017, 14:30 | Сообщение # 6
Генерал-лейтенант
Группа: Проверенные
Сообщений: 605
Награды: 18
Репутация: 20
Статус: Offline
Цитата Rovki ()
Склоняюсь к программой задаче адреса ,без перепрошивки самого проекта
Анатолий, здесь все об этом и говорят. Просто адрес назначенный Вами из регистра будет сохранятся в EEPROM и загружаться при перезагрузке. Наверно, придётся сделать лишь блокировку первоначальной записи при значении ноль в регистре - при старте контролера.
Уверен, разберётесь и придумаете.


Если не получится на контроллере - сделаю на тразисторах и 155/176...
 
Rovki Дата: Четверг, 14.12.2017, 15:03 | Сообщение # 7
Генерал-полковник
Группа: Модераторы
Сообщений: 1427
Награды: 30
Репутация: 13
Статус: Offline
первоначально во всех будет адрес 1 .

Электронщик до мозга костей и не только
 
Sancho Дата: Четверг, 14.12.2017, 17:39 | Сообщение # 8
Генерал-лейтенант
Группа: Проверенные
Сообщений: 605
Награды: 18
Репутация: 20
Статус: Offline
Цитата Rovki ()
первоначально во всех будет адрес 1 .
Я поступил бы так:
Сделать загрузочный проект с адресом по умолчанию, например, 111, и Вам при добавлении устройств по одному не придётся ничего отключать...
Или, как Вы хотите, не используйте в проекте сети устройство с адресом 1, что-бы ничего не отключать на время смены адреса у нового устройства.


Если не получится на контроллере - сделаю на тразисторах и 155/176...
 
Rovki Дата: Четверг, 14.12.2017, 19:47 | Сообщение # 9
Генерал-полковник
Группа: Модераторы
Сообщений: 1427
Награды: 30
Репутация: 13
Статус: Offline
Не буду плодить тем ,спрошу у знатоков FL тут.
Память сетевых регистров совмещенная или разделенная (разные области памяти ) для дискрит инпут и холдинг регистров .Иначе спрошу-
0 бит дискрипт регистра оказывается в нулевом бите холдинг регистра с адресом 0 или это разные регистры  .?


Электронщик до мозга костей и не только

Сообщение отредактировал Rovki - Четверг, 14.12.2017, 19:53
 
support Дата: Четверг, 14.12.2017, 20:42 | Сообщение # 10
Автор программы
Группа: Администраторы
Сообщений: 1004
Награды: 46
Репутация: 28
Статус: Offline
Области памяти разделённые. 0 регистр в области HoldingRegisters и 0 InputRegistr - это разные данные.

Разработчик программы FLProg
 
Rovki Дата: Четверг, 14.12.2017, 21:00 | Сообщение # 11
Генерал-полковник
Группа: Модераторы
Сообщений: 1427
Награды: 30
Репутация: 13
Статус: Offline
А дискрит инпут и холдинк то же раздельные ? Если так то я могу использовать 0,1....50 дискрипт инпут  и холдинг регистры 0,1....10 ?
Просто я хочу иметь возможность из модуля ввода читать дискретные входа как дискрит инпут (по битно) ,так и сразу все через холдинг регистр(сразу все) используя промежуточную переменную для связи этих разных областей .Вот как то так 
Прикрепления: 4114882.jpg(212.9 Kb)


Электронщик до мозга костей и не только

Сообщение отредактировал Rovki - Четверг, 14.12.2017, 21:01
 
support Дата: Четверг, 14.12.2017, 21:13 | Сообщение # 12
Автор программы
Группа: Администраторы
Сообщений: 1004
Награды: 46
Репутация: 28
Статус: Offline
Нет, дискреты то же отдельная область, так что прочитать дискреты как холдинг регистр не получится.
А вот по вашей схеме да - получится (я просто не сразу её разглядел внимательно).
Вы можете прекрасно использовать одновременно 0,1....50 дискрипт инпут  и холдинг регистры 0,1....10 ? и это будут разные области памяти


Разработчик программы FLProg
 
support Дата: Четверг, 14.12.2017, 21:23 | Сообщение # 13
Автор программы
Группа: Администраторы
Сообщений: 1004
Награды: 46
Репутация: 28
Статус: Offline
Только схему записи в регистр немного измените, по вашей схеме работать не будет
Прикрепления: 6401596.png(5.4 Kb)


Разработчик программы FLProg
 
Rovki Дата: Четверг, 14.12.2017, 21:28 | Сообщение # 14
Генерал-полковник
Группа: Модераторы
Сообщений: 1427
Награды: 30
Репутация: 13
Статус: Offline
Спасибо ,все ясно ,просто в ПР области совмещены ,поэтому уточнил .

Добавлено (14.12.2017, 21:25)
---------------------------------------------

Цитата support ()
Только схему записи в регистр немного измените, по вашей схеме работать не будет
Спасибо

Добавлено (14.12.2017, 21:28)
---------------------------------------------
Аналогично хочу сделать управление выходами - либо через флаги (по битно) ,либо через холдинг регистр (сразу все биты)


Электронщик до мозга костей и не только
 
Rovki Дата: Четверг, 14.12.2017, 22:26 | Сообщение # 15
Генерал-полковник
Группа: Модераторы
Сообщений: 1427
Награды: 30
Репутация: 13
Статус: Offline
вот такая схема будет работать?
Прикрепления: 6004089.jpg(228.4 Kb)


Электронщик до мозга костей и не только
 
Форум » Основной » Обсуждение программы FLProg (Не багтрекер, и не хотелки. Делимся опытом!!) » Программная смена сетевого адреса modbus.
  • Страница 1 из 2
  • 1
  • 2
  • »
Поиск:

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