hallo,
ich wollte nur eine led ansteuern. dazu habe ich einen uln2008 genommen.
funktioniert. dann musste ich die schaltung ändern. wenn am uln2008 ein
high am eingang anliegt dann wird ja der ausgang auf masse geschaltet.
ich brauchte eine negation. also habe ich einen transistor
dahintergeschaltet. siehe bild.
eigentlich sind 7 leds von static relais dran am uln2008
der uln2008 wird über einen pcf8574 i2c expander angesteuert. das
problem nachdem die umfangreiche leiterplatte fertig und bestückt war.
ich stelle fest, daß der pcf8574 bei power on reset alle eingänge auf
high schaltet. das wiederum schaltet den uln2008 und zieht den ausgang
auf masse. das schaltet das dahinterliegende static relais welches dann
noch an plus liegt.
also wenn ich mein gerät einschalte gehen alle an den static relais
angeschlossenen sachen an. nur kurz weil dann der µc alle ausgänge des
pcf8574 auf null schaltet.
das wollte ich weghaben ohne die leiterplatte groß zu ändern.
also habe ich zwischen uln 2008 und den static relais einen hexinverter
7406 geschaltet mit open collector und pullup widerstand. geht. sind
aber nur 6 inverter drin also habe ich das siebte so wie im bild über
einen transistor invertieren wollen.
nur die transistorstufe funzt alleine mit 5vf high und 0v low pegel. am
uln dran gehts nicht mehr.
ich denke, daß der high pegel (gemessen auch nur ca 0.6v) zu wenig ist.
ich habe aber keine idee wie ich den "normalisiere".
so was banales eigentlich, bin aber echt am verzweifeln.
gruß, uwe.
Hallo,
noch banaler wäre es eigentlich, in die Datenblätter der ICs zu
schauen...
Der 2008 ist ein Treiber mit OpenCollektor-Ausgängen, der eine Last mit
max. 500mA gegen GND schalten kann. Dafür wurde er entwickelt.
Folgerichtig gibt es keinen H-Pegle am 2008.
Wenn Du das unbedingt so machen mußt, dann passenden Basiswiderstand
gegen + und der 2008-Ausgang wird ihn artig auf L ziehen können.
Der 7406 hat übrigens keine Freilaufdioden drin, falls Du die des 2008
benutzt hast, muß Du den Relais jetzt selber welche spendieren.
Ich hätte da wohl lieber Inverter vor den 2008 reingebastelt...
Gruß aus Berlin
Michael
mhhh - ich kenne nur den ULN2003 und ULN2004 und die ziehen die
ausgangspegel auf high, wenn am eingang high anliegt...
So komische high pegel von 0,x V hatte ich, als ich so nen Chip mal
durch Überspannung oder Verpolung zerstört hatte.
Christian
Hallo
>auf masse. das schaltet das dahinterliegende static relais welches dann>noch an plus liegt.
Sperre den Plus bei Reset und Einschalten des Gerätes.
sehr wenig Änderung weil kleine zusatzbaugruppe
MfG
Christian wrote:
> mhhh - ich kenne nur den ULN2003 und ULN2004 und die ziehen die> ausgangspegel auf high, wenn am eingang high anliegt...
Nein. Die ziehen den Ausgang auf Low. Ich denke auch das genau das hier
das Problem ist, aber ohne Datenblatt kann man nur raten.
die ziehen gar nix auf high, höchstens die externe Last tut das. Glaub
es einfach, ist so.
Der Ausgang kann nur STrom aufnehmen (sink-driver), ergo kannst du auch
keinen weiteren npn damit ohne pullup ansteuern.
Hallo,
@Benedikt K.: so richtig erreichbar wohl nicht.
Meist wird er als ULN2003 "gehandelt", manchmal als ULN2803...
Von der grundsätzlichen Funktion also wohl identisch und die eventuellen
Unterschiede dürften für obiges Problem keine Rolle spielen.
Gruß aus Berlin
Michael
>mhhh - ich kenne nur den ULN2003 und ULN2004 und die ziehen die>ausgangspegel auf high, wenn am eingang high anliegt
falsch: der ULN2003 und 2004 sind einfache Transistor Arrays.
Bei High Pegel schalten die Transistoren durch (nach GMD).
Datenblatt lesen und verstehen hilft!
Thomas
hallo,
danke der vielen antworten.
sorry, ich hatte mich vertippt. es ist kein uln 2008 sondern
ein uln2803.
den plus zu sperren klingt auch interresant während
einschalt/resetvorgang.
probiert hate ich den basiswiderstand weg. als basiswiderstand(pullup)
2200ohm
von plus an die basis.
ergebnis sehr unstabil. mal gehts mal nicht.
warum kommt eigentlich der 7406 damit klar? der brauch doch auch einen
high pegel.
ich habe die anderen ausgänge direkt mit den eingängen des 7406
verbunden. die ausgänge des 7406 gehen an pullup widerstand 4,7Kohm an
plus 5V und an die leds(der static relais) über vorwiderstand 330ohm an
plus 5v.
wenn das sozusagen nicht mehr ist als ein oc npn dann
könnte man doch einfach das machen ? siehe bild?
brauche ich doch nicht noch einen transistor anbringen
und den 7406 kann ich auch raushauen.
???
sehe gerade, dann ist bei high pegel die led an, muss aber aus sein.
also doch transistor oder/und 7406 dran.
jetzt habe ich das probiert siehe bild
nach dem reset(mit high pegel am uln) ist sofort die led an.
ein low pegel am uln aendert auch nix.
dann habe ich die prüfspitze vom oszi zwischen R und basis T geklemmt.
da ist (bei high pegel noch an uln) die led sofort ausgegangen und ich
konnte sie mit low pegel am uld prima einschalten. mache ich die
prüfspitze ab gehts nicht mehr nur dauer AN. ich kann doch nicht die
prüfspitze vom oszi mit in das gerät einbauen ? :-)
Erm sorry aber das is totaler Kaese was Du da machst... schau Dir das
Datenblatt an! Und was soll der externe Transistor? Wenn Du Dir ne LED
schalten willst is das sowieso alles overkill.
Noch nen Tip: Hier duerfte es zahlreiche Artikel und auch Beitraege zum
Thema geben. Ausserdem wurde doch oben schon mehrfach geschrieben dass
Du mit nem 2803 nur gegen Masse schalten kannst.
groovie wrote:
> sehe gerade, dann ist bei high pegel die led an, muss aber aus sein.>>> also doch transistor oder/und 7406 dran.>>>> jetzt habe ich das probiert siehe bild>>> nach dem reset(mit high pegel am uln) ist sofort die led an.> ein low pegel am uln aendert auch nix.>>> dann habe ich die prüfspitze vom oszi zwischen R und basis T geklemmt.> da ist (bei high pegel noch an uln) die led sofort ausgegangen und ich> konnte sie mit low pegel am uld prima einschalten. mache ich die> prüfspitze ab gehts nicht mehr nur dauer AN. ich kann doch nicht die> prüfspitze vom oszi mit in das gerät einbauen ? :-)
Warum denn vom Rücken durch die Brust.
Es ist doch der Baustein der den 2803 ansteuert der Bösewicht.
Was solls da noch bringen wenn du dahinter allerlei Klimmzüge machst.
Einfach verhindern das die LED Saft haben solange der I2C nicht ferfig
gesetzt ist und schon ist der Spuk vorbei.
Ein kleine "Zeit" oder ein zusätzlicher Ausgang vom Prozessor welche die
Versorgung für die LED schaltet reicht aus.
BC327 und zwei Widerst.
Kurt
Ein Pull-down Widerstand (47k) am EINGANG des ULN2803 hält dessen
Ausgang solange auf "nichtdurchgeschaltet", bis ein definierter
HighPegel von der davorhängenden Elektronik ausgegeben wird - also für
die Zeit des Resets.
i5009 wrote:
> Ein Pull-down Widerstand (47k) am EINGANG des ULN2803 hält dessen> Ausgang solange auf "nichtdurchgeschaltet", bis ein definierter> HighPegel von der davorhängenden Elektronik ausgegeben wird - also für> die Zeit des Resets.
Das "Problem" ist doch das eine satte Eins ankommt solange der I2C nicht
gesetzt wurde.
Was soll da ein Ableitwiderstand bringen?
Ausserdem ist der ja sowieso schon vorhanden
3k von Gnd zur Basis des Powertransistors, von da ein 7,2k zur Basis des
Treibertransistors.
Ein 2,7k bildet den Strombegrenzerwiederstand, die Kombination der
Widerstände stellt die Schwellenspannung ein.
http://www.onsemi.com/pub_link/Collateral/ULN2803-D.PDF
Blatt 4
Kurt
und die allereinfachste Lösung: UDN2595 statt 2803 einsetzen. Pinout
passt fast (nur 5V müssen noch dran).
Ausgang L-Aktiv, wenn Eingang aktiv L.
Und weg das ganze Gerassel drumherum :-)
Sven Pauli wrote:
> Nur so zu meinem eigenen Verständnis: Welchen Sinn genau ergibt es,> hinter ein Transistorarray noch einen Transistor zu schalten...?
Eigentlich keinen, es sei denn man will (muss) das Signal nochmal
umdrehen.
Kurt
Kurt Bindl wrote:
> Sven Pauli wrote:>> Nur so zu meinem eigenen Verständnis: Welchen Sinn genau ergibt es,>> hinter ein Transistorarray noch einen Transistor zu schalten...?>> Eigentlich keinen, es sei denn man will (muss) das Signal nochmal> umdrehen.
Wärs dann net irgendwie sinnvoller, das Signal am Eingang des Arrays
umzudrehen? Sonst hab ich schon mein Array mit "Leistungs"-Transen und
klemm dahinter noch eine Leistungstranse...?!
> Wärs dann net irgendwie sinnvoller, das Signal am Eingang des Arrays> umzudrehen? Sonst hab ich schon mein Array mit "Leistungs"-Transen und> klemm dahinter noch eine Leistungstranse...?!
Sicherlich, noch dazu geht das per SW.
Kurt
natürlich wäre es am einfachsten eine neue leiterplatte zu machen und
die signale gleich am anfang zu drehen.
aber sie ist groß und umfangreich.
das der eindruck entsteht es wird über i2c und einem uln nur eine led
geschaltet kann sein. ich habe aber nur einen ausschnitt des problems
beleuchtet der momentan relevant ist und vereinfacht.
ich wollte die leiterplatte nicht nocheinmal umdesignen und suche eine
unkomlizierte lösung. daher ist es egal ob ein transistor noch einen
transistor schalten soll.
der beste eingriffspunkt ist eine flachbandkabelverbindung von der
steuerplatine zur gesteuerten platine. die verbindung ist dann
vereinfacht gesagt vom uln zu den leds die an plus liegen.
das flachbandkabel soll unterbrochen werden und dazwischen soll eine
platine die den job erledigt. denn noch "zehn" leitungen unten an die
platte oder an die chips zu löten und zich kreuzverbindungen zu
erstellen bin ich kein fan von.
wirklich interresant wäre vom µC explizit die "plus"-verbindung, die
auch über das flachband kommt zu oder abzuschalten. allerdings müßte man
dafür wirklich eine leitung vom port auf die zusatzplatine ziehen.
wie gesagt. ziemlich banal. der hexinverter machts problemlos. da ich
leider 7 signale negieren muss fehlt mir eine idee für das 7. signal.
noch einen hexinverter zu integrieren halte ich dann doch für zuviel.
das muss doch auch irgendwie diskret gehen.
Hallo,
wenn Du das schon unbedingt so machen willst, warum nicht einfach einen
2. ULN2803 dahinter? Ausgang an Eingang, Verbindung per PullUp so um
1-5k nach + und fertig. Wenn Du für die Widerstände dann noch ein 8x3,3k
SIL-Array nimmst ist nichtmal viel zu löten...
Gruß aus berlin
Michael
Hallo
"Viel Lärm um Nichts"
ULN 2803 wenn nicht auf Sockel, danN setzen.
Jetzt kannste alles über die Fassung Adaptieren und Testen.
Wurde früher ständig gemacht, aber auch heute noch.
MfG
das dumme, den habe ich als smd draufgelötet, den uln 2803.
hallo michael,
das klingt gut. das werde ich gleich mal testen. ist zwar pure
verschwendung aber sehr simpel zu lösen.
crazyhorse, udn2595 auch gute idee. wo bekommt man den ? bei reichelt
finde ich nix. gibts auch sowas von texasinstruments?
ne, aber bei mir :-)
Stammen noch aus der Zeit, als ich viel mit den 51gern gemacht habe, die
internen pullups steuerten im Reset-Zustand des MC alle Lasten an - das
ist nicht immer gewollt:-)
Heute setze ich sie hauptsächlich wegen der wesentlich geringeren
Sättigungsspannung ein, ist eben kein Darlington im üblichen Sinn.
Sind mittlerweile schwierig zu bekommen, Allegro hat die Produktion
eingestellt, soweit ich weiss ersatzlos.
Aber es gibt noch genug davon, und ich habe auch noch paar 100 Stk.
Hallo,
habe derzeit das gleiche Problem und bin noch auf den HC640 gestoßen,
ist aber etwas mehr als ein Inverter (Bus-Transceiver). Vielleicht wäre
das noch etwas.
Aber die Lösung einfach noch einen 2. ULN2803 zu nehmen, finde ich noch
am praktischsten, zumal die natürlich auch billiger sind.
Die Spannung vom µC erst nach dem "Hochfahren" freizuschalten ist auch
aufwendig und in meinen Augen nur ein Workaround. Die Schwäche des PCF
zu kompensieren sollte nicht die Aufgabe des µC sein. Die Relaiskarte
kann ja auch örtlich weiter entfernt sein und mit einer zusätzlichen
Schaltleitung für das Versorgungsrelais ist das dann kein I2C/TWI mehr.
Eine andere Lösung (für mich) wäre noch statt des PCF einfach auch via
I2C einen kleinen Atmega zu verwenden, der zudem noch billiger ist. Aber
ich habe jetzte die PCF's gekauft und will damit rumspielen.
Grüße
Jörg
vielen dank allen erstmal fuer die beitraege.
hatte ziemlich viel zu tun, das projekt lag ein bischen auf eis ist
abernoch aktuell. nachdem ich ein paar sachen ausprobiert habe melde ich
mich hier wieder.
groovie