Forum: Mikrocontroller und Digitale Elektronik I2C Bus empfindlich gegen Einschaltimpulse - wie schützen ?


von Hendrik L. (lbd)


Lesenswert?

Hallo,

ich beobachte ungewollte und undefinierte Einschaltungen an PCF8574's 
durch Spannungsimpule im Hausnetz(typisch bei Leuchtstoffröhren und 
Trafos).

Wäre es sinnvoll, SCL durch den Master permanent auf LOW zu halten und 
nur bei gewollten Schaltungen den Bus kurz zuvor in den definierten 
Zustand SCL und SDA auf HIGH zu setzen ?

Würde das helfen, um den Bus (die PCFs) vor undefinierten Einschaltungen 
zu "verriegeln" ?

Gruß

von Hendrik L. (lbd)


Lesenswert?

+++ Refresh +++

von Christian B. (casandro)


Lesenswert?

Naja, Tiefpassfiltern und mit langsamen Datenraten arbeiten. I2C war nie 
für die Hausinstallation gedacht, das ist dafür nicht geeignet.

Aber probiers mit Tiefpassen und möglichst kleinen 
Abschlusswiederständen. Vielleicht kannst Du so was retten.

von Alexander B. (alexander_b75)


Lesenswert?

Hallo,
wie Christian bereits geschrieben würden TP helfen. Eventuell hilft dir 
ein Bustreiber wie der PCA9507 von NXP. Ebenfalls kann ich dir diesen 
Artikel empfehlen: 
http://www.mikrocontroller.net/articles/I2C_als_Hausbus

hoffe ich konnte dir helfen

mfg Alexander

von Jörg S. (joerg-s)


Lesenswert?

Die Störungen erzeugen zufällig exakt die Adresse des PCF8574? Kommt mir 
etwas komisch vor.
Fehlen vielleicht einfach nur Superessor Dioden an VCC, SDA und SCL?

von andy (Gast)


Lesenswert?

Hendrik L. schrieb:
> ich beobachte ungewollte und undefinierte Einschaltungen an PCF8574's
> durch Spannungsimpule im Hausnetz(typisch bei Leuchtstoffröhren und
> Trafos).

Es wäre sinnvoll, wenn du erstmal beschreibst, welche Schutzmaßnahmen du 
für deine Schaltung vonommen hast, sonst wird dieses Rätselraten einfach 
weiter gehen und dich keinen Schritt weiter bringen.

von ♪Geist (Gast)


Lesenswert?

>ich beobachte ungewollte und undefinierte Einschaltungen an PCF8574's
>durch Spannungsimpule im Hausnetz(typisch bei Leuchtstoffröhren und
>Trafos).
Wie Jörg geschrieben hat, ist es sehr unwahrscheinlich. Hast du die 
Impulse mit einem Oszi gemessen oder gehst du nur davon aus?


>Wäre es sinnvoll, SCL durch den Master permanent auf LOW zu halten und
>nur bei gewollten Schaltungen den Bus kurz zuvor in den definierten
>Zustand SCL und SDA auf HIGH zu setzen ?

Wäre nicht sinnvoll

Sinnvoller wäre:
- Kerkos rein bzw. für stabile Versorgung der Schaltung sorgen.
- evtl. Ferrite Bead
- Ich hoffe du hast Pull-Ups an deinem I2C Bus

von ♪Geist (Gast)


Lesenswert?

>Es wäre sinnvoll, wenn du erstmal beschreibst, welche Schutzmaßnahmen du
>für deine Schaltung vonommen hast, sonst wird dieses Rätselraten einfach
>weiter gehen und dich keinen Schritt weiter bringen.
Genau, vielleicht ist es nur deine Software die murks ist ;)

von Knut B. (Firma: TravelRec.) (travelrec) Benutzerseite


Lesenswert?

♪Geist schrieb:
> Sinnvoller wäre:
> - Kerkos rein bzw. für stabile Versorgung der Schaltung sorgen.
> - evtl. Ferrite Bead

Strokos können auch helfen. Filter- und Entstörmaßnahmen müssen an allen 
von der Schaltung abgehenden Leitungen istalliert werden.

von Hendrik L. (lbd)


Lesenswert?

♪Geist schrieb:
..
> Wie Jörg geschrieben hat, ist es sehr unwahrscheinlich. Hast du die
> Impulse mit einem Oszi gemessen oder gehst du nur davon aus?
>
>

Ich brauche die Impulse mit einem Oszilloskop gar nicht zu messen:

Ich schalte eine Leuchtstofflampe ein ... und in dem geleichen Moment, 
in dem es blitzt, schalten die PCF's ihre Ausgänge durch (alle acht 
PortPins).

(Ich habe allerdings ein Oszilloskop am I2C Bus - ich kann also zudem 
sehen, wie die Impulse das Gleichspannungssignal (Ruhe=HIGH) auf SCL und 
SDA zerschiessen)

Darum habe ich mir überlegt, was wäre denn, wenn SCL permanent auf LOW 
liegt - das wäre doch eine Art Verriegelung ?

>
> Sinnvoller wäre:
> - Kerkos rein bzw. für stabile Versorgung der Schaltung sorgen.
> - evtl. Ferrite Bead
> - Ich hoffe du hast Pull-Ups an deinem I2C Bus

PullUps (1,8 KOhm) habe ich am Bus. Vorschriftsmässig - wie im Lehrbuch!

Gruß

von Uwe (Gast)


Lesenswert?

Passiert das OHNE oszi auch ?

von Jörg E. (jackfritt)


Lesenswert?

Stabile Versorungsspannung!

von spontan (Gast)


Lesenswert?

> wie die Impulse das Gleichspannungssignal (Ruhe=HIGH) auf SCL und
>SDA zerschiessen)

Die Ausdrucksweise ist zwar salopp, aber hilft nicht weiter das Problem 
einzukreisen.

Bist Du sicher, daß Deine Software nicht durch die Leuchtstoffröhre 
getriggert wird? Schon mal den Prozessor abgehängt?

von Hendrik L. (lbd)


Lesenswert?

Uwe schrieb:
> Passiert das OHNE oszi auch ?

Ja!

von Hendrik L. (lbd)


Lesenswert?

Jörg Esser schrieb:
> Stabile Versorungsspannung!

Labornetzgerät Manson NSP3630!

von Jens M. (Gast)


Lesenswert?

Hendrik L. schrieb:
> Ich brauche die Impulse mit einem Oszilloskop gar nicht zu messen:

Wer viel misst misst Mist, in diesem Fall

>
> Ich schalte eine Leuchtstofflampe ein ... und in dem geleichen Moment,
> in dem es blitzt, schalten die PCF's ihre Ausgänge durch (alle acht
> PortPins).

kannst du wohl ohne Messung wissen ob's der I2C Bus ist? Einfach auf 
Masse legen.


> Wäre es sinnvoll, SCL durch den Master permanent auf LOW zu halten

Da die Störung wohl kaum über das Protokoll erfolgt (extrem 
unwahrscheinlich das die Lampe das jedes mal hinbekommt) wird Sie direkt 
ins IC einstrahlen. Die böse Lampe missbraucht den Bus dann als Antenne 
;-).

Schirmung der Leitungen ist etwas langweilig weil Standard, den Bus 
niederohmig machen (auch und gerade die Leitungen untereinander) die 
spannendere Variante.

von Hendrik L. (lbd)


Lesenswert?

Bus liegt auf meinem Labortisch (mit RASPERRY Pi und PCF8574 auf Boards 
angeschlossen).

Buslänge zwischen 20 und 30 cm - aufaddiert!

Direkt darüber die Leuchtstoffröhre (1 Meter Abstand)!

von Jens M. (Gast)


Lesenswert?

Hendrik L. schrieb:
> Bus liegt auf meinem Labortisch (mit RASPERRY Pi und PCF8574 auf Boards
> angeschlossen).

ungeschützt

>
> Buslänge zwischen 20 und 30 cm - aufaddiert!

egal, kommt auf die wirksame Antennenlänge an


>
> Direkt darüber die Leuchtstoffröhre (1 Meter Abstand)!

Die kann nun wirklich überall reinstrahlen. Die Schaltung in Alufolie 
einwickeln (rundrum) wird das Problem vermutlich beseitigen.

wenn du wissen willst wo es herkommt musst du eingrenzen, also teilweise 
einwickeln, dämpfen filtern ....

von Hendrik L. (lbd)


Lesenswert?

Jens Martin schrieb:
> Hendrik L. schrieb:
>> Bus liegt auf meinem Labortisch (mit RASPERRY Pi und PCF8574 auf Boards
>> angeschlossen).
>
> ungeschützt
>
>>
>> Buslänge zwischen 20 und 30 cm - aufaddiert!
>
> egal, kommt auf die wirksame Antennenlänge an
>
>
>>
>> Direkt darüber die Leuchtstoffröhre (1 Meter Abstand)!
>
> Die kann nun wirklich überall reinstrahlen. Die Schaltung in Alufolie
> einwickeln (rundrum) wird das Problem vermutlich beseitigen.
>
> wenn du wissen willst wo es herkommt musst du eingrenzen, also teilweise
> einwickeln, dämpfen filtern ....

Alufolie ist ein gute Idee - das werde ich ausprobieren!

Danke!

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.