Welcome to the new Schneider Electric Community

It's your place to connect with experts and peers, get continuous support, and share knowledge.

  • Explore the new navigation for even easier access to your community.
  • Bookmark and use our new, easy-to-remember address (community.se.com).
  • Get ready for more content and an improved experience.

Contact SchneiderCommunity.Support@se.com if you have any questions.

Close
Invite a Co-worker
Send a co-worker an invite to the Exchange portal.Just enter their email address and we’ll connect them to register. After joining, they will belong to the same company.
Send Invite Cancel
84694members
354073posts

Объявление переменных с фиксированными адресами в памяти ПЛК M2хх

Форум по промышленной автоматизации СНГ

Форум для ОЕМ-производителей и Системных интеграторов СНГ. Здесь вы найдете информацию об опыте применения продукции Шнейдер Электрик для проектов по автоматизации на базе контроллеров M17x, M2xx, M340, M580, SCADAPack и преобразователей частоты ATV. Получите советы по применению, полезные материалы и новости от специалистов по продуктам SmartHVAC, SmartHEAT, SmartSCADA HVAC и других линеек этой серии.

Evgenij
Ensign Ensign
Ensign
0 Likes
0
155

Объявление переменных с фиксированными адресами в памяти ПЛК M2хх

Одной из главных причин давать переменным фиксированные адреса в памяти ПЛК является возможность прямого доступа к ним по протоколам Modbus RTU/TCP.

Адрес задается в строке объявления переменной через команду AT.

 

1) Для ПЛК M241/251.

 

Пример объявления в глобальном списке переменных:

Variables1.JPG

 

Вид в табличном режиме редактора:

Variables2.JPG

 

Далее достаточно настроить порт ПЛК RS485 и(или) включить опцию Modbus Server в настройках Ethernet порта и иметь доступ к этим переменным по Modbus RTU/TCP.

xVar1 - имеет адрес "номер байта . номер бита в байте", т.е. располагается в 0-м бите 5-го регистра.

iVar1  - имеет адрес "номер слова в памяти", располагается в 10 регистре.

rVar1  - имеет адрес "номер двойного слова в памяти", располагается в 20 и 21 регистрах

 

Для создание сохраняемых(энергонезависимых) параметров/уставок для системы управления с доступом по Modbus, мы можем использовать объявление переменных с фиксированными адресами в области памяти Retain.  

изображение_2021-12-09_162514.png

 

 

2) Для ПЛК M262

Из за разной аппаратной архитектуры контроллеров M241/251 и M262 их поведение отличается.

Создание не сохраняемых переменных с прямыми адресами аналогично как для M241/251

 

А вот переменные с фиксированными адресами в области Retain после перезагрузки питания ПЛК сохранять свои значения не будут. 

p.s. без фиксированных адресов переменные сохраняются.

 

Но есть решение с объявлением переменных в области памяти Persistent.

Для этого нужно добавить POU типа программа и локально в ней объявить переменные как Retain/Persistent.

При этом не забываем добавить саму программу в одну из задач, например в MAST.

Variables4.JPG

 

Далее добавляем глобальный список переменных Persistent, кликаем правой кнопкой мышки на поле объявления и выбираем команду "Add All Instance Paths"

Variables5.png

 

В итоге автоматический пропишутся пути к объявленным локально в программе переменным

изображение_2021-12-09_165733.png

 

Теперь объявленные локально переменные будут сохранять свои значения при перезагрузке ПЛК и при этом будут доступны для обмена по протоколам Modbus TCP/RTU.

Tags (2)