-Menü

Beiträge anzeigen

Dieser Abschnitt erlaubt es Ihnen, alle Beiträge anzusehen, die von diesem Mitglied geschrieben wurden. Beachten Sie, dass Sie nur Beiträge sehen können, die in Teilen des Forums geschrieben wurden, auf die Sie aktuell Zugriff haben.

Beiträge anzeigen-Menü

Beiträge - franzhoepfinger

#1
du hast selbstverständlich recht.

ein IF, um dann einen Bool zu setzen ist immer nutzlos:

um bei meiner Implementierung zu bleiben wäre es so:
dein Code ist im Prinzip fast das gleiche.

Ob man mit Strich oder Lücke anfängt ist eine Frage ja.
eine andere wird dann: wenn der Baustein nur ein IEC 61499 Event für jeden Strich Anfang liefern soll. das muss ich noch austüfteln.


ALGORITHM REQ

DIST_REMAINDER := (DIST_IN + DIST_OFF) MOD (DIST_HIGH + DIST_LOW);

Q := (DIST_REMAINDER >= DIST_HIGH);

END_ALGORITHM
#2


https://github.com/eclipse-4diac/4diac-ide/pull/644

https://github.com/eclipse-4diac/4diac-ide/blob/be33b38cf418a42cac9cf5fa24a215ba33243133/data/typelibrary/signalprocessing-1.0.0/typelib/distance/RangeBasedPulse%20.fbt#L40

ja, so hab ich es auch gemacht:


ALGORITHM REQ

DIST_REMAINDER := (DIST_IN + DIST_OFF) MOD (DIST_HIGH + DIST_LOW);

IF (DIST_REMAINDER >= DIST_HIGH) THEN
   Q := TRUE;
ELSE
   Q := FALSE;
END_IF;

END_ALGORITHM
#3
Hallo,

wir haben in OSCAT ja jede Menge Zeitabhängige Bausteine,
aber Streckenabhängige nicht oder ?

oder bin ich blind ?

Beispiel: ich will den Mittelstrich auf der Straße malen.

und zwar (nahezu) unabhängig von der Speed.

dann brauche ich ein Rechtecksignal mit einem Abstand von

https://de.m.wikipedia.org/wiki/Datei:L%C3%A4nge_und_Abstand_der_Fahrbahnmarkierung_auf_Autobahnen.png

12m Abstand und Länge 6m (also Lücke 6m)

Grüße,
Franz



#4
oscat.lib fuer CoDeSys 3 / Re: Oscat Datenlogger
09. Oktober 2024, 09:54:25
ich muss mal nachschauen,
haben den OSCAT logger unter CoDeSys 3 sehr performant am laufen.

also auf alle Fälle eine gute Wahl.
#5
Ankündigungen / Announcements / OSCAT unter C++
25. August 2021, 07:29:42
Servus,

ich kann leider mit der Suchfunktion hier nichts finden, weil bei C++ kommen 1000 Ergebnisse,
++ ist wohl ein Sonderzeichen.


ich habe grade einige PLC Funktionen auf C++ portiert, kommen auch noch welche hinzu,
vielleicht ist das für den ein oder anderen interessant:

https://github.com/Meisterschulen-am-Ostbahnhof-Munchen/TimeDelay

der Aufruf ist sehr PLC-Like:
also die Funktionsbausteine haben wirklich wie im PLC auch einen inneren Zustand usw.

   
        TOF TOF1; //Deklaration

        TOF1.PT =  2000;
       // TEST TOF
       TOF1(I1);
        gpio_set_level(GPIO_Q3, TOF1.Q); //Ausgang


Viel Spaß !
Grüße,
FH

#6
es ist UNGLAUBLICH kompliziert.

Hauptproblem: die Sprache ist nicht gleich.
zwar behaupten beide IEC 61131-3 kompatibel zu sein,
aber z.B. ist in CoDeSys möglich einen STRING als Rückgabewert einer Funktion zu haben,
in B&R ist das per se überhaupt nicht möglich.

hier ist die Kompatibilität SEHR SEHR eingeschränkt.