# Übergabe einer Kundennummer



## Wassermann (7 April 2006)

Hallo!

Es soll eine Taktwaschstraße (eine Art Fließbandwachmaschine) über Hub-, Fahr- und Beladebänder mit Wäschetrocknern verbunden werden. Die Taktwaschstraße wird von einer eigenen, älteren SPS gesteuert. Wenn ein Wäschepaket aus der Waschstraße kommt, soll es mit der Kundennummer (5-stellig) an die Fahrbandsteuerung übergeben werden. 
Wie ließe sich die Übergabe der Kundennummer realisieren, wenn kein Bussystem zur Verfügung steht, sondern nur ein sehr begrenzte Anzahl von Ein- und Ausgängen auf Seiten der Waschstraße?

Freue mich über jeden Tipp!

Viele Grüße
Volker


----------



## hg (7 April 2006)

Hallo Wassermann


> Wie ließe sich die Übergabe der Kundennummer realisieren, wenn kein Bussystem zur Verfügung steht, sondern nur ein sehr begrenzte Anzahl von Ein- und Ausgängen auf Seiten der Waschstraße?


Seriell Ziffer fuer Ziffer ueber 4 Ausgänge

mfG
hg


----------



## Wassermann (7 April 2006)

Hallo hg,

danke für den Hinweis, aber anscheinend sind keine 4 Ausgänge vorhanden 
Von einem externen Programmierer erhielt ich den Hinweis, dass das ganze über einen einzigen Ausgang abzuwickeln ginge. Die Kundennummer würde über Impulse in einem bestimmten Zeitfenster übertragen werden. Ich bräuchte dazu eine "schnelle" SPS. Leider kann ich mir unter diesem Lösungskonzept nichts Konkretes vorstellen. Was könnte er damit konkret gemeint haben  

Gruß Volker


----------



## Werner54 (7 April 2006)

Wassermann schrieb:
			
		

> für den Hinweis, aber anscheinend sind keine 4 Ausgänge vorhanden
> Von einem externen Programmierer erhielt ich den Hinweis, dass das ganze über einen einzigen Ausgang abzuwickeln ginge. Die Kundennummer würde über Impulse in einem bestimmten Zeitfenster übertragen werden. Ich bräuchte dazu eine "schnelle" SPS. Leider kann ich mir unter diesem Lösungskonzept nichts Konkretes vorstellen. Was könnte er damit konkret gemeint haben


 
Hallo, gemeint ist wohl:
Mühsam und langwierig seriell Bit für Bit und Ziffer für Ziffer über 2..3 Drähte.
Das nenn ich doch mal eine Herausforderung!


----------



## ConEx (8 April 2006)

Ich stimme Werner zu.
mit nur einem Ausgang ist das bei einer SPS mit wechselnden Zykluszeiten nicht zu machen. Bei einer älteren SPS, die z.B. keine interruptverarbeitung zulässt schon gar nicht.
Also braucht es für eine Serielle Übertragung mindestens 2 Ausgänge. Ein Daten- und ein Taktausgang. Dies nennt man auch synchrone Übertragung.
Dabei wird am Datenausgang der Bitwert gesetzt und der Taktausgang bestimmt den Zeitpunkt, wann der Datenwert gültig ist und gelesen werden kann.
Mit einer konventionellen SPS (angenommene Zykluszeit ca. 10 ms) dauert die Übertragung von 5 Zahlen übrigens ca. 0,5 bis 0,8 Sekunden!


----------



## Maxl (8 April 2006)

Mit was für einer SPS wird denn die Waschstraße gesteuert? S5? S7? Mitsubishi? ????

Wenn es eine gänge SPS ist, wüsste ich da eine andere Lösung:
Ein Bediengerät von Pro-Face!

Diese Bediengeräte sind Skriptfähig und können diese Skripte zyklisch ausführen (minimal 1 Sekundentakt). Die neue AGP3000-Serie kann gleichzeitig an SPSen verschiedenen Typs angeschlossen werden. Mit einem Skript kann beliebig auf alle Daten aller angeschlossenen SPSen zugegriffen werde.
Für diesen Zweck würde das kleinste mit 5,7 Zoll usw. reichen. Alternativ kann auch ein größeres Gerät verwendet werden und auch als "normales" Bediengerät für die nachfolgende Anlage einsetzen.

Unterstützt werden über 20 verschiedene gängige SPSen, darunter auch viele ältere. Genauere Infos unter www.pro-face.com (für Handbücher muss man sich registrieren)

mfg
Max


----------



## EWS (17 April 2006)

Hi

keine Ahnung habe es selber noch nieeeeeeeeeeeee benutzt aber 
habe auf einer CD von *AND-OR SPS-Service folgendes gefunden.*

*Hier die Beschreibung:*


*Funktion​Daten über einen Draht (seriell) senden & empfangen​*

*Diese Bausteine senden (FC20) bzw. empfangen (FC21) Daten über​*
*einen einzelnen Draht (seriell mit Prüfbit).*​

*Es wird jeweils ein​einzelnes Byte mit Prüfbit übertragen. Das Prüfbit ist 1, wenn
in dem zu sendenden Byte eine ungerade Anzahl Bits gesetzt ist. Es dient dazu, auf
der Empfängerseite Fehler, die durch die Übertragung der Daten verursacht wurden
zu erkennen. Die Geschwindigkeit der Übertragung ist parametrierbar​

(​Zeitraster_ms). Ist das Byte komplett gesendet, wird der Ausgang​

Senden_fertig​gesetzt.​

Features​

Keine Timer oder Datenbaustein erforderlich​, sondern nur 5 Bytes für
Speicherzwecke.
Benötigt nur dann CPU-Leistung, wenn ein Byte gesendet wird.​

Parametrierbare Übertragungsrate​: Damit können auch Steuerungen mit
höheren Zykluszeiten Signale über einen Draht senden.
Ein Prüfbit ermöglicht auf Empfängerseite die Gültigkeit der Signale zu überwachen,
da ohne Rückmeldung kommuniziert wird.
Das Signal Empfangen signalisiert, das ein Byte empfangen worden ist. Es bleibt
solange anstehen, bis die Anfangskennung des nächsten gesendet worden ist. Bis
dahin muss das Byte weiterverarbeitet worden sein.
Das Signal Empfangen_Fehler signalisiert, dass die Übertragung fehlerhaft ist.
Dann ist entweder das Zeitraster von Sender und Empfänger ungleich oder das
Zeitraster muss erhöht werden. Ferner kann auch eine Störung der Leitung vorliegen.​

Nur 330 Bytes Code​(Sender/AWL) bzw. 550 Bytes Code (Empfänger/AWL) im
Arbeitsspeicher.​

Höhere Übertragungsraten​sind auch in Programmen mit großen Zykluszeiten​

über einen Weckalarm​(z.B. OB35) zu realisieren, da der Baustein wenig
Rechenzeit benötigt.​

Wenn Du mehr Info brauchst schreibe mir eine PN

Gruß 
*


----------



## Oberchefe (20 April 2006)

> mit nur einem Ausgang ist das bei einer SPS mit wechselnden Zykluszeiten nicht zu machen.



Falsch!
Das kann man so pauschal nicht sagen. Kommt ganz darauf an, wieviel Zeit für die Übertragung zur Verfügung steht. Wenn man sich beispielsweise das Protokoll der Funkuhr (DCF77) ansieht, da wird das Datum und die Uhrzeit (Stunde, Minute, Sekunde, Jahr, Monat, Tag, Wochentag) sowie diverse Bits (Sommer-/Winterzeit, Reserveantenne...) innerhalb einer Minute übertragen. Ob ein Impuls 100ms oder 200ms lang ist sollte auch eine etwas langsamere CPU ohne Interrupt hinbekommen.


----------



## Wassermann (21 April 2006)

*Serielle Übertragung*

Danke für die vielen Hinweise! Mittlerweile hat sich herausgestellt, dass doch *drei* Aus-  bzw Eingänge zur Verfügung stehen. Sorry für die Fehlinformation! Wie bereits erwähnt wurde, nimmt die serielle Übertragung viel Zeit in Anspruch. Bei uns ist eine Taktdauer von 600ms vorgesehen. Die Waschstraße hat eine Systron S800 und für die Fahrbandsteuerung wird etwas siemenskompatibles zum Einsatz kommen. 
Vorerst habe ich die Übertragung durch Schieben eines Doppelwortes (ein Integer würde eigentlich genügen, lässt sich aber in Step7 nicht verwirklichen) gelöst. Was bei der angegebenen Taktdauer zu einer Übertragungszeit von ca. 20 sek führt. Falls aber jemand einen fertigen Baustein oder eine bessere Lösungsmöglichkeit kennt, bin ich jederzeit dafür offen 

Danke & Schönes Wochenende
Volker


----------



## Ralle (21 April 2006)

Wassermann schrieb:


> Vorerst habe ich die Übertragung durch Schieben eines Doppelwortes (ein Integer würde eigentlich genügen, lässt sich aber in Step7 nicht verwirklichen) gelöst. Was bei der angegebenen Taktdauer zu einer Übertragungszeit von ca. 20 sek führt.


 
??? verstehe ich nicht ganz ???
Nimm ein MW
Schreib deine Zahl von 1-255 rein (das wäre dann 1 Byte)
Schiebe das mit SRW 1 jeweils 8 mal rechts raus und verschicke das rausgeschobene Bit. Dann hast du nur ein Byte verschickt.

Mit 3 EA kannst du aber eine richtige serielle Kommunuíkation mit Handshake programmieren.


----------



## ConEx (21 April 2006)

*Es geht immer irgendwie*

@Oberchefe
So gesehen hast Du bezüglich meines Zitates natürlich recht, es geht auch mit bloss einem Draht.


----------

