Archiv verlassen und diese Seite im Standarddesign anzeigen : RNBFRA 1.2 - Funktioniert nach Aufbau nicht
Hallo,
wir haben uns erst ein Board des RNBFRA 1.2 fertigen lassen und komplett bestückt. Leider funktioniert es nicht.
Lötstellen - alle kontrolliert - OK
Anleitung studiert - OK
Hier nähere Infos zum Board:
http://www.mikrocontroller-elektronik.de/rnbfra-roboterboard-mit-motortreibern/
Aber bereits das erste Beispielprogramm (LED Lauflicht) ohne Erfolg.
Laut Anleitung sollte anfangs die 4 LEDs leuchten, leider nein. Lediglich die Powerlampe.
Nach laden des ersten Beispielprogramms zum Testen unter BASCOM gehen die 3 Leuchtdioden des PCF3 zwar an, aber kein Lauflicht.
Was können wir noch tun? Jemand einen Tipp?
Da wir direkt mehrere Platinen haben fertigen lassen, wurde von einer unabhängigen Person noch ein Board zusammengelötet:
Genau das selbe Verhalten!!!
Die Bilder der Anleitungen für Board 1.2 stimmen auch nicht genau mit dem Platinenlayout überein. Wir haben das Board 1.22. Liegt es daran?
Sind für jede Hilfe dankbar.
Vielen Dank und Gruß,
Klaus
oberallgeier
15.01.2017, 09:14
Hallo Klaus,
willkommen im Forum.
.. RNBFRA 1.2 fertigen lassen und komplett bestückt. Leider funktioniert es nicht .. sollte anfangs die 4 LEDs leuchten, leider nein ..Welcher Controller ist drauf; der mega16 ? Ich habe kein RNBFRA 1.2 und will mich erstmal nicht durch die Anleitung quälen. Ich habe ne RN-Control - anfangs mit mega16 und vermute, dass hinter Deiner Platine ne ähnliche Entwurfsstrategie liegt - zumindest was die LED-Beschaltung betrifft; btw: an welchen Pinnen hängen die LEDs ? Der m16 - und dessen kompatiblen Brüder (m32, m644, m1284) wollen gerne dass man die JTAG-Fuse abschaltet. Hast Du das gemacht? Tut man das nicht, so funktionieren alle möglichen Aktionen an einigen Pinnen von PORTC nicht - oder seltsam.
Hallo oberallgeier,
vielen Dank für Deine schnelle Antwort.
ja, wir verwenden einen Atmega32. Das mit dem JTAG Fuse haben wir berücksichtigt. Dies war auch nötig, um die Schrittmotoren ans Laufen zu bekommen, da diese über die Ports angegesteuert werden.
Am Board gibt es drei PCFs: PCF8574 AP , also Porterweiterungen. Diese werden über vom Atmega32 über I2C angesprochen. Die Adressen haben wir richtig eingestellt und die Signale mit einem Osci überprüft.
Die PCFs werden auch sauber angesprochen und schalten durch. I2C funktioniert also.
Beim PCF3 PCF8574 AP, der für Energieeinstellungen benutzt wird und über 3 LEDs zur freien Verfügung verfügt funktioniert auch.
Unsere Probleme liegen beim PCF1 PCF8574 AP. Dieser steuert die 8 Powerports Ausgänge (500mA möglich). Diese können über I2C über den PCF1 ein- und ausgeschaltet werden. Läuft folgendermassen: Wir senden über I2C einen 8 bit Wert, der je nach gesetztem Bit den jeweiligen Port an- oder ausschaltet. Soweit gut. Dies funktioniert auch, der PCF1 schaltet die Ausgänge durch. Nun liegen an 4 von den Powerports Leuchtdioden, um zu sehen, ob diese an- oder aus sind.
Diese funktionieren nicht. Damit die 500mA geliefert werden können, liegen die Ausgänge natürlich nicht an dem PCF1, sondern es wird eine Darlingtonschaltung auf dem Board verwendet: ULN2803A wird dafür eingesetzt.
Nun das Problem:
Obwohl der PCF1 schaltet, gehen die Leuchtdioden nicht an, dass heisst die Powerports funktionieren nicht.
Nach bisheriger Untersuchung stellt es sich für mich folgendermassen dar:
Wir haben festgestellt, das am PCF1 keine 5 Volt herauskommen (Eingangsspannung ist 5V), sondern etwa nur 3,2 Volt. Wenn wir den ULN2803A aus der Fassung nehmen, dann liegen aber saubere 5V am Ausgang an.
Daher haben wir dann OHNE den ULN2803 über die Fassung GND angelegt und siehe da, die Leuchtdioden leuchten. also diese sind in Ordnung. Wir haben auch schon die Chips ausgetauscht, kein Erfolg. :-(
Wir haben das gleiche Problem auf zwei Boards die von unterschliedlichen Leuten gelötet worden sind: Auf Beiden das gleiche Verhalten.
Den Test der Ports haben wir mit dem mitgelieferten Beispielprogramm 1 durchgeführt mittels BASCOM. Die 4 LEDs sollten dann ein Lauflicht darstellen, wie erwähnt, geht nicht.
Jetzt wissen wir nicht mehr weiter. Hat jemand eine Idee?
Vielleicht noch ein Punkt, der mir komisch vorkommt: Der bei Reichelt bestellte ULN2803A enthielt einen ULN2803G (Auf dem Tütchen stand aber sogar ULN2803A drauf). Gibt es gegebenfalls hier einen Unterschied? Was bedeutet das A oder G hinter dem Namen?
Im Netz habe ich leider keinen Unterschied mittels Datenblätter finden können.
Vielen Dank für einen Lösungsansatz, bin für jede Hilfe dankbar.
Ach ja: Falls jemand den Schaltplan (Eagle) oder Anleitung des RBNFRA nicht kennt: http://www.robotikhardware.de/download/dokurnbfra1.22.pdf
Hier ist alles zu finden.
Vielen lieben Dank,
Gruß Klaus und Nils
Searcher
16.01.2017, 19:11
Hallo,
Jetzt wissen wir nicht mehr weiter. Hat jemand eine Idee?
Kaum Ideen, fast nur Fragen :cool:
Obwohl der PCF1 schaltet, gehen die Leuchtdioden nicht an, dass heisst die Powerports funktionieren nicht.
Nach bisheriger Untersuchung stellt es sich für mich folgendermassen dar:
Wir haben festgestellt, das am PCF1 keine 5 Volt herauskommen (Eingangsspannung ist 5V), sondern etwa nur 3,2 Volt. Wenn wir den ULN2803A aus der Fassung nehmen, dann liegen aber saubere 5V am Ausgang an.
Sind die LED vom Ausgang des ULN2803 über einen Vorwiderstand nach Vcc (5V) angeschlossen oder ohne Vorwiderstand?
Den Test der Ports haben wir mit dem mitgelieferten Beispielprogramm 1 durchgeführt mittels BASCOM. Die 4 LEDs sollten dann ein Lauflicht darstellen, wie erwähnt, geht nicht.
I2C Adressjumper korrelieren mit den Adressen im Testprogramm?
Welche Adresse verwendet ihr? Aber ihr sagt ja, daß die Ausgänge des PCF richtig reagieren und eigentlich nur die Spannung an den Ausgängen des PCF zusammen bricht, wenn der ULN dran hängt.
Oder müssen auch die LEDs am ULN hängen, damit die Spannung zusammen bricht?
Ob die ULN2803 kaputt sind, kann man auch sozusagen Offline zB auf einem Steckbrett ausprobieren. Die schalten ja nur GND durch und nicht Vcc.
Vielleicht noch ein Punkt, der mir komisch vorkommt: Der bei Reichelt bestellte ULN2803A enthielt einen ULN2803G (Auf dem Tütchen stand aber sogar ULN2803A drauf). Gibt es gegebenfalls hier einen Unterschied? Was bedeutet das A oder G hinter dem Namen?
Im Netz habe ich leider keinen Unterschied mittels Datenblätter finden können.
Hab auch keinen gefunden außer, daß UNISONIC TECHNOLOGIES CO., LTD den Zusatz G verwendet und TI nicht.
Da sollte nicht das Problem sein, wenn ihr nicht gerade den 20 pinnigen IC erwischt habt. ;)
http://www.unisonic.com.tw/datasheet/ULN2803.pdf
Gruß
Searcher
oberallgeier
17.01.2017, 09:46
.. fast nur Fragen .. auf einem Steckbrett ausprobieren ..Hallo Ihr Beiden! Mehr fällt mir gerade auch nicht mehr ein. Ich selbst habe momentan einen Aufbau, der auf der "großen Platine" mit mega1284 unerklärliche, nicht reproduzierbare Störungen zeigt, teilweise!! - nur ein "Strang" - auf einem Steckbrett aufgebaut und messe den da durch, zT mit einem Rumpfprogramm im Controller. Solches Vorgehen zeigte bei mir bisher immer Erfolg. Kann ich nur empfehlen.
Hallo,
klar, dass Board wurde ja wohl schon von einigen aufgebaut und sollte jedenfalls vom Aufbau korrekt sein.
Also: Natürlich haben die LEDs einen Vorwiderstand, sie funktionieren auch, wenn ich Masse an den Ausgang vom ULN direkt halte.
I2C spricht einwandfrei an, die Adressen sind also korrekt.
Kann erst wieder am Wochenende weiter messen. Aber derzeit sieht es wohl so aus, das der ULN nicht durchschaltet.
Ich habe direkt 5V auf den Eingang gegeben (PCF1 natürlich entfernt) und trotzdem keine Masse auf dem Augang.
Schon mal ein Hinweis, tausche am Wochenende mal den ULN aus, obwohl ja das zweite Board den gleichen Fehler zeigt.
Naja, melde mich danach noch mal.
Danke für die Antworten und Gruß,
Klaus
Peter(TOO)
20.01.2017, 02:09
Hallo Klaus,
Schau doch mal ins Datenblatt!
http://www.nxp.com/documents/data_sheet/PCF8574_PCF8574A.pdf
Gegen VSS schalten die Ausgänge 10-25mA, dann fallen aber am Transistor rund 1V ab (IOL).
Gegen VDD liegt der Kurzschlussstrom bei 30-300 µA (IOH).
(Table 9., Seite 16).
(Fig 2., Seite 3)
Hier sieht man eine 100µA Stromquelle in Serie zum Ausgangs-Transistor. 100µA sind der Nominalstrom, mit den Toleranzen ergibt das die 30-300 µA.
Mit dem "write pulse" liefert der Ausgang kurzzeitig einen höheren Strom, die um Kapazitäten umzuschalten. Wird wohl aus SCL abgeleitet und wird für ein par µs sein.
Beim ULN2803A sieht es so aus:
http://www.onsemi.com/pub_link/Collateral/ULN2803-D.PDF
(Seite 2)
Bei 100 µA sperrt der Ausgangstransitor noch.
Damit 500mA am Ausgang fliessen, braucht es am Eingang 400µA gegen GND, die bringt der PCF8574 aber gar nicht!
(Figur 9., Seite 4.)
Alle Werte typisch bei 25°C! Bei anderen Temperaturen ändern sich die Parameter.
Deshalb werden die Paramter bei 500mA auch gerne mit Impulsen gemessen. z.B. 10µs ein, alle 10ms. Da beträgt die Erwärmung nur 0.1% gegenüber einem Dauerstrom.
Damit es funktioniert müssen da 1k PullUps gegen 5V eingebaut werden.
Es ist aber noch eine "Kleinigkeit zu beachten, die 500mA gelten für einen Ausgang und als Spitzenstrom.
Bei 500mA beträgt der Spannungsabfall am Ausgangstransistor um die 1.4V, das sind dann 700mW.
Da muss man rechnen um die Wärme weg zu bekommen.
T.I. ist etwas ausführlicher:
http://www.ti.com/lit/ds/symlink/uln2803a.pdf
Der Strom am GND-Pin darf maximal 2.5A betragen, das sind dann maximal 5 Ausgänge von 8, welche die 500mA gleichzeitig schalten können!
T.I. ist auch etwas ausführliches was die thermischen Daten zum Gehäuse an gibt, zumindest im Datenblatt.
Ohne Kühlung sind es etwa 70K/W.
Die maximale Kristalltemperatur liegt bei 125°C. Bei 25°C Umgebung ist das eine Differenz von 100K.
100K / 70K/W ergibt 1.4W.
Da dürfen dann maximal 2 Ausgänge gleichzeitig 500mA schalten, sonst brennt dann langsam der Kristall durch.
Bei den Datenblättern darf man nicht nur die Einleitung lesen und auch die "Maximum Ratings" geben nur An, ab welchen Grenzen das Teil kaputt geht.
MfG Peter(TOO)
Hallo Peter,
Danke für Deine Hinweise.
Wir haben nun noch einige Tests gemacht.
Nach letzten Messungen haben wir das Board sauber gelötet. (Mittlerweile haben wir 3 Boards zusammengelötet.)
Es scheint tatsächlich an der Kombination von PCF1 (I2C Expander) und dem ULN (Darington Schaltung) zu liegen.
Wir haben mittlerweile die beiden Bausteine auf ein Steckbrett aufgebaut und stellen das gleiche Verhalten wie auf dem RBNFRA 1.22 fest :-(
Wenn wir 5 Volt an den ULN legen schaltet der Baustein sauber durch (zieht 1.2 mA), am Ausgang liegt GND an und die Lampen leuchten.
Aus dem PCF1 liegen auf dem Ausgang auch 5V an.
Folglich sollte es ja funktionieren, wenn man die 5V vom PCF1 auf den ULN legt. (So wie es das RBNFRA macht.)
Aber sobald die beiden ICs so verschaltet sind (Also auf dem RBNFRA aufgesteckt oder auch beim Testaufbau unseres Steckbretts) bricht die Spannung am Ausgang auf 0.65 V zusammen!!!
Folglich liegen auch nur 0.65 V am Eingang des ULN an. Dieser kann folglich nicht durchschalten.
Es wundert mich wirklich, dass dies bei anderen, die das Board zusammengebaut haben funktioniert.
1. Ist es mit der Versionsänderung auf Board 1.22 etwas modifiziert worden an dieser Stelle? Wer hat noch alten Schaltplan von Board 1.1 oder 1.2 für mich?
2. Liegt es vielleicht wirklich an dem neueren Typ PCF 8574AN den wir im Gegensatz zum PCF 8574 AP verwendet haben? Den PCF 8574 AP gibt es aber nicht mehr zu kaufen! Vom Layout sind beide gleich.
Was könnte diese Verhalten bewirken?
Danke für jeden Tipp, wie wir hier noch vorgehen können?
Du schreibst zwar, dass das gar nicht funktionieren kann, aber wir haben das Board ja nicht selbst so konstruiert und haben die Eagle Files so produzieren lassen.
Morgen werde ich aber mal genauer das Datenblatt noch mal studieren und das mit dem Pullup auf dem Steckbrett ausprobieren.
Gruß Klaus
Peter(TOO)
22.01.2017, 01:19
Hallo Klaus,
Mach mal die PullUps rein und es wird funktionieren. So 470 Ohm bis 1k wird passen.
Hier: http://www.mikrocontroller-elektronik.de/i2c-relaisboard/
Wird der UDN2981 verwendet, der schaltet mit 200µA sicher durch. Du verwendest den ULN2803.
Der PCF8574 kann die von dir gemessenen 1.2 mA am Ausgang nun mal nicht bringen!
Typisch sind es 100µA, praktisch etwas zwischen 30-300 µA, je nach Exemplar und Temperatur.
100µA sind aber nur etwa 1/10 von 1.2mA!
MfG Peter(TOO)
Searcher
22.01.2017, 16:57
Hallo,
ich habe bei mir einen ULN2803A von Allegro gefunden und einige Messungen gemacht. Aufbau auf Steckbrett: Vcc=5,11V. Nur ein Ein-/Ausgang und GND des ULN2803A beschaltet. Trimmpoti 50k am Eingang nach Vcc. Am Ausgang LED (Uf=2V) über 100 Ω an Vcc.
Um die LED durch den Vorwiderstand mit 20mA zu treiben (Uf dabei 2,04V) sind etwa 114µA am Eingang des ULN notwendig. 100µA sind so wenig, daß man die LED nicht mehr glimmen sieht. Trimmpotieinstellung waren 30k (114µA) bzw 38k (100µA).
2. Liegt es vielleicht wirklich an dem neueren Typ PCF 8574AN den wir im Gegensatz zum PCF 8574 AP verwendet haben? Den PCF 8574 AP gibt es aber nicht mehr zu kaufen! Vom Layout sind beide gleich.
Für mich liefert der PCF8574 von NXP zu wenig Strom. Nach NXP Datenblatt (http://www.nxp.com/documents/data_sheet/PCF8574_PCF8574A.pdf)ist im High-Zustand des Ausganges nur eine Stromquelle mit 100µA aktiv. Es gibt von Texas Instruments auch einen PCF8574. Nach einem Diagramm im Datenblatt von TI (http://www.ti.com/lit/ds/symlink/pcf8574.pdf) kann der eine Menge mehr Strom im High-Ausgangszustand liefern.
Ich würde vorschlagen, auch mal den PCF von TI auszuprobieren.
Gruß
Searcher
oberallgeier
22.01.2017, 18:07
.. 1. Ist es mit der Versionsänderung auf Board 1.22 etwas modifiziert worden an dieser Stelle? ..Hallo Klaus,
hattest Du schon mal hier nachgesehen (http://www.mikrocontroller-elektronik.de/rnbfra-roboterboard-mit-motortreibern/) - und vor allem nachgefragt?
Peter(TOO)
22.01.2017, 21:52
Hallo Searcher
Für mich liefert der PCF8574 von NXP zu wenig Strom. Nach NXP Datenblatt ist im High-Zustand des Ausganges nur eine Stromquelle mit 100µA aktiv. Es gibt von Texas Instruments auch einen PCF8574. Nach einem Diagramm im Datenblatt von TI kann der eine Menge mehr Strom im High-Ausgangszustand liefern.
Wie kommst du zu diesem Trugschluss?
IOHT P port transient pullup current -1mA?
Das ist nur ein Impuls, für ein paar µs. Dies habe ich schon ganz am Anfang in einem Post beschrieben.
Darüber steht aber:
IOH P port 30-300 μA
Also, entweder den UDN2981 oder Pullups verwenden.
MfG Peter(TOO)
Searcher
23.01.2017, 06:30
Hallo,
Output HIGH:The master writes 1 to the register. There is an additional ‘accelerator’ or
strong pull-up current when the master sets the port HIGH. The additional strong pull-up
is only active during the HIGH time of the acknowledge clock cycle. This accelerator
current helps the port’s 100µA current source make a faster rising edge into a heavily
loaded output, but only at the start of the acknowledge clock cycle to avoid bus
contention if an external signal is pulling the port LOW to VSS/driving the port with
logic 0 at the same time. After the half clock cycle there is only the 100 µA current
source to hold the port HIGH.
Im letzten Satz steht, daß nach High-Schalten des Ausgangs nach der halben I2C Taktperiode nur noch die 100µA Stromquelle aktiv ist.
Im TI Datenblatt fehlt die Eindeutigkeit. Dort kann man zwar folgendes finden:
An additional strong pullup to VCC allows fast rising edges into heavily loaded outputs. This device turns on when an output is written high and is switched off by the negative edge of SCL. The I/Os should be high before being used as inputs. und
The power-on reset circuit resets the I2C-bus logic with VCC < VPOR and sets all I/Os to logic high (with current source to VCC)
Dort steht daß der Port nach nach Reset durch die Stromquelle High ist, aber nicht genau, welcher Strom nach I2C-High-Schreiben des Ports wie bei NXP zur Verfügung steht.
Mir ist das nicht eindeutig genug und in Verbindung mit den Diagrammen aus "6.8 Typical Characteristics wie:
32368 oder IOH aus 32369
Könnte man meinen, daß mehr als 100µA zur Verfügung stehen.
Zugegeben ein Strohhalm aber das RNBFRA Board wurde doch mal fertig verkauft, und muß doch auch mal an der, in diesem thread angesprochenen Stelle funktioniert haben.
Für mich wäre das ausreichend genug, trotz nicht so rosiger Erfolgsausichten, auch mal einen PCF8574 von TI auszuprobieren.
NXP Datenblatt: http://www.nxp.com/documents/data_sheet/PCF8574_PCF8574A.pdf
TI Datenblatt: http://www.ti.com/lit/ds/symlink/pcf8574.pdf
Gruß
Searcher
Peter(TOO)
23.01.2017, 17:41
Für mich wäre das ausreichend genug, trotz nicht so rosiger Erfolgsausichten, auch mal einen PCF8574 von TI auszuprobieren.
NXP Datenblatt: http://www.nxp.com/documents/data_sheet/PCF8574_PCF8574A.pdf
TI Datenblatt: http://www.ti.com/lit/ds/symlink/pcf8574.pdf
In Beiden datenblättern ist auch ein Schaltschema der Ausgangsstufe enthalten.
Aber wieso bringt es keiner fertig einmal die Datenblätter vom UDN2981 und ULN2803 zu vergleichen?
MfG Peter(TOO)
Zugegeben ein Strohhalm aber das RNBFRA Board wurde doch mal fertig verkauft, und muß doch auch mal an der, in diesem thread angesprochenen Stelle funktioniert haben.
Für mich wäre das ausreichend genug, trotz nicht so rosiger Erfolgsausichten, auch mal einen PCF8574 von TI auszuprobieren.
Hi,
genau, ich kann euch nur sagen das die Schaltung / Leiterplatte mit den aufgeführten Bauteilen immer problemlos funktioniert hat, nicht nur viele Kunden haben die genutzt sondern auch ich habe etliche Boards in Benutzung gehabt. Aber in der Tat scheint es wie bereits beschrieben an dem PCF8574-Typ zu liegen, hier werden tatsächlich jetzt von verschiedenen Herstellern unterschiedliche Ausgangsströme angegeben. Ich würde daher auch zu dem PCF von Texas Instruments (bekommt man beispielsweise z.B. bei Farnell (PDF (http://www.farnell.com/datasheets/2001545.pdf?_ga=1.56517103.51422533.1479468135)) raten, der liefert laut Datenblatt genügend Leistung, andere liegen im Grenzbereich.
Ach eins noch: Achte darauf das du den Ausgangsport bei deiner Erfolgskontrolle (Spannungsmessung) ein wenig belastest. Soweit ich mich erinnere kann es bei unbelastetem Ausgang sein das er nicht schaltet und du dann ein falsches Ergebnis misst
Du kannst ja mal melden wenn es klappt, ich kann dann Hinweis in die Bauteileliste aufnehmen.
Mfg
Frank
Hallo,
erst mal super vielen Dank für Eure Mühe und Eure Antworten.
Folgendes: Ich habe die Bauteile gemäss Bauteilliste bei Reichelt bestellt und die Beschriftung
auf den gelieferten Tüten entsprach auch dem Bestellten Teilen. Leider liefert
Reichelt dann nicht den exakten Typ, sondern baugleich. Erst mal sucht man
dann erst mal als Anfänger den Fehler im Board.
Mittlerweile habe ich es nun wie folgt hinbekommen:
Tatsächlich funktioniert der PCF1, wenn ich an den Eingang des ULN einen Pullup auf 5V setze.
Ich habe ein Widerstandsnetzwerk (8 Wiederstände mit in die Fassung des PCF geklemmt und
den Anschluss (9. Pin) dann mit einem Kabel verlötet, der an 5 Volt angeschlossen ist.
Nun funktioniert das Bascom Testprogramm 1 einwandfrei und der ULN schaltet durch.
Vielleicht sollte man einen Hinweis hier in der Beschreibung des Boards geben, bzw. bei einer eventuellen Änderung des Boards auf eine neuere Version dies direkt in die Schaltung integrieren.
Vielen Dank für die Tipps hier im Forum.
Jetzt kämpfe ich an der nächsten Baustelle, den PCF3 über I2C mit Atmel Studio 7 anzusprechen ;-).
Liebe Grüsse,
Klaus
Peter(TOO)
29.01.2017, 12:45
Hallo Klaus,
[QUOTE=kkronig;634707] Ich habe die Bauteile gemäss Bauteilliste bei Reichelt bestellt und die Beschriftung
auf den gelieferten Tüten entsprach auch dem Bestellten Teilen. Leider liefert
Reichelt dann nicht den exakten Typ, sondern baugleich.[QUOTE]
Die ULN und UDN sind nicht baugleich!
Die hätte ich zurückgeschickt.
Die sind etwa so baugleich wie ein alter VW Käfer und ein alter Porsche.
Baugleich bedeutet, dass im Datenblatt das Selbe steht. Die Bezeichnung kann dann je nach Hersteller unterschiedlich sein.
Je nach Anwendung spielen manche Parameter keine Rolle, in anderen Fällen sind sie genau das Problem.
Manchmal sind auch baugleiche Bauteile nicht wirklich baugleich.
z.B. bei den 4000er Serie. Die von Fairchild waren schneller als diejenigen der restlichen Hersteller. In nicht ganz sauberen Schaltungen haben sie dann nicht funktioniert.
Ein anderes Beispiel sind der LF355, LF356 und LF357, ein Operationsverstärker. Diese drei haben meist auch ein gemeinsames Datenblatt. Grundsätzlich unterscheiden sie sich nur in der Geschwindigkeit und sind sonst identisch. Allerdings neigt der schnellste (LF357) sehr stark zum Schwingen.
Hinzu kommt jetzt noch, dass es die auch noch als LF155, LF156, LF157, LF255, LF256 und LF257 gibt. Hier legt die erste Ziffer allerdings nur den Temperaturbereich fest, sonst sind sie identisch zu den 300er.
Das mit den Pullups habe ich dir schon in meiner ersten Antwort geschrieben, das war Post #7.
MfG Peter(TOO)
Hallo Peter,
danke für Deine Antwort. Ich habe keinen ULD von Reichelt bekommen (den hätte ich sofort reklamiert), sondern:
1. Ich habe von Reichelt einen ULN8574P anstelle einen ULN8574A bekommen.
(Obwohl auf dem Tütchen ULN8574A stand, ging ich vom gleichen Typ aus, dachte es wäre vielleicht nur ein anderer Lieferant).
Für einen Laien wie mich, sahen die vom Datenblatt erst mal gleich aus (Bevor ich von Euch über die mA aufgeklärt worden bin).
2. Ich verwende Typ PCF 8574AN, den wir im Gegensatz zum PCF 8574AP bei Conrad bestellt haben, da der PCF 8574AP nicht zu bekommen war (Weder bei Reichelt, noch bei Conrad. Habe ich mittlerweile aber mal in China bestellt, Lieferung dauert aber noch eine Weile). Auch hier konnte ich erst mal keinen Unterschied finden. (Auch wieder natürlich etwas andere Werte bei den mA).
Das weitere war ein Lernprozess: Erst sucht man den Fehler beim Löten, dann bei den Bauteilen, fängt an zu messen und fand zum Glück fachkundige Hilfe bei Euch.
Der Tipp mit dem Pullup war prima, habe ich ja nun auch eingebaut. Das Board funktioniert nun mit dem eingeklemmten Widerstandsnetzwerk als Pullup am ULN Eingang nun prima. (ca. 4,6 kOhm habe ich verwendet).
Ist natürlich nun etwas unschön, dass man die fertige Schaltung nachträglich so modifizieren muss, habe aber auch einiges dadurch gelernt ;).
Wenn ich noch die "originalen" Bausteine (wie im Board beschrieben) erhalte, werde ich dann Euch aber noch mal posten, was daraus geworden ist.7
Vielleicht haben ja andere auch mal dieses Problem.
LG,
Klaus
Hallo Searcher,
Hallo,
ich habe bei mir einen ULN2803A von Allegro gefunden und einige Messungen gemacht. Aufbau auf Steckbrett: Vcc=5,11V. Nur ein Ein-/Ausgang und GND des ULN2803A beschaltet. Trimmpoti 50k am Eingang nach Vcc. Am Ausgang LED (Uf=2V) über 100 Ω an Vcc.
Für mich liefert der PCF8574 von NXP zu wenig Strom. Nach NXP Datenblatt (http://www.nxp.com/documents/data_sheet/PCF8574_PCF8574A.pdf)ist im High-Zustand des Ausganges nur eine Stromquelle mit 100µA aktiv. Es gibt von Texas Instruments auch einen PCF8574. Nach einem Diagramm im Datenblatt von TI (http://www.ti.com/lit/ds/symlink/pcf8574.pdf) kann der eine Menge mehr Strom im High-Ausgangszustand liefern.
Ich würde vorschlagen, auch mal den PCF von TI auszuprobieren.
Gruß
Searcher
Leider wird der von TI meines Wissens nun nicht mehr hergestellt, wie ich jetzt bei Farnell.com gelesen habe.
Es gibt den ULN8574AP nur von NXP zu kaufen.
Danke Dir für Deinen Mühe,
LG,
Klaus
Searcher
30.01.2017, 11:27
Leider wird der von TI meines Wissens nun nicht mehr hergestellt, wie ich jetzt bei Farnell.com gelesen habe. Es gibt den ULN8574AP nur von NXP zu kaufen.
Hallo Klaus,
sicher? Woher stammt die Info. Einen ULN8574AP kann ich nicht finden. Verwechselung?
Der PCF8574A von Texas Instruments wird aber bei vielen Anbietern, nicht nur Conrad oder Völkner angeboten.
https://www.voelkner.de/products/595187/Texas-Instruments-Schnittstellen-IC-E-A-Erweiterungen-PCF8574AN-POR-IC-100-kHz-PDIP-16.html?frm=ffs__pcf85
https://www.conrad.de/de/schnittstellen-ic-e-a-erweiterungen-texas-instruments-pcf8574an-por-ic-100-khz-pdip-16-1047948.html?gclid=CJWprfzR6dECFesW0wodFO4HJw&insert_kz=VQ&hk=SEM&WT.srch=1&WT.mc_id=google_pla&s_kwcid=AL!222!3!173789970611!!!g!!&ef_id=WI8SvwAAARwGn@b7:20170130101735:s
Der PCF8574 ohne A am Ende wird, soweit ich gesehen habe, teurer verkauft.
Gruß
Searcher
Peter(TOO)
30.01.2017, 13:06
Hallo Klaus,
Mit Typenbezeichnungen hast du es nicht so.
Einmal ist es ein ULN2803A
Dann wieder ein UDN2981
und einen ULD gibt es gar nicht!
Was hast du nun wirklich verbaut?
Die ULN-Familie geht von 2981 bis 2984.
Die UDN-Familie besteht aus dem 2803 und 2804.
Alle sind für 500mA ausgelegt und haben eine identische Pin-Belegung.
Der Unterschied liegt darin, dass die UDN gegen Masse und die ULN gegen V+ schalten.
Innerhalb der Gruppe unterscheiden sie sich in der Spannung, bei welcher sie schalten, bzw. sie sind auf bestimmte Logik-Familien ausgelegt und in der maximal zulässigen Spannung, welche geschaltet werden kann.
Ein weiterer Unterschied zwischen UDN und ULN besteht noch in den Eingangsströmen.
Wir können nicht wissen, was du da jetzt wirklich vor dir hast!
Es ist auch egal was du bestellt hast, wichtig ist was auf den ICs steht!
MfG Peter(TOO)
Hubert.G
30.01.2017, 17:55
Die ULN-Familie geht von 2981 bis 2984.
Die UDN-Familie besteht aus dem 2803 und 2804.
Alle sind für 500mA ausgelegt und haben eine identische Pin-Belegung.
Der Unterschied liegt darin, dass die UDN gegen Masse und die ULN gegen V+ schalten.
Innerhalb der Gruppe unterscheiden sie sich in der Spannung, bei welcher sie schalten, bzw. sie sind auf bestimmte Logik-Familien ausgelegt und in der maximal zulässigen Spannung, welche geschaltet werden kann.
Das hier geschriebene solltest du aber noch mal überdenken.
Peter(TOO)
30.01.2017, 19:39
Das hier geschriebene solltest du aber noch mal überdenken.
Jo, sorry, da sind ULN und UDN vertauscht.
Kommt davon, wenn man von der quengelnden Freundin unterbrochen wird! :-(
Allerdings habe ich nicht damit angefangen, die Typen durcheinander zu werfen :-P
MfG Peter(TOO)
Hallo Peter, hallo Searcher,
zwischendurch war ich auch etwas irritiert. Bin neu in dem Bereich, mittlerweile habe ich aber viel gelesen in den Datenblättern, Eure Erklärungen versucht nachzuvollziehen, mit dem Osci nachgemessen und auch Steckbrett Versuche angestellt.
Folgendes einmal noch mal nach den ganzen Diskussionen kompakt zusammengefasst zur Klarstellung:
1. Bestellung der Bauteile:
Wir haben alle Teile gemäß Bestellliste des RNBFRA1.2 in den Warenkorb bei Reichelt, bzw. Conrad gelegt und so bestellt.
Somit haben wir alle Teile auch so verbaut, wie für das Board vorgegeben, bis auf folgende Teile:
Bestellt haben wir:
==> ULN 2803A (Darlington-Arrays, DIL-18 = TD 62083AP)
==> PCF8574AN (Schnittstellen-IC - E-A-Erweiterungen Texas Instruments POR I²C 100 kHz PDIP-16)
Anmerkung: Laut Anleitung sollte es ja ein PCF8574AP sein! Dieser ist aber nicht mehr zu bekommen (ich finde keinen:() und es für uns erst mal gleich aussah haben wir den PCF8574AN bestellt - von TI!
Gefunden habe ich den AP zwar mittlerweile bei Farnell, wenn auch in einer neueren Version, derzeit aber nicht auf Lager. Werde weiterhin versuchen ihn zu bekommen, eine getätigte Bestellung von China ist bereits auf die
weite Reise gegangen ;)
Geliefert und verbaut haben wir:
==> ULN 2803G (Darlington-Arrays) (Auf dem Tütchen bei der Lieferung von Reichelt stand zwar ULN 2803A drauf, drin war aber ein ULN 2803G, ich denke mal, dies macht keinen Unterschied.)
==> PCF8574AN von Texas Instrument (wie bestellt)
2. Ergebniss Inbetriebnahme (4 RNBFRA1.2 Boards zeichen das gleiche Verhalten -> von drei verschiedenen Personen zusammen gelötet ==> also Lötfehler ziemlich sicher auszuschliessen):
Testprogramme mit BASCOM mit folgendem Ergebnis:
Testprogramm 8 ==> PCF3 funktioniert (Schrittmotoren, Energieports): Also der PCF3 auf dem Board (PCF8574AN) wird korrekt angesprochen und somit funktioniert auch die Schrittmotorensteuerung einwandfrei.
(Anmerkung: Hier hängt auch kein ULN2803G dran!)
Testprogramm 1 ==> PCF1 funktioniert nicht (Powerports Ausgang): Der PCF1 (PCF8574AN) wird über I2C korrekt angesprochen, aber der angeschlossene ULN (ULN2803G) schaltet nicht durch.
Eigener Test der I2C Kommunikation: Ich habe zwei Boards miteinander verbunden und über I2C (Master mit Slave) kommunizieren lassen. Funktioniert einwandfrei, Datenbits werden hin- und her gesendet.
3. Lösung nach Anfrage hier im Forum:
1. Wir haben gelernt, dass der Strom vom PCF8574AN wohl begrenzt ist und nicht ausreicht, den ULN2803G zu schalten. Nach Tipp hier im Forum haben wir ein Pullup Widerstandsnetzwerk (9 Pinne, 8 Widerstände 4,7 kOhm)
in die IC-Fassung des ULN-Eingangs geklemmt, das neunte Beinchen hochgebogen und ein Kabel angelötet und mit 5V auf dem Board verbunden. (siehe Bilder Anhang)
nun funktioniert auch das Testprogramm1. Also haben wir ja erst mal das Problem gelöst, aber es ist eine unschöne Lösung mit eingeklemmten Widerstandsnetzwerk.
4. Weiteres Vorgehen:
Definitiv funktioniert der PCF1 (8574AN von Texas Instrument) NICHT mit dem ULN803G (Darlingtonschaltung). Ich sehe nur die derzeitige Möglichkeit, den PCF8574AP zu bekommen, hoffe, dass die Bestellung von China (Ali Express)
das als Inhalt hat, was ich bestellt habe, nämlich die AP-Version. Diese kann wesentlich mehr mA liefern. Da viele wohl bereits das Board mit dem AP ans laufen gebracht haben, sollte es ja dann funktionieren.
Unabhängig davon: Nach den Links von Searcher (siehe weiter oben, auch hier wird man auf den PCF8574AN geführt, die habe ich ja) habe ich etwas merkwürdiges festgestellt. Es gibt zwei Datenblätter vom PCF8574AN von Texas Instruments:
Eins von 2005 und eins von 2015: Bei dem Datasheet von 2005 sind andere I2C Adressen angegeben als beim Datasheet von 2015. Ich benutze die I2C vom Datensheet 2015, sind übrigens auch die gleichen wie im BASCOM Testprogramm.
Also diese funktionieren und sind die richtigen. Conrad bietet aber das veraltete Datasheet auf seiner Seite an, verschickt aber die neuen PCF8574AN:confused:
Also aufpassen, dass man sich das aktuelle Datasheet besorgt. Die sonstigen Kennzahlen sind bei beiden Datenblättern gleich.
Ich hoffe, nun alle Klarheiten beseitigt zu haben;)
Und entschuldige mich noch mal dafür, wenn ich mich vorher zu unklar ausgedrückt habe.
@Peter: Den ULD hatte ich nur ins Spiel gebracht, da er auf dem RN-Control Board verbaut war. Habe ich also nie benutzt. Der Unterschied zwischen ULD und ULN ist mir bewusst. Sorry, wenn das zur Verwirrung geführt hat.
Nochmal vielen Dank an alle, werde berichten, wenn ich die PCF8574AP aus China erhalte und verbaut habe.
Ansonsten kann ich nur noch mal sagen: Bitte gebt einen Hinweis in der Beschreibung des Boards an. Definitiv funktioniert es so mit dem PCF8574AN nicht und wenn dieser so schwierig zu bekommen ist, dann
bei der nächsten Version des Boards doch mal ein einen Pullup einbauen. Ich kenne mich leider nicht mit Eagle so aus, dass ich mir eine Änderung für mich zutraue.
Alle erwähnten Datenblätter des PCF8574AN (2005 und 2015) habe ich angehängt.
Viele Grüße,
Klaus
021aet04
31.01.2017, 12:14
Beim Pcf8574 gibt es 2 Varianten, den Pcf8574 und den Pcf8574A. Diese unterscheiden sich in der Adresse.
MfG Hannes
Hallo Hannes,
stimmt, handelt es sich grundsätzlich um den PCF8574A. Egal ob AN oder AP, beide haben die gleichen I2C Adressen und die funktionieren auch,
das Problem liegt nicht beim Ansprechen von I2C.
Bei den oben erwähnten Datasheets handelt es sich in beiden Fällen um die "A" Version.
Die andere Version ist nur nötig, wenn man mit den I2C Adressen nicht auskommt.
LG,
Klaus
- - - Aktualisiert - - -
Hallo Zusammen,
jetzt habe ich die Unterschiede im Datenblatt von 2005 im Gegensatz zu 2015 des PCF8574AN verstanden:
Bsp: In dem neuen Datenblatt wird Hexadresse H72 (Binär 01110010) für Write und H73 (Binär 01110011)für Read angegeben. So muss ich die in BASCOM angeben.
Dies bezieht sich auf die ganzen 8 Bits. Das LSB ist aber nur für Unterscheidung Read oder Write zuständig.
In dem alten Datenblatt wird Hexadress H39 (Binär 0111001) angegeben. Also nur 7bits: Das LSB wurde nicht mit einbezogen in die Hexberechnung, da dieses ja nicht zur Adresse gehört,
sondern nur über Read und Write entscheiden.
Dies ist der Unterschied.
Gruß,
Klaus
Peter(TOO)
31.01.2017, 16:27
Hallo,
Ein Problem bei der Geschichte ist, dass in den letzten 20 Jahren viel in der Branche umgestellt wurde.
Da haben die Manager viel Mist gebaut!
Motorola hat in den 30er Jahren mal mit Autoradios angefangen. Dann haben sie später angefangen Halbleiter zu Bauen und wurden dann einer der grossen Hersteller. Dann haben sie auch noch Handys gebaut. Irgend so ein blöder Typ fand dann, dass die Zukunft in den Handys liegt und es wurde der ganze Rest verkauft. Motorola Halbleiter wurden zu ON Semiconductor.
Fairchild Semiconductor war der Erfinder des ICs. National Semiconductor wurde etwas später gegründet. Beide stellten dann von Dioden bis zu Mikroprozessoren alles her. 1987 wurden dann Fairchild von N.S. gekauft. Irgendwer bei N.S. war der Meinung, dass mit Dioden, Transistoren und Logik-ICs kein Geld zu machen sei und man nur noch an komplexen ICs etwas verdienen kann. Also wurden alle einfacheren Halbleiter zu Fairchild ausgelagert. Seit 1997 ist Fairchild wieder ein eigenständiges Unternehmen und macht mit dem Kleinkram enormen Profit :-)
Die Siemens Halbleiter wurden in Infineon ausgelagert.
Der ganze Bauteil-Bereich von Philips wurde in NPX ausgelagert und weitere Teile an Vishay verkauft.
Die Liste ist noch lang!
Bei jedem Verkauf wurden Produkte gestrichen.
Eine andere Geschichte ist noch, dass jeder Hersteller eigene Prozesse hat um seine Halbleiter herzustellen.
Das führte z.B. zum Streit zwischen Intel und AMD. AMD hatte ein Abkommen mit Intel, dass sie die Intel-Prozessoren nachbauen durften und dabei auch Hilfe von Intel bekamen. Nun hatte AMD aber einen besseren Halbleiter-Prozess. Die entsprechenden AMD-CPUs benötigten einiges weniger an Strom als diejenigen von Intel. Entsprechend konnte AMD seine CPUs schneller takten. Dies führte dann zu Zeiten des Pentium zur Kündigung des Abkommens.
Hitachi hatte ein Abkommen mit Motorola und durfte die Motorola-CPUs nachbauen. Hitachi konnte aber EPROM-Zellen im selben Prozess mit der CPU herstellen. Zudem hatten sie auch noch einen passenden CMOS-Prozess. Den Motorola 6801 gab es dann von Hitachi als 6301 in CMOS. Hitachi hat dann auf den 6301-Chip noch Peripherie und PROM drauf gepackt, was Motorola damals nicht hin bekam. Dies führte dann zu diversen Rechtsstreitigkeiten, welche über gut 10 Jahre gingen. Hitachi hat dann Ende der 80er eigene CPUs entwickelt. Dies passte dann aber Motorola nicht. Anfang der 90er wurde dann der Rechtstreit in einem Vergleich eingestellt.
Mittlerweile verkauft Hitachi aber keine CPUs mehr. Zusammen mit Mitsubishi, und später noch mit NRC, wurde Renesas gegründet. Anfangs hat jeder seine Prozessoren in den Renesas-Topf geworfen und alle Familien konnten unter dem Namen Renesas bezogen werden. Seit gut 10 Jahren versucht man nun, die Produktpalette zu straffen. Weniger erfolgreiche Familien werden nicht mehr weiter entwickelt, sind aber noch lieferbar. Hitachi-CPUs stecken in einigen ABS-Systemen und da hat keiner Lust einfach den Prozessor zu wechseln.
Bei jedem Wechsel wurde die Produktpalette umgemodelt. ICs mussten Teilweise an den Hauseigenen Prozess angepasst werden und die Datenblätter wurden auch ins hauseigene Format umgeschrieben.
Dein PCF8574 stammt eigentlich noch aus der Philips-Küche.
Die ULN/UDN-Familien gab es schon in den 70er Jahren. Ich weiss gar nicht mehr, wer diese auf den Markt gebracht hat und ob diese Firma heute noch existiert?
Das mit den Buchstaben ist auch so eine Geschichte.
Zuerst einmal sind die Typenbezeichnungen nicht international genormt und geschützt. Dies war das Problem von Intel. Eigentlich sollte der Nachfolger des 80486 der 80586 werden. Nun konnte Intel i80586 nicht als geschützte Marke eintragen lassen, eine Zahlenkombination kann nicht geschützt werden. Man musste sich etwas einfallen lassen und so kam der Name Pentium (Pente = griechisch für 5).
Da bastelt also jeder Hersteller etwas eigenes zusammen.
Ein A oder B direkt hinter den Ziffern ist oft eine verbesserte Version des ursprünglichen Bauteils, welches dann pinkompatibel ist. Grundsätzlich unterscheiden die Buchstaben hinter der Nummer aber Gehäuseformen und Temperaturbereiche.
P steht oft für Kunststoff-Gehäuse und C für Keramik.
Allerdings steht bei Manchen Herstellern C für dem Comercional Temperaturbereich und M für Mil = Militärisch. N ist dann der normale Bereich ohne weitere Anforderungen.
Bei den EPROMS gab es auch einmal Verwirrung. Bekannt sind die 2708, 2716, 2732, 2764, 27128 usw. alle 8 Bit mal xKB. Das 2708 brauchte noch 3 Betreibspannungen (+5V, -5Vund +12V). Der Nachfolger war dann der 2716 mit 3 Spannungen.
Durch verbesserte Technologie kamen manche Hersteller mit nur noch +5V aus, bezeichneten ihren Nachfolger aber auch mit 2716! Hersteller, welche beide Varianten im Programm hatten, bezeichneten die 5V-Variante mit 2516.
Da musste man höllisch aufpassen beim Bestellen, zumal beide das selbe Gehäuse benutzten.
Die 2764 gab es dann nur noch in 5V. Wobei da noch was mit einer leicht unterschiedlichen Pin-Belegung, je nach Hersteller, war.
MfG Peter(TOO)
Powered by vBulletin® Version 4.2.5 Copyright ©2024 Adduco Digital e.K. und vBulletin Solutions, Inc. Alle Rechte vorbehalten.