Forum: Analoge Elektronik und Schaltungstechnik BTS7960 IS Sensor mit abweichenden Werten.


von Martin B. (hobbyprog)


Lesenswert?

Hallo,

ich habe Probleme mit einem BTS7960 Platine.
Am L_IS und R_IS  werden völlig andere Werte ausgegeben als bei 4 Stück 
die ich seit langen im Einsatz habe.

Ich dachte zunächst an einem defekt. Der Anbieter hat aber zwei 
abweichende Angebote.
Ich hatte den mit der Zusatzbeschreibung  " For Arduino smart Car" 
gekauft.  Daher weiß ich nicht, ist der defekt oder hat der nur andere 
Sensorwerte.

https://www.ebay.de/sch/i.html?_dkr=1&iconV2Request=true&_blrs=recall_filtering&_ssn=mecklenburg8&store_name=mecklenburg8&_oac=1&_nkw=bts7960

Ich hoffe, er kennt sich jemand damit aus.

Hier noch mal eine Beschreibung was ich feststellen konnte.

https://bluethners.de/DCCProjekt/Zentrale/BTS_Fehler.html

Viele Grüße  Martin

: Verschoben durch Moderator
von Daniel P. (kenny123)


Lesenswert?

Nur so ein guess: Die Widerstände am Is-Pin sind unterschiedlich. Dann 
ändert sich auch die Spannung am Widerstand und dadurch der Signalwert. 
Das Verhältnis von Laststrom zu Sensestrom sollte etwa gleich sein.

von Martin B. (hobbyprog)


Lesenswert?

Nein die sind identisch.
von links 103, 103, (303),303,  | 103, 103, (303), 303

Das hatte ich auch zunächst vermutet.

: Bearbeitet durch User
von Daniel P. (kenny123)


Lesenswert?

Hast du die Widerstände auch mal gemessen? Markings sind ja nett, nur 
nicht immer korrekt. Der ISpin ist ein Stromausgang und braucht daher 
eine Last. Wenn die Leiterbahn zum R offen ist, dann ist die einzige 
Last der Eingangswiderstand am ADC des Arduino. Der ist so hoch, dass 
der Ausgang seine Compliance Spannung erreichen wird.

von Martin B. (hobbyprog)


Lesenswert?

Messung mit sehr billigen Multimeter!

Das gute  10,1K, 10,1k, 30,2k, 30,3k,| 10,1k, 10,1k. 30,1k, 30,1k
Schlechte 10,1k, 10,1k, 29,8k, 29,9k,| 10,1k, 10,1k, 30,0k, 29,7k
                         L_IS                        R_IS     ???
??? Welche Funktion

Ein Widerstand 29,8K = IS  tanzt aus der Reihe, aber sind 200 bis 300 
Ohm so gravierend.

Wenn ich direkt zwischen den L_IS am BTS Pin  und  R_IS  Anschluss messe 
habe ich bei beiden 20,1k

Ich habe 3 BTS in gebrauch. Zum vergleich muss ich nur die Platine 
umstecken. Ohne Last habe ich max. 1 ADC Digitalwert vom ADC, mit dem 
Problem-BTS sendet der NANO ADC 250.
Ich würde da auch nicht so viel nachfragen, aber ich habe von 3 
Anwendern ein soches Problem berichtet bekommen. Daher will ich das auf 
dem Grund gehen.

: Bearbeitet durch User
von Daniel P. (kenny123)


Angehängte Dateien:

Lesenswert?

> Ich würde da auch nicht so viel nachfragen, ...
Kein Thema, das Problem sollte lösbar sein.

>Das gute  10,1K, 10,1k, 30,2k, 30,3k,| 10,1k, 10,1k. 30,1k, 30,1k
>Schlechte 10,1k, 10,1k, 29,8k, 29,9k,| 10,1k, 10,1k, 30,0k, 29,7k

Ich würde sagen, dass die 10k für IS und slew rate sind und die 30k 
jeweils die pull-down Widerstände für die Eingänge des Buffer-ICs.
Das würde sich decken mit dem Schaltplan und den Leiterbahnen, die ich 
auf diversen Bildern im i-net gesehen habe.

Also Reihenfolge: R7,R6,R8,R2|R4,R5,R9,R3
Das würde sich auch damit decken, da du 20k misst von IS zu IS, also 2 
mal 10k in Serie, die über GND verbunden sind.

Zu der Vermutung dass es mehrere BTS7960B gibt, kann ich nur sagen, dass 
unterschiedliche RDS-ON Werte der Mosfets eigene Nummern bekommen. Also 
bleibt maximal das die ICs fake sind.

Im Datenblatt vom BTS7960 auf Seite 19 gibts noch eine Matrix wann IS 
"high" ist.
Du schreibst zwar, dass ohne Last ein Wert von 250-255 auftritt, da wäre 
aber interessant bei welchen Eingangszuständen und ob sich die Werte 
verändern oder konstant sind, ob die Versorgungsspannung z.B. einbricht 
und, und, und ... könnte nämlich auch sein, dass du einen Kurzschluss 
auf der Platine hast, oder im Current limitation mode bist.

von Daniel P. (kenny123)


Lesenswert?

Unter folgendem Link finden man ein nettes Foto von der Rückseite.
Wenn beide Kühlflächen elektrisch zum Kühlkörper durchkontaktieren, dann 
begrenzt nur mehr die interne Stromabschaltung in den Power-ICs.

https://forum.arduino.cc/t/bts7960-btn7960n-ibt-2-motor-drive-module/1142926

von Martin B. (hobbyprog)


Lesenswert?

Hallo Daniel,
danke für Deine Unterstützung.

Ich verwende den BTS7960 für eine DCC Modellbahn-Zentrale. Den Sensor 
verwende ich als Kurzschlusskennung bei ca, 4 Ampere.
Um CV Adressen auszulesen zu können, muss ich eine Stromerhöhung ab 40mA 
erkennen können.  Das funktioniert auch gut.

Ich habe aber nicht wirklich viel Ahnung, von Elektrik bzw. Elektronik. 
Ich werde mir das alles gründlich  durchlesen.
Vermutlich ist der BTS7960 kein original.  Normal habe ich ein 1K 
Widerstand von R + L_IS  nach GND geschaltet.
Wenn ein ca. 350 Ohm verwende, komme ich auf ADC Wert  100 ohne Last. 
Ja der  Wert steigt dann  auch mit dem Stromverbrauch.
Normal habe ich ca. 1 X 7.5 =  7,5 mA   ich denke bei den muss ich dann 
1 X 22  =  22mA rechnen. Ich müsste dann aber alles umprogrammieren.
weil 2 ADC Werte + schon 44mA Stromerhöhung sind. Der ADC streut auch 
ein wenig bei meiner einfachen Schaltung,

Mit der jetzigen Programmierung funktioniert das unter 350 Ohm nicht 
mehr.

Viele Grüße Martin

von Daniel P. (kenny123)


Lesenswert?

Hallo Martin,

okay verstehe. Im Datenblatt findest du auf Seite 20 den kilis Wert, das 
ist der Umrechnungsfaktor vom Laststrom auf den Sensestrom. Wie du in 
der Tabelle siehst, streut der bei 5A sehr stark. Also kann er von 3000 
bis 14000 reichen. Die 8500 sind nur ein typischer Wert und ist 
keinesfalls in Stein gemeißelt.

Ich glaube nicht, dass der BTS fake ist, sondern einfach der kilis-Wert 
nicht in dem Bereich liegt, wie die anderen Boards.
Du schreibst auf deiner Homepage, dass der eine BTS GAG35 und der andere 
GAG535 am Ende aufgedruckt hat. Die 35 und 535 sind vermutlich 
Lot-nummern von der Produktion und damit ist der GAG35 einfach stein 
alt.

von Martin B. (hobbyprog)


Lesenswert?

Hallo Daniel,
 Nur zur Information, dass ist ein Hobbyprojekt.

Ich hatte das auch schon gelesen, aber nicht wirklich verstanden.
Das Erklärt aber (für mich) nicht den so hohen Startwert. Selbst mit 350 
Ohm Pull Down liegt der noch bei 100. Den NANO habe ich mit dem 
Referenzwert 1,2 Volt 10 Bit = 1023 programmiert. Um dann nahe 0 zu 
kommen musste der Pull Down kleiner als geschätzte 20 Ohm haben.
Da keiner vorab weiß, was für ein Exemplar man bekommt, ist das nur in 
Einzelfertigung und Programmierung  zu verwenden. Kleine Abweichungen 
könnte man noch mit ein Potentiometer ausgleichen.
Ich hoffe das nicht so viele mit den Sensorwerten im Umlauf sind.
Kannst Du mir eine alternative nennen. Ich hatte auch mal an den DRV8871 
H-Bridge  gedacht.

Aber ich vermute das die auf Dauer nur 2 Ampere verträgt. Der  soll bis 
3,6 A , dass würde für eine MOBA bis Spur HO  reichen .
Den könnte ich auch gleich auf meine Platine bestücken lassen. Den 
DRV8871 bekommt man für 1 bis 2 €.
Ich habe mir zum Testen schon mal ein Modul gekauft.

https://www.ebay.de/itm/265232153482?hash=item3dc1117b8a:g:mygAAOSwMJtg8RLZ

Viele Grüße Martin

: Bearbeitet durch User
von Veit D. (devil-elec)


Angehängte Dateien:

Lesenswert?

Hallo,

so eine fertige Platine habe ich auch und ich hatte die einmal 
durchgemessen um einen Schaltplan zu erstellen. Ich habe abweichende 
Widerstandswerte zum bisher gezeigten ermittelt. Zudem gibt es diese 
eBay Platinen mit BTS7960 und BTN7960. Ob das immer noch Lagerreste sind 
die da so verbaut werden weiß ich nicht. Den der 7960 wird laut meines 
Wissens schon länger nicht mehr hergestellt und ist auch schon länger 
nirgends woanders als auf den eBay Platinen erhältlich.

von Daniel P. (kenny123)


Lesenswert?

Martin hat aber eine leicht andere Konfiguration.

Er schließt beide IS kurz und verbindet sie dann per Widerstand (350 
oder 1k) gegen GND. Parallel zu dem Widerstand ist noch ein Kondensator 
angeschlossen. Das ist auch okay so.
Interessant ist dass bei 1k Last 250 bzw 256 als Digitalwert ausgegeben 
werden und bei 350 Ohm 100.
Wenn man beides auf den Laststrom zurückrechnet, dann kommt man auf etwa 
2A.

Jetzt ist die Frage ob diese 2A tatsächlich fließen. Das sollte sich 
leicht mit einem Multimeter zwischen Netzteil und B+ messen lassen. Aber 
bitte auf den Messbereich beim Messgerät achten, mA und A sind meist 
zwei unterschiedliche Buchsen am Gerät.

von Martin B. (hobbyprog)


Lesenswert?

Hallo.

ich hatte den BTS schon beiseite gelegt:

Möchte aber noch mal einige Messwerte hier dokumentieren, zumal ich hier 
unterstützt werde.
Entschuldige bitte, falls ich nicht immer die richtigen Fachbegriffe 
finde!  Ich lerne beim Machen!

Ausgabe vom NANO328  USB > Modellbahnverwaltung - Amperemeter
Konfiguration  des ADC , 1,2V Referenz  10 Bit   Ausgabe ist der 
Mittelwert aus  64 Werten.
Der Nano bekommt die 4,5 Volt über den USB Port.
Das PWM ist als DCC Gleistreiber
https://www.nmra.org/sites/default/files/standards/sandrp/pdf/s-9.1_electrical_standards_for_digital_command_control_2021.pdf

Die beiden IS sind verbunden und direkt über ein Schutzwiderstand 220 
Ohm am NANO ADC Pin.
Ein 1 K Pull Down und zwei 332 Kondensatoren sind nach GND geschaltet.

  Beide IS ---- 220 Ohm --------------------------------ADC Nano

                           V          V

                           1K      Kondensator

                            V          V

                                 GND

Messung mit sehr billigen Multimeter!   Messstufe 200mA
DC Schaltnetzteil  an B+ B-  12.2 Volt  3,5A , Messkabel an B+

Test1:
M+ M- nicht angeschlossen
R+ L_EN     ist immer auf VCC  ca. 4,5 Volt

Messwerte:
R + LPWM   AUS
  ADC Wert = 236 /237   Stromaufnahme an B+  =3,6mA

R+  LPWM  AN als PWM    DCC Protokoll    ist eine Rechteckspannung mit 
wechselnder Polarität
  ADC Wert = 253   Stromaufnahme an B+  = 6,4 mA


Test2:
M+ M-  angeschlossen am Gleis mit einer HO Lok

Messwerte:
R + LPWM   AUS
  ADC Wert = 236 /237   Stromaufnahme an B+  =3,6mA

R+  LPWM  AN als PWM    DCC Protokoll    ist eine Rechteckspannung mit 
wechselnder Polarität
  ADC Wert = 252   Stromaufnahme an B+  = 19,4 mA

Test3:
R+  LPWM  AN als PWM    DCC Protokoll    ist eine Rechteckspannung mit 
wechselnder Polarität

Messwerte:
DCC Fahrstufe 6 von 28   |    6 um die 200mA  vom Messgerät nicht zu 
überschreiten
 ADC Wert =  255  Stromaufnahme an B+  = 153 mA   Werte Schwanken etwas 
weil die Lastregelung vom Lokdecoder arbeite.

Bemerkung:
Der ADC Wert steig bei 153 mA um ca. 3 .
Da wäre dann (153mA - 19mA = 134mA) Div 3 =   44 mA
Bei 4 Ampere theoretisch  4000 / 44 = 90  als ADC Wert + den Offset

Ich könnte wahrscheinlich den 1 K  z. B durch 2K ersetzen.
Dann ist aber der Offset 253 noch höher ? ?? aber vermutlich die ADC 
Werte gespreizter.

Ich habe aktuell noch 2 BTS die gut funktionieren. Offset ist < 6   und 
1 ADC Wert ca. 7,5mA

Da war noch die Frage nach eine alternative zum BTS.  Ich brauche 4 
Ampere, wobei mit + 2A Reserve lieber ist.

Noch mal danke für Eure Unterstützung.

Viele Grüße Martin

: Bearbeitet durch User
von Daniel P. (kenny123)


Angehängte Dateien:

Lesenswert?

Hallo Martin

Im verlinkten Bild siehst du bei einem neueren Typen, wie stark der 
kilis Wert streut. Die blaue Linie ist die ideale Kilis-Gerade und die 
roten Linien zeigen wo der reale kilis zu erwarten ist.

Bei einer Stromaufnahme von ein paar Milliampere bist du nahe dem 
Ursprung.
Nur mal so als Rechenbeispiel. Bei einer Stromaufnahme von 150mA und 
einem idealen kilis von 8500 würdest du einen Is-Strom von 18µA 
erwarten. Der Leckstrom am Isense für High side Switch active ist schon 
worst case 200µA.
Eine Halbbrücke die 43A abkann ist einfach nicht geeignet für dein 
Vorhaben.

Bei einer kurzen Suche habe ich folgenden Kollegen gefunden:
https://juergarnold.ch/arduino.html

Er benutzt einen L6203 von STM. Der kostet bei Conrad ca. 17€ und ist 
eine Vollbrücke, daher brauchst du nur ein Stück davon und juergarnold 
hat schon Arduino Code dafür.

Einen direkten Ersatz für den BTS habe ich nicht gefunden, weil in dem 
verwendeten Package leider nur hochstrom-fähige Typen verbaut werden.
Ein besserer Ersatz wäre der vom Bild verlinkte BTN7030-1EPA. Auch eine 
Halbbrücke, aber für 7A Nennstrom. Aber auch hier schwankt der 
kilis-Wert bei 20mA +/-50%. Dafür bei 2.8A nur mehr +/-8%. Der BTN ist 
eine Halbbrücke, kostet aber nur 2.4€ bei digikey. Dafür ist der Chip 
wesentlich komplexer.

Ich hoffe ich konnte helfen :)

von Martin B. (hobbyprog)


Lesenswert?

Hallo Daniel,

Danke für Deine Bemühungen.

Ich werde mir das mal alles genau ansehen.  Es ist mir dennoch 
unverständlich, dass der einen so hohen Offset > 230 bei 3.6mA ohne Last 
an M+ M-  hat. M ist noch nicht-einmal   angeschlossen.

Dann hatten ich, und auch noch einige Andere einfach nur Glück gehabt 
ein passenden BTS bekommen zu haben.
Seltsam, dass der Anbieter optisch zwei Versionen anbietet.

https://www.ebay.de/sch/i.html?_dkr=1&iconV2Request=true&_blrs=recall_filtering&_ssn=mecklenburg8&store_name=mecklenburg8&_oac=1&_nkw=bts

ich werde demnächst mal den ersten aus der Auswahl bestellen. Oder mal 
von Amazone  Mit einfachen Rückgaberecht bestellen.
Es gibt da auffällig welche mit helle und schwarze Schrauben. Meine 
brauchbaren hatten alle helle Schrauben für den Kühlkörper.

Viele Grüße Martin

: Bearbeitet durch User
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.