Quantcast
Channel: SPS-Forum - Automatisierung und Elektrotechnik
Viewing all 49748 articles
Browse latest View live

Step 7 Statuswort Vergleichsoperationen

$
0
0
Hallo zusammen, ich brauche mal wieder eure kompetente Hilfe:confused:

Ich bin momentan dabei einen Baustein von AWL nach SCL zu "übersetzen". Jedoch bin ich beim folgenden Programmteil etwas unsicher wie ich das übersetzen soll. (Meine AWL Kenntnisse sind nicht die besten...)

hier der AWL Code:

L #Input.PWE
UD DW#16#1
U ==0
= #ReadingError

Meine Frage ist, wann wird #ReadingError wahr?

Ich habe die Hilfe bereits gelesen, aber scheinbar nicht ganz verstanden. Meine aktuelle Theorie ist, das #ReadingError kommt wenn #Input.PWE eine ungerade Zahl ist.

Vielen Dank für eure Hilfe

Gruss NoPro

Step 7 Basic Fragen zu bestehender Anlage

$
0
0
Hallo liebe SPSler,

ich bin gelernter Elektromeister und habe damals kaum was von der SPS Thematik mitgemacht.

Ich habe folgendes Problem bei einem unserer Kunden.

Der Kunde hat eine S7-300 verbaut ethliche Analoge und Digitalkarten drin eine MPI schnittstelle und ein Ethernetmodul welches ich gerade nicht aus dem Kopf weiß.

Das Problem ist die Förderbandanlage über mehrere Etagen irgendwann einfach stehen bleibt und es ist keine aktion mehr möglich ausser einen Spannungsausfall zu Provozieren.

Jetzt meine Frage, wir haben Step 7 auf dem Laptop und das Programm bekommen wir die tage welches auf der S7 läuft. Wie kann ich ohne das ich das ganze teil zerschieße einsicht in eine Art Fehler Protokoll oder gibt es eine Live ansicht ähnlich wie eine Simulation um zu gucken wo es dort hackt. Hardwarefehler schließe ich erst einmal aus. Ich vermute ein bauteil in der Notauskette. Ich habe die Anlage nicht gebaut daher weiß nicht welche bauteile verbaut sind. auch gibt es keine Pläne von der Anlage...

ich hoffe mir kann jemand weiterhelfen und nicht gleich mit steinen werfen...

TIA HMI (KP400 Basic) String ohne Buchstaben...

$
0
0
Hi,

ich habe an einer KD-Anlage vor die OP77a auszutauschen, es sollten KP400 kommen.

An einer Stelle wird ein String[10] per Eingabe/Ausgabe-Feld zum eingeben eines Codes genutzt.
Dieser Code heisst soviel wie 0012345678

Beim OP77a kann per Enter - Zahleneingabe direkt dieser Code eingegeben werden.
Beim KP400 nun aber würde das T9 aktiv werden, womit die Zahlen umständlich einzugeben sind.
Alternative mittels an Position bewegen und Pfeil auf/ab nutzen ist nicht schnell genug.

Als Idee hatte ich dann gehabt einfach eine Realzahl zu nutzen (wegen 10 Stellen) und diese in einen String[10] umzuwandeln.
Blöd nur, das Real nach der Umwandlung in String soviel ausgibt wie '1234567E" also ... nicht mehr leserlich und auch nicht auswertbar.
Hinzu kommt, das führende Nullstellen bei einer Zahl abgeschnitten werden.

Das mit den abgeschnittenen Nullstellen würde ich hinkriegen. Einfach den String[10] auf String setzen und per LEN abfragen wieviele Zeichen noch da sind um dann vorne die '0' en anhängen die fehlen.

Problem bleibt aber das E in der Realzahl. Das bekomme ich nicht weg.
Zwei Eingabefelder für vorderen und hinteren Teil zu nutzen kommt nicht in Frage.

Gibt es also irgendwie die Möglichkeit

A - Real leserlich in String umzuwandeln
oder
B - Beim KP400 das T9 abzuschalten.

Genutzt wird CPU 314-2DP in TIA V15

Besten Dank für Eure Überlegungen ;)

edit:
PS: OP77 raus, weil A - TIA nötig wegen Erweiterung (1200), B - verblasst, C - Tasten teilweise defekt

Step 7 ET200sp unter Classic

$
0
0
Hallo,
ich hätte da mal eine Frage zu ET200sp.

Ich habe hier eine Microbox 427-C mit Betriebssystem XP, WinAC RTX 4.5 und WinCCflex. Adv Runtime.
Den Rechner möchte oder muss ich weiter betreiben, leider kann ich diesen nur unter Classic weiter Projektieren,
da WinCCadv TIA nicht mit Windows XP zusammen arbeitet.

Kann ich wenigstens Baugruppen der Baureihe ET200SP mit dieser Plattform treiben?
Kann ich einfach GSD Datein der neueren Baugruppenreihei in Classic installieren?

gruß

TIA TIA V15.1 Openness Demo?

$
0
0
Hallo,

ich habe kürzlich TIA V15.1 (mit Openness) installiert.
Nun wollte ich mich mit damit etwas beschäftigen, aber die Demo-Application funktioniert nicht in der V15.1?
Es werden hier keine Daten erkannt?:



Habe ich evtl. bei der Installation etwas falsch gemacht?
Oder ist die Demo zu 15.1 nicht kompatibel?


mfg

Step 7 Cpu 317-2-dp

$
0
0
CPU317-2 DP.PNG
Hallo zusammen kann jemand bitte mir erklären warum kann ich nicht die folgenden Parameter befassen
vielen Dank im voraus :)
Angehängte Grafiken

WinCC V7 Bitmeldeverfahren aus WinCCflex / ProTool nachstellen

$
0
0
Hallo zusammen,

ich habe ein kleines "Konfigurationsproblem" mit WinCC V7.
Ich möchte die Bitmeldungen aus einem Datenbaustein, die schon mit ProTool oder WinCCflex dargestellt werden, auch mit WinCC V7 anzeigen lassen.
In Flex ist ja die Variable ein Array aus WORD, man gibt die Länge der Variable in Flex an und fertig.
Baue ich das in WinCC über eine Rohdatenvariable nach, kann ich nicht das Meldebit in der Spalte nicht verändern. Das Feld ist ausgegraut. Weiter brauche ich dann auch eine Normierungs-DLL und die Meldung verschiebt dann nach der Konfiguration in den Ordner AS-Meldungen. Dort kann man dann noch nicht mal mehr die Meldenummer nachträglich ändern. Sehr seltsam finde ich.

Lege ich mehrere einzelne Wörter als Variablen an (Z.B. Stoermldung_Word1 … Stoermeldung_Word2 … etc) funktioniert es, wollte mir aber die Arbeit und Variablen sparen.

Kann man in WinCC V7 keine Rohdatenvariable zum anzeigen von Meldungen nutzen? Oder wie legt ihr Meldungen dort an?

Vielleicht eine blöde Frage, aber normal nutze ich nur Meldungen mit Alarm_8P oder Alarm_S in Zusammenspiel mit WinCC V7.

CRC Berechnung (C-Code zu ST)

$
0
0
Hallo zusammen,

ich möchte die CRC Berchnung durchführen. Leider kann ich die Art des CRC16 nicht identifizieren - die Online Rechner liefern andere Ergebnisse.
Ich habe aber funktionierenden C-Code. Leider bekomme ich diesen nicht in ST übersetzt. Die Operatoren verhalten sich scheinbar anders als erwartet ;). Vielleicht kann jemand helfen.

Mein funktionierender C-Code:

Code:

static void LCPUpdateCRC(unsigned short *crc, unsigned char byte)
{
    char i; // loop variable
    char XORFlag; // flag indicating the polynomial should be XORed
    // Combine the new data byte with the current CRC.
    if (crc != NULL) { // ensure the CRC is wanted
        for (i = 7; i >= 0; --i) { // loop through each bit in the data byte
            XORFlag = (unsigned char)((*crc & 0x8000) != 0x0000);
            *crc <<= 1; // shift the CRC left
            *crc |= (unsigned short)((byte >> i) & 0x01);
            if (XORFlag) // check for CRC overflow
                *crc ^= 0x1021; // XOR with polynomial
        }
    }
}

void checkCRC()
{
    unsigned short crc = 0x7E7E;
    unsigned char msg[5];
    msg[0] = 0xFA;
    msg[1] = 0xFF;
    msg[2] = 0x02;
    msg[3] = 0x01;
    msg[4] = 0x00;
    for (unsigned char i = 0; i < 5; i++)
    {
        LCPUpdateCRC(&crc, msg[i]);
    }
    std::cout << "CRC:\t";
    std::cout << std::hex << crc;
    std::cout << "\n";
}

Das Ergbnis ist 0x342F und entspricht der Angabe des Herstellers.

Mein ST-Code bis hierher:

Code:

FUNCTION LCP_CRC_GEN : WORD
VAR_INPUT
    PT : POINTER TO ARRAY[0..200] OF BYTE;
    SIZE : INT;
END_VAR
VAR
    pn : WORD;
    pos : INT;
    dx: BYTE;
    bits: INT;
    flag: BOOL;
END_VAR

(* align polygon *)
pn := WORD#1021;
pos := 0;

(* init value *)
LCP_CRC_GEN := 16#7E7E;

(* calculate CRC for each byte *)
WHILE pos < size DO
    dx := PT^[pos];
    pos := pos + 1;
    (* crc calculation for one byte *)
    FOR bits := 7 TO -1 BY -1 DO
        flag := ((LCP_CRC_GEN AND 16#8000) <> 0);
        LCP_CRC_GEN := SHL(LCP_CRC_GEN, 1);
        LCP_CRC_GEN := LCP_CRC_GEN OR (WORD_TO_BYTE(SHR(dx,bits) AND  BYTE#01 ) );
        IF flag THEN
            LCP_CRC_GEN := LCP_CRC_GEN XOR pn;
        END_IF;
    END_FOR;
END_WHILE;

Übergeben wird:

Code:

VAR
    wCRC2:            WORD;
    baMsgCalc:        ARRAY[0..4] OF BYTE;
END_VAR

baMsgCalc[0] := 16#FA;
baMsgCalc[1] := 16#FF;
baMsgCalc[2] := 16#02;
baMsgCalc[3] := 16#01;
baMsgCalc[4] := 16#00;

wCRC2 := LCP_CRC_GEN(ADR(baMsgCalc), SIZEOF(baMsgCalc));


Vielleicht kann mir jemand bei der Übersetzung helfen ...

Struktur auslesen über AdsDLL LabVIEW mit Arrays und Sting

$
0
0
Hallo zusammen,

ich moechte mit LabVIEW über die AdsDLL Schnittstelle eine Struktur aus TwinCAT 3 auslesen. Die Struktur enthält unter anderem Strings und Arrays. Hat einer hiermit Erfahrung und kann mir vielleicht helfen bzw einen Tipp geben. Ich habe mal ein Bild meines VIs eingefügt und die entsprechende Struktur in TwinCAT 3. Spaeter wuede ich gerne auch noch ein Array von Strukturen dieser Art auslesen. Ist das mit der AdsDLL moeglichen?

Vielen Dank schonmal fuer Eure Antworten

AdsDLLStrukturMitStringUndArraysLesen.JPG StrukturInTwinCAT3.JPG
Angehängte Grafiken

WinCC VBS WinCC

$
0
0
Hallo,

ich habe das versucht.

Im PDL-Bild "Übersiciht" ist ein Button, der sichtbar werden soll, wenn Bedingung erfüllt wird.
Ich habe es VBS geschrieben in Aktion(Global).
Ich würde gerne den Button ohne eine Interne Variable visualisieren.
Also direkt den Button sichtbar machen.

Dim objTxt
Dim BildName
Dim objScrWindow


'Bildname Holen
Set objScrWindow = HMIRuntime.ActiveScreen
BildName = objScrWindow.Objectname

IF BildName = "Übersicht" THEN
IF HMIRuntime.Tags("BBR::100UHT806KFX001/Klappe.Out2#Value").read = "1" THEN
ScreenItems("Button10").Visible = True
ELSE
ScreenItems("Button10").Visible = False

END IF
END IF


Danke

Step 7 ISWvis Mobile App ohne Verbindung

$
0
0
Hallo zusammen,

ich habe hier eine ISWvis Mobile App (Vollversion) und möchte diese mit einer S7-300 verbinden. (MPI-Adapter ACCON Netlink - PRO).

Das ganze hat alles schon mal wunderbar funktioniert. Jetzt an an einem Testaufbau mit einer Fritzbox/CPU/Samsung S8
bekomme ich das ONLINE-Signal auf der App aber kann weder Daten sehen noch steuern. Keine Fehlermeldungen.

Jemand eine Ahnung davon?

[B&R] AS Safety Designer

$
0
0
Hallöchen Liebe Leute!

Ich weiß, dass ich es umgehen könnte, indem ich das Netzwerk einfach auftrenne und separate Variable einfüge - trotzdem würde es mich interessieren ob folgendes möglich ist:
Wenn ich mithilfe der FBs meine Netzwerke stricke würde ich gerne einzelne Outputs der jeweiligen FBs abgreifen.
Ich verANDe 1x lower than und 1 greater than um festzustellen, ob wert innerhalb der Grenze liegt.
Danach verANDe ich diesen Wert mit der Prüfung ob der channel und der current okay ist.

Nun würde ich gerne wissen, ob ich auf den Output des ersten AND irgendwie zugreifen kann, ohne dass ich extra auftrennen muss. (zB. indem ich mithilfe der FB Nummer darauf zugreife oder so)

mfg LuZi

TIA Spannung trotz abgeschaltetem PM

$
0
0
Hallo Leute,

habe ein Problem an dem ich nicht weiter komme.
Kurz zur Hardware:
s7-1500
PM 1507 190W
2 x 32 DI HF
2 x 32 DQ HF
1 x 4 AI
1 x 2 TM Count 24V

Ich habe nun das Problem, dass nach einschalten der Anlage weder ein Ausgang noch ein Eingang geschaltet ist (was aber eigentlich sein sollte).

Wenn ich jetzt auf einen beliebigen Eingang 24V von Hand lege, gehen auf einmal alle Eingänge die eigentlich an sein sollten auch an.

Habe mal die Spannungen an den Eingängen gemessen, da ist von bis alles dabei.
Das Kuriose ist nun. Selbst wenn ich das Netzteil der SPS ausschalte liegen an 24V<-> M ca. 5 V an.

Kann es sein, dass über die Eingänge oder etwas anderes dort Spannung eingespeist wird ?

LG sps31

Fehlerhandling über verkettete Liste

$
0
0
Hallo,

ich habe gerade vor ein Fehlerhandling für Maschinen zu erstellen.
Hierzu dachte ich an einen "Errorhandler", welcher auf Basis einer verketteten Liste arbeitet.
Man könnte Bspw. mit folgendem Quellcode die Fehlernummer einer Achse hinzufügen.
Code:

Errorhandler.AddError(AxisErrorId);
Über einen geeigneten Wrapper könnte man dann die Listeneinträge (Bspw. die letzten10) darstellen.

Was haltet ihr davon?

TC3: Texteingabe in Target-Visu beschränken (Zeichenlänge, Zeichen)

$
0
0
Hallo,
kann man in TC3 (4022.25) in der Targetvisu die Texteingabe auf bestimmte Zeichen (Hier Zahlen und Buchstaben) und eine bestimmte Länge beschränken? Leider gab weder Tante Google noch das Infosys auf Anhieb viel zu dem Thema her.

Step 7 FM 351 und Programm ohne Kommentare

$
0
0
Hallo,

Ich habe folgendes Problem, welches ich allein wohl nicht lösen kann.

Vorgeschichte:
Eine Firma hat sich an unsere Firma gewendet (und im Endeffekt an mich, da dies mein Bereich ist). Diese Firma hat eine Anlage welche mit einer Step 7 Steuerung gesteuert wird.
Der Kunde hat das Programm für diese Anlage nicht, sowie keinen Schaltplan, also gar keine Dokumentation. Den Hersteller dieser Anlage gibt es auch nicht mehr.
Diese Anlage besitzt unter anderem eine FM 351 Karte, mit Hilfe welcher ein Motor verfahren wird.

Jetzt:
Der Kunde hat einen anderen Motor bzw. anderes Getriebe in die Anlage verbaut. Auch der Verfahrweg hat sich etwas verändert. Somit funktioniert diese Anlage nicht mehr.
Von Dieser Anlage wurde nun der nackte Code runtergezogen, welchen ich jetzt bekommen habe. Es muss der Verfahrweg verändern werden und die Getriebeübersetzung anpassen werden, soweit ich es überblicken kann.

Mein Problem:
Ich kenn mich mit der FM 351 nicht aus. Habe mich jedoch zu diesem Thema etwas schlau gemacht und paar Stunden in diese Sache investiert.
Der SFB 52/SFB53 wird hier nicht benutzt. Mit dem SFC 14 wird auch nicht eingelesen. Habe eine PEW Adresse genommen wollte diese nachverfolgen, jedoch wird im Programm "OPEN DB.." benutzt und weiter mit den hinterem DB Adressen-Teil gearbeitet somit kann ich noch nicht mal den Code verfolgen. Das Projekt an sich ist nicht so klein, dass man die Bausteine durchsuchen könnte, außerdem kann ich nicht wirklich überblicken was da passiert.
Habe dazu noch herausgelesen, dass es dazu eine Software gibt. Habe mir diese heruntergeladen. Auf Windows 7 kriege ich diese nicht installiert, auf der VM Windows XP schon doch nach der Installation passiert nichts. Ich kann zwar sehen dass die Software installiert ist (installierte SIMATIC Software). Sehen kann ich diese jedoch nicht, auch nach dem PC durchsuchen keine .exe oder so.

Wenn hier nicht jemand eine Idee hat, dann müsste ich vor dieser Aufgabe kapitulieren.

Mit freundlichen Grüßen
Rici

Signalleuchte 24V einer Zerspanungsmaschine drahtlos übertragen

$
0
0
Hallo Zusammen,

ich würde gerne wissen ob es möglich ist, das Signal einer Maschine (in Betrieb, steht, Störung) kabellos aus dem Schaltschrank heraus in ein darüberliegendes Stockwerk
zu übertragen=?

Dachte da vllt an soetwas wie ein WIFI Relais oder ähnliches. Ein simples Ausgangssignal in Form von einer kleinen LED würde genügen.

Was meint ihr?

Step 7 Frage zu Safety Mischbarkeit von F-SM`s und Standard-SM

$
0
0
Hallo zusammen,

ich hätte da eine Frage zur Mischbarkeit von SM im Sicherheitsbetrieb.
Bei einer Bestandsanlage sind auf Steckplatz 4-7 Standard-SM gesteckt, auf Steckplatz 8-10 F-SM.
Nun meine Frage: Kann ich auf Steckplatz 11 einen Ethernet-CP stecken, oder muss ich die Bestands-F-Karten
quasi um eins nach hinten schieben und den CP auf Steckplatz 8 einbauen.

In der HW-Konfiguration ist das einfgen auf Steckplatz 11 problemlos möglich...aber da der Umbau am WoE stattfindet, würde ich gerne auf Nummer sicher gehen. Deshalb meine Frage..

Ich hoffe, dass meine Beschreibung einigermaßen verständlich ist.

Im Siemens-Handbuch ist dies unter "Kapitel 2.3 Aufbau mit F-SMs im Sicherheitsbetrieb" nicht eindeutig rauszulesen

Vorab vielen Dank!

Grüße Jochen
Angehängte Grafiken

TIA Schieberegister FIFO gross ca 300

$
0
0
Hallo zusammen möchte auf einen einfachen Wge ein schieberegister erstellen.

Es gibt ca 300 Posotionen die über ein Band verfahren werden.

Anzahl der Stellen zum verschieben variabel 1-10

Heist wird markiert und und im Kreis gefahren muss wissen wo sich teile befinden.

CPU 1510F-PN ET200SP
Tabellenfunktion gehen da nicht
Giubt es da fertige Bausteine oder basteln ?

Gruß MKA

Verkaufe VIPA SPS samt Zubehör

$
0
0
Verkaufe zwei VIPA SPS samt Zubehör , es ist eine 200er und eine 100er Steuerung von Vipa mit vielen Ein und Ausgangsmodulen ,Analogmodul ,Original Siemens Programmier Adapter , und ComSERVER dazu zwei Profibusstecker und natürlich die Rückwandbusadapter . Die STeuerungen lassen sich mit STep7 programmieren.
Alles zu sehen in meiner Anzeige bei EbayKleinanzeigen https://www.ebay-kleinanzeigen.de/s-...76916-168-1849

Beide STeuerung sind bei mir im Betrieb es werden Roläden,Licht und ähnliches gesteuert ,die Steuerungen funktionieren tadelos verkaufe diese weil ich leider keine Zeit habe zum programmieren und möchte umsteigen auf ein anderes System .
Falls Ihr Fragen habt schreibt mich an .
Gruß Peter
Viewing all 49748 articles
Browse latest View live