Zuviel Werbung? - > Hier kostenlos beim SPS-Forum registrieren

Ergebnis 1 bis 8 von 8

Thema: Programmieren einer eigenen Bibliothek B&R

  1. #1
    Registriert seit
    30.01.2014
    Beiträge
    10
    Danke
    1
    Erhielt 0 Danke für 0 Beiträge

    Standard


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    Hallo liebe Forum-Kollegen.

    Ich habe die Aufgabe bekommen eine interne Bibliothek zu schreiben. Da ich eher aus der Embedded-Programmierung komme, würde ich gern eure Meinung hören.

    Meine Aufgabe besteht darin eine Bibliothek für den internen Gebrauch zu schreiben (wir fangen damit komplett neu an). In diese Bibliothek sollen alle Objekte kommen
    die bei uns eingesetzt werden. z.B ein Motor, ein Motor mit FU, 2Wege-Ventile, 3Wege-Ventile, usw. Jedes Objekt kommt in einen eigenen Funktionsbaustein.
    Nun meine Frage:
    Ist es sinnvoll die "Inputs" bzw "Outputs" zu passenden Strukturen zusammen zu fügen (z.B. eine Struktur CMD --> Start, Stop, Drehzahl,...) oder sollten diese nur als Variablen
    dem FB übergeben werden.

    Was meint Ihr?

    LG
    Zitieren Zitieren Programmieren einer eigenen Bibliothek B&R  

  2. #2
    Registriert seit
    03.09.2007
    Ort
    Saarland
    Beiträge
    79
    Danke
    4
    Erhielt 7 Danke für 7 Beiträge

    Standard

    Wir haben bei uns in der Firma auch angefangen, Funktionen, die immer wieder gebraucht werden in Bibliotheken zu verpacken.

    Was uns aber im Laufe der Zeit immer wieder begegnet ist, ist die Tatsache, dass man versuchen sollte KEINE Eierlegendewollmilchsau zu programmieren. Oftmals packt man immer mehr Funktionen in einen Baustein rein, die später keiner mehr braucht.

    Hier sollte man versuchen, die Funktionsbausteine klein und übersichtlich zu halten. Allerdings auch mit Fokus darauf, dass die einzelnen Teile gut miteinander kombinierbar sind. Was bringt dir ein Baustein, der 20 Funktionen hat, wenn du nur eine davon brauchst und der mit nix mehr gescheit zusammenarbeitet.

    Die Parameterübergabe haben wir entweder über Strukturen gelöst oder aber die Variablen direkt übergeben. Kam halt ganz darauf an, was der Baustein machen sollte und wie komplex er ist. Ist Geschmackssache. Ich persönlich arbeite auch gerne mit Strukturen, das finde ich persönlich übersichtlicher.

    Es gibt kein allgemein gültiges Rezept. Was wichtig ist: mach dir bevor du anfängst zu Programmieren lange genug Gedanken darüber für was der Baustein gut sein soll und wie die Umsetzung am sinnvollsten ist. WIr haben mitlerweile eine Bibliothek, die uns erlaubt das Grundgerüst eines Programms mehr oder weniger in einer halben Stunde zusammen zu klicken. Spart Zeit, aber man sollte auch nicht vergessen, dass die Entwicklung einer Bibliothek eine Menge Zeit und Aufwand in der Pflege bedeutet.

  3. Folgender Benutzer sagt Danke zu Hardy81 für den nützlichen Beitrag:

    StefanPl (12.03.2014)

  4. #3
    Registriert seit
    07.01.2014
    Beiträge
    36
    Danke
    16
    Erhielt 7 Danke für 6 Beiträge

    Standard

    Ich habe mir für unsere Anlagen auch Bausteine überlegt. So funktionierts:

    1. FB verwenden
    2. Bildbausteine verwenden passend zu deinen FB´s Schnittstelle über UDT.
    3. Schnittstelle von z.B. Zylinder FB zu HMI, Auto (Schrittkette), Fehler, Betriebsart, Ein- und Ausgänge, Verriegelung, Freigaben
    Schnittstelle Auto SK UDT: FahreInAS, FahreInGS, BinInAS, BinInGS
    Schnittstelle HMI UDT: Button GS/AS; UDT Button: Gedrückt, Farbe, Bedeinbarkeit
    Schnittstelle Fehler UDT: Plausibilität, LaufzeitGS, LaufzeitAS, KeineFreigabe,....
    Übergabe als ganzen UDT (rein/Rauskopieren) weniger Fehler & schneller, an Reserve denken speziell zur Visu
    4. IEC Timer verwenden
    5. UDT´s verwenden.
    6. Allen Schnickschnack weglassen
    7. Große Maschinen/Anlagenteile in Gruppen unterteilen
    8. Vorgabe der FB- FC nummern
    9. Symbolisch Programmieren
    10. Grundstellungsfahrt
    11. Alles zum HMI über Schnittstellen DB
    12. Möglichst ein Stil für alles z.B. für InPut Betriebsart immer "iBetriebsart" verwenden (hört sich jetzt logisch an ist aber nicht immer ganz so einfach), ähnlicher Aufbau der Bausteine z.B. für Zylinder und Motoren
    13. Lieber etwas mehr Tipparbeit und dafür Lesbare, verständliche Programme
    14. Kommentare


    Fazit: mit jedem Projekt hast du weniger Fehler und wirst schneller und besser. Es wird einfacher Programme zu ändern und warten wenn eine klare Strukktur vorliegt

    Überleg dir einige Tage wie du dein Programm aufbaust. Wenn du die ersten Projekte damit gemacht hast wirst du trotzdem was ändern.
    Geändert von MrSpexx (24.06.2014 um 12:07 Uhr)

  5. #4
    Registriert seit
    07.01.2014
    Beiträge
    36
    Danke
    16
    Erhielt 7 Danke für 6 Beiträge

    Standard

    Mich würden hier auch mal UML, Viso, ... Schaubilder interessieren wie ihr Eure Programme aufbaut! und was für Bausteine Ihr habt.
    Geändert von MrSpexx (24.06.2014 um 23:50 Uhr)

  6. #5
    Registriert seit
    07.01.2014
    Beiträge
    36
    Danke
    16
    Erhielt 7 Danke für 6 Beiträge

    Standard

    Die wichtigsten Empfehlungen aus dem Programmierleitfaden:


    • Optimierte Bausteine verwenden - Kapitel 2.6 Optimierte Bausteine
    • Programm übersichtlich und strukturiert gliedern - Kapitel 3.2 Programmbausteine
    • Anweisungen als Multiinstanz einsetzen (TON, TOF ..) - Kapitel 3.2.5 Multiinstanzen
    • Bausteine wiederverwendbar programmieren - Kapitel 3.2.8 Wiederverwendbarkeit von Bausteinen
    • Symbolisch programmieren - Kapitel 3.6 Symbolische Adressierung
    • Bei Hantierung von Daten mit ARRAY arbeiten – Kapitel 3.6.2 Datentyp ARRAY und indirekte Feldzugriffe
    • PLC-Datentypen erstellen – Kapitel 3.6.3 Datentyp STRUCT und PLC-Datentypen
    • Bibliotheken zur Ablage von Programmelementen nutzen – Kapitel 3.7 Bibliotheken
    • Keine Merker, sondern globale Datenbausteine – Kapitel 4.2 Keine Merker, sondern globale Datenbausteine




    Ich würde mich freuen wenn Ihr Beispiele zu diesen Punkten bringen würdet.
    Geändert von MrSpexx (24.06.2014 um 22:34 Uhr)
    "Schau auf zu den Sternen, hab acht auf die Gassen".

  7. #6
    Registriert seit
    16.01.2013
    Ort
    Saarland
    Beiträge
    63
    Danke
    15
    Erhielt 6 Danke für 4 Beiträge

    Standard

    Hallo Stefan,

    ich habe mir auch eine interne Bib. für meine HLK-Projekte angelegt, sehe das aber ganz pragmatisch.
    Ist meine eigene Bib, also muss ich sie auch verstehen. Bausteine bekommen für mich verständliche Namen, ebenso die Ein- und Ausgänge, und vor allen in meiner Muttersprache .

    Ich habe mich eigentlich noch nie um irgendwelche Programmierleitfaden geschert, wird ja nur durch uns genutzt, und ist auf uns zugeschnitten und man "gewöhnt " sich drann.
    Aber wie Hardy schreibt ist und wird eine unendliche Geschichte.

    Ich würde die Geschichte auf Eure Belange auslegen , Ihr müsst damit arbeiten und damit zurechtkommen.

    Ich habe die meisten Fb´s in CFC, finde das perönlich übersichtlicher, einfacher , seh ich mal direkt wo es klemmt.

    Stelle nachher noch Beispiele ein.

    mc161

  8. #7
    Registriert seit
    16.01.2013
    Ort
    Saarland
    Beiträge
    63
    Danke
    15
    Erhielt 6 Danke für 4 Beiträge

    Standard

    Hi,

    Bilder eines momentanen Projektes, MSR noch bischen chaotisch , fahre verschiedene Versuche, Verbrauchermarkt mit bedarfsgeführter (CO2) Lüftungsanlage, dezentrale Heizung/Kühlung, Nutzung WRG, Fernüberwachung, Auswertungen, usw.

    Eins ist der momentane Stand eines Lufterhitzers, wird noch ein bischen gepimpt. Dann eine Filterüberwachung Zu- und Abluft im Teststadium und der fertige Fb in meiner Lib.

    Das entgültige Programm mit den neuen eingeflossenen Fb`s wird am Wochenende fertig und dann in die Steuerung geladen.


    Fb_Fueb_Analog.pdfAnfang.pdfFilter_Test.pdf

  9. #8
    Registriert seit
    09.08.2006
    Beiträge
    3.640
    Danke
    912
    Erhielt 661 Danke für 543 Beiträge

    Standard


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    Zitat Zitat von Hardy81 Beitrag anzeigen
    Es gibt kein allgemein gültiges Rezept. Was wichtig ist: mach dir bevor du anfängst zu Programmieren lange genug Gedanken darüber für was der Baustein gut sein soll und wie die Umsetzung am sinnvollsten ist.
    Jo. 3 Ausrufezeichen. Auf jeden Fall vor der Programmierung detailliert aufschreiben, was die Bausteine machen sollen. Alle Eingänge/Ausgänge definieren, wie soll die Visu aussehen bzw. die Anbindung erfolgen.

    Man kann auch Bibliotheken kaufen. Evtl. ist das auch ne Option.

    - Siemens Industrie Library*
    - Siemens PTE-Bibliothek
    - Siemens PCS7 APL-Bibliothek*
    - AGU Smart Library Sm@rtlib*
    - Actemium Controlmatic MFL-Bibliothek
    - Siemens Beispielbausteine für WinCC und Step7 BST-Bibliothek*

    * Die würd ich mir auf jeden Fall vorher mal anschauen und evtl. als Demo mal ausprobieren um sich Anregungen zu holen.

    Ach ja, für welche SPS soll das eigentlich sein, in welcher Programmiersprache? Evtl. ist bei Siemens 300/400 auch CFC ne Überlegung wert.

    Gruß.

    PS: seh grad B&R, also kannst Du die meisten Hinweise zu Siemens schonmal ignorieren... Und ausserdem ist der Thread schon nen halbes Jahr alt... ich bin echt Urlaubsreif...
    Geändert von ducati (26.06.2014 um 08:51 Uhr)

Ähnliche Themen

  1. Fehler beim erstellen einer Bibliothek in Codesys
    Von The Big B. im Forum CODESYS und IEC61131
    Antworten: 1
    Letzter Beitrag: 12.04.2011, 11:28
  2. Problemm mit einer Bibliothek von KEB (SCL -> AWL)
    Von rostiger Nagel im Forum Simatic
    Antworten: 16
    Letzter Beitrag: 27.08.2010, 13:07
  3. B&R Bibliothek Var Input als Pointer
    Von rudl im Forum CODESYS und IEC61131
    Antworten: 2
    Letzter Beitrag: 27.04.2010, 16:31
  4. Antworten: 5
    Letzter Beitrag: 14.09.2007, 07:39
  5. eigenen FC in die Bibliothek einfügen
    Von BastiMG im Forum Simatic
    Antworten: 2
    Letzter Beitrag: 29.08.2007, 10:32

Lesezeichen

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •