WinCC & ToggleBit

A

Anonymous

Guest
Zuviel Werbung?
->Hier kostenlos registrieren
Moin moin,

ich hab mal eine Frage: wie projektiere ich ein toggle bit unter WinCC 5.1. SetTag setzt je 'nur' auf 1 bzw 0... aber ich möchte gerne ein und den selben button zum ein- & ausschalten benutzen. Kann mir da jemand helfen???

Sorry, wenns ne dumme Frage sein sollte, aber bin grade erst mit WinCC angefangen...


c ya NetMare
 
OP
A

Anonymous

Guest
...nachtrag

ich nochmal...

mir würd natürlich auch reichen das ich einen Impuls zur PLC sende... sauberer wäre es zwar mit nem direkten toggle puls in der CC Anwendung - aber andersrum gehts auch: Impuls an die PLC und da dann das hin & herschalten...

Tipps??? ;)
 

volker

Supermoderator
Teammitglied
Registriert
20 Juni 2003
Beiträge
5.468
Punkte Reaktionen
935
Zuviel Werbung?
->Hier kostenlos registrieren
hallo

ich kenn wincc nicht. in protool gibt es eine funktion: Bit_setzen_rücksetzen_in_Variable.

Invertiert ein Bit innerhalb einer Variablen.
Hat das Bit den Wert 0, wird es auf 1 gesetzt. Hat das Bit den Wert 1, wird es auf 0 gesetzt.
ProTool schreibt nach der Änderung die gesamte Variable in die Steuerung zurück.
Daher darf von der Steuerung nur lesender Zugriff auf die Variable erfolgen.

evtl gibt es das in wincc auch.
 

sps-concept

Well-known member
Registriert
30 August 2003
Beiträge
2.235
Punkte Reaktionen
249
Toggle

Hallo zu später Stunde,

das geht mit ner Antivalenz. Hab aber jetzt leider WinCC nicht auf dem Rechner. Könnte aber ne *.pdl schicken wo es so realisiert ist.

MfG
André Räppel
 

sps-concept

Well-known member
Registriert
30 August 2003
Beiträge
2.235
Punkte Reaktionen
249
Toggle

So, erstmal die Sache für eine Bitvariable. Soll ein einzelnes Bit aus nem Byte/Wort/Doppelwort getoggelt werden einfach nochmal melden.

Code:
#include "apdefap.h"
void OnClick(char* lpszPictureName, char* lpszObjectName, char* lpszPropertyName)
{
BOOL z;
z=GetTagBit("Variable");
if (z==0) 
SetTagBit("Variable",1); 
else
SetTagBit("Variable",0); 
}

MfG
André Räppel
 
OP
A

Anonymous

Guest
Zuviel Werbung?
->Hier kostenlos registrieren
...

Hi...

danke für eure Tipps. Bei ProTool bekomm ichs auch hin (hab zwar kein OP hier, aber habs bei verschiedenen Projekten für die Firma schon gemacht).

Wenn mir jemand - oder du SPS-Concept - ein Projekt oder auch mehrere zuschicken könnte würde mir das SEHR helfen. Wird zu 100% NUR für private Zwecke verwendet! Also Angst braucht ihr nicht haben ;)

Also wäre nett, wenn mir jemand ein, zwei, wieviel auch immer Projekte zuschicken könnte. Daraus könnte ich dann auch noch andere Sachen lernen.

Hier meine Mailadresse: netmare@gmx.de

danke und tschö, mit ö ;)
 
OP
A

Anonymous

Guest
Toggel_bit is WinCC

Hallo

ein Toggelbit in WinCC herzustellen ist eigentlich ganz einfach. Man generiert als erstes eine interne Wariable vom Typ bool.

Dann unterprogramm Script aufrufen. Dort eine neue ( und das ist Wichtig) Aktion erstellen. Aktionen werden von WinCC im Runt Time Mode immer durchlaufen. Hier kann mann dann über eine C Programm das toggeln realisieren.

z.B.

if(GetTagBit(TOGGEL))
{
SetTagBit(TOGGLE,FALSE);
}
else
{
SetTagBit(TOGGLE,TRUE);
}

Wenn du das ganze noch über einen Mausklick starten willst dann musst du den Mausklick auf eine Variable in C programmieren un diese hier einbinden.
 
OP
A

Anonymous

Guest
Faulere Variante?!

So müsste es auch klappen, die faulere Variante:

SetTagBit("Toggle", (!GetTagBit("Toggle")));

mfG
Rübennase
 
OP
A

Anonymous

Guest
Zuviel Werbung?
->Hier kostenlos registrieren
Siehe WinCC-CD's...

NetMare schrieb:
Also wäre nett, wenn mir jemand ein, zwei, wieviel auch immer Projekte zuschicken könnte. Daraus könnte ich dann auch noch andere Sachen lernen.

Habe da einen guten Tip. Einfach mal die WinCC-CD's durchgucken und die mitgelieferten Beispielprojekte durchgehen. Da gibt es einen C-Kurs und vieles, vieles mehr - und das super aufbereitet.

Viele Grüße
Schlauchboot
 

Michakron

Active member
Registriert
6 November 2012
Beiträge
31
Punkte Reaktionen
1
Wie läuft das ganze denn ab, wenn man das Bit mit WinCC nur setzen will sobald es False ist.
Also WinCC setzt das Bit und die SPS setzt das Bit zurück. Habe nämlich ne Überwachung drin, dass wenn Panel ausfällt die SPS ein Notprogramm startet und die Anlage runterfährt.
 

MSB

Well-known member
Registriert
15 Januar 2005
Beiträge
7.085
Punkte Reaktionen
1.591
Wie läuft das ganze denn ab, wenn man das Bit mit WinCC nur setzen will sobald es False ist.
Also WinCC setzt das Bit und die SPS setzt das Bit zurück. Habe nämlich ne Überwachung drin, dass wenn Panel ausfällt die SPS ein Notprogramm startet und die Anlage runterfährt.
WinCC, welche Version ... P.S. WinCC ungleich WinCC Flexible.
PPS: Leichenschänder ...
 

Michakron

Active member
Registriert
6 November 2012
Beiträge
31
Punkte Reaktionen
1
Zuviel Werbung?
->Hier kostenlos registrieren
Hatte ich vergessen genauer zu schreiben. Sry. Also ich benutze WinCC V7.0+SP3+ Update 4

Das WinCC ungleich WinCC Flex ist wusste ich. Habe ich hier schon oft genug gelesen und war mir auch so klar.
 

mkol

Active member
Registriert
29 Oktober 2010
Beiträge
32
Punkte Reaktionen
5
Mach einfach eine globale Aktion mit deinem Toggle-Tag als Triggervariable. Im Skript liest du dann den Wert des Tags und setzt ihn auf true sofern er false ist.
 
Oben