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

Seite 3 von 5 ErsteErste 12345 LetzteLetzte
Ergebnis 21 bis 30 von 45

Thema: FUP als Technikersprache

  1. #21
    Registriert seit
    02.04.2006
    Ort
    nähe Muc
    Beiträge
    2.787
    Danke
    115
    Erhielt 126 Danke für 107 Beiträge

    Standard


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    Zitat Zitat von Graph&SCL_Freak Beitrag anzeigen
    Also ich finde AWL nicht sehr übersichtlich, wer z.B. aus der PC-Programmierung kommt wird sich damit gar nicht anfreunden können, ausser er hat vorher in Assembler programmiert. Allein schon ein Sprung-Befehl hat in modernen Sprachen eigentlich nichts mehr zu suchen. Die 'Sprache der Ingenieure' ist meiner Meinung nach SCL, da kann man auch mal mit Kollegen über einen Algorithmus diskutieren auch wenn der von SPS-Programmierung keine Ahnung hat. Von Sachen wie objektorientierter Programmierung, Vererbung etc. ist die SPS-Welt ja leider noch meilenweit entfernt.

    Schrittketten gehen am besten in Graph, musste mich auch davon überzeugen lassen, das Debugging damit ist einfach kinderleicht. Sonst steh ich eigentlich auch nicht so auf 'Mal'-Sprachen. SPS-Speicher ist ja nicht mehr so teuer (ausser bei Siemens).

    Leider werden die beiden Systeme viel zu wenig benutzt, aber was der Bauer nicht kennt...
    Huhu,

    ich muss die da gänzlich Wiederpsrechen.
    In Basic und C++ habe ich genauso die Sprungbefehle und nutze sie natürlich auch.

    Das Problem ist das die meisten meinen das FUP die Logic darstellt.
    Das ist die Logic in der Digitaltechnik, jedoch nicht in der Microcontrolertechnik. Da muss ich ja mit den VKE und Programmteilen arbeiten.

    Ich persönlich tendiere dazu das jeder der meint wirklicher Programmierer zu sein einfach Assembler für 8086 können muss. Ansonsten kann man gar nicht verstehen wie die Hochsprache oder ein Operating System funktioniert und wie sie zustande kommt. Das ist wie in der Mathematik. Ohne Grundrechenfunktionen kein gescheites Algebra.
    Die Informatik Ingenieure übrigens lernen alle anfänglich Assembler.
    Telekommunikationstechniker, Energieanlagenelektroniker, manche Mechatroniker, Steuerngstechniker, etc. auch. Ist dort Lehrinhalt.

    Ich habe habe zwei gleiche Bausteine, einmal in Fup und einmal in AWL.
    Habe den mal in AWL umwändeln und Kommentieren müssen da der Spriecherplatz der CPU nicht reichte.
    Ich bau dir da mal in beide dreimal die gleichen Fehler, ganz was gängis, Status, VKE fehler etc. ein und du kannst mal selbst testen wo du sie findest. in Fup wirst du dich richtig schwer tun und bezweifle auch das du eine VKE Fehler, den du in AWL in 1 Minute hats, im FUP innerhalb 10 Minuten Finden wirst.
    ___________________________________________





    Sende eine SMS mit dem Stichwort "Feuer" an die 112 und innerhalb von 10 Minuten steht ein roter Partybus mit derbem Sound vor deiner Tür.


    AGB: Wer Rechtschreibfehler findet darf diese behalten. Bitte meine in eile gefertigten, selten anfallenden Vertipsler zu entschuldigen.

  2. #22
    Registriert seit
    17.09.2006
    Beiträge
    136
    Danke
    0
    Erhielt 7 Danke für 7 Beiträge

    Standard

    Zitat Zitat von maxi Beitrag anzeigen
    ich muss die da gänzlich Wiederpsrechen.
    In Basic und C++ habe ich genauso die Sprungbefehle und nutze sie natürlich auch.

    Ich persönlich tendiere dazu das jeder der meint wirklicher Programmierer zu sein einfach Assembler für 8086 können muss. Ansonsten kann man gar nicht verstehen wie die Hochsprache oder ein Operating System funktioniert und wie sie zustande kommt. Das ist wie in der Mathematik. Ohne Grundrechenfunktionen kein gescheites Algebra.
    Die Informatik Ingenieure übrigens lernen alle anfänglich Assembler.
    Telekommunikationstechniker, Energieanlagenelektroniker, manche Mechatroniker, Steuerngstechniker, etc. auch. Ist dort Lehrinhalt.
    Danke, hab mich im E-Technik-Studium selbst mit Assembler rumgeärgert. Später hab ich mich dann mit Windows-Programmierung rumgeschlagen und da nützt es dir gar nichts. Du musst auch nicht wissen wie ein Compiler funktioniert, ausser du willst selbst einen schreiben oder musst hardwarenah irgendwelche Treiber entwickeln. Das Problem bei den reinen SPS-Programmierern ist, dass sie von strukturierter oder gar objektorientierter Programmierung meist keine Ahnung haben und das sieht man auch an deren Code. Und nochmal: Sprünge haben in modernen Sprachen nichts mehr zu suchen, das gilt auch für 'On Error'-Behandlungen etc.. Der Inhalt bei Ausbildungen/Studium hängt meist eh meilenweit hinter aktuellen Programmiersprachen hinterher, die mittlerweile sehr populäre Sprache C# z.B. gibt's ja erst seit 4 Jahren.

  3. #23
    Registriert seit
    17.09.2006
    Beiträge
    136
    Danke
    0
    Erhielt 7 Danke für 7 Beiträge

    Standard

    Zitat Zitat von CrazyCat Beitrag anzeigen
    @SCL - Freak:

    SCL wäre gar nicht so schlecht, aber es bläst das Programm etwas auf.
    Das gilt allerdings, wenn auch in geringerem Ausmaß für FUP.
    SCL ist optimal für Analogwertverarbeitung, algorithmische Geschichten wie Regler, Prüfstände etc.. Für Schrittketten bringt es nichts. Der Code lässt sich recht kompakt programmieren. Ist ja im Prinzip Pascal.

  4. #24
    Registriert seit
    19.09.2005
    Ort
    Freudenstadt
    Beiträge
    811
    Danke
    64
    Erhielt 101 Danke für 64 Beiträge

    Standard

    Zitat Zitat von Graph&SCL_Freak Beitrag anzeigen
    Danke, hab mich im E-Technik-Studium selbst mit Assembler rumgeärgert. Später hab ich mich dann mit Windows-Programmierung rumgeschlagen und da nützt es dir gar nichts.
    Es ist grundsätzlich hilfreich zu wissen, wie der Rechner intern "tickt", egal in welcher Sprache man programmiert, ob OOP oder strukturiert, und darum sind ausreichende Kenntnisse in Assembler immer eine gute Grundlage.

    Zitat Zitat von Graph&SCL_Freak Beitrag anzeigen
    Du musst auch nicht wissen wie ein Compiler funktioniert, ausser du willst selbst einen schreiben oder musst hardwarenah irgendwelche Treiber entwickeln. Das Problem bei den reinen SPS-Programmierern ist, dass sie von strukturierter oder gar objektorientierter Programmierung meist keine Ahnung haben und das sieht man auch an deren Code.
    Da ein SPS-Programmierer aber wohl hauptsächlich hardwarenah programmiert (Maschine ), ist es dementsprechend dann ja auch sehr sinnvoll, wenn er sich gut mit "SPS-Assembler" (AWL) auskennt.

    Zitat Zitat von Graph&SCL_Freak Beitrag anzeigen
    Und nochmal: Sprünge haben in modernen Sprachen nichts mehr zu suchen, das gilt auch für 'On Error'-Behandlungen etc..
    Auch wenn Du in Deinen Sourcecode keine Sprünge einhackst, der Compiler baut in Dein Programm für jedes Schleifenkonstrukt und jede Fallabfrage bedingte Sprünge ein.

    Ich stimme maxi völlig darin zu, daß ein guter Programmierer eine Vorstellung davon haben sollte, was in seinen Programme "unter der Oberfläche" so vor sich geht, und für maschinennahe Programmierung ist es ein Muß.

    Obwohl ich selbst seit über 15 Jahren PCs in objektorientierten Hochsprachen programmiere, möchte ich meine Assemblerkenntnisse dabei nicht missen.


    Gruß Axel
    Man muß sparn wo mn knn!

  5. #25
    Registriert seit
    17.09.2006
    Beiträge
    136
    Danke
    0
    Erhielt 7 Danke für 7 Beiträge

    Standard

    Zitat Zitat von afk Beitrag anzeigen
    Ich stimme maxi völlig darin zu, daß ein guter Programmierer eine Vorstellung davon haben sollte, was in seinen Programme "unter der Oberfläche" so vor sich geht, und für maschinennahe Programmierung ist es ein Muß.

    Obwohl ich selbst seit über 15 Jahren PCs in objektorientierten Hochsprachen programmiere, möchte ich meine Assemblerkenntnisse dabei nicht missen.
    Mag ja alles richtig sein, aber in der Praxis z.B. im Windows-Umfeld bringt es dir gar nicht's, da moderne Compiler so hochkomplex sind dass man eh nicht weiss wie sie optimieren. Und bei mindestens 90% aller Applikationen ist Assembler-Optimierung aufgrund der leistunsfähigen Prozessoren eh nicht mehr nötig.
    Und die maschinennahheit von AWL hat leider den grossen Nachteil das der Code leider relativ unkompatibel zwischen den verschiedenen Herstellern ist.

    Mich interessiert nur ob ich oder jemand anderes den Code auch nach einiger Zeit noch versteht und da hab ich bei manchen AWL-Spezie's doch so manchmal meine Zweifel, wenn ich sehe wie lange die vor ihren oder fremdprogrammierten Einfach-Steuerungen hocken.

  6. #26
    Registriert seit
    19.09.2005
    Ort
    Freudenstadt
    Beiträge
    811
    Danke
    64
    Erhielt 101 Danke für 64 Beiträge

    Standard

    Zitat Zitat von Graph&SCL_Freak Beitrag anzeigen
    Mag ja alles richtig sein, aber in der Praxis z.B. im Windows-Umfeld bringt es dir gar nicht's, da moderne Compiler so hochkomplex sind dass man eh nicht weiss wie sie optimieren.
    Eins weiß ich aber ganz sicher: bedingte Sprünge für Schleifen und Fallabfragen braucht er trotz aller Optimierungen.

    Zitat Zitat von Graph&SCL_Freak Beitrag anzeigen
    Und die maschinennahheit von AWL hat leider den grossen Nachteil das der Code leider relativ unkompatibel zwischen den verschiedenen Herstellern ist.
    Auch die allerwenigsten Windows-Programme kommen ohne die Windows-API aus, sind damit also auf Windows oder Windows-Emulatoren angewiesen. DotNet ist da zwar ein netter Ansatz, aber mehr eben auch noch nicht, denn die meisten .net-Programme laufen bisher auch nur unter Windows.

    Andererseits hat Zottel ausgerechnet im maschinennahen C mit libnodave eine Bibliothek geschaffen, die nicht nur auf verschiedenen Plattformen läuft, sondern auch noch von vielen verschiedenen Programmiersprachen aus genutzt werden kann.

    Zitat Zitat von Graph&SCL_Freak Beitrag anzeigen
    Mich interessiert nur ob ich oder jemand anderes den Code auch nach einiger Zeit noch versteht und da hab ich bei manchen AWL-Spezie's doch so manchmal meine Zweifel, wenn ich sehe wie lange die vor ihren oder fremdprogrammierten Einfach-Steuerungen hocken.
    Bei uns arbeiten 7 SPS-Programmierer mit einem recht umfangreichen Pool von gemeinsamen (gut kommentierten) AWL-Quellen, die je nach Bedarf für die Maschinensteuerungen (alles S7-Platform) eingesetzt und mit maschinenspezifischen Code ergänzt werden (vereinfachte Beschreibung der Situation bei uns).

    Von denen kannst Du beliebig einen nehmen und nach einem Problem in Maschine suchen lassen, von der wir seit 3 Jahren nichts mehr gehört haben, er wird mit dem Code ohne große Probleme zurecht kommen, auch wenn er mit der Maschine vorher noch nie etwas zu tun hatte.

    Es gibt zwar bestimmt auch andere Fälle (nach dem Motto: ich verstehe meinen Code von vor zwei Monaten selbst nicht mehr ), aber die habe ich bei Hochsprachen-Programmierern auch schon zu genüge erlebt.

    Wie gut sowas funktioniert, hat nichts mit der eingesetzten Sprache, sondern nur mit aufgestellten Regeln und deren Einhaltung (Disziplin!) zu tun. Um damit wieder zur Ausgangsfrage des Threads zurückzukommen: die Sprache für Techniker (Ingenieure, ...) gibt es meiner Meinung nach nicht, aber mit der entsprechenden Qualifikation sollte man in der Lage sein, die für den jeweiligen Einzelfall am besten geeignete Sprache auszuwählen.


    Gruß Axel
    Man muß sparn wo mn knn!

  7. #27
    Registriert seit
    05.10.2005
    Beiträge
    188
    Danke
    31
    Erhielt 16 Danke für 14 Beiträge

    Standard

    Die meisten Programmiereerererere dich ich kenne mischen. (ich auch)

    Boolsche Geschichten immer in KOP/FUP wenn Berechnungen, Regelungen, Strings oder Pointer ins spiel kommem, muß man in KOP/FUP einen Handstand machen um sie da zu stellen.

    Um auf die eigentliche Frage zurück zu kommen:

    Viele "alte" Hasen lieben KOP bzw FUP weil sie schnell erkennen was los ist und sie es gewöhnt sind mit den Elementen zu arbeiten. Vor allem Konstructöööre. Denen ist nichts zu schwööööörrrr.

    Wenn er dir nochmal damit kommt, soll ER dir mal zeigen wie man eine Pointerfunktion in KOP programiert. Trink dann 1,2,3,4.....Kaffee und tipps dann in AWL. Er dürfte dann kuriert sein.

    Aber wie oben erwähnt: DER KUNDE IST KÖNIG!!!!!!
    Zitieren Zitieren Stimmt  

  8. #28
    Registriert seit
    22.11.2005
    Ort
    kl.Odenwald
    Beiträge
    716
    Danke
    111
    Erhielt 85 Danke für 71 Beiträge

    Standard

    ... und genau hierin liegt imho die Kunst.
    Es stimmt zwar, dass man mit OOP mehr Werkzeuge zum strukturierten Programmieren hat als in AWL, aber es ist bei weitem nicht immer so, dass sie auch in diesem Sinne angewendet werden.

    Aber man kann ja Daten auch in S7 mit den FB's kapseln (wenn man sich daran hält, tunlichst nicht von ausserhalb in die Istanzen zu schreiben).

    Und SCL halt ich auch dann für sinnvoll, wenn der Baustein-Code (Ohne Schnittstellen) übersichtlich bleibt und auf 1 bzw 2 DIN A4 Seiten passt bzw. in den anderen Sprachen schnell auf 10 oder mehr seiten anwächst.
    Es ist meiner Meinung nach weniger entscheident, ob man im Speicher ein paar Bytes einspart, als dass der Code Optisch kompakt und verständlich bleibt. Wenn einer z.B anfängt in AWL mehrfach geschachtelte Schleifen zu programmieren, dann ist die dort kaum nachvollziehen.

    Gruss

    kiestumpe
    Zitieren Zitieren Mischen  

  9. #29
    Registriert seit
    27.05.2004
    Ort
    Thüringen/Berlin
    Beiträge
    12.222
    Danke
    533
    Erhielt 2.698 Danke für 1.950 Beiträge

    Standard

    Zitat Zitat von Graph&SCL_Freak Beitrag anzeigen
    Mag ja alles richtig sein, aber in der Praxis z.B. im Windows-Umfeld bringt es dir gar nicht's, da moderne Compiler so hochkomplex sind dass man eh nicht weiss wie sie optimieren. Und bei mindestens 90% aller Applikationen ist Assembler-Optimierung aufgrund der leistunsfähigen Prozessoren eh nicht mehr nötig.
    Und die maschinennahheit von AWL hat leider den grossen Nachteil das der Code leider relativ unkompatibel zwischen den verschiedenen Herstellern ist.

    Mich interessiert nur ob ich oder jemand anderes den Code auch nach einiger Zeit noch versteht und da hab ich bei manchen AWL-Spezie's doch so manchmal meine Zweifel, wenn ich sehe wie lange die vor ihren oder fremdprogrammierten Einfach-Steuerungen hocken.
    Na ja, so ganz kann ich deiner Meinung nicht folgen.
    Unkommentierte Programmcode kannst du "fast" immer vergessen, das gilt übrigend ganz besonders auch für SCL. Hatte letztens einen SCL-Code von mir in der Nacharbeit (der war sogar recht gut kommentiert) und hab eigenlich genauso lange überlegen müssen, wie bei AWL-Code (logisch, denn, nur wenns für AWL zu kompliziert wird nehme ich SCL und dann wird es auch da nicht einfacher ). Ohne Nachdenken sollte man ja auch generell nichts anfassen an einer Steuerung, das wissen aber so manche FUP-Clickies offensichtlich nicht. Ansonsten neige ich auch dazu, immer die einfachste und übersichtlichste Form zu wählen, also KOP/FUP wo es geht und sinnvoll ist, z.Bsp. bei binären Verknüpfungen. Aber schon beim Einsatz des MOVE-Befehls in FUP, nur um eine einfache Rechnung mit mehreren Operanden oder Vergleichern in FUP darstellbar zu machen (möglichst noch mit Temp-Vars, die der Editor selbst einfügt) ruft bei mir echte Würgreflexe hervor.

    Sicher muß keiner, der Win-Programme schreibt absoluter Assembler-Spezialist sein, aber wenn du das erste Mal nach Speicherlecks, nicht beendeten Threads, höheren Nutzerrechten etc. suchst, kommst du schin um die Win-API nicht herum. Wenn du dann damit nichts anfangen kannst, kommen Programme raus, die alle 2 Stunden abstürzen, immer langsamer werden, na ja und noch so viele andere schöne Nebeneffekte erzeugen.
    Gruß
    Ralle

    ... there\'re 10 kinds of people ... those who understand binaries and those who don\'t …
    and the third kinds of people … those who love TIA-Portal

  10. #30
    Registriert seit
    22.11.2005
    Ort
    kl.Odenwald
    Beiträge
    716
    Danke
    111
    Erhielt 85 Danke für 71 Beiträge

    Standard


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    Zitat Zitat von Ralle Beitrag anzeigen
    Sicher muß keiner, der Win-Programme schreibt absoluter Assembler-Spezialist sein, aber wenn du das erste Mal nach Speicherlecks, nicht beendeten Threads, höheren Nutzerrechten etc. suchst, kommst du schin um die Win-API nicht herum. Wenn du dann damit nichts anfangen kannst, kommen Programme raus, die alle 2 Stunden abstürzen, immer langsamer werden, na ja und noch so viele andere schöne Nebeneffekte erzeugen.
    Bin mit den Ablegern von Thread-Klassen von Borland eigentlich immer gut zurecht gekommen, zumindest besser als mit API-Funktionsaufrufen und -zig Zeigerparameter. Naja, gut ist vielleicht etwas übertrieben, die Handhabung von Threads ist an sich schon kompliziert genug

    Die Speicherlecks rühren nach meiner Erfahrung eher von schlechter Synchronisation und/oder fehlenden Destruktor-Aufrufen her.

Lesezeichen

Berechtigungen

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