Funktionsbaustein & Visualisierung

Cococabana

Level-2
Beiträge
34
Reaktionspunkte
0
Zuviel Werbung?
-> Hier kostenlos registrieren
Hallo,

ich bin vom Objektorientierten Arbeiten in Delphi noch sehr verwöhnt und vermisse leider in der Visualisierung von TwinCAT PLC sowas wie ne CheckBox. Eher umständlich kann man das auch mit Eingabefeldern machen, kennt jemand von euch ne bessere Idee? Schließlich ist ne CheckBox ansich ja nciht so exotisch.. ;)

Zu etwas anderem: Ich habe mir bereits eine Art Normierung/Skalierungsbaustein gebastelt. Das ging ganz gut von der Hand. Nun soll ich aber für eine Sollwertgenerierung eine Dreieckspannung ausgeben. Gefunden habe ich sowas in der Bibliothek nicht, hätte mich auch ein wenig gewundert. Hat jemand von euch sowas schon gebastelt?

Gruß, Coco
 
Zur CheckBox:

Also soweit ich weiß gibt es das im TwinCAT wirklich nicht. Du könntest das Ganze aber auch durch einen Button realisieren. Durch Rechtsklick -> Konfigurieren -> Eingabe kannst du dann bei Variable toggeln deine Variable eintragen, die dann durch Klicken des Buttons (entspricht Häkchen setzen der CheckBox) gesetzt wird.
 
Zuviel Werbung?
-> Hier kostenlos registrieren
So hab ich mir das ansich auch gedacht nur soll es eine Auswahl zwischen 3 Optionen geben wobei keine Mehrfachauswahl möglich sein soll. Nur diese Verriegelung will mir nicht gelingen....
 
Ich glaub da kann ich mal ausnahmsweise weiterhelfen:
Code:
VAR
Button1 : BOOL;
Button2 : BOOL;
Button3 : BOOL;

HideButton1 : BOOL;
HideButton2 : BOOL;
HideButton3 : BOOL;
END_VAR

IF Button1 THEN
HideButton2:=TRUE;
HideButton3:=TRUE;
END_IF

IF Button2 THEN
HideButton1:=TRUE;
HideButton3:=TRUE;
END_IF

IF BUTTON3 THEN
HideButton1:=TRUE;
HideButton2:=TRUE;
END_IF
Dann nur noch den Kästchen in der Visu unter Konfiguration-->Variable-->Unsichtbar die jeweiligen Hidebuttons zuweisen. Ende der Geschichte. Wählst du eins an werden die anderen beiden automatisch versteckt bis der Button zurückgesetzt wird wie du das dann machst musst du entscheiden.
 
Nagut, das wäre nicht schön aber selten. Nur scheint es irgendwie nicht zu klappen. Ich kann zwar den Buttons einen Wert zuweisen, nur lässt er die IF Schleifen völlig aussen vor und ändert nicht den Wert der HiddenButtons.


Viel wichtiger ist für mich momentan was anderes. Ich habe mir die OSCAT Bibliothek implemenmtiert wo auch mehrere Funktionsgeneratoren drin sind als Funktionsblock. Nur wie binde ich sie in mein Projekt ein, hab ich sie erstmal in der Bibliothekverwaltung?
Ein einfaches rüberziehen des Bausteinssymbols in mein Projekt klappt nicht, das wäre ja auch ein ding wenn es mir so einfach gemacht werden würde. Den Code zu kopieren geht auch nicht, da ich ja nur oben die Variablendeklaration sehe, aber nicht das eigentliche Programm...

Ich bitte um hilfe :confused:
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Hast du schon versucht die Bausteine samt ihren Daten zu exportieren? dann könntest du nämlich in TwinCAT das ganze einfach Importieren. Musste ich nämlich auch mit einigen Firmeninternen FBs machen.
Also damit meine ich bei OSCAT Die FBS exportieren und dann so als export datei wieder implementieren bei TwinCAT. kenn mich leider nich so gut aus mit OSCAT libs
 
Nene, das ist schon eine OSCAT Bibliothek für TwinCAT die mir auch dort schon angezeigt wird. Vergessen wir OSCAT, nehmen wir die Standart Bibliothek. Wie kann ich z.B. den Function_Block RS vom Bibliotheksverwalter in mein Projekt schieben?
 
Brauchste nich deklarier das einfach so:
Beispiel die TON datei aus der standard lib
Code:
VAR

Timer1    :    TON;

Start    :    BOOL;
END_VAR

CODE:

Timer1(
       IN:=TRUE,
       PT:=t#2s);

Start:=Timer1.Q;
(* Start wird dann nach 2s auf true gesetzt solange das signal an IN noch auf True dann steht ist. *)
Du gibst sozusagen nur dem FB einen Namen und tust dann in der Klammer die Eingänge deklarieren.
Was auch geht:
Code:
Timer1(
      IN:=TRUE,
      PT:=t#2s,
      Q=>Start);
(*Dann wird der Start direkt dem Q zugewiesen ohne danch nochmal beschrieben zu werden *)
 
Zuletzt bearbeitet:
Zuviel Werbung?
-> Hier kostenlos registrieren
Aaaaah, ich glaube ich hab verstanden. Ich muss garnicht den Baustein links in TwinCAT unter Bausteine nochmal mir anlegen, er hat das blöde ding schon längst drinne und ich greife mit

function(); nur einfach drauf zu!

omg.....irgendwie denk ich immer etwas....anders ;)
 
Musst dann aber drauf achten das dein
Code:
Function();
auch deklariert ist. Mit der richtigen FB beschreibung von dem FB wo du drauf zugreifen willst.
 
Zurück
Oben