-
-
Erfahrener Benutzer
Fleißiges Mitglied
Fehlschaltung beim Schalten von Netzlasten
Hallo!
Ich habe Probleme mit einer Prozessor (PIC) gesteuerten Schaltung.
In dieser Schaltung befinden sich auch "normale" Logikbausteine, und zwar 74HCT164 (Ausgabe Schieberegister) und 74HCT165 (Eingabe Schieberegister).
Die Schaltung funktioniert soweit problemlos (hard und software arbeiten wie gewünscht).
Die Schaltung wird über ein 12V Schaltnetzteil (Dehner) betrieben und intern auf 5V (7805, die 12V werden auch benötigt) herunter geregelt.
Das Problem ist nun, wenn ich eine Netzlast, wie einen Staubsauger oder auch nur meinen Lötkolben in unmittelbarer Nähe mit an die Steckdosenleiste anschließe, kommt es beim Schalten zu Fehlverhalten in der Schaltung.
Die 74165 liefern dann zum Beispiel Zustände, die so nicht an den Eingängen anliegen.
Jeder 74HCTXX sitzt auf einer eigenen Platine und besitzt einen 100nF und einen 100µF Kondensator. Alle Eingänge haben einen PullUp von 10k.
Insgesamt werden 3x 74165 und 3x74164 sowie einen PIC16F und einen 4051 benutzt. Alle haben sie eigene Abblock-Kondensatoren. Die seriellen Leitungen sind alle pulled-up und nicht länger als 20cm, und das auch nur Gehäuse intern.
Was kann ich nun gegen dieses Fehlverhalten tun?
Bitte um jede Hilfe
Gruß
Jörn
-
Erfahrener Benutzer
Lebende Robotik Legende
Hallo Jörn Arne!
Am besten wäre den Weg auf dem die Störungen zum PIC gelangen durch Auschluß finden. Das Netzteil der die Schaltung mit Spannungen versorgt ist verdächtig.
Sonst würde ich die Beschaltung von MCLR Pin überprüfen und eventuell die pull-ups verkleinern.
MfG
-
Erfahrener Benutzer
Robotik Visionär
Viele einzelen Platinen mit 20 cm langen Kabeln gibt eine Menge Punkte wo man sich Störungen einfangen kann. Vermutlich wären die 74HCxxx Versionen etwas besser als die HCT Versionen, aber auch mit HCT sollte das lösbar sein. Helfen könnte das typische EMV Programm:
- Abblockkondensatoren dicht (ein paar mm) an den ICs
- Metallgehäuse
- Fitler an allen Ein/Ausganängen
- Kabel so kurz wie Möglich, auch im Gehäuse
hier eher mehr auf eine Platine
- ggf. Massefläche (hier eher zu Aufwendig)
- ein zentraler Massepunkt
- unbenutzte Pins als Ausgang nie als Eingang
- ggf. Entkopplung von VCC für Teilschaltungen
- wenn möglich SMD Teile (=> kleiner)
-
Erfahrener Benutzer
Fleißiges Mitglied
Hallo!
Vielen Dank für eure Antworten.
Zunächst zum MCLR PIN. Dieser liegt mit 10k auf 5V, keine weitere Beschaltung. Sollte dieser Widerstand kleiner sein?
Alle nicht benötigten PIC Pins sind als Ausgang konfiguriert
Nun die anderen Schaltung. Das Problem ist, das Design ist fertig und hat sich in anderen Schaltungen auch bewährt. Die Module werden z.B auch in Schaltungen mit AVR Prozessoren eingesetzt (bei gleichem Netzteil). Dort gab es noch nie Fehlschaltungen.
Die vielen Platinen haben den Grund, dass das System modular ist, verschiedene Systeme habe unterschiedlich viele Ein und Ausgabeplatinen und unterschiedliche Ansteuerungsplatinen, man steckt was man braucht und wieviel man braucht über Steckverbinder zusammen.
Mir ist allerdings aufgefallen, dass ich solche Probleme bisher nur mit PICs hatte Ich weiß nicht ob das einfach nur pech ist. Die AVR gestützten System machen da keine Schwierigkeiten.
Können Kondensatoren auf den Signalleitungen gegen Masse etwas bewirken?
Was ist mit Entkopplung von VCC gemeint?
Ungünstig in jeden Falle ist, dass ich im großen und ganzen an den Platinen nicht mehr viel ändern kann
Vielen Dank
Jörn
-
Erfahrener Benutzer
Robotik Visionär
Kondensatoren an den Signalleitungen werden alleine noch nicht viel bewirken. Sinnvoll wären eher RC Glieder.
Allerdings ist das Problem auch noch nicht zu ganz klar. Wie äu0ert sich der Fehler: Stopt der Controller, Startet der Controller neu, oder sind Ausgänge falsch (Fehler in den 74HC... Ics).
Mit Entkopplun bei Vcc ist gemeint, das man nicht VCC von allen Chips zusammenschließt, sondern zwischen der Spannung vom Regler und einigen Chips oder Gruppen noch einen Widerstand und/Oder eine Spule hat, so wie man es oft bei AD Wandlern macht. Das wird hier aber auch eher wenger das Problem sein.
Wenn ein Problem ist, das der Controller einen Reset macht, könnte ein kleiner Kondensator (ca. 1 nF) am MCLR Pin helfen. Hilft zuminestens recht gut bei den AVRs gegen einen versehentlichen Reset.
-
Erfahrener Benutzer
Fleißiges Mitglied
Hallo
es äußert sich dahin gehend, dass sich der PIC so verhält, als ob er bestimmte Zustände von den 74165 bekommen hätte.
An den 74165 sind unter anderem Tasten angeschlossen. Beim schalten eines Verbrauchers wirkt es sich also aus, als hätte man eine taste gedrückt.
Man kann auch manchmal ein zucken auf den LEDs sehen, die durch einen 74164 gesteuert werden. Da die 74164 kontinuierlich aktualisiert werden, verschwiden die falsch anzeigen sehr schnell wieder.
ob der controller resettet, gute Frage! Ich werde etwas einbauen, woran man es erkennen kann. Ich werde berichten
Danke
-
Erfahrener Benutzer
Robotik Visionär
Wenn die Verbindung zwischen Controller und den HC.. Ics gestört ist, kann das auch daran liegen das die Schaltung an sich schon relativ knapp ausgelegt ist. Steile flanken und lange Leitunge geben leicht überschwinger und das kann an Schieberegistern zu problemen führen. Besonders die clk Leitung ist kritisch. Bei mehr als 25 cm Leitungslänge solle da am Controller ein Widerstand von etwa 68 Ohm ein Reihe, um die Leitung wenigstens näherungsweise richtig abzuschließen und die Flanken etwas langsamer zu machen. Das andere Problem ist eventuell eine schlechte Masseführung. Die Masseleitungen sollte möglichst kurz an einem Punkt zusammenlaufen.
-
Erfahrener Benutzer
Fleißiges Mitglied
Die Idee mit den flanken find ich ziemlich gut, dass wäre auch ein Problem, welches ich software technisch ändern kann. Es sind ein paar nop Befehle drin, die sind auch bitter nötig, sonst würde garnichts gehen.
Das mit den Abschlusswiderständen ist auch eine gute Sache, leider krieg ich die in der Version nicht mehr rein. Sollten die dann direkt vor dem PIC Ein/Ausgang sein?
Da ich die Woche über etwas anderes zu tun habe, und den Kasten + Material nicht hier habe, kann ich Umbauten und tests erst wieder am Samstag durchführen.
Hiermit sind die Platinen untereinander verbunden
http://www.reichelt.de/?;ACTION=3;LA...54efa3bfe090aa
-
Erfahrener Benutzer
Lebende Robotik Legende
Hallo!
Wenn es wegen Stromverbrauch und Belastung der µCs mödlich wäre, würde ich die anscheinend störungsanfällige digiale MOS ICs aus den Familien HC und HCT durch TTL ICs aus den Familien LS oder standard ersetzen.
MfG
-
Erfahrener Benutzer
Fleißiges Mitglied
Hallo
Das habe ich tatsächlich schon versucht. Einige LS waren schon austauschweise drin. Die waren tatsächlich noch anfälliger.
Die LS nehme ich auch nur ungern, da oftmals nur geringere Taktraten möglich sind (hatte da mal Problme bei einer AVR schaltung)
Hier würde allerdings die funktionalität im Vordergrud stehem
Gruß
Jörn
Berechtigungen
- Neue Themen erstellen: Nein
- Themen beantworten: Nein
- Anhänge hochladen: Nein
- Beiträge bearbeiten: Nein
-
Foren-Regeln
Lesezeichen