Herzlich Willkommen im Forum! - Um alle Vorteile nutzen zu können, melde dich an oder registriere dich kostenlos.


  • 0 Bewertung(en) - 0 im Durchschnitt
  • 1
  • 2
  • 3
  • 4
  • 5
Projekt CNC Treiberplatine für MPCNC
#21
Ok. Dann hab ich bei Reichelt ja Mondpreise gesehen. Mit dem 7805 und nem Kühlkörper bin ich zwar immer noch günstiger, aber das wäre auf jeden Fall ne Überlegung wert.

Andere Frage: Wie sieht es mit LEDs an den Eingängen / Ausgängen aus ("Status LED"). Sollte ich da welche vorsehen? In der Software wird es mir zwar signalisiert, aber als Option in Hardware wäre es auch nicht schlecht. Unter anderem zur Fehlersuche. Wie wäre das am geschicktesten zu verschalten?
Es gibt ja folgende Möglichkeiten:
Für Eingänge (Annahme, dass Status LED immer funktioniert):
  1. Status LED aus Sicht des Eingangs vor den Optokoppler in Reihe zu der LED im Optokoppler
    • Vorteil:
      • Strombegrenzung ist durch Widerstand schon vorhanden (müsste auf den Wert für 2 LEDs angepasst werden)
      • Defekte LED im Optokoppler wird erkannt, falls man weiß, dass die Status LED funktioniert.
    • Nachteil:
      • Defekter Phototransistor im  Optokoppler wird nicht erkannt. Es kann an diesem oder am Eingang des Arduino µC liegen.
      • Status LED ist zwingend zu bestücken oder es muss eine Lötbrücke gesetzt werden.
      • Kann auch schon unabhängig von der Platine extern so beschaltet werden (Also LED in Leitung mit Sensorschalter)
  2. Status LED aus Sicht des Eingangs vor den Optokoppler parallel zur LED im Optokoppler
    • Vorteil:
      • Muss nicht zwingend bestückt werden.
    • Nachteil:
      • Defekte LED im Optokoppler wird nicht erkannt. Es kann an allen Komponenten hinter der Status LED liegen, dass Eingang softwareseitig nicht toggelt.
      • Zusätzlicher Vorwiderstand notwendig
      • Kann auch schon unabhängig von der Platine extern so beschaltet werden (Also LED mit Vorwiderstand z.b. mit Kabel zwischen Ex und GND)
  3. Status LED aus Sicht des Eingangs hinter den Optokoppler. Anode an µC-Eingangspin, Kathode an Collector-Anschluss des Phototransistors vom Optokoppler
    • Vorteil:
      • Strombegrenzung durch Pullup-Widerstand im Arduino µC. Kein zusätzlicher Vorwiderstand notwendig.
    • Nachteil:
      • Keine Ortung bei Defekt möglich. Es kann µC Eingang oder Optokoppler (LED oder Transistor sein). Man weiß nur, ob alles funktioniert oder etwas nicht funktioniert.
  4. Status LED aus Sicht des Eingangs hinter den Optokoppler. Anode an 5V, Kathode der Status LED an Vorwiderstand, anderer Anschuss des Vorwiderstand an Collector-Anschluss des Phototransistors vom Optokoppler bzw. den µC-Eingangspin (Bei Aktivierung wird dieses Signal auf GND gezogen und die Status LED leuchtet.
    • Vorteil: Fehlerursache auf Optokoppler bzw µC Eingang eingrenzbar (Wenn Status LED bei Aktivierung leuchtet, ist der Optokoppler i. O.)
      • Fehlerursache auf Optokoppler bzw µC Eingang eingrenzbar (Wenn Status LED bei Aktivierung leuchtet, ist der Optokoppler i. O.)
    • Nachteil:
      • Zusätzlicher Vorwiderstand notwendig.

Für Ausgänge (Annahme, dass Status LED immer funktioniert):
Hier ergibt für mich eigentlich nur eine Status LED vor den Ausgangstreiber an den Ausgang des µC Sinn, da hier das Spannungslevel gleich bleibt (im Gegensatz zum (5V, 12V oder Open Collector Ausgang des Relaistreibers ULN2003A).
Dann natürlich wieder mit Vorwiderstand gegen GND (leuchtet bei Aktivierung). Bei 2 digitalen Ausgängen sollte die Strombelastung für den µC auch nicht all zu hoch sein, wenn dann die Ausgänge des µC die LEDs speisen müssen.
In Reihe der Ausgänge hinter die Treiber geht nicht, wegen dem Strom, der für Relais hoch sein muss.
Parallel zu der den Ausängen (zweischen COM und den einzelnen Ausgängen) würde bedeuten, dass man den Vorwiderstand (falls er denn fest beschrieben ist) am höchsten Spannungslevel ausrichten muss und dadurch die LED bei kleinen Spannungen nur mit relativ geringem Strom betrieben wird. Außerdem gilt auch hier: An den Ausgang kann jeder noch selbst parallel eine LED mit Vorwiderstand extern schalten.

Hab ich irgendwo einen Denkfehler? Es gibt so viele Möglichekten, da dreht sich der Kopf bei mir.

Gruß Till
  Zitieren
Gefällt dir dieses Thema?
Teile es doch mit deinen Freunden!
#22
Hi Till,

Status LED finde ich auch gut. Weil man schön sehen kann was man programmiert.

Allerdings immer jede LED mit eigenem Widerstand.
Schaltet man zwei LED's parallel an einem Widerstand leuchtet der einen heller wie der andere wegen Bauteilstreuung.
Darum auch nicht den Pullup-R im uC dafür verwenden Wink

Wo du letztendlich in eine Signalleitung eine LED anhängst, ist eigentlich egal. Ist nur vom Pegel abhängig Wink
Es ist nicht damit zurechnen, das es einen Defekt in dieser Leitung gibt, weil die Betriebsstunden der elektronischen Bauteile als sehr hoch anzusehen sind, wenn man deren Spezifikationen einhält.

Relais immer mit einen Transistor treiben. Der Arduino kann an einem PIN nur begrenzt Strom bieten. Auch sollte der Gesamtstrom aller Pins nicht überschritten werden.

ich hoffe das hilft dir, Till.

VG
Walter
  Zitieren
 
#23
Sagen wir so. Es bestärkt mich darin, dass es nicht völliger Mumpizt ist, was ich mir da ausgedacht habe.  Wink



Zu deinen Einwänden: 

Zitat:Allerdings immer jede LED mit eigenem Widerstand.

Schaltet man zwei LED's parallel an einem Widerstand leuchtet der einen heller wie der andere wegen Bauteilstreuung.

Bei allen parallelen Verschaltungsmöglichkeiten habe ich ja auch immer den Vorwiderstand vorgesehen.
Zitat:Darum auch nicht den Pullup-R im uC dafür verwenden
Hier würde ja auch nur die Status-LED hängen, da wir ja auf der Phototransistorseite vom OK sind. Der Pull-Up im µC hat ja so seine 50K. Damit ist die Variante eh schon raus, da der Strom zu gering ist. Das hätte ich aber ohne dich und gerade nochmal überlegen ganz vergessen.
Zitat:Es ist nicht damit zurechnen, das es einen Defekt in dieser Leitung gibt, weil die Betriebsstunden der elektronischen Bauteile als sehr hoch anzusehen sind, wenn man deren Spezifikationen einhält.
Naja. Ist eher so eine Abwägung zwischen "Schaltunng wird zuverlässig erkannt" (bei hohen Strom durch die OK LED) und  "Lebensdauer" (bei kleinem Strom durch OK LED)
Zitat:Relais immer mit einen Transistor treiben. Der Arduino kann an einem PIN nur begrenzt Strom bieten. Auch sollte der Gesamtstrom aller Pins nicht überschritten werden.
Dafür sind ja gerade die ULN2003 da. Relaistreiber mit Flyback Diode. Was willste mehr Wink

Gruß Till
  Zitieren
 
#24
Ja genau, die ULN2003 tun an der Stelle schon treue Dienste Smile

Lebendsdauer / zuverlässiges Erkennen:
Über den Daumen ziehen die LED's ja 20mA. ergibt 220 Ohm bei 5V. Das zieht wiederum den Pegel runter an der Signalleitung. Der 'Empfänger' des Signals muss dann mit diesem Pegel klar kommen Wink
Ist das kritisch, eher einen 330 Ohm oder 470 Ohm vorsehen. Die LED soll ja 'nur' anzeigen und nicht die Augen verblitzen Smile

Noch was:
Dioden wirken bei hoch frequenten Signalen auf diese wie Kondensatoren Wink
Also, die können ganz schön das Signal verbiegen... d.h. Eingänge könnten mit solchen 'verkrümmten' Signalen eher Probleme bekommen...
  Zitieren
 
#25
Kleine Empfehlung noch, Till:

Klar, jeder hat seinen Zeichenstiel, aber versuch mal mit 'Netzlabeln' zu arbeiten.
https://bastler-treffpunkt.de/thread-pro...7#pid53087
Vorteile:
- Schlatplan wird sehr übersichtlich weil 'Gruppierungen' der Schaltungsgruppen besser zu erkennen sind
- Die meisten Leiterbahnen haben dann einen vergebenen Namen und sind später auf dem PCB leichter zu finden...

Nachteil:
- keine
  Zitieren
 
#26
Meinst du die Status LED oder die integrierten LEDs in den OK?
Du darfst die Vorwärtspannung nicht vergessen (ca. V_f = 1,4V bei den LTV427).
5V -1,4V = 3,6V. Bei 220 Ohm, wie ich sie gerade habe macht das ca 16mA.

Hochfrequente Signale hab ich keine. Es geht nur um langsame digitale Statussignale von Schaltern etc.

Weiß nicht genau was du mit Empfänger des Signals meist bzw von welchen Signalen du redest (Eingang oder Ausgang?)


Wenn du die Ausgänge meinst hast du Recht. Hab ich wieder nicht dran gedacht. Der typische Eingangsstorm von den ULN2003 ist ja bei 3,85V (5V ist nicht angegeben) so ca. bei 0,95mA. -> ca. 4kOhm Eingangsimpedanz. D.h es sollte noch genügend Strom von µC für eine LED parallel dazu da sein.

Allerdings werde ich das alles nicht mehr ins Design einplanen, da ich kein Platz mehr auf der Platine habe, was ich gerade feststelle. Schade. Das ist dann was für Rev 2.0. Ist aber trotzdem gut, mal darüber geredet zu haben.

PS: Netzlabel hab ich für fast alle Signale schon festgelegt. Bin gerade noch am durchchecken.

Kennst du dich mit KiCAD aus? Wie kann man selbst festgelegte Feldwerte von Symbolen im Layout auf den Silkscreen-Layer bekommen? Ist sonst später so mühselig mit der Anleitung daneben die entsprechenden Werte und Funktionen von den Bauteilen rauszusuchen, wenn nur die Bauteilreferenzen aufgedruckt werden.

Gruß Till
  Zitieren
 
#27
Empfänger des Signals: Eingang.

Zitat:Kennst du dich mit KiCAD aus? Wie kann man selbst festgelegte Feldwerte von Symbolen im Layout auf den Silkscreen-Layer bekommen? Ist sonst später so mühselig mit der Anleitung daneben die entsprechenden Werte und Funktionen von den Bauteilen rauszusuchen, wenn nur die Bauteilreferenzen aufgedruckt werden.

Ja, das geht. Einfach mal rechts mit den Häkchen spielen Wink

   
  Zitieren
 
#28
Öhm. Damit bekomme ich die Lagen Ein- und Ausgeblendet (mit dem Reiter Elemente kann ich weiter differenzieren). Das bringt mir die Werte aber nicht auf das Layer Silkscreen Front / Back. Damit wird das dann in der Fertigung eben nicht aufgedruckt.
Außerdem habe ich ja in meinen Symbolen eigene Feldwerte definiert, die die Funktion des Bauteils beschreiben (z.b. bei einer Schraubklemme was dort angeschlossen wird).
Vorher hab ich dafür das Feld "Value" genommen. Allerdings zerschießt es damit die automatische Erstellung einer BOM.

Gruß Till
  Zitieren
 
#29
Guten Morgen Till,

ich habe die Anzeige-LEDs immer in Reihe zu den OKO-LEDs geschaltet, egal ob Ein- oder Ausgang.

Im Fehlerfall ist ein OKO schnell auch ohne Meßgerät, z.B. mit einer spitzen Metallpinzette, überprüft, indem man je nach Fehlerbild entweder die AK- oder die EC-Strecke kurzschließt.

Eine Anzeige des Schaltzustandes würde ich aber auf jeden Fall vorsehen. Es vereinfacht die Fehlersuche enorm, wenn es mal nicht so wie gewünscht funktioniert.

LG Regina
Alle heißen Klaus. Nur der Egon nicht. Der heißt Detlef, damit er nicht mit Jürgen verwechselt wird.
  Zitieren
 
#30
einfach den Mauszeiger über den Wert positionieren den du auf den SilkLayer haben möchtest, E drücken und den Layer auswählen Wink

   
  Zitieren
 


Gehe zu:


Benutzer, die gerade dieses Thema anschauen: 2 Gast/Gäste