serielle kopplung ohne cp

Jochen Kühner

Level-3
Beiträge
4.291
Reaktionspunkte
527
Zuviel Werbung?
-> Hier kostenlos registrieren
ist es möglich ein gerät über serielle schnitstelle anzusprechen ohne das ich einen cp verwende?? also die serielle schnitstelle über die e-a ebene einer s7 realisiere?? das ich eine pegelanpassung vornehmen muss ist natürlich selbstverständlich!
 
hallo,
wenn Du meinst direkt von Ein-und Ausgängen auf die serielle Schnittstelle zugreiffen muß ich dich entäuschen, die serielle Schnittstelle arbeitet mit folgenden Pegeln:
Ausgänge:

Low-Pegel = + 12V
High-Pegel = - 12V
Ausgangsstrom: bis zu 10mA
Eingänge:

Low-Pegel bis ca. +1V
High-Pegel ab ca. +1,25V
Eingangswiderstand = 10kOhm

so das war ein Stolperstein, leider sind die SPS noch zu langsam, um das Protokoll nachzubilden, vieleicht liege ich ja auch falsch, lasse mich gerne belehren.
mfg
dietmar
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Hallo,
prinzipiell ja, aber es gibt folgende Punkte zu beachten:
- Das Timming muss passen (bei 1200 Baud) sind es über 1000 bits / sec.
- ggf. Start- und Endezeichnen nachbauen
- Die Daten müssen von der Steuerung zusammengebaut werden => Bits in Bytes wandelt
- ggf. Checksumme berechnen

Daher ist es in der Praxis der Einsatz vom CP der einfachere. Die CPU hat in der Regel Zeit sich um die Steuerung zu kümmern...
 
Die CP speichert auch die Informationen bis die SPS diese abruft. Ganz zu schweigen von dem Handling. Ich kenne die Aufgabe nicht aber vielleicht würde Dir ja ein AVR (z.B. ATMega8) schon weiterhelfen damit könntest Du dir ein Interface bauen das langsame SPS-Signale an eine Serielle Schnittstelle übergibt und umgekehrt.
 
(...)die serielle schnitstelle über die e-a ebene einer s7 realisiere??
Hallo
ähnliches 'ver'wirklichte ich mal mit 'ner CPU221. Von daher kann ich ungefähr sagen das nicht das Meiste rauskommt.
a) die Brate ist von der Zykluszeit (Übertragung PAE/PAA)begrenzt . Mehr wie 120Bd. sind von daher illusion.
b) asynchron geht garnicht - jedenfalls nicht ausserhalb der günstigsten Konstellation aller Zufälle. Beide (Rx und Tx) Geräte müssten sonst jeweils genau die Stelle des Zyklus treffen wo die Signale eingelesen werden damit diese richtig anstehen.
c) Norm U(S)ART nach CPU produzierte nur Falschmeldungen - bei CPU-EA/ CPU-EA hingegegen griffen alle Zeichen.
d) Das programm dazu musste voll Interruptgesteuert werden.

Fazit: Weniger lohnenswerter Ansatz
gruss
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Ich kenne die Aufgabe nicht aber vielleicht würde Dir ja ein AVR (z.B. ATMega8) schon weiterhelfen damit könntest Du dir ein Interface bauen das langsame SPS-Signale an eine Serielle Schnittstelle übergibt und umgekehrt.

(vergass diesen Punkt mit in den vorigen Beitrag zu kopieren)

Für einzelne Worte tuts statt ATMega etc. ein einfacher SPI UART. MAX3110 z.Bsp. Den anzusteuern benötigst Du 5 'Drähte' (incl. interrupt) interner (8Byte) FiFo und so'n Kram ist drin. Flutscht wie Däubel, ... bis er eben überläuft !
 
Hallo,

wenn du was einlesen willst, sieht es schlecht aus wenn du nicht gerade mit Interrupteingängen arbeiten willst.

geht es nur darum, mit geringer Baudrate was zu senden (300 Baud) und der Empfänger ist nicht so zimperlich, was das Timing angeht - kein Problem.

Es gibt viele Anzeigen, die an digitalen SPS-Ausgängen mittels zweier Signale (Takt und Daten) Meßwerte darstellen. Das Programm dazu steckte allerdings in einem FB vom Hersteller, kann aber nicht allzu schwierig sein, wenn das Protokoll bekannt ist.

Peter
 
nene...

ne, brauche schon 9600 baut um mit dem steuergerät zu komunizieren! dachte wär viel möglich. werde nu vieleicht ein c-control oder was ähnliches dazwischen bauen, mal sehen...

danke auf alle fälle
 
Zurück
Oben