Создание библиотечной функции

<< Click to Display Table of Contents >>

Navigation:  Проект в MasterSCADA 4D > Дерево библиотек > Пользовательская библиотека >

Создание библиотечной функции

В MasterSCADA 4D можно создать новую функцию, используя стандартные средства среды разработки.

Для этого в пользовательскую библиотеку нужно добавить функцию:

sozdanie_biblio_function

В зависимости от того, какой пункт контекстного меню будет выбран откроется соответствующий программный редактор, где можно создать набор входных и выходных параметров, а также используя стандартные функции создать новый алгоритм.  

Созданная функция будет отображаться как в дереве библиотек, так и в легенде того или иного программного редактора:

sozdanie_biblio_function_1

Далее в проекте можно использовать созданную функцию также как и стандартные функции:

независимо в дереве системы или дереве объектов

внутри какой-либо программы

В обоих случаях в проекте будет создан экземпляр функции.

Скрыть содержимое функции

Библиотечная функция имеет пункт контекстного меню Безопасность.Скрыть содержимое:

sozdanie_biblio_function_2

После выполнения этого пункта меню откроется окно задания пароля, такое же как и для аналогичного пункта меню объекта.

После того, как пароль будет задан, открыть его содержимое, т.е. открыть редактор с программой этого ФБ, будет нельзя. В папке скомпилированного проекта <C:\Users\[имя пользователя]\AppData\Roaming\MPSSoft\MasterSCADA4D[номер версии]\ProjectsServiceData\[имя проекта]\Debug\[имя узла]> не будут формироваться отладочные Lua файлы, хранящиеся в папке temp. Файл config.bin, хранящийся по пути <C:\Users\[имя пользователя]\AppData\Roaming\MPSSoft\MasterSCADA4D[номер версии]\ProjectsServiceData\[имя проекта]\Debug\[имя узла]\PLC\cfg> будет зашифрован и не доступен для чтения.

При использовании экземпляра такой функции разработчик проекта увидит только входы и выходы функции, но не его логику работы.

 

Пример создания библиотечной функции на языке ST

Рассмотрим пример создания библиотечной функции на основе уже имеющейся в MasterSCADA 4D функции ADD. Стандартная функция ADD служит для сложения двух параметров.  Увеличим количество входов функции.

Для этого добавим функцию ST в пользовательскую библиотеку, как показано выше.

В появившемся окне на клеммник входов добавим три параметра типа LREAL (S_1, S_2, S_3) и начнем формировать программу, которая в общем виде выглядит: Имя_функции := значение
Пусть Имя функции будет Add_3_входа, а значение можно взять с готового функционального блока, просто перетащив математическую функцию ADD в поле программы:

sozdanie_biblio_function_3

Для того чтобы была возможность выполнять сложение с большим количеством слагаемых нужно добавить еще один вход IN3. К каждому из входов IN1, IN2, IN3 необходимо присвоить значения созданных параметров S_1, S_2, S_3 соответственно:

sozdanie_biblio_function_4

Результат вычисления математической функции будет передан на выход Q, расположенный на клеммнике выходов, по умолчанию выход имеет тип BOOL. В данном случае, входные параметры имеют тип LREAL, поэтому нужно изменить тип выхода Q на LREAL.

После этого в программы можно будет добавлять созданную функцию. Добавим функцию в программу FBD. Для этого в палитре функциональных блоков выбираем пользовательскую библиотеку и нужную функцию. Вызов такой функции позволит выполнить сложение трёх элементов:

sozdanie_biblio_function_5

Смотрите также:

Смотрите также видео, необходимо подключение к интернету: