# Simatic S5 Befehle



## Snoopy123123 (9 August 2006)

Gibt es irgendwo im Net eine Simatic S5 Befehlsliste !!

Wir benutzen hier S5 für Windows und ich komme leider aus der S7 und Omron welt. 

Ich muss etwas mit Werten in verschiedenen DB´s lesen. Eine Kommunikation über die Serielle schnittstelle bzw über die Stromschleife habe ich schon hergestellt.

Ich würde zum beispiel mal gerne über Eingang 0.0 das Datanbausteinbit DB1 0.0 beschreiben.

In S7 würde das so aussehen

U  E0.0
= db1.dbx0.0

Aber wie mache ich das in S5 für Windows ?????

Vielen Dank


----------



## MSB (9 August 2006)

Also diesbezüglich findest du am meisten im jeweiligen
Systemhandbuch zu deiner CPU.
Diese können bei Siemens downgeloadet werden.

Zu deinem Beispiel, der DB1 hat bei der S5 eine Sonderfunktion,
dieser ist was in der Richtung des Systemdatenbausteins bei der S7.

Dein Code auf die S5 umgesetzt:

A DB 1  //DB1 Aufrufen, gleiche Funktionalität wie S7 "AUF DB1"
U E0.0
= D0.0 //Datum 0.0 im Baustein DB1

Mfg
Manuel


----------



## Snoopy123123 (9 August 2006)

Genau so hatte ich das schon versucht und dann beim transferieren meckert er das T D0.0 falscher code wäre.


----------



## Snoopy123123 (9 August 2006)

Also ich habe jetzt nochmal = D0.0 versucht !! Sobald ich den Code in die SPS Transferiere geht diese auf Stop, und ich krieg sie nicht mehr ins run! In der Diagnose steht das er die Anweisung = D0.0 nicht kennt !!
Es handelt sich um eine 95U CPU. Kann es damit zu tun haben ?? Kann die viel´leicht nur mit bytes oder wörtern in DBs arbeiten ??

Danke


----------



## MSB (9 August 2006)

Also normalerweise sollte die 95U die Datumsadressierung können,
hast du es mal mit einem anderen DB als DB1 versucht, ist der DB definiert?


----------



## Snoopy123123 (9 August 2006)

Ja ich bin nach deiner ersten Antwort schon auf DB2 umgestiegen !! Wie gesagt ich arbeite mit S5 für Windows und ich sehe auch nur in der Diagnose das der Code falsch ist, und weshalb die CPU auf Stop ist !!


----------



## MSB (9 August 2006)

Gut ich bin oder war mit S5 nie so tief beschäfigt,
von da her kann das gut sein, das das nicht bei jeder S5-95U funktioniert,
ansonsten bleibt nur noch der Umweg über Schmiermerker.


----------



## volker (9 August 2006)

*t* ist ja mal grundsätzlich falsch
würdest du in einer s7 ja auch nie machen. oder?

die befehle
u d x.y
= dx.y

sind nur in den grösseren cpu's ab 135 verfügbar.

in der 95/100/115 musst du die befehle su,ru,p, benutzen

suche mal beim siemens support nach 'operationsliste' bzw 'tabellenheft'

einige listen findest du auch auf meiner hp unter sps/nachschlagewerke


----------



## Question_mark (9 August 2006)

Hallo,



			
				snoopy123123 schrieb:
			
		

> Kann es damit zu tun haben ??



Um doch mal diese ganzen Spekulationen zu beenden : Ja...

Die S5_95U kennt definitiv den Befehl = D x.x nicht !!! Dat jeht nitt...

Alternativ kann man unbedingte Setz/Rücksetzbefehle verwenden, z.B.

A db irgendeiner
UN E 0.0
RU D 5.12

oder 

A DB malein anderer
U E 0.0
SU D 4.8

Alles klar jetzt ???

Gruss

Question_mark


----------



## Question_mark (10 August 2006)

Hallo,



			
				MSB schrieb:
			
		

> Also normalerweise sollte die 95U die Datumsadressierung können,



Also im Prinzip kann die S5-95U das auch, aber :
nur als  Unbedingte Funktion, also z.B. RU D x.y 
oder z.B. SU Dx.y

aber niemals als bedingte Funktion wie z.B. = D x.y

Alles klar ???

Gruss

Question_mark


----------



## christof_christof (10 August 2006)

Moin Moin,

diverse Anleitungen zum Download:

http://www.es.fh-mannheim.de/sp/simatic/s5.htm

http://www.es.fh-mannheim.de/sp/simatic/s7.htm


viel Spass beim Programmieren

Christof


----------



## Snoopy123123 (10 August 2006)

Sorry mit dem "t" hab ich mich vertippt ! Natürlich würde ich das in einer S7 auch nicht machen !!


----------



## Werner54 (10 August 2006)

*Sind Merker altmodisch?*



Snoopy123123 schrieb:


> Ich würde zum beispiel mal gerne über Eingang 0.0 das Datanbausteinbit DB1 0.0 beschreiben.


Hallo,
für solche Zwecke hat man in der S5-Welt grundsätzlich erstmal (Schmier)Merker benutzt. Also erstmal mit den Eingängen ein paar Merker zugewiesen und anschließend sofort das gesamte Merkerwort in ein passendes Datenwort geschoben, fertig. Damit hatte man nicht das Problem der langen Befehlszeit und wirklich alle S5'en können Merkerworte in Datenworte schreiben.
PS. Der DB1 und DB0 sind in der S5-Welt nichts für Anfänger, einfach in Ruhe lassen, bis du weißt, was du tust.


----------



## sps-concept (10 August 2006)

*Db*

Hallo,

den DB1 würde ich aber mal lieber nicht nehmen.

MfG
André Räppel


----------



## Ralle (10 August 2006)

Es ist besser in S5 das Datenwort in ein Schmiermerkerwort (>=MW200) zu transferrieren (Was'n Wort ),dann die gewünschten Merkerbits normal zu manipulieren und danach das Schmiermerkerwort wieder in das Datenwort zu schreiben. Die Befehle zur Bitmanipulation von Daten in Datenbausteinen kosten bei der S5 *enorm* viel Zykluszeit (so sie in der jeweiligen S5 überhaupt funktionieren).


----------

