|
<< Click to Display Table of Contents >> Navigation: Интерфейс редактора проекта > Операции в редакторе проекта > Скрипт C# > Примеры использования скрипта C# > Добавление функций и ФБ в программу FBD |
Зададим следующий код в скрипт, который будет добавлять три ФБ в программу, изменять расположение ФБ на схеме FBD, а также выводить информацию об этих ФБ в консоль:
public sealed class Script : ScriptBase { public override void DoAction() { var rootItemModel = this.RootItemModel; //переменная для обращения к дереву проекта var systemRoot = rootItemModel.System; //переменная для обращения к дереву системы var objectsRoot = rootItemModel.Objects; //переменная для обращения к дереву объектов var libraryRoot = rootItemModel.Libraries; //переменная для обращения к дереву библиотек
// Добавление объекта var my_obj = (ObjectItem)objectsRoot.AddObject("Новый объект"); // Добавление программы FBD var my_FBD = (ProgramFBDItem)my_obj.AddProgramFBD("FBD"); // Добавление ФБ в алгоритм программы var fbAND = my_FBD.AddPOUTypeDeclarationToAlgoritm("AND"); var fbOR = my_FBD.AddPOUTypeDeclarationToAlgoritm("OR", x:250, y:100); fbOR.Width = 300; // Нахождение параметров ФБ var param1 = fbAND.FindParametes("Q"); var param2 = fbOR.FindParameters("IN1"); var param3 = fbOR.FindParameters("IN2"); // Начальное значение параметра ФБ param3.InitialValue = "1"; // Создание связи между параметрами ФБ param2.AddOutLink(param1); // Добавление ФБ в программу (без добавления в алгоритм) var fbNot = (POUTypeDeclarationItem)my_FBD.AddPOUTypeDeclaration("NOT");
// Вывод информации в консоль: // Вывод полного имени первого ФБ в программе this.WriteConsole("FB - " + my_FBD.FBPrograms.First().FullName); // Вывод полного программного имени до ФБ this.WriteConsole("FB - " + fbOR.FullRefName); this.WriteConsole("FB - " + fbNot.FullRefName); // Вывод параметров ФБ this.WriteConsole("Параметры ФБ: "); foreach (var item in fbNot.Parameters) this.WriteConsole("\t\t" + item.Name); // Вывод ФБ из алгрима программы this.WriteConsole("ФБ из алгоритма: "); foreach (var item in my_FBD.FBsFromAlgoritm) this.WriteConsole("\t\t" + item.Name); // Вывод полного имени первого парметра ФБ из алгорима this.WriteConsole("Полное имя первого парметра ФБ из алгорима: " + my_FBD.FBsFromAlgoritm.First().FindParameters("IN1").FullName); // Выввод параметров расположения ФБ this.WriteConsole("X - " + fbOR.X); this.WriteConsole("Y - " + fbOR.Y); this.WriteConsole("W - " + fbOR.Width); } } |
При выполнении скрипта будет отображаться следующая информация в консоли:

В дерево проекта будет добавлен объект Новый объект с программой FBD. В программу будут добавлены три функции.
В самом редакторе будет отображаться два ФБ, которые были добавлены в алгоритм. Расположения и связи функциональных блоков, а также начальное значение параметра будут преднастроены.
