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

3fach-Blinker

$
0
0
Hallo,

da ich aus der C-basierten Steuerungsprogrammierung komme, habe ich noch sehr wenig Erfahrung mit der typischen SPS-Programmierung. Ein einfaches Blinksignal konnte ich jedoch schon mit zwei hintereinander geschalteten TOF-Funktionen realisieren. Auch die Funktionsweise ist mir davon klar.

Wo ich allerdings noch auf dem Schlauch stehe, ist bei der Erstellung eines einfachen 3fach-Blinklichtes: Ein Leuchtring bestehend aus drei LED-Kreisen soll "rotieren", d.h. Die Ausgänge 1, 2 und 3 sollen der Reihe nach mit einstellbaren Pausen- und Ein-Zeiten angesteuert werden.

Ich habe leider keine richtige Idee, wie man das macht. Habt ihr dafür ein Beispiel?

Grüße,
clumsi

Sonstiges Programmierstress und ... TOOLS

$
0
0
Ich will hier mal kurz die Programmierproblematik mit Standardwerkzeugen aufzeigen
und dann ein paar Tools auserhalb des Mainstream, wie Visual Studio oder Java
zeigen, welche einem das Leben etwas erleichtern können.

--------------------------------------------------------------------------------
ProgrammiererStress
--------------------------------------------------------------------------------

KOP, FUP, AWL, SCL, VB-Script, Visual Basic das sind wohl die Grunddialekte,
mit den man als SPS-Programmierer zurechtkommen muss. Dabei ist ein Wechsel
zwischen so verschiedenen Sprachen wie KOP/FUP/AWL zu SCL nicht das größte
Problemn. Fehlerträchtig wird es bei dem ständigen Wechsel zwischen SCL
und VB-Script. Das ist so ähnlich und doch so verschieden.
Ständig schließt man in WinCC in VB-Script irgendwelche Zeilen mit Strichpunkt
ab. Das wird leider in WinCC nicht so richtig als Fehler erkannt. Oft steht
nur da: "Das Skript xy wurde mit Fehler übersetzt". Der Cursor springt bei
Doppelklick in die oberste Zeile. Da ist definitiv kein Fehler! Die Suche beginnt!
Mittlerweile weis ich, dass ich bei diesen Fällen nur nach ";" suchen muss.

Dann in SCL die Strichpunkte wieder vergessen, da man ja gerade aus VB-Script kommt.

END_IF; // in SCL
END IF ' in VB-Script

Zuweisungen SCL mit ":" I:=1, VB ohne ":" I=1

Für den Programmierer ist das Masochismus pur!

Dann bietet wieder WinCCflexible nicht die Funktionalität was man gerade bräuchte.
Dann versucht das in VB-Script irgendwie zu programmieren.

- Mit dem ScriptingFileSystemObject eine Datei angelegt
- Mist, wenn der Ordner nicht da ist, legt sich da nichts an
- Also Ordner anlegen! Geht wieder nicht!
- Ah, geht nur nicht, da die Ordnerstruktur verschachtelt ist und nur 1 Ebene auf
einmal angelegt werden kann.
- und das alles in Himbuktu auf der Baustelle ohne Internet!

Hier übrigens der korrekte Code um in WinCC VB-Script eine Ordnerstruktur anzulegen
Code:

' ======================================================================
'  CreateFullPath : Creates Full Folder Path if not exist
'  Special Function needed because FileSytemObject can't create a
'  SubFolderStructure in one action.
'  Set f=fso.CreateFolder"C:\RootFolder\SubFolder" will cause an
'  Error if RootFolder doesn't exist
'
'  Found on: gallery.technet.microsoft.com
' ======================================================================
Function FSO_CreateFullPath(ByVal strFullPath)
    Dim objFSO 
    Dim intPos 
   
    On Error Resume Next
    Err.Clear
   
    Set objFSO = CreateObject("Scripting.FileSystemObject")
    If Right(strFullPath, 1) <> "\" Then strFullPath = strFullPath & "\"
    If Left(strFullPath, 2) = "\\" Then
        intPos = InStr(3, strFullPath, "\")
    Else
        intPos = 3
    End If
    Do While intPos > 0
        intPos = InStr(intPos + 1, strFullPath, "\")
        If Not objFSO.FolderExists(Left(strFullPath, intPos)) And intPos > 0 Then
                objFSO.CreateFolder Left(strFullPath, intPos)
        End If
    Loop
    Set objFSO = Nothing
   
    FSO_CreateFullPath = Err.Number  ' Returns 0 if succeded
End Function

--------------------------------------------------------------------------------
Prgrammiertools
--------------------------------------------------------------------------------

Programmiert man umfangreichere Anlagen und Anwendungen kommt man frührer
oder später automtisch in den Zwang ein Programm für den PC zu schreiben.
Meist irgendwelche Daten wo abholen und/oder Daten von der SPS wo hinschicken.
Mit VB-Script in WinCCflexible ist das nicht so richtig zu schaffen. Schon geht
der Stress los. Wie machen wir das, wer macht das? Wer kann das?

Als Standardwerkzeuge kennt man eigentlich nur noch VisualStudio und die
Wahl fällt wohl bei den meisten auf VisualBaiscNet. Es geht aber druchaus auch anders
und teils auch effektiver.

--------------------
Pascal vs. SCL
--------------------

SCL ist ja ein von Pascal abgeleiter Dialekt. D.h. kann man SCL
programmieren kann man eigentlich schon Standard Pascal.
Jetzt ist Pascal nicht wirklich so verbreitet und das einzige bekannte
Werkzeug ist Delphi, was mittlerweile nicht mehr von Borland sondern von
Embarcadero unter RAD Studio vertrieben wird.

Weniger bekannt sind die Open-Source Pascal Versionen.
Wobei für den FreePascal Compiler mit LAZARUS eine ziemlich gute und
Delphi änliche OpenSource Entwicklungsumgebung zur Verfügung steht.
Plattformübergreifend für Windows und Linux. (Mit etwas mehr Aufwand
kann man auch für Android und IOs damit programmieren)

Wer bereits VB6 programmiert hat und sich mit SCL auskennt, der wird
mit Lazarus innerhalb kürzester Zeit zurechtkommen. Ein Wechsel zwischen
SCL und Pascal geht ohne die oben beschriebenen Probleme von VB.
Lazarus erzeugt ausserdem EXE ohne Abhängigkeiten von NET-Bibliotheken.
Richtig aufgesetzt braucht man die erzeugten Programme auch nicht zu installieren.

Lazarus Free Pascal ist für mich eines der Tools mit denen man sich als
SPS und Anlagenprogrammier unbedingt beschäftigen sollte. Vor allem wegen der Code-Ähnlichkeit
zu SCL und wegen der wie schon bei Delphi guten Datenbankintegration.

Mit Libnodave und Snap7 stehen auch noch 2 Leistungsfähige OpenSource Zugriffsbiliotheken für
Step7 classic bereit, die sich ohne weiteres in Lazarus einbinden lassen.
Mit dem PASCAL-SCADA Plugins für Lazarus, auch noch eine Open-Source Oberfläche für Visualisierungen.
(Nicht ausgereift, aber ein echt guter Ansatz)

Lazarus taugt vor allem, um irgendwelche Daten aus SPSn auszulesen, darzustellen und in Datenbanken zu sammeln.
Vor allem weil man das dann auch quasi ohne SourceCode-Änderung auf Mini-Computern wie dem RASPI unter Linux laufen lassen kann.

Es existiert auch ein PASCAL-Scripting-Host, ähnlich VB-Scripting-Host. Nur bringt das leider für uns erst mal nicht viel,
da es sich nicht in WinCC integrieren lässt.


-------------------------------
PureBasic, SpiderBasic
-------------------------------

PureBasic und SpiderBasic sind zwei extrem geniale Tools. Zwar nicht OpenSource aber für
den Preis eines Fachbuches bekommt man das. PureBasic sogar auf Lebenszeit!

Was ist PureBasic

PureBasic ist ein VB-Ähnlicher Proceduraler Basic-Compiler, d.h. ohne direkte OOP Unterstützung.
Durch die konseqeunte Intgegration komplitzierter Abläufe als Basic-Befehle ein einfaches und geniales
Tool, welches kompakte EXE ohne Intallationszwang und Bibliotheksabhängigkeiten erzeugt.
FTP-Zugriffe, Email und vieles mehr als direkt integrierte Basic Befehle.
Damit programmiert man nach etwas Einarbeitung auch als Anfänger in kürzester Zeit kleine funktionale Tools, die in anderen
Sprachen einen mords Aufwand darstellen.


SpiderBasic

ist im Prinzip der gleiche Code wie PureBasic nur ist SpiderBasic für Browseroberflächen gedacht.
D.h. ich programmiere meine Controls und Fenster in Basic und das läuft dann als Anwendung im Browser.
SpiderBasic compiliert dazu den Basic Code in Java und HTML 5.

SpiderBasic eignet sich z.B. um WinCCflexible über Broser Apps zu erweitern. Die Anwendung für z.B. Datenverwaltung
in SpiderBasic geschrieben und in WinCC über Browserfenster-Aufruf eingebunden. Einziges Problem ist, dass man den
Datenaustausch zwischen Browser und WinCC über Dateien und zyklisch aufgerufene VB-Scripte erledigen muss.
Da WinCC keinen zyklischen Scriptaufruf (ausser Minute, Stunde, Tag ...) bietet muss man sich in der SPS ein
Taktsignal von z.B. 1s erzeugen und über Variablenänderung das zyklische Skript aufrufen).
Man kann aber auch mit Libnodave, SNAP7 oder kommerziellen Bibliohteken direkt auf die SPS zugreifen.

Theoretisch sollte man auch über die StdIN und StdOUT Kanäle von Windows eine Kommunikation mit VB-Script hinbekommen.
Leider hatte ich noch nicht die Zeit dazu das zu testen bzw. rauszufummeln wie das geht!

Step 7 Abgleich Online / Offline Hardwarekonfig

$
0
0
Hallo,
ich habe Unterschiede bei verschiedenen AGs (300er/400er). Alle Ags sind miteinander vernetzt und ich greife auch mit dem Simaticmanager per Netzwerk auf die AGs zu. Jetzt würde ich gerne die Online Hardwarekonfiguration Offline im jeweiligen Projekt speichern. Wenn ich Online auf die Hardware gehe und "laden in PG" auswähle, kommen auf einmal alle angeschlossenen Projekte, so als müsse ich das richtige auswählen. Ist das der richtige Weg?
Ist schon komisch, da bei Softwareänderungen nicht nachgefragt wird wohin ich laden möchte, denn das Projekt ist ja geöffnet...

Grüsse

Bewegungsmelder fuer aussen an SPS-Eingang moeglichst ohne Zeitschaltung

$
0
0
Hallo zusammen,

ich steuere meine Haustechnik (Heizung, Solar, Warmwasser) ueber eine SPS (Telemecanique Micro 3722).
Sicher, normalerweise unbezahlbar und quasi mit Kanonen auf Spatzen geschossen, aber ich hatte den ganzen Hardwarekram inkl. Software im Keller (mein damaliger Arbeitgeber hatte auf CAN-Bus-Steuerungen umgestellt). Als einziger Bus steht mir der herstellereigene Uni-Telway-Bus zur Verfuegung, daher bin ich in Sachen Geber auf analoge (0-10V / 0-20mA) bzw. digitale (24VDC) angewiesen.

Nun moechte ich - wir haben hier eine alte Hofstelle - meine Aussenlichsteuerung integrieren.
Es geht um rund 10 bis 15 Lampen, die unabhaengig voneinander schaltbar sein sollen und das sowohl manuell, als auch in Abhaengigkeiten von Daemmerungssensor, Aussenbewegungsmeldern etc. automatisiert.

Die manuelle Steuerung und der Daemmerungsschalter ist ja mal nicht die Huerde, aber die Bewegungsmelder, die man so bekommt, arbeiten nicht so, wie ich das moechte:
Die handelsueblichen Melder (PIR oder Radar) sind alle so ausgestattet, dass an ein innen verbautes Relais direkt einen Verbraucher angeschlossen werden kann.
Bei Bewegung wird das Relais geschaltet und nach einer - meist einstellbaren - Zeit (noch nie <5s gesehen) faellt das Relais wieder ab.

Ich preferiere allerdings folgende Arbeitsweise:
- Voellig lautlose und unsichtbare Signalabgabe (kein Problem, Relais ausbauen und weiter weg wieder extern anschliessen).
- Bewegungserfassung ohne Zeitfaktor. Soll also Signal geben, wenn Bewegung erkannt wird und das Signal soll ohne Zeitverzoegerung enden, wenn die Bewegung zuende ist. Ich moechte also die Dauer der Bewegung erfassen koennen und damit entscheiden / steuern koennen was ich dann wann und wie schalte.

Meine Frage(n):
Kennt jemand einen bezahlbaren Bewegungssensor, der sofort ein und wieder ausschaltet - entprellen kann ich das Signal dann selbst.
Kennt jemand einen Trick / Umbau, wie ich 08/15- Bewegungsmelder auf null Sekunden Signalverzoegerung modifizieren kann?

Ich freue mich auf konstuktive Ideen

VLG
Wolfgang

Wago 750-881 I/O LED blinkt orange

$
0
0
Hallo Zusammen,

Ich habe einen Wago 750-881 Controller der bisher einwandfrei funktioniert hat.
Nun habe ich das Problem, dass nur noch die IO LED Orange blinkt und ich keine Verbindung weder per Netzwerk noch mit dem Wago-Kabel aufbauen kann. Die Traffic LEDs blinken/ leuchten auch nicht.
Kennt jemand das Problem und kann mir weiterhelfen?
Ich habe die Befürchtung dass ich den Controller wegwerfen kann [emoji53]

Danke und Gruß,
Reckers

Sonstiges Siemens KTP700 mit eWON Flexy verbinden

$
0
0
Hallo,
ich habe ein KTP700 von der Firma Siemens und würde darüber eine VPN-Verbindung aufbauen. Dazu nehme ich die eWON Flexy von der Firma Wachendorff. Das Display wird nun über eine Website (m2web.talk2m) dargestellt. Nun habe ich das Problem das nur das Display angezeigt wird und nicht die "Hardware" Tasten des Panels. Gibt es dazu eine Lösung die ich immer wieder bei neuen KTP700 verwenden kann?

Vielen Dank im Vorraus

Dimm-gerät für Halogenlampe gesucht

$
0
0
Guten Tag,

ich suche ein Dimm-gerät, dass sich über einen Analogen Ausgang 0-10V DC oder 1-10V DC ansteuern lässt. Mit dem Gerät möchte ich eine 12V / 20W Halogenlampe ansteuern. Zudem muss das Dimm Gerät auf eine Hutschiene aufschnappbar sein.

Es sind folgende Versorgungsspannungen vorhanden : 220-230VAC 50/60HZ, 24VDC , 12VDC

Hat da jemand eine Idee, wo ich sowas finde?

Step 7 Strommessung mit S7-1200

$
0
0
Moin,
ist es bei den S7-1200 Baugruppen noch möglich ein 4..20mA Signal Durchzuschleifen, so dass ich es an mehren Stationen messen kann? Problem ist folgendes: ich habe 3 1214 Steuerungen und nur einen Messkopf. Habe jetzt versucht das Signal Durchzuschleifen, das funktioniert aber nur so lange alle Steuerung an sind, wird eine ausgeschaltet können die anderen den Strom nicht mehr messen als wenn der Kreis unterbrochen wäre, kann das sein ?

Vielen Dank für eure Mühe im Vorraus

WinCC WinCC Runtime V12 zeigt keine Variablen an

$
0
0
Morgen zusammen,
ich habe auf meinem Rechner mit Win 7Pro die WinCC Runtime V12 installiert und auch erfolgreich das Projekt übertragen(sowohl SPS als auch Runtime).
Leider zeigt die Runtime nicht eine einzige Reaktion auf die programmierten Visualisierungen.
Ich habe keine Ahnung mehr woran das Liegen könnte.
Der PC Name ist identisch und als Netzwerkkarte wurde die Allgemeine verwendet, das TIA Portal findet auch die IP Adresse bei den Erreichbaren Teilnehmer als S7 PC.
Hat jemand eine Idee?

TIA Hardware übertragen von TIA 13 auf TIA 14 aber wie??'

$
0
0
Hallo, ich habe eine altes Projekt von einer Firma bekommen. In dem Projekt (TIA13) ist ein ganz bestimmtes Gerät (Waage) verwendet. In dem Projekt befinden sich PLC_1 eine HMI_1 und ein Modul um eine Maschine zu steuern. In meinem neuen TIA 14 Projekt habe ich die PLC und die HMI unter Geräte und Netze eingefügt. Die Geräte sind über ProfiNet verbunden. Ich habe jetzt einfach versucht die Waage mit Kopieren und Einfügen von TIA 13 nach TIA 14 zu kopieren aber das geht nicht. Gibt es eine Funktion mit der man das Gerät exportieren kann oder so?

Bild.jpg
Angehängte Grafiken

TIA Verbindung von TIA Portal / Simatic Manager v5.5

$
0
0
Hallo,

ich muss meine Bausteine in S7 Reihe 410er testen. Aber diese CPU habe ich nicht gefunden, weder im TIA-Portal noch im Simatic Manager v5.5

Meine Frage ist, wie kann ich dann meine CPU erreichen wenn die CPU nicht aufgelistet bei TIA und auch nicht bei Simatic Manager?

Ich brauche TIA oder Simatic Manager, da ich die Bausteine in SCL geschrieben habe, und daraus Bausteine generieren lasse.

Ich bedanke mich schon mal für Eure Hilfe

Grüße,

Sonstiges Lange Lieferzeiten für Simatic Komponenten

$
0
0
Was ist aktuell los?

Warum hat Siemens bei einem Großteil der Simatic Komponenten 4-6 Wochen Lieferzeit???

Ich krieg hier grad die Krise.

Wir wählen aktuell unsere Teile nicht mehr nach technisch Sinnvoll aus sondern nach Lieferzeit. Bzw. kaufen zu deutlich höheren Preisen bei Großhändlern ein anstatt direkt bei Siemens...

Manmanman...

TIA 1515 F Steuerung, SPS geht auf Stop

$
0
0
Hallo,
ich verzweifele gerade an einer 1515 F Steuerung.
Die SPS geht nach dem anlauf gleich auf Stop,
unter Aufrufhierachie findet sich
FOB_RTG1(OB123)
SPLIT_FOB_1_1(FC32769)
F_CTRL_1(FB32767)

In der Diagnose sieht es so aus

1-
CPU wechselt von Zustand ANLAUF nach RUN
2-
Fehler: Sicherheitsprogramm: Interner CPU-Fehler
F-Ablaufgruppe 1
Interne Fehlerinformation: 1: 18
Interne Zusatzfehlerinformation: 6
3-
Wartungsanforderung: Sicherheitsprogramm: Warngrenze Zykluszeit überschritten
F-Ablaufgruppe 1
Aktuelle Zykluszeit der F-Ablaufgruppe 1: 111000 µs
18A1 / 18A1.
4-
Fehler: Sicherheitsprogramm: Interner CPU-Fehler
F-Ablaufgruppe 1
Interne Fehlerinformation: 1: 18
Interne Zusatzfehlerinformation: 6
18A1 / 18A1.
5-
Temporärer CPU-Fehler: Anwenderprogrammierte STOP-Anforderung in FB 32767
betrifft OB 123-Ausführung

Im OB123 heißt es mein Programm ist konsistent.
Alle Safety Einstellungen sind unverändert.

Ich hatte mal den Safety FB samt IDB gelöscht, und danach wieder angelegt!
Was kann das wohl sein?
Schon mal vielen Danke für euere Hilfe.

Gruß

WinCC Flex Simatic pc fi10

$
0
0
Guten Tag


Unsere HMI Panel SIMATIC PC FI10 ist leider defekt

Sein Stromversorgungsteil ist kaputt

Wir haben leider kein kopie von Porgramm was drauf war.


Gibt irgendwelche Möglichkeit um das runtime Programm von Panel zu holen.



Ich bin fuer jede Antwort dankbar


LG

TIA Schnelles Schieberegister S7-1214

$
0
0
Hallo,

es wurde hier schon viel über Schieberegister geschrieben, aber ich komme leider nicht weiter und bräuchte Eure Hilfe.
Ich benutze eine S7-1214 und programmiere in KOP.
An einem Band ist ein Inkrementalgeber mit 100 Takten/Umdrehung installiert.
Es gibt eine Triggerlichtschranke um Produkte zu erfassen.
Wenn ein Produkt IO ist wird ein Bit in einem Array gesetzt.
Das Array ist ein Byte breit, und 800 Schritte lang.
Es wird auch geschoben. Allerdings nur so lange wie die Schiebetakte nicht schneller sind als die Zykluszeit.
Wie kann ich ein Schieberegister aufbauen welches schneller schiebt?
Ist dies überhaupt möglich?

Im voraus schon einmal vielen Dank für Eure Vorschläge.
Frank

Zwischenablage01.jpg
Angehängte Grafiken

Step 7 Datenwörter aus DB Rotieren und vergleichen

$
0
0
Moin Zusammen,

ich stehe vor folgender Problematik:

Ich habe einen DB mit Zahlenwerten (Uhrzeiten in DEZ). Diese einzelnen Werte möchte ich gerne nacheinander mit der Aktuallzeit vergleichen, das ganze als Loop. Also immer wiederkehrend. Bei Modsoft/Unity gibt es dafür die Funktion TBLK. Tabelle in Block. Gibt es ähnliches bei S7? Ich werde aus den einzelnen Komponenten wie Pointer, Fifo usw. nicht schlau bzw. kann diese irgendwie nicht für meine Anwendung verwursten.




Vielleicht hat ja jemand einen Tipp für mich!


Vielen dank!

Suche Ersatztastatur für Field PG M2

$
0
0
Hallo,

suche eine Ersatztastatur für Field PG M2 - A5E00387946

(neu oder gebraucht, jedoch gut erhalten). Bitte alles anbieten.

Step 7 Fernzugriff IM151-8F PN/DP CPU

$
0
0
Guten Tag
Ich möchte auf eine IM151-8F PN/DP CPU 6ES7 151 8FB01-0AB0 / V3.2 per Fernzugriff zugreifen. Vor Ort können mir die IT ein VPN tunnel legen. Aber in der CPU ist kein Gateway Netzübergang eingetragen. Was kann man tun?
Den Gateway kann man ja nur mit Step7 eintragen also mit Lizenz und soweiter. Oder?
Gibt es andere möglichkeiten (Software tool) die jemand vor Ort runterladen kann und dann den Gateway eintragen kann. Oder kann man per TS Adapter nochwas bewirken. Wenn ich z.B ein Modem dort hinschicke.
Wie würden Sie vorgehen ? Vor Ort hin fahren wäre die letzte option.
Vielen Dank
Christian Hellmig

Step 7 Verbindung zur CPU über ein Programm

$
0
0
Hallo Leute,

ich bin auf der Suche nach einem Programm, mit dem ich Daten von einer S7-317 CPU PN/DP austauschen kann.
Durch meine Recherchen bin ich auf libnodave, NetToPlcSim und snap7 gestoßen.
Erste Tests mit libnodave haben leider nicht funktioniert, da ich erst jetzt gelesen habe, dass PLCSim offen sein muss.
Stimmt das?
Gibt es alternative Möglichkeiten?
Eventuell sogar welche, die ohne plcsim funktionieren?

Mfg
Andy

TIA DB Startwerte exportieren

$
0
0
Servus Gemeinde,

gibt es eine einfache Möglichkeit die Startwerte eines DB in Excel zu exportieren?
Der Hintergrund ist, dass der Kunde diese in einer Doku haben will.

Danke im Voraus
Viewing all 49252 articles
Browse latest View live


<script src="https://jsc.adskeeper.com/r/s/rssing.com.1596347.js" async> </script>