DPL @digsilent_dpl Channel on Telegram

DPL

@digsilent_dpl


Let's learn DPL

DIgSILENT Programming Language

DPL Telegram Channel (English)

Are you interested in learning about DIgSILENT Programming Language (DPL)? Look no further! Join our Telegram channel, @digsilent_dpl, where we delve deep into the world of DPL and help you master this powerful language. Whether you are a beginner looking to get started or an experienced user wanting to enhance your skills, our channel is the perfect place for you. DPL is a specialized language used for power system analysis and simulations, and mastering it can open up a world of opportunities in the field of electrical engineering. Our channel offers valuable resources, tutorials, and discussions to help you understand the intricacies of DPL and apply it effectively in your projects. Join our community of DPL enthusiasts today and take your knowledge to the next level! Let's learn DPL together on @digsilent_dpl Telegram channel.

DPL

17 Nov, 21:17


#سوال 27: کدی که مختصات جغرافیایی گره های شبکه را بر اساس مختصات داده شده یک گره محاسبه کند (مخصوص شبکه‌هایی که گرافیک آنها بر اساس داده‌های gis رسم شده باشد)
برای اجرای این کد، بر روی گره‌ای که مختصات آن داده شده، کلیک راست کرده و این کد را اجرا کنید، اگر نیاز به چرخش یا تغییر ضریب اصلاح ابعاد باشد در پارامتر ورودی تنظیم نمایید. (ورژن 2021)

DPL

01 Oct, 14:18


#سوال 26 : کدی که خطوط بین دو گره (کوبیکل) فیدر شعاعی را برگرداند:

DPL

28 Sep, 11:06


#سوال 25: کدی بنویسید که وضعیت بار، تولید و کلیدهای شبکه را در لحظه توقف شبیه سازی RMS ذخیره و برای پخش بار تنظیم کند (اسنپ شات از نتایج RMS)

DPL

02 Dec, 07:28


دستور ایجاد گره در خط (در ورژن های جدید) یا Branch-off یا Line split

SplitLine
Splits the passed line or ElmBranch-object at a given position
object SplitLine(object Line,
[double percent = 50,]
[int createSwitchSide0 = 0,]
[int createSwitchSide1 = 0])

DPL

24 Nov, 06:56


#سوال 24: کدی که ترانسفورماتورهای دو سیم پیچه که سمت lv آنها به جایی متصل نیست را پیدا کند و برای آنها گره و اتصال بار به ترانسفورماتور را ایجاد کند.

DPL

15 Oct, 05:52


#سوال 23: کدی که مجموعه سناریوهای پروژه را برگرداند:

object ScenFolder;
set AllScen;
ScenFolder = GetProjectFolder('scen') ;
AllScen = ScenFolder.GetContents('*.IntScenario',1);
AllScen.ShowModalBrowser();

DPL

05 Aug, 18:42


DPL Script of Particle Swarm Optimization (PSO)
source: https://www.researchgate.net/publication/333660339_DPL_Script_of_Particle_Swarm_Optimization_PSO

DPL

05 Aug, 18:41


DPL Script for Bat Algorithm(BA)
source : https://www.researchgate.net/publication/333660342_DPL_Script_for_Bat_AlgorithmBA

DPL

05 Aug, 18:40


DPL Script for Cuckoo Search Algorithm (CSA)
source: https://www.researchgate.net/publication/333660212_DPL_Script_for_Cuckoo_Search_Algorithm_CSA

DPL

01 Jun, 05:16


#سوال 22

DPL

31 May, 07:34


#سوال 21: چگونه می توان محتویات پنجره خروجی را به فایل text ارسال کرد؟
پاسخ:
روش اول: استفاده از دستور redirect
ابتدا بعد از اجرای تحلیل و قبل از گزارش گیری در پنجره خروجی، با دستور redirect output خروجی را بر روی یک فایل در مسیر مشخص تنظیم کنید:
Redirect = GetCaseObject('ComOp');
Redirect:f = 'D:\Report.txt';
Redirect.Execute();

سپس گزارش خود را ایجاد کنید. برای مثال گزارش total system summary

Report = GetCaseObject('ComSh');
Report:iopt_cmd =1;
Report.Execute();
در نهایت Redirect را پایان دهید.
StopRedirect = GetCaseObject('ComCl');
StopRedirect.Execute();

روش دوم:‌استفاده از دستور
این دستور را پس از آماده شدن نتایج پنجره خروجی اجرا کنید:
ComWr
ComWr = GetCaseObject('ComWr');
ComWr:iopt_rd = 'out'; ! Option in order to write the contents of the output window
ComWr:f = strName; ! File name of the generated file
Err = ComWr.Execute();

DPL

26 May, 15:36


Exe('grp/join');

DPL

20 May, 20:51


#سوال 20: چگونه از وقوع خطای
Cannot access object variable
جلوگیری کنیم.
پاسخ:
1- قبل از گرفتن اطلاعات مربوط به نتایج پخش‌بار، از همگرا شدن پخش بار و خارج از سرویس نبودن تجهیز اطمینان حاصل کنید. با متد IsEnergized مطمئن شوید که تجهیز برقدرا است.




int object.IsEarthed()
2- قبل از گرفتن اطلاعات با متد VarExists مطمئن شوید که پارامتر مورد نظر وجود (مقدار) دارد یا نه.
int object.VarExists(string name)

3- اگر از متد AllRelevant استفاده می کنید، تجهیزات outofservise را فیلتر کنید:
AllRelevant('*.ElmLne',0,1);

DPL

24 Apr, 17:30


#سوال 19: چگونه لیستی از المان‌ها برای انتخاب توسط کاربر، نمایش داده شود؟
How to show the user, a list of objects to select?
for example: a DPL to display a list of generators and return the selected generator.
مثال : کدی بنویسید که لیستی از ژنراتورها نمایش داده شود و نام ژنراتور انتخاب شده را در پنجره خروجی بنویسد.

set AllGens,SelectedGens;
object gen;
AllGens = AllRelevant('*.ElmSym');
SelectedGens = AllGens.ShowModalSelectBrowser('Pleae select one generator');
gen = SelectedGens.First();
if(gen) printf('Selected generator is: %s',gen);
else printf('No geneator is selected');

Note: in PF2016 and higher use " SelectedGens = ShowModalSelectBrowser(AllGens,'Pleae select one generator');"


در مراحل اشکال‌یابی برنامه، می‌توان از متد ShowModalBrowser برای نمایش مجموعه ایجاد شده به کاربر، استفاده کرد.
set.ShowModalBrowser()

DPL

16 Mar, 06:39


اگر مشخصه از نوع جدولی باشد، با دستور زیر می‌توان مقادیر جدول را تغییر داد:
Characteristic:vector:i =val;
در این دستور:
i: شماره سطر شروع شده از صفر
val: مقدار بار

DPL

16 Mar, 06:34


المان شبکه ای مشخصه (زیرمجموعه بار)

DPL

16 Mar, 06:25


تمپلت مشخصه در زیرمجموعه DPl برای دریافت اطلاعات توان اکتیو و رأکتیو از فایل CSV

DPL

16 Mar, 06:17


#سوال 18 : چگونه با دستورات DPL یک مشخصه (characteristic) به بار (یا هر تجهیز دیگری) اضافه کنیم؟
توضیح: برای افزودن مشخصه به تجهیزی مانند بار، باید زیرمجموعه بار، یک المان از کلاس ChaRef ایجاد کنید (بخش شبکه ای) که اشاره به المان کتابخانه‌ای از کلاس ‌ChaTime داشته باشد.

Question 18: How to add a Time Characteristic for loads (or other elements) using DPL?
Note: To add a characteristic to a network object, (a load for example), you must first create a ‌ChaTime class object in the Operation Library,then a ChaRef class object in load subset that reference the characteristic.

DPL

13 Mar, 20:22


It's your turn 👉😀
Question 17: Please write a DPL code to remove all extra nodes from a radial network. An extra node is a node, whose removal will not affect the load flow results of the other nodes. (No element is connected to it, except two lines). You can test your code using any test project in @Digsilent_Primary. Please send your code to me @h_shirani to be published here with your name.