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

Seite 2 von 8 ErsteErste 1234 ... LetzteLetzte
Ergebnis 11 bis 20 von 80

Thema: Diskussion: SCL Compiler Einschränkungen, Erweiterungen

  1. #11
    Registriert seit
    25.06.2007
    Ort
    Dresden
    Beiträge
    3.930
    Danke
    465
    Erhielt 878 Danke für 634 Beiträge

    Standard


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    ALSO vom hochgelobten 3S will ich hier garnicht weiter ausbreiten.

    Ich sag nur TOTDEKLARIEREN!!!!

    Ehe da mal was geht - da fehlt die LIB und jene LIB - ist mir Egal.


    Der Grund mir damals vor 10 Jahren SCL zu kaufen war, das ich
    schön symbolisch auf die DBs zugreifen kann. Ich versuche
    Pointergräber weitesgehend im AWL zu vermeiden.

    Ich sach nur:

    1. Nich alles wos goil is mussta machen.

    2. Ma muss nich ständig seine Pointer als Monstranz vor sich hertragen um zu zeigen, dass man ein toller Programmier ist wenns auch transparenter und einfach geht.

    Frank
    Grüße Frank

  2. #12
    Registriert seit
    03.04.2008
    Beiträge
    6.200
    Danke
    237
    Erhielt 815 Danke für 689 Beiträge

    Standard

    Also da geht es mir wie den Menschen:
    Warum etwas nehmen, das nicht nötig ist?
    In den ganzen Hochsprachen sind Pointer für den Entwickler nicht immer sinnvoll oder nötig., es ist cool, Pointer zu verwenden, damit man in einem Jahr bestimmt nicht mehr weiß was man selbst programmiert hat.

    Doch in einer PLC? Die soll eigentlich nur richtig steuern. Je mehr in die Dinger geschaufelt wird, um so fehleranfällig wird das Ergebnis. Das gilt für Programm und Betriebssystem.

    Was der Compiler hinter der Entwicklungsumgebung macht ist mir, um ganz ehrlich zu sein, egal.

    SCL ist so eine Entwicklung, die nach meiner Meinung begonnen wurde, ohne, dass an das Ziel gedacht wurde.
    Es war schick, C zu implemtieren, es wurde ein schmales Pascal daraus und glücklich wird man damit wohl eher weniger.
    Daten Dinge schreibe ich schon lange nur in SCL, da ja Schleifen und ähnliches besser zu schreiben und zu verstehen sind.(Solange man den AWL Code nicht anschaut )

    bike

  3. #13
    Registriert seit
    18.03.2008
    Beiträge
    267
    Danke
    3
    Erhielt 26 Danke für 26 Beiträge

    Standard

    Was ich mir am meisten wünsche was die Sprache an sich betrifft:

    - Dynamische Speicherverwaltung, zb. Array deklaration mit einer Variable (Glob. Konstante) anstatt mit einem Zahlenwert.
    Wird aber wahrscheinlich von der HW-Architektur der CPU's nicht möglich sein

    - Make-Dateien sollten in anderen Make-Dateien aufrufbar sein. So könnte ich eine Make-Datei für jede SW-Komponente und einen Make-All Datei haben ohne immer in beiden anpassen zu müssen.

    - Gobale Konstanten wären natürlich generell Schön

  4. #14
    Registriert seit
    22.03.2007
    Ort
    Detmold (im Lipperland)
    Beiträge
    11.728
    Danke
    398
    Erhielt 2.406 Danke für 2.002 Beiträge

    Standard

    @Thomas:
    du solltest nicht die Adressierung "byRef" mit Pointern verwechseln - es ist zwar richtig, dass hier unterschwllig mit einem solchen gearbeitet wird aber wirklich, da gebe ich meinen Vorrednern Recht : vordergründig hatte ich dafür noch keinen Anwendungsfall.

    @TE:
    - den Workflow von SCL generell zu verbessern halte ich für einen guten Ansatz (siehe z.B. das Beispiel von Dalbi).
    - Darüber hinaus fände ich es schön, wenn es einen Pendant zum VB-Befehl WITH gäbe. Das könnte auch helfen, dass der Compiler den AWL-Spagetticode etwas sauberer gestalten könnte. Wenn ich viel mit Strukturen oder/und Array's arbeite so werden fast alle Variablenzugriffe (im AWL-Code) über Pointer gehandelt wobei der Pointer für jede variable neu errechnet wird - wozu ?
    - Ich bin schon oft darüber gestoplert, dass sich FB's, SFB's etc. nicht in Strukturen integrieren lassen - gut das kann AWL auch nicht - aber warum eigentlich nicht ? Gleiches gilt für Array's ...
    - AT-Sicht ist eine schöne Sache. Warum kann ich aber z.B. keine solche auf eine Gruppe von IN-Parametern machen ?

    Gruß
    Larry

  5. #15
    Registriert seit
    25.03.2010
    Ort
    Nürnberg
    Beiträge
    41
    Danke
    3
    Erhielt 0 Danke für 0 Beiträge

    Standard

    also zum Thema Pointer (speziell Pointer auf FCs bzw FBs) hätte ich schon sinnvolle Anwendungsmöglichkeiten.

    1. Beispiele: Programmieren einer Zustandmaschine:
    Oft programmiert man hierfür eine ellenlange CASE Anweisung. Intern erzeugt der Compiler für jeden Fall eine Bedingung mit Sprung, was ja nicht besonders effektiv ist. Viel effektiver wäre es, ich könnte ein Feld von Pointern auf Funktionen anlegen und mit dem Status der Zustandsmaschine indiziert die Funktionen aufrufen:
    Code:
    nextstate := fkttab[state](par,...);
    ähnliches wäre auch sinnvoll für Protokollhandler, Meldungsverarbeitung usw.

    2. Beispiel
    Ich hatte mal eine Jalousiensteuerung programmiert. Für jede Jalousie habe ich eine Instanz eines Kontroll-FBs angelegt. Jeden Instanzaufruf musste ich einzeln programmieren. Ich hätte mir viel Schreibarbeit gespart, wenn ich z.b. folgendes hätte schreiben können:

    Code:
     
    FOR  i := 0 TO JAL_ANZ DO
       JAL_CTRL[i](T_UP := %E[i,0], T_DN:= %E[i,1], M_DN := %A[i,1],...);
    END_FOR;
    Richard Rauch
    ITR GmbH Informationstechnologie Rauch
    software >> automation >> embedded systems
    Zitieren Zitieren Anwendungsfälle für Pointer  

  6. #16
    Registriert seit
    25.06.2007
    Ort
    Dresden
    Beiträge
    3.930
    Danke
    465
    Erhielt 878 Danke für 634 Beiträge

    Standard

    Zitat Zitat von rrauch Beitrag anzeigen
    2. Beispiel
    Ich hatte mal eine Jalousiensteuerung programmiert.
    Auch wenns etwas OT ist. Für eine Jalousiensteuerung nimmt man KNX. Da muss man nur "etwas" parametrieren und das wars. (man muss nicht für alles und jedes eine SPS nehmen)

    Frank
    Grüße Frank

  7. #17
    Registriert seit
    25.03.2010
    Ort
    Nürnberg
    Beiträge
    41
    Danke
    3
    Erhielt 0 Danke für 0 Beiträge

    Standard

    Zitat Zitat von IBFS Beitrag anzeigen
    Auch wenns etwas OT ist. Für eine Jalousiensteuerung nimmt man KNX. Da muss man nur "etwas" parametrieren und das wars. (man muss nicht für alles und jedes eine SPS nehmen)

    Frank
    bzw. es reichen doch zwei Taster (Einer für AUF und Einer für ZU)

    also, meine Jalousiensteuerung kann etwas mehr (Sonnenaufgang u. Untergang berechnen, Sonnenstand berechnen, beim Beschatten die Lammellen jeder Jalousie entsprechend Ihrer Himmelsrichtung so stellen, daß max. Tageslicht einfällt, aber kein direktes Sonnenlicht)....astronomische Formeln und etwas Geometrie muß die Steuerung schon rechnen.
    Richard Rauch
    ITR GmbH Informationstechnologie Rauch
    software >> automation >> embedded systems

  8. #18
    Registriert seit
    01.10.2007
    Ort
    Waiblingen
    Beiträge
    3.317
    Danke
    767
    Erhielt 536 Danke für 419 Beiträge

    Standard

    Zitat Zitat von rrauch Beitrag anzeigen
    1. Beispiele: Programmieren einer Zustandmaschine:
    Oft programmiert man hierfür eine ellenlange CASE Anweisung. Intern erzeugt der Compiler für jeden Fall eine Bedingung mit Sprung, was ja nicht besonders effektiv ist. Viel effektiver wäre es, ...
    wenn der Compiler erkennen könnte, dass der Programmierer in AWL hier gerne eine SPL-Liste erzeugt haben wollte. Allerdings haben Zustandsnummern auch schon wieder den Nachteil, keinerlei Symbol darzustellen.

    Zitat Zitat von rrauch Beitrag anzeigen
    Ich hätte mir viel Schreibarbeit gespart, ...
    das ist in meinen Augen aber auch nur ein schwacher Grund.

  9. #19
    Registriert seit
    25.06.2007
    Ort
    Dresden
    Beiträge
    3.930
    Danke
    465
    Erhielt 878 Danke für 634 Beiträge

    Standard

    Zitat Zitat von rrauch Beitrag anzeigen
    also, meine Jalousiensteuerung kann etwas mehr (Sonnenaufgang u. Untergang berechnen, Sonnenstand berechnen, beim Beschatten die Lammellen jeder Jalousie entsprechend Ihrer Himmelsrichtung so stellen, daß max. Tageslicht einfällt, aber kein direktes Sonnenlicht)....astronomische Formeln und etwas Geometrie muß die Steuerung schon rechnen.
    Das gibt es ALLES schon fertig zu kaufen.

    http://www.bms-solutions.de/produkte...tKategorieID=9

    http://www.elsner-elektronik.de/knx-...ash=d8be17a7af

    http://knx-user-forum.de/knx-eib-for...ight=suntracer

    Ich programmiere auch sehr gerne SPSen, aber für manches
    sind mir zugekaufte fertige Lösungen lieber.

    Grüße

    Frank
    Grüße Frank

  10. #20
    Registriert seit
    25.03.2010
    Ort
    Nürnberg
    Beiträge
    41
    Danke
    3
    Erhielt 0 Danke für 0 Beiträge

    Standard


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    Zitat Zitat von IBFS Beitrag anzeigen
    Das gibt es ALLES schon fertig zu kaufen.

    ...
    Ich programmiere auch sehr gerne SPSen, aber für manches
    sind mir zugekaufte fertige Lösungen lieber.

    Frank
    das könnte man ja in einem weiteren thread ausdiskutieren...
    Richard Rauch
    ITR GmbH Informationstechnologie Rauch
    software >> automation >> embedded systems

Ähnliche Themen

  1. Einschränkungen bei VIPA Speed7 CPUs
    Von Schrat007 im Forum Simatic
    Antworten: 18
    Letzter Beitrag: 26.06.2008, 09:31
  2. LOGO Erweiterungen rot
    Von Oberchefe im Forum Sonstige Steuerungen
    Antworten: 0
    Letzter Beitrag: 17.05.2008, 21:51
  3. Gibt es in s5 Einschränkungen für DB's
    Von mega_ohm im Forum Simatic
    Antworten: 19
    Letzter Beitrag: 14.02.2008, 03:00
  4. Antworten: 5
    Letzter Beitrag: 31.05.2007, 13:02
  5. Einschränkungen Studentenversion ?
    Von rolo im Forum PC- und Netzwerktechnik
    Antworten: 1
    Letzter Beitrag: 27.01.2006, 08:06

Lesezeichen

Berechtigungen

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