Forum: Mikrocontroller und Digitale Elektronik SMEMA-Signal sniffen


von Analogguy (Gast)


Lesenswert?

Hallo zusammen,
für die Kommunikation zwischen Produktionsmaschinen wird der SMEMA 
Standard genutzt der auch in der IPC definiert wird.
http://www.dynamixtechnology.com/docs/smema1.2.pdf

Da wir Probleme zwischen zwei Maschinen vermuten möchte ich mit Hilfe 
eines Arduino oder Raspberry Pi sowas wie ein Sniffer, also einen 
Mithörer bauen.
Wie man in dem Dokument sieht, werden die Signale komplett potenzialfrei 
übertragen.
Jetzt meine Frage - Kann ich einfach ein Y-Kabel bauen? Hierfür würde 
ich einfach zu den Optokopplern oder Relais die als Receiver in den 
Maschinen (also beide Seiten) fungieren einen weiteren Optokoppler 
parallel schalten, der dann ein entsprechnedes Signal an den uController 
weitergibt und damit ein mögliches mithören und aufzeichnen ermöglicht.

Am liebsten wäre mir, dass ich eine Ausgabe auf einen USB-Stick 
realisiere um im Fall dass ein Kommunikationsfehler auftritt ich die 
Daten als Text-Datei mit einem PC auslesen kann.

Denkt ihr das sollte soweit funktionieren und würde ich dafür eher ein 
Ardunio oder ein Raspi anbieten?

Danke und Gruß

von Jens M. (schuchkleisser)


Lesenswert?

Das sind einfach 2 Relais (mechanisch oder Opto), mehr nicht.
Du kannst zwei LEDs dran machen, schreibst dazu "willste?" für den 
Downstream und "gibgibgibgib" für den Upstream.
Dann einfach sehen.

Ein Logbuch auf dem PC ist sowas von Schwerer Gustav auf 
Pantoffeltier...
Was sagt dir denn
10:58:39 Bereit
10:58:39 Gegeben
10:59:15 Bereit
Und du merkst um elf es klemmt?

Klassisches Problem: Die Ausgangslichtschranke des Upstream sieht die LP 
nicht mehr und sendet daher kein "willste?", oder die 
Eingangslichtschranke des Downstream klemmt und er merkt nicht das er 
leer ist.

von Lothar M. (Firma: Titel) (lkmiller) (Moderator) Benutzerseite


Lesenswert?

Analogguy schrieb:
> Da wir Probleme zwischen zwei Maschinen vermuten
Hä? Hast du tatsächlich Probleme oder vermutest du nur, dass da Probleme 
sein könnten?

> möchte ich mit Hilfe eines Arduino oder Raspberry Pi sowas wie ein
> Sniffer, also einen Mithörer bauen.
Zur Analyse, wie man ggfs. selber einen Logger aufbauen kann, nimmt man 
fertige, funktionierende Messgeräte wie Oszi und LogicAnalyzer. Wenn man 
mit denen dann herausgefunden hat, was man eigentlich wie messen und 
festhalten will, erst dann bastelt man selber was (wenn man nicht 
zufällig mit diesen richtigen Messgeräten den Fehler schon gefunden 
hat).

> Hierfür würde ich einfach zu den Optokopplern oder Relais die als
> Receiver in den Maschinen (also beide Seiten) fungieren einen weiteren
> Optokoppler parallel schalten
Besser wohl in Reihe.
Aber du kannst ja einfach mal die Signalpegel messen und dann 
entscheiden ob da nicht doch schon irgendwie in gemeinsamer 
Potentialbezug da ist und du den Logikanalyzer einfach direkt anklemmen 
kannst.

> Am liebsten wäre mir, dass ich eine Ausgabe auf einen USB-Stick
> realisiere um im Fall dass ein Kommunikationsfehler auftritt ich die
> Daten als Text-Datei mit einem PC auslesen kann.
In dem verlinkten Dokument werden doch simple binäre Daten Steuersignale 
ausgetauscht. Wo soll da ein Text herkommen? Und wie passiert da ein 
"Kommunikationsfehler"?

von Analogguy (Gast)


Lesenswert?

Da wir nur sporadische Probleme haben zwischen den Maschinen haben und 
die Maschinen nicht Vorort stehen, haben wir nicht die Möglichkeit mit 
einem Messgerät langfristig zu messen.

LogicAnalyzer hört sich tatsächlich nicht verkehrt an. Wenn es die 
Möglichkeit geben würde die Daten über einen langen Zeitraum zu 
speichern, könnte es damit ja schon funktionieren.
Wichtig ist mir, dass ich das Verhalten so wenig wie möglich mit meinen 
Messgeräten beeinflusse um nicht noch mehr Probleme hervorzurufen.

Gedacht ist, dass die Signale aufgezeichnet werden, um im Fehlerfall 
nachzuvollziehen, ob das "Bereit-Signal" tatsächlich auch von der 
Maschine gesendet wurde. Eine Textausgabe würde ich mir dafür bauen, 
ähnlich wie Jens M. es oben beschreibt.

von Jens M. (schuchkleisser)


Lesenswert?

Was bringt dir das dann?

Die Downstream-Maschine gibt kein Bereit. Steht in deinem Log.
Man muss aber vor Ort sein und genau in dem Moment suchen, warum.
Das das irgendwann irgendwo in irgendeiner Datei was drinsteht, bringt 
dir doch nix?!

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.