| |
| Umspannwerke nach IEC 61850 leicht gemacht |
Autor(16237)
|
Thema: Formelattribut: Summierte thermische Verlustleistung (1914 mal gelesen)
|
AlexSt Mitglied Elektrokonstrukteur
Beiträge: 176 Registriert: 21.02.2012 ELCAD 7 Engineering Base 6 EPLAN P8 V2
|
erstellt am: 12. Feb. 2019 10:46 <-- editieren / zitieren --> Unities abgeben:
Hallo mal wieder, ich wurde kürzlich mit dem Thema "thermische Verlustleistung" von Bauteilen bedrängt. Die gestellte Aufgabe sieht vor, für jede Baueinheit eine summierte thermische Verlustleistung zu errechnen. Lässt sich das mit einem FA lösen? Ich habe an eine Objectgroup (RO gedacht. Aber lässt sich damit rechnen? Anfang der Formel sieht bislang so aus: R-3; Von jedem dieser Objekte in der Gruppe möchte ich das Attribut AID10855 "thermische Verlustleistung" summieren. Kann mir da jemand über die Straße helfen? Freue mich auf Eure Antworten.
------------------ Gruß aus Bielefeld Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Fask Moderator Consultant
Beiträge: 288 Registriert: 09.05.2011 Win 10 x64 EB Instrumentation Pro
|
erstellt am: 20. Feb. 2019 16:12 <-- editieren / zitieren --> Unities abgeben: Nur für AlexSt
Hallo AlexSt Vielleicht hilft dir folgender Ansatz: [+R-3;=r1f+Anef10855R1;]=fR1; Bei diesem Beispiel wird eine Ebene nach unten navigiert,von allen Objekten die Summe aus dem Attribut "10855" gebildet und in das Speicherregister 1 geschrieben. Nach der Klammer wird dann Register 1 als Float-Zahl ausgegeben. greetings Fask
------------------ Um ein tadelloses Mitglied einer Schafherde sein zu können, muss man vor allem ein Schaf sein! (A. Einstein) Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
AlexSt Mitglied Elektrokonstrukteur
Beiträge: 176 Registriert: 21.02.2012 ELCAD 7 Engineering Base 6 EPLAN P8 V2
|
erstellt am: 13. Mrz. 2019 16:47 <-- editieren / zitieren --> Unities abgeben:
Hallo Fask, danke für Deine Antwort und sorry das ich mich erst jetzt melde. Ich hatte ein bisschen was um die Ohren ... Das Attribut funktioniert super. Habe keine Ahnung was ich da alles ausprobiert habe. So kompliziert ist die Nummer ja nicht. Habe das ganze noch erweitert, sodass auch verschatelte Geräte berücksichtigt werden (bis auf 6 Ebenen). [+R-3;GO+;R-3;GO+;R-3;GO+;R-3;GO+;R-3;GO+;R-3;GO+;][+RO;=r1f+Anef10855R1;]=fR1; Bei dem Thema: Gibt es für die FAs ein äquivalent zu der VBA-Funktion "FindObject()"? ------------------ Gruß aus Bielefeld Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Fask Moderator Consultant
Beiträge: 288 Registriert: 09.05.2011 Win 10 x64 EB Instrumentation Pro
|
erstellt am: 15. Mrz. 2019 08:06 <-- editieren / zitieren --> Unities abgeben: Nur für AlexSt
Hi, ich bin mir nicht sicher was genau du machen möchtest. Es gibt auf jeden Fall die Möglichkeit, nach Werten zu suchen und wenn gefunden, einen anderen Wert auszugeben. Bei nachfolgendem Beispiel wird im Attribut Kommentar auf den Wert 20 geprüft. Ist dieser vorhanden, wird ein X ausgegeben. {A25; {="20" "X";}}; greetings
------------------ Um ein tadelloses Mitglied einer Schafherde sein zu können, muss man vor allem ein Schaf sein! (A. Einstein) Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
AlexSt Mitglied Elektrokonstrukteur
Beiträge: 176 Registriert: 21.02.2012 ELCAD 7 Engineering Base 6 EPLAN P8 V2
|
erstellt am: 15. Mrz. 2019 08:28 <-- editieren / zitieren --> Unities abgeben:
Hallo, FindObject() sucht in einem Startobjekt Geräte gewisser CIDs und TIDs und filtert auf Wunsch auch nach einem Attributwert. Das Ergebnis gibt FindObject() als Collection zurück. Vergleichbar mit "R-3:xxx" jedoch kann FindObject() auch "tief" suchen, also auch in Kindobjekten der Kindobjekte der Kindobjekte der Kindobjekte . ------------------ Gruß aus Bielefeld Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
dopepro Mitglied
Beiträge: 5 Registriert: 08.10.2018
|
erstellt am: 20. Mrz. 2019 15:23 <-- editieren / zitieren --> Unities abgeben: Nur für AlexSt
Hallo, das ist richtig. Aber eine deep-Search oder eine Hierarchical-Search wie das FindObjects in einer Hochsprache gibt es in den FA nicht vordefiniert. Du musst schon selber angeben, auf welcher Hierarchie-Ebene du suchen möchtest. Und dann kannst du wie du auch schon richtig geschrieben hast, diese Elemente einer Gruppe hinzufügen. Mit Rt-3:123; kannst du z.B. Kindobjekte mit TID 123 finden und anschließend diese dann deiner Collection hinzufügen mit GO+. Möchtest du auch die Kinder dieser Kinder hinzufügen, musst du selber eine weitere Ebene tiefer navigieren. Das Ganze könnte man auch mit einer Schleife und Objektprüfung implementieren.
Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
MeckPom Mitglied Ing.
Beiträge: 47 Registriert: 27.09.2012
|
erstellt am: 10. Nov. 2019 08:17 <-- editieren / zitieren --> Unities abgeben: Nur für AlexSt
Deep Search ist schon möglich. Dafür gibt es die Sprünge in der Formel. Da ich die Beschränkungen auf x-Stufen nicht mag, nehme ich einfach. =r1fAnef10085;[+Ol;R-3;=r1f+R1Anef10085;Og;] =fR1; Mit Ol; setzt man eine Sprungmarke und mit Og; wird sie angesprungen. Wenn man will, kann man bei bestimmten Objekten die Suche abbrechen, aber vermutlich frißt die Wenn-Funktion mehr Zeit, als man dann beim Durchlaufen spart. Das "f" im Attribut benötigt man, wenn die Leute "W" dazuschreiben. Wenn auch welche "mW" oder "kW" hinzunehmen, muß man das abfangen und umrechnen. Sonst sind in der Forme 5 W soviel wie 5 kW und 5 mW. Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
AlexSt Mitglied Elektrokonstrukteur
Beiträge: 176 Registriert: 21.02.2012 ELCAD 7 Engineering Base 6 EPLAN P8 V2
|
erstellt am: 13. Nov. 2019 07:55 <-- editieren / zitieren --> Unities abgeben:
|