# Profibus DP



## florian1234 (31 Oktober 2008)

Hallo zusammen,

mich beschäftigt zur Zeit ein Problem welches eigentlich keins sein dürfte.
Also ich habe ein Profibus mit einer S7 315DP; Feldbussknoten RemoteI/O; Frequenzumrichter Micromotion; 2 Touchpanels TP170/370.

Die S7 ist der Master, der rest soll slave sein. Addresierung ist auch kein problem, bisher jedenfalls.
Wie erfolgt die Datenübertragung bei dem Bus?
( Daten vom Remote zur S7 und von dort zu den Touchpanels )
Wie werden die Variabelen übergeben? 
Werden PEW und PAW verwendet (in der S7) 
Wie kann ich diese vergeben? 
(habe was von SFC 14 und 15 gelesen, sagt mir aber nichts)
Bis her habe ich noch keinen Bus konfiguriert und das bereitet mir nun Probleme, bei meinen Internet recherchen bin ich bisher nicht erfolgreich gewesen.

Ich hoffe mir kann nun hier weiter geholfen werden.

lg flo


----------



## Larry Laffer (1 November 2008)

Hallo Florian,
mit deiner Frage hast du mal so eben alles angekratzt, was zu dem Thema gehört. Wenn du das in Einzelfragen zerlegen würdest, dann könntest du zu den Teil-Themen hier im Forum hunderte von Threads finden.
Ich werde mal versuchen ein paar Teil-Aspekte zu beantworten.



florian1234 schrieb:


> Die S7 ist der Master, der rest soll slave sein.


Das ist die normale Vorgehensweise ... 



florian1234 schrieb:


> Wie erfolgt die Datenübertragung bei dem Bus?
> ( Daten vom Remote zur S7 und von dort zu den Touchpanels )


Die SPS fragt die vereinbarten Daten bei den Teilnehmern ab bzw. sendet neue Daten an diese - Master hat das Sagen - Slaves haben zu tun, wie befohlen ...



florian1234 schrieb:


> Wie werden die Variabelen übergeben?
> Werden PEW und PAW verwendet (in der S7)


Die Variablen werden gemäß der Vereinbarungen (hängt stark an der verwendeten Hardware) übergeben bzw. wie du es in der Konfiguration festgelegt hast.



florian1234 schrieb:


> Wie kann ich diese vergeben?


Das machst du in der Hardware-Konfiguration der SPS ...



florian1234 schrieb:


> habe was von SFC 14 und 15 gelesen, sagt mir aber nichts


Diese Bausteine stellen nur eine zusätzliche Möglichkeit dar, Daten zu übergeben - in diesem Fall "konsistent" = zusammengehörend ...

---

Ganz Grundsätzlich:
Ich denke, du fängst erstmal mit dem Projekt an und stellst dann spezifische Fragen, wenn es hängt ...

Gruß
LL


----------



## JoopB (1 November 2008)

> Zitat von *Larry*
> 
> Zitat von *florian1234*
> 
> ...


 
Und nur wenn sie 3 byte oder > 4 byte uberdagen must, 1 byte, 1 word und ein dword sind mit direkte L oder T uber zu tragen.


----------



## florian1234 (1 November 2008)

Hallo, 

danke für die schnelle Antwort.
Vielleicht habe ich die frage nicht richtig gestellt.
Ich versuche es nochmal.

Ich bekomme 4-20 mA aus dem Feld diese gehen in den Feldbusknoten werden / können dann über den DP abgeholt werden. 
Der Knoten hat ja eine DP adresse die ist auch vergeben das ist kein Problem. Die Perepherie ist nicht das Problem.
Master Slave und den ProfiBus hab ich verstanden. 
Wird ja überall gut erläutert. 

Der Zugriff ist hier mein Problem.
Wie hole ich die Daten ab und schicke sie weiter. 

Ich denke das die Möglichkeit besteht PEW zu benutzen. Doch das habe ich bisher noch nicht gemacht. Ist dieser Ansatz richtig? 
Sind PEW frei wählbar? (Habe PEW 256 im hinterkopf)

Ich hoffe ich konnte mehr licht in mein Problem schicken.

lg flo


----------



## Larry Laffer (1 November 2008)

florian1234 schrieb:


> Wie hole ich die Daten ab und schicke sie weiter.
> 
> Ich denke das die Möglichkeit besteht PEW zu benutzen. Doch das habe ich bisher noch nicht gemacht. Ist dieser Ansatz richtig?
> Sind PEW frei wählbar? (Habe PEW 256 im hinterkopf)


 
Der Weg über das PEW ist korrekt ... Die richtige Nummer dafür legst du in der HW-Konfig fest. 256 kann sein - kann auch genauso eine andere Adresse sein ...

Gruß
LL


----------



## florian1234 (1 November 2008)

Das hört sich doch gut an.
lag ich dochb nicht so verkehrt.
Jedoch wie übertrage ich int oder real mit den pew?


----------



## Larry Laffer (1 November 2008)

... du überträgst den Inhalt eines Wortes (PEW) oder den Inhalt eines Doppelwortes (PED). Wie das jeweils intern formatiert ist, das ist der Übertragung egal ... Du mußt es im Programm dann halt nur korrekt behandeln ...


----------



## florian1234 (1 November 2008)

Ah sehr gut lag ich doch nicht so verkehrt....



Larry Laffer schrieb:


> Die richtige Nummer dafür legst du in der HW-Konfig fest. 256 kann sein kann auch genauso eine andere Adresse sein
> LL



wo genau leg ich das fest? Und ist es absolut frei wählbar?
Wie übertrage ich den Int oder real werte?
Halt stop pew ist immer 32 Bit, richtig? zwei gehören zusammen, meine ich. PEW1 das nächst frei wählbare wäre dann 3 usw...

noch nen Zusatz:

Ich möchte gerne eine Variabelen Tabelle erstellen, da die Anlage in Teilprojekte (S7/ Touchpanel/ Feldbusknoten) zerlegt wird. 
Dazu ist es notwendig die PEW zu vergeben, um die Schnittstellen zu projektieren.


----------



## Larry Laffer (1 November 2008)

florian1234 schrieb:


> wo genau leg ich das fest? Und ist es absolut frei wählbar?


 In der HW-Konfig des entsprechenden Moduls ... das hatte ich aber schon geschrieben ...
Frei wählbar im Rahmen der schon vergebenen Adressen ...



florian1234 schrieb:


> Wie übertrage ich den Int oder real werte?


Siehe mein letzter Beitrag ...



florian1234 schrieb:


> Halt stop pew ist immer 32 Bit, richtig? zwei gehören zusammen, meine ich. PEW1 das nächst frei wählbare wäre dann 3 usw...


PEW ist 16 Bit, PEB ist 8 Bit und PED ist 32 Bit breit.
Das PEW 128 beinhaltet die PEB's 128 und 129 ...
Das PED 128 beinhaltet die PEW 128 und 130 bzw, die PEB's 128 - 131 ...

...


----------



## florian1234 (1 November 2008)

Ja da hat ich doch noch was im kopf mit dem doppelten 

danke....

ich muß nochmal nachfragen mit der HW konfig um die PEW zu vergeben...
im HW konfig vom DP kann ich über einen reiter die PEW einstellen bzw. vergeben?

Wie vorhin oben erwähnt möchte ich eine Variabelentabelle erstellen und das gesamt projekt in Teilprobleme zu teilen. Mit der tabelle sollen die Schnittstellen geschlossen werden. 
Hier kann ich mir nun einfach PEW ausdenken, frei vergenben und gut ist 
Ausser das ich berücksichtigne muß PEW 100 nächste ist PEW102...

Dann natürlich zu beachten wie groß ich werde PEB PEW oder PED...

Sind die PAW dann der genaue Spielgel vom PEW. 
Sprich PEW 100 kommt rein PAW 100 geht raus = gleich Datensätze? 

Oder kann ich PEW die nicht in dem Master verarbeitet werden müssen direkt vom nächsten Slave abgreifen? Sprich Werte vom Remote direkt zum TP? 

Uhh könnt noch tausend weitere fragen stelllen.....

Danke für die hilfe


----------



## Larry Laffer (1 November 2008)

florian1234 schrieb:


> Uhh könnt noch tausend weitere fragen stelllen.....


Nur Mut ... 



florian1234 schrieb:


> Ja ich muß nochmal nachfragen mit der HW konfig um die PEW zu vergeben...
> im HW konfig vom DP kann ich über einen reiter die PEW einstellen bzw. vergeben?


Du hast da ein Eingabefeld ... Schau es dir doch einfach mal an ...



florian1234 schrieb:


> Sind die PAW dann der genaue Spielgel vom PEW.
> Sprich PEW 100 kommt rein PAW 100 geht raus = gleich Datensätze?


Nein, PEW sind Adressen, die du einliesst und PAW sind Adressen, auf die du schreibst. Sie haben nichts miteinander zu tun. 



florian1234 schrieb:


> Oder kann ich PEW die nicht in dem Master verarbeitet werden müssen direkt vom nächsten Slave abgreifen? Sprich Werte vom Remote direkt zum TP?


Alles geht immer über den Master ... Vom Slave kannst du keine Aktionen auslösen. Der bekommt die Daten vom Master (bestenfalls) zugeteilt.

Gruß
LL


----------



## florian1234 (1 November 2008)

Ahha 
dann werd ich PAW wohl nicht brauchen....

Leider kann ich erst montag wieder auf den simatic manager zugreifen .

Ich wollte am Wochenende die Tabelle erstellen.
Doch wenn ich die frei vergeben kann ist das ja nur nen gedanken spiel und mit excel schnell erledigt.

Also ich fass mal zusammen ob ich gecheckt habe...
meine PEW vergebe ich in jedem Perepherie gerät in der HW konfig vom DP

fange dann mit dem Feldbusknoten an weil von dort die daten kommen.
Greife sie mit dem MAster S7 ab, verarbeite sie. Und gebe die selben PEW weiter an das TP. Oder verwende ich nun doch PAW? 

Ich denke wir lesen bald was öfter voneinander 
Denn ein MicroMotion ist auch noch zu konfigurieren 

lg flo


----------



## Larry Laffer (1 November 2008)

florian1234 schrieb:


> meine PEW vergebe ich in jedem Perepherie gerät in der HW konfig vom DP


Passt so ...



florian1234 schrieb:


> fange dann mit dem Feldbusknoten an weil von dort die daten kommen.


Damit kann ich im Augenblick nicht viel anfangen - vielleicht stellst du hier mal die NetPro und die HW-Konfig von deinem Projekt ein ...



florian1234 schrieb:


> Greife sie mit dem MAster S7 ab, verarbeite sie. Und gebe die selben PEW weiter an das TP. Oder verwende ich nun doch PAW?


Das Bediengerät ist selber ein Master und bedient sich (idealerweise) an der SPS. Im Bediengerät definierst du deine Variablen nochmals ...



florian1234 schrieb:


> ein MicroMotion ist auch noch zu konfigurieren


Hier wird der Datenaustausch von/durch die GSD-Datei (Geräte-Stammmdaten) des Reglers mehr oder weniger vorgegeben ... Du benutzt hier aus einer vorgegebenen Funktionalität das Eine oder Andere.
Der Datenaustausch läuft hier aber auch über die PEW's / PAW's bzw. möglicherweise unter Zuhilfenahme der schon von dir genannten SFC14/15. Kommt ein bißchen darauf an, wie "breit" dein Datenbereich ist.

Gruß
LL


----------



## florian1234 (1 November 2008)

Larry Laffer schrieb:


> Damit kann ich im Augenblick nicht viel anfangen - vielleicht stellst du hier mal die NetPro und die HW-Konfig von deinem Projekt ein ...


Wie gesagt im moment hab ich keine  zugriff darauf. Aber es ist auch noch nicht viel passier bezuglich der programmierung. Habe den Bus, daran die S7 315 Dp2 als Master, den Remote I/O als Slave, denFrequensumrichter mit GSD als Slave, und zwei Touchpanels als Slave
Die Bus Adressierung über Mäuseklavier. 
Nun wollt ich wie schon oft erwähnt die Variabellentabelle erstellen. Um Teilprojekte zuhaben. Diese werden dann unabhängig voneinader erbearbeitet und dann zusammengefügt.




Larry Laffer schrieb:


> Das Bediengerät ist selber ein Master und bedient sich (idealerweise) an der SPS. Im Bediengerät definierst du deine Variablen nochmals ...


Das macht mich nun stutzig, warum den als Master. Kann ich den 2 bzw. 3 Master in einem System haben? 



Larry Laffer schrieb:


> Hier wird der Datenaustausch von/durch die GSD-Datei (Geräte-Stammmdaten) des Reglers mehr oder weniger vorgegeben ... Du benutzt hier aus einer vorgegebenen Funktionalität das Eine oder Andere.
> Der Datenaustausch läuft hier aber auch über die PEW's / PAW's bzw. möglicherweise unter Zuhilfenahme der schon von dir genannten SFC14/15. Kommt ein bißchen darauf an, wie "breit" dein Datenbereich ist.


Das mit der GSD haben wir schon gemerkt. gibt bei siemens nen paar beispiel programme an die wir uns anlehnen könnten.

lg


----------



## Larry Laffer (1 November 2008)

florian1234 schrieb:


> Das macht mich nun stutzig, warum den als Master. Kann ich den 2 bzw. 3 Master in einem System haben?


 
Klar, warum nicht ?
Bediengeräte holen sich ihre Variablen selbst von der projektierten CPU ab. Du brauchst (und kannst) da keinen Send-Daten-Befehl erzeugen ...


----------



## florian1234 (1 November 2008)

ales klar.... klingt eigentlich auch logisch

werd mit den infos dann mal loslegen und wenn ich häng stell ich die probleme hier ein.

Danke nochmal für dein bemühen:s18:


----------



## Larry Laffer (1 November 2008)

Dann schon einmal im Vorraus "Viel Erfolg" und "Gutes Gelingen"

Gruß
LL


----------



## MW (1 November 2008)

Ich häng hier mal den Link zu den Siemens Ausbildungsunterlagen an, die können dir bestimmt auch einige Fragen beantworten 

Link zu Siemens


----------



## florian1234 (1 November 2008)

Danke dafür, hab ich schon


----------



## florian1234 (5 November 2008)

*HMI einbinden in den Profibus*

Guten Abend,

nun habe ich ein problem, die Konfig der SPS ist soweit fertig 
der Bus ist auch konfiguriert, doch wenn ich die 2 touchpanels laden möchte erscheint eine Fehlermeldung mit der ich nix anfangen kann.



	

		
			
		

		
	
  Hier die Fehlermeldung beim Übersetzen und Laden



	

		
			
		

		
	
  Hier einmal der Aufbau vom Projekt



	

		
			
		

		
	
  Hier alle erreichbaren Teilnehmer am Bus

hierbei irritiert mich das auch die HMI-Stationen erkannt wurden, obwohl ich vorher die Fehlermeldung bekommen hatte, kann mir das jemand erklären...

lg flo


----------



## Steve81 (5 November 2008)

Ohne jetzt der Experte für die MP370 PC-Station zu sein, würde ich an deiner Stelle mal das machen was in der Fehlermeldung steht . Also einfach mal schauen was bei den Objekteigenschaften konfiguriert ist.


----------



## florian1234 (6 November 2008)

Steve81 schrieb:


> Ohne jetzt der Experte für die MP370 PC-Station zu sein, würde ich an deiner Stelle mal das machen was in der Fehlermeldung steht . Also einfach mal schauen was bei den Objekteigenschaften konfiguriert ist.


 
Danke für den Hinweis ROFLMAO

aber ich habe vielleicht vergessen zu erwähnen das es den Reiter aus der Fehlermeldung nicht gibt 

und noch etwas der gleiche Fehler wird mir deim TP170B angezeigt beim versuch zu laden.

Hatte von euch jemand diese Fehlermeldung?
Oder kann mir ggf. weiterhelfen?


----------



## Larry Laffer (6 November 2008)

Hallo Florian,
hast du die Bediengeräte mit Flex erzeugt und dann im NetPro angebunden oder hast du erst das Gerät in der NetPro erzeugt ? Ich vermute das Letztere ... 
Hat du im Flexibel die Verbindung zur Steuerung in der Konfiguration gemacht / überprüft ?

Gruß
LL


----------



## florian1234 (6 November 2008)

Mit flex generiert net pro noch nichts konfiguriert.
Ist das von nöten?


----------



## Larry Laffer (6 November 2008)

Hallo Florian,
NetPro wäre quasi das 1. Bild, dass du eingestellt hast (Test.jpg). Leider kann ich da nicht viel drauf erkennen (außer der Fehlermeldung).
Mach dorch vielleicht mal ein Bild vom, kompletten NetPro - dort müssen die Panels (noch) an den Bus angschlossen werden ...

Gruß
LL


----------



## florian1234 (6 November 2008)

Mache gleich screenshots und stelle sie heut abend ein
danke nochmal
lg flo


----------



## florian1234 (7 November 2008)

Guten Morgen zusammen,

mit den Fotos ist gerstern nichts mehr geworden...

Habe den Bus aber am laufen, alle Teilnehmer erreicht die Fehlermeldung "S7rtm" habe ich erstmal ignoriert.

Haben versucht erste Bilder in die HMI Mp370 Station zu laden, Datenaustausch hat funktioniert aber er hat wieder gemeckert diesmal nicht genügend platz für RPZ.Dateien, hmm liegt es an der Speicherkarte?

HAben auch noch einen Busfehler an der CPU anstehen, aber ich habe in der Konsitenz Prüfung keine Probleme. 

Wir haben zur Spannungsversorgung 2x 5A Netzteile eingebaut, diese Variante kann ich im 300 Rack aber nicht anwählen, somit habe ich mich im Rack für ein 10A Netzteil entschieden. 
Wenn ich nun eine Diagnose starte bekomme ich natürlich den fehler Soll/ Ist differenz. Wie kann ich dies abstellen? 
Denn nun hat die CPU meiner Meinung nach den Sammelfehler anstehen.

Bin für kreative Vorschlage zu haben 

PS Wollte eigentlich nun noch nen paar screenshots hochladen, habe aber leider feststellen müssen das sie nicht gespeichert wurden 


lg flo


----------



## Larry Laffer (10 November 2008)

Hallo Florian,



florian1234 schrieb:


> HAben auch noch einen Busfehler an der CPU anstehen, aber ich habe in der Konsitenz Prüfung keine Probleme.


Darum solltest du dich aber schon noch kümmern ... Irgendetwas ist nicht so, wie von dir deklariert ...



florian1234 schrieb:


> Wir haben zur Spannungsversorgung 2x 5A Netzteile eingebaut, diese Variante kann ich im 300 Rack aber nicht anwählen, somit habe ich mich im Rack für ein 10A Netzteil entschieden.
> Wenn ich nun eine Diagnose starte bekomme ich natürlich den fehler Soll/ Ist differenz. Wie kann ich dies abstellen?
> Denn nun hat die CPU meiner Meinung nach den Sammelfehler anstehen.


Das liegt m.E. nicht an den Netzteilen - das wird nicht erklannt. Das ist im Prinzip wie oben schon beschrieben : "Irgendetwas ist nicht so, wie von dir deklariert ..."

Gruß
LL


----------



## florian1234 (10 November 2008)

Danke für den Hinweis 
werde die Hardware nochmal checken....

Habe da aber noch gleich noch nen kurioses Problem.


Ich habe keine Projekte geöffnet und möchte meine Datei Archivieren.
Da erscheint die Fehlermeldung ich kann nicht archivieren da noch projekte geöffnet seien. Das ist aber definitiv nicht der Fall...

Habe alles geschlossen den Lapi runtergefahren das Projekt geöffnet und die gleiche prozedur. 
Keine chance zu archivieren  :-?

Hat dazu jemand eine Idee?


----------



## Larry Laffer (11 November 2008)

... da ist garantiert etwas in der internen Datenbank "über die Wupper" gegangen.
Versuch mal, ob es wieder funktioniert, wenn du das Projekt mittels "Speichern unter" noch einmal erzeugst und mit diesem dann arbeitest ...

Gruß
LL


----------



## florian1234 (13 November 2008)

Hallo zusammen,

habe das Problem mit dem Archivieren gelöst hab nen alten Stand neu bearbeitet und schon hat es geklappt.

Der SF und BF stehen leider immer noch an. Habe die Hardware gecheckt konnte aber in meinen Augen keinen Programmierfehler erkennen. 

Dazu werde ich nochmal jemanden Vorort ansprechen denke das Problem ist hier nicht so leicht zu lösen.

Habe dafür aber ein neues.

Wollte mich ran machen Daten vom Feldbusknoten zur S7 zu programmieren.
Sprich die E/A vom Feldbusknoten zu Skalieren und ihnen Grenzwerte zu zuordnen. Baustein nicht gefunden! Hab FC 105 im Kopf aber der scheint es nicht zu sein oder ich war in der falschen Bibiliothek...
Des weiteren weiß ich nicht so ganz welche zuweisungen ich verwenden soll. 

1.Die Daten vom Remote werden in "Word" (also 16Bit) vermittelt, diese will ich dann skalieren, dann  müssten sie doch "Real" sein ?! 

2.Das bedeutet Word wird EW oder AW oder MW bezeichnet, oder? (oder vielleicht doch PEW)
Doch bei Real bin ich schon aufgeschmissen.

3.Werden die Daten als PEW in die S7 geladen und in MW Transferiert?


4.Wie gebe ich den die Grenzwerte an und welchen Baustein benutze ich? 

lg flo


----------



## Steve81 (13 November 2008)

florian1234 schrieb:


> 1.Die Daten vom Remote werden in "Word" (also 16Bit) vermittelt, diese will ich dann skalieren, dann müssten sie doch "Real" sein ?!
> 
> 2.Das bedeutet Word wird EW oder AW oder MW bezeichnet, oder? (oder vielleicht doch PEW)
> Doch bei Real bin ich schon aufgeschmissen.
> ...


 
zu 1: ein REAL besteht aus 32Bit. WORD ist vom Datentyp eine Bit-Folgr und 16 Bit-Hex-Zahl. (W#)16# 0000...FFFF

zu 2:EW-->Eingangswort, AW-->Ausgagnswort, MW-->Merkerwort, PEW-->Peripherie-Eingangswort (das wirst du benötigen)

zu 3: du kannst das PEW direkt verwenden. z.B. L PEW xy

zu 4: um welche Werte geht es (Stichworte: scalierung, Normierung)


----------



## florian1234 (13 November 2008)

das ging schnell  

also wenn ich L PEW xy
                                       T MW xy verwende,
 habe ich die Daten im der S7, richtig?

Es sind eigentlich 4-20mA aber sie werden im Feldbusknoten in ProfiBus umgewandelt. Das 4-20mA Signal geht in AOM (AnalogeOutModule) von dort über den Bus Adressen hier als Bespiel Erster Wert: PEW256 
Also sind 256 und 256 mein Erster wert und als WORD PEW256 zu sehen?!

Diesen Wert muß ich nun Skalieren. 
Sagen wir mal 0- 200m3/h

Als Ausgang habe ich nun ??? ich dachte an Gleitpunktzahl (Real) aber nur mein Gedanke, bitte berichtigen wenn falsch.

Diese Daten muß ich nun über Profibus an WinCC flexible senden.

Aber bevor das passiert brauche ich die converter Bausteine.


----------



## volker (13 November 2008)

nimm den fc105 aus den ti-s7-converting blocks
am in dein pew
hi_lim 200
low_lim 0
am out z.b. md10 oder ein db10.dbd10 
out ist der scalierte wert als real.

drück f1 auf den baustein dann gibts eine ausführliche hilfe.

an flex musst du gar nichts senden. einfach ein ausgabefeld mit der variablen die am out steht und fertig


----------



## florian1234 (13 November 2008)

sauber, korrekt, dankeschön 

frage zum verständiss

habe die lib mit den ti-s7 gesehen aber was bedeutet ti?

und was ist mit "am in dein pew" gemeint //  ;-) schon kappiert


hab heut die ganze zeit in kommunikations blocks rumgesucht und nix passendes gefundden...
Jetzt noch nen tipp zum Grenzwertbilden, und ich komm morgen richtig weiter...
lg flo


----------



## florian1234 (13 November 2008)

Habe den Baustein gefunden und ihn mal aus spass parametriert.

Nun steht die frage ob Bipolar oder Unipolar, meiner Ansicht nach Unipolar.
Doch nun brauch ich einen Statischen 1 oder o, gibt es da einen bestimmten Merker der immer 1 oder 0 ist?

lg flo


----------



## Ralle (13 November 2008)

bipolar: Bereich Plus und Minus
unipolar: Bereich Plus

Du kannst direkt False oder True dran schreiben.  Ansonsten kannst du dir auch 2 Merker bauen (für andere Fälle) die du im OB 1 immer beschreibst.

SET
S M10.1 //den nennst du in der Symbolik "immer_1"
R M10.0 //den nennst du in der Symbolik "immer_0"

Welche Merker du nutzt, ist natürlich dir überlassen.


----------



## florian1234 (14 November 2008)

das mit dem Merker hab ich nicht ganz verstanden
war das jetzt awl?
ich programmmiere eigentlich nur in FUP
ist anschaulicher 

wenn ich mein SR glied habe mus ich ihn doch irgendwie setzen?! Schon fehlt mir wieder die statische 1, die ich eigentlich suche/ brauche...

aber wenn ich true oder false dran schreiben kann klappt es auch?
dann hätt ich das problem ja im griff....

brauch aber immernoch mein Grenzwert....

gibt es in einer bibiliothek einen geeigneten baustein oder muß ich ihn selbst erstelllen?

lg und danke für eure tipps


----------



## Steve81 (14 November 2008)

florian1234 schrieb:


> das mit dem Merker hab ich nicht ganz verstanden
> war das jetzt awl?
> ich programmmiere eigentlich nur in FUP
> ist anschaulicher


Ja , das ist AWL.
In FUP kannst du das so machen, dass du im OB1 einfach einen Merker (z.B. M10.1) dann setzt, wenn er 0 ist. Dan wird er im ersten Zyklus auf 1 gesetzt und ist dan immer 1 (wenn du ihn nicht irgendwo wieder auf 0 setzt).

Ansonsten solltest du dich aber schon ein wenig mit AWL beschäftigen.
Erstens weil die Möglichkeiten mit FUP beschränkt sind uns zweitens weil sich FUP hier so schlecht posten lässt.

Den Grenzwert musst du selbst festlegen und dann z.B. mit dem IST-Wert vergleichen. Was du dann daraus machst ist deine Sache.


----------



## florian1234 (14 November 2008)

Danke für den Hinweis, 
AWL ist mir ja nicht ganz fremd, jedoch soll es ja eine Schulungsanlage für Auszubildende werden. Darum muß es so anschaulich wie möglich werden. 
AWL ist halt schon nen bissel komplexer und bedarf Einarbeitung. 
FUB wird schon geschult.

Noch mal zu den GW, denn bis her hab ich noch keinen Tipp wo ich diese einstellen kann.


----------



## Steve81 (14 November 2008)

Den Grenzwert musst du doch selbst vorgeben. Du kannst ihn z.B. als realzahl in einem DB festlegen, du kannst ihn mit Poti über einen AI vorgeben, du kannst ihn über ein HMI vorgeben.Du msst ihn halt ins gleiche Format wie den Istwert bringen und dann kannst du mit vergleichen arbeiten.


----------



## florian1234 (14 November 2008)

Werde mir einen Vergleicher schnappen, und ihn mit ner Realzahl vergleichen ist das ergebniss 1 hab ich meinen Gw erreicht.


----------



## Steve81 (14 November 2008)

florian1234 schrieb:


> Werde mir einen Vergleicher schnappen, und ihn mit ner Realzahl vergleichen ist das ergebniss 1 hab ich meinen Gw erreicht.


So kann man das machen.

Vergleiche aber nicht mit = sondern mit >= sonst kannst du eventuell die Grenze überschreiten ohne dass du es merkst.

als AWL:

L Istwert
L Grenzwert
>=R
= Grenzwert erreicht


----------



## florian1234 (3 Dezember 2008)

Hallo zusammen,

danke erstmal für eure hilfe. 
Haben den Bus soweit am laufen, >fehlerfrei, 
hatte nen problem mit GSD dateien für ein Perepherie gerät...
und noch nen paar parametrierungsfehler in den Karten des Feldbuskoppler...

Nun ein neues anliegen...
Ich möchte einen MW den wert 100% zuweissen 
und einen MD ebenfalls 
wie stelle ich das an
Hatte gedacht mit nem Vergleicher aber mir fehlt die zuweisung
AWL 
mein Versuch 
L MW20
S = 100
leider gibt es kein setze gleich 

Wer hätt da nen Ratschlag parat?
lg flo


----------



## Lipperlandstern (3 Dezember 2008)

ähhhhh

meinst du 


```
L  100
T MW 100
```
 

?????


----------



## florian1234 (4 Dezember 2008)

:sm8:
alles klar danke


----------



## florian1234 (15 Dezember 2008)

Hallo zusammen....
hab da mal wieder eine frage.

und zwar möchte ich eine weiche erstellen für eine Hand Automatik funktion
Bei dem Bool von Hand soll ein REAL Wert in MD2 transferiert werden
und bei Auto soll ein anderer REAL Wert in MD2 transferiert werden.

Wenn ich daraus zwei funktionen mache also 2mal MD2 aufrufe bekomme ich probleme. Darum möchte ich nun eine weiche haben.

Kann mir jemand einen Tipp geben. 
Am besten wieder mal in FUP aber AWL geht natürlich auch...

lg und thx flo


----------



## crash (15 Dezember 2008)

hier mal eine einfache lösung


```
U M10.0                  //Hand
      SPBN  M001
      L 5.0
      T MD2

M001: U M10.1                  //Automatik
      SPBN  M002
      L 7.0
      T MD2

M002: NOP 0
```


----------



## florian1234 (15 Dezember 2008)

Das ging schnell...
bestimmt kann ich anstatt der realzahl auch einen MD einfügen die eine realzahl beinhaltet, oder...

kann du mir noch nen paar // komentare anfügen um es nen stück verständlicher zu bekommen?

lg und nochmal thx


----------



## crash (16 Dezember 2008)

florian1234 schrieb:


> Das ging schnell...
> bestimmt kann ich anstatt der realzahl auch einen MD einfügen die eine realzahl beinhaltet, oder...
> 
> kann du mir noch nen paar // komentare anfügen um es nen stück verständlicher zu bekommen?
> ...




```
U M10.0         //Handmerker
      SPBN  M001      //wenn nicht Handmerker dann Sprung zu M001
      L MD100         //MD laden (enthält Realwert)
      T MD2           //und in MD2 schreiben

M001: U M10.1         //Automatikmerker
      SPBN  M002      //wenn nicht Automatikmerker dann Sprung zu M002
      L MD104         //MD laden (enthält Realwert)
      T MD2           //und in MD2 schreiben

M002: NOP 0           //und weiter im Programm
```


----------



## florian1234 (16 Dezember 2008)

crash schrieb:


> ```
> U M10.0         //Handmerker
> SPBN  M001      //wenn nicht Handmerker dann Sprung zu M001
> L MD100         //MD laden (enthält Realwert)
> ...


 
Super....
nur noch zum Verständnis 
SPBN // Sprungbedingt?
NOP // das kann ich mir nicht herleiten


----------



## vierlagig (16 Dezember 2008)

florian1234 schrieb:


> SPBN // Sprungbedingt?


springe wenn das VKE=0 -> *SP*ringe*B*edingt*N*icht



florian1234 schrieb:


> NOP // das kann ich mir nicht herleiten


nulloperation, an dieser stelle als platzhalter an der sprungmarke M002, da eine marke ohne befehl nicht funktioniert. NOP 0 macht nischts - nur zykluszeit verbraten


----------



## florian1234 (16 Dezember 2008)

Danke für die Erläuterung 
doch gleich die nächsten Fragen...

Was bedeutet VKE 

und nun zu euren Hilfestellungen,
habe das programm von hier nicht zur Hand gehabt und mein Kopf ist ein Sieb.
#
Deshalb habe ich etwas Programmiert, konnte aber noch nicht testen.

Habe 3 anstatt Zwei Werte: Hand, Auto und Regelung
alle auf das gleiche MD2

NW1: Hand 

UND mit mehreren Eingängen,
diese sind dann untereinander Verriegelt,
als Einschaltbedingung für einen Move Baustein,
IN: Handeingabe->MDx
 der Ausgang dann auf MD2


NW2: Auto

UND mit mehreren Eingängen,
diese sind dann untereinander Verriegelt,
als Einschaltbedingung für einen Move Baustein,
IN: Festwert->50.0
 der Ausgang dann auf MD2


NW3:Regelung

UND mit mehreren Eingängen,
diese sind dann untereinander Verriegelt,
als Einschaltbedingung für einen Move Baustein,
IN: Wert aus Regelung->MDy
der Ausgang dann auf MD2

Ist dies möglich.
Entspricht dann doch SPBN, oder?
Wie gesagt ich muß das Programm so anschaulich wie möglich halten und FUB ist da die erste wahl.

Für eure hilfe ein dank nochmal


----------



## schoeneberg (17 Dezember 2008)

VKE ist das Verknüpfungsergebniss, also die logische Verknüpfung deiner Signale!


```
U E 1.0
U E 1.1
= M1.0
```
 
Wenn der E1.0 & der E 1.1 = True, dann ist das VKE = True und der Merker 1.0 wird dann auch auf True gesetzt.

Wieviele Eingänge oder Signale du vor den SPBN setzt ist, ist uninteressant, da ja die Signale wieder verknüpft werden zu seinem VKE.



florian1234 schrieb:


> Wie gesagt ich muß das Programm so anschaulich wie möglich halten und FUB ist da die erste wahl.


 
Da kann man drüber streiten, denke ich. :TOOL:

Das Programm das Crash dir geschrieben hat, trifft ja schon fast alles was du brauchst, das bekommst du schon hin!


----------



## florian1234 (19 Dezember 2008)

*Regelung*

Hallo Hallo.....

haben nun alle Grundlegenden Bedingungen in der Anlage geschaffen.
FU läuft
Hand Betreib läuft
Auto Betrieb läuft
Regelbetreib läuft.

Nun wollen wir den Regler optimieren. 
Standregelung eigentlich PI Regler da I Strecke.
Jedoch hat der FU im moment eine Hochlaufzeit von 10sec.
Dies beeinflusst das Regelverhalten enorm.
Darf man im FU diesen Sanftanlauf abstellen oder hat er eine Funktion. 

Und wenn ist es möglich diesen über das Steuerwort zu Steuern.
Sprich nur für die Regelung zurückzusetzen?
FU ist der MM420 von Siemens.

lg flo


----------



## florian1234 (22 Dezember 2008)

Hallo...

habe die regelung mit hilfe der Siemens Standartapplikation in griff bekommen.
Die Hoch-Runterlaufzeit auf 2sec. gesenkt.

So nun hab ich ein neues Problem 
Der OB100 wird nicht mehr bearbeitet....
habe sie S7 Urgelöscht alles neu eingespielt. 
Den ob100 neu geschrieben.
Dann nur noch ein Netzwerk erstellt und eine logische 1 erzeugt.
Jedoch wenn ich auf run gehe passiert nichts ausser das ich online bin.

Woran kann es liegen....

lg und schojn mal nen frohes fest
flo


----------



## Ralle (22 Dezember 2008)

Der OB100 wird ja nur einmal beim Hochlauf der SPS durchlaufen, der zyklische OB ist der OB1. Was also wird genau nicht bearbeitet?


----------



## florian1234 (22 Dezember 2008)

hab ich mir nach weiterem lesen auch schon fast gedacht...
aber mein problem löst es nicht...

im ob 100 setze ich mir ne 1 
und setze einige merker zurück 

leider wird der merker den ich setzt nicht 1 
habe mir jetzt fürs erste so geholfen und setze den merker im fc1 
aber das ist nur ne notlösung, möcht schon wissen warum das net mehr klappt...

hatte nen busfehler und habe dann die spannung abgestelllt. 
Der Bus-arbeitet einwandfrei. Bekomme nur keine 1 mehr aus dem ob100....

kann man ihn irgenwie abschiessen?


----------



## Ralle (22 Dezember 2008)

Man kann den OB100 in der SPS löschen, das war's aber ich denke nicht daß es daran liegt. Wird der Merker vielleicht noch irgendwo gesetzt/rückgesetzt? Ehe dein PG das beim Beobachten-Modus anzeigt ist alles gelaufen, denn der OB100 wird ja ganz am Anfang angesprungen. Ich hab noch nie erlebt, daß der OB100 nicht ging oder darin etwas nicht funktionierte, es lag immer am Programm/Programmierer 
Schreib mal bitte genau vor dem S Mx.y ein SET

also:



> SET
> S Mx.y


----------



## florian1234 (22 Dezember 2008)

Ich hatte den merker ersten gesetzt und in 4oder 5 ten wieder zurücksetzen lassen....
dachte wenn ich es wieder lösche klappts...#
ja ja der gute programmierer...

vllt hab ich ihn nicht richtig gelöscht werd morgen nochmal urlöschen.
und mit deinem vorschlag arbeiten.
hab irgendwie das gefühl das sich dieser zurücksetzen wieder eingeschlichen hat. kommt mir nämlich echt spanisch vor....

im übrigen hab ich ihn nicht in awl gesetzt. 
sondern mit nen s/r und nen negierten eingang....

gibt es hier im forum ne liste von befehlen in awl die gängig sind...
so langsam kann ich mich auch für awl begeistern


----------

