Программа, которая отображает количество каждого элемента в Системной сетке 39 автобусов Новой Англии с использованием языка программирования DIgSILENT (DPL).
Введение
В этом уроке я хочу поделиться уроком о языке программирования DIgSILENT (DPL): подсчет элементов сетки. Вещи, которые необходимо подготовить, чтобы следовать этому руководству:
- Установлено программное обеспечение DIgSILENT PowerFactory.
- Файл PFD системной сети 39-Bus New England.
А. Этап подготовки
Спецификация программы
Программа должна соответствовать спецификациям со следующими деталями.
- Эта программа может обнаруживать клеммы, сборные шины, генераторы, линии и двухобмоточные трансформаторы в системе Grid 39 Bus New England.
- Эта программа может подсчитывать количество элементов каждого типа (терминал, сборная шина, генератор, линия и двухобмоточный трансформатор).
- Эта программа может отображать результаты расчетов в окне вывода программного обеспечения DIgSILENT PowerFactory.
Дизайн вывода программы
Ниже приведен окончательный дизайн ожидаемого отображения выходных данных программы. Этот дизайн был адаптирован к спецификациям программы, чтобы пользователям было проще понять результаты расчета сценария DPL.
[Program Output Design] Num. of Terminal = x Num. of Busbar = x Num. of Generator = x Num. of Line = x Num. of 2-Winding Trafo = x
B. Этап программирования
Ниже приведен исходный код программы, который разделен на три части, а именно:
- Документация — это раздел, содержащий важную информацию в виде комментариев (неисполняемого кода). Обычно эта информация может быть в виде имени программы, имени автора и описания программы.
- Словарь — это часть, которая определяет тип переменных, используемых в скрипте (объект, набор, целое число, строка, двойное число).
- Алгоритм — это часть, которая процедурно выполняет код/команду для реализации дизайна проекта и спецификаций программы, которые были определены ранее.
!Title: GRID INFO PROGRAM !Author: Jonathan Fedrico Simorangkir !Date: July 2022 !Code Version: 1.0 !Availability: !Descriptions: !1) This program can detect Terminal, Busbar, Generator, Line, and 2-Winding Transformer elements on the Grid 39 Bus New England System. !2) This program can count the number of each type of element (Terminal, Busbar, Generator, Line, and 2-Winding Transformer). !3) This program can display the calculation results in the Output Window of DiGSILENT PowerFactory software. !--------------------------- !DICTIONARY object term,gen,line,trf; set TERMs,GENs,LINEs,TRFs; int ctr; !--------------------------- !ALGORITHM ClearOutput(); TERMs=AllRelevant('*.ElmTerm'); GENs=AllRelevant('*.ElmSym'); LINEs=AllRelevant('*.ElmLne'); TRFs=AllRelevant('*.ElmTr2'); !calculating amount of each element !--TERMINAL ctr=0; for(term=TERMs.First();term;term=TERMs.Next()){ ctr+=1; } printf('Num. of Terminal = %d',ctr); !--BUSBAR ctr=0; for(term=TERMs.First();term;term=TERMs.Next()){ if(term:iUsage=0){ ctr+=1; } } printf('Num. of Busbar = %d',ctr); !--GENERATOR ctr=0; for(gen=GENs.First();gen;gen=GENs.Next()){ ctr+=1; } printf('Num. of Generator = %d',ctr); !--LINE ctr=0; for(line=LINEs.First();line;line=LINEs.Next()){ ctr+=1; } printf('Num. of Line = %d',ctr); !--2 WINDING TRAFO ctr=0; for(trf=TRFs.First();trf;trf=TRFs.Next()){ ctr+=1; } printf('Num. of 2-Winding Trafo = %d',ctr);
C. Этап выполнения программы
Ниже приведен результат выполнения программы в окне вывода DIgSILENT PowerFactory.
Основываясь на приведенных выше результатах, можно увидеть, что программа успешно соответствует спецификациям и выходным проектам, которые были определены ранее.
Ссылка
Документация DIgSILENT PowerFactory