Hallo, ich wollte mir ein Kehrschleifenmodul bauen, was ab einem gewissem Strom (einstellbar und abgelegt im EEPROM) umschaltet. Dazu habe ich die ACS712-05 genutzt. Nach dem zusammenlöten der Platine habe ich am Ausgangspin VCC/2. Passt. Die Software berechnet einmal beim ERSTEN Start diesen Wert (weil VCC kann ja bei jedem Gerät etwas anders sein), legt es ins EEPROM ab. Dann wird die Hall-Spannung gemessen und von dem Offsetwert aus dem EEPROM vom ersten Start subrahiert. Ist nichts los ist das Ergebnis ~ 0. Würde jetzt ein Fahrzeug in den Kehrschleifenabschnitt fahren, welche falsch gepolt ist, steigt der Strom kurz an bis über die Schwelle, das Modul schaltet die Relais um und es ergibt sich nur noch der Strom der verbraucht wird < Schwelle). Jetzt wird noch immer geguckt, ob das Relais eingeschaltet ist (dann wird die Spannung je Strom kleiner) oder ausgeschaltet ist (dann steigt sie an). Davon abhängig wir dann alles berechnet. Soweit die Theorie. In der Praxis habe ich aber immer VCC/2 am Vout Pin vom ACS?! Ich habe eine Lok mit Verdampfer und Beleuchtung im Stand auf das Kehrschleifengleis gestellt, die verbraucht dann ca. 0,8A im Stand wenn Verdampfer + Beleuchtung an ist. Jetzt sollten ja ca. 80mV mehr bzw. weniger am Ausgangspin anliegen (je nach Stellung des Relais, da die digitale Gleisspannung (~20khz Signal) permanent die Polarität wechselt). Ich bin total überfragt, was das jetzt ist. Entweder sind die Chips wirklich defekt, oder die können das DCC Signal nicht vertragen (im Datenblatt steht aber eine Bandbreite von 80kHz). Würde mich über Hilfe freuen! Mit einem simplen Widerstand ist es nicht getan, da das Signal ja permanent wechselt und man 50µS auf der einen Seite Masse hat und 50µS 24V. Kennt jmd. noch einen (nach Möglichkeit) Pinkombatiblen Ersatzchip?
:
Verschoben durch Moderator
Teste den Sensor doch mal unter kontrollierten Bedingungen mit Stromquelle statt mit Verdampfer :-P Die Sensoren sind normalerweise recht robust, man sollte aber keine anderen Magnetfelder in der Nähe haben und am besten den Sensor magnetisch schirmen. Was hast du für einen Filterkondensator an Pin 6? Foto vom Aufbau wäre auch nicht schlecht.
:
Bearbeitet durch User
Matthias S. schrieb: > Teste den Sensor doch mal unter kontrollierten Bedingungen mit > Stromquelle statt mit Verdampfer :-P > Die Sensoren sind normalerweise recht robust, man sollte aber keine > anderen Magnetfelder in der Nähe haben und am besten den Sensor > magnetisch schirmen. Was hast du für einen Filterkondensator an Pin 6? > Foto vom Aufbau wäre auch nicht schlecht. Ich habe das Teil einfach mal so aufgebaut wie im Datenblatt. Was ich mich allerdings jetzt frage, liegt das falsche Ergebnis vll. doch an der Rechteckspannung des DCC Signals? Wie verhält sich der Sensor denn in dem Moment wo durch ihn Masse fließt und wie verhält er sich in dem Moment wo durch ihn die 24V fließen. Wenn er dann die Richtung dabei ändert (+24V -> Signal wird größer, GND -> Signal wird kleiner), dann könnte ich mir vorstellen, dass da im Mittel natürlich wieder Vcc/2 rauskommt. Edit: Das mit dem Verdampfer + Licht der Lok sehe ich als egal an, da dort ja auch nur ein Heizwiderstand drin sitzt + ein kleiner Lüfter der aber vernachlässigbar ist. Die Lampen sind Glühlampen. An meiner Zentrale sehe ich dort 0,8A Stromverbrauch, daher ist das eine gute Referenz.
Marius D. schrieb: > wo durch ihn Masse fließt > und wie verhält er sich in dem Moment wo durch ihn die 24V fließen Masse fliesst nicht und 24V auch nicht. Der Sensor misst keine Spannung, sondern den Strom. Deswegen doch der Vorschlag, erstmal mit Strom zu testen. Nimm dir also meinetwegen die 24V und klemme einen bekannten Verbraucher, z.B. eine Glühlampe für 24V an. DCC wird zwar aufmoduliert, sollte aber für den absoluten Strom keine Rolle spielen. Viel wichtiger ist der Aufbau des Sensors. Die Rückleitung z.B. muss weit entfernt vom Chip sein und nicht etwa unter ihm durch, sonst kompensieren sich die Magnetfelder.
:
Bearbeitet durch User
Matthias S. schrieb: > Marius D. schrieb: >> wo durch ihn Masse fließt >> und wie verhält er sich in dem Moment wo durch ihn die 24V fließen > > Masse fliesst nicht und 24V auch nicht. Der Sensor misst keine Spannung, > sondern den Strom. Deswegen doch der Vorschlag, erstmal mit Strom zu > testen. Nimm dir also meinetwegen die 24V und klemme einen bekannten > Verbraucher, z.B. eine Glühlampe für 24V an. > DCC wird zwar aufmoduliert, sollte aber für den absoluten Strom keine > Rolle spielen. Viel wichtiger ist der Aufbau des Sensors. Die > Rückleitung z.B. muss weit entfernt vom Chip sein und nicht etwa unter > ihm durch, sonst kompensieren sich die Magnetfelder. Ja mit Gnd und 24V meinte ich eher im übertragenem Sinn. DCC ist keine Mischspannung, das ist nur ein Rechtecksignal. Aufgebaut aus einer H-Brücke die dann linke Seite/rechte Seite wechselt in ca. 50µS Takt. Unter dem Chip geht nur VCC her. Er sitzt aber direkt unter dem Relais, allerdings, so dachte ich mir das, schaltet das ja nur sehr selten und dann nur einmal. in dem Moment ist eine Pause der Messung von 250ms eingeplant, bis sich das ggf. wieder stabilisiert. Wie meinst du das mit der Rückleitung? Unten ist der DCC-Strom und nach oben weg geht die Sensorleitung zum µC.
Matthias S. schrieb: > Marius D. schrieb: >> wo durch ihn Masse fließt >> und wie verhält er sich in dem Moment wo durch ihn die 24V fließen > > Masse fliesst nicht und 24V auch nicht. Der Sensor misst keine Spannung, > sondern den Strom. Deswegen doch der Vorschlag, erstmal mit Strom zu > testen. Nimm dir also meinetwegen die 24V und klemme einen bekannten > Verbraucher, z.B. eine Glühlampe für 24V an. > DCC wird zwar aufmoduliert, sollte aber für den absoluten Strom keine > Rolle spielen. Viel wichtiger ist der Aufbau des Sensors. Die > Rückleitung z.B. muss weit entfernt vom Chip sein und nicht etwa unter > ihm durch, sonst kompensieren sich die Magnetfelder. Ich habe es durchgetestet, diesmal analog. Analoge Spannung auf mein Kehrschleifenmodul gegeben. Eine Lok aufs Gleis gestellt und einen Stein davor verkeilt. Mein analoger Trafo kann nur 1A, deswegen war das gut zu sehen, dass die Chips funktionieren. Die Lok fährt los, die Spannung am ACS sinkt, bei 1.2A sackt die Spannung ein bis auf 7V, für die Lok zu wenig aber die Sensorspannung liegt wieder bei Vcc/2. Es liegt also def. an dem DCC-Strom. Das muss sich kompensieren.... Wie messe ich den denn jetzt nun?!
Zupermax schrieb: > Ist DDC nicht eine Rechteck Wechselspannung? > Schau den Output vom ACS712 mal mit dem KO an... Ich kann es mir mal angucken, ich denke aber es wird ebenfalls ein Rechtecksignal am Ausgang ausgegeben, könnte ich mir vorstellen.
Marius D. schrieb: > Mein analoger Trafo kann nur 1A, deswegen war das gut zu sehen, dass die > Chips funktionieren. Die Lok fährt los, die Spannung am ACS sinkt, bei > 1.2A sackt die Spannung ein bis auf 7V, für die Lok zu wenig aber die > Sensorspannung liegt wieder bei Vcc/2. Das liest sich für mich recht wirr. Ich hoffe, Du hast eine stabile und saubere 5V-Gleichspannung als Versorgung des ACS712. Sein Arbeitsbereich geht von 4,5..5,5 Volt, wobei die Versorgungsspannung Auswirkungen auf die Steilheit 185mV/A hat. Zu DCC finde ich unter http://www.opendcc.de/info/dcc/dcc.html "Gleissignal: Rechtecksignal, mind. 7V Hub, max. 22V Hub. Nominalspannung bei H0 soll 13,5V sein (damit sich nach den Gleichrichterdioden 12V für den Motor ergeben)." Wenn ich mir das Datendiagramm dort ansehe, liegt die Frequenz der Daten kurz unter 10kHz (116µs). Demzufolge würde ich auch am Ausgang des Stromsensors das DCC-Signal erwarten, womit Dein Multimeter vermutlich nicht umgehen kann. Irgendwie ist es dennoch nicht schlüssig, das DCC liegt ja nicht dauerhaft an. Wie Dir schon anderweitig vorgeschlagen wurde: Den ACS712 plus Lastwiderstand ans Labornetzgerät und erstmal gucken, ob und wie der geht.
Marius D. schrieb: > Nach dem zusammenlöten der Platine habe ich am Ausgangspin VCC/2. Passt. > Die Software berechnet einmal beim ERSTEN Start diesen Wert (weil VCC > kann ja bei jedem Gerät etwas anders sein), legt es ins EEPROM ab. wenn du als Referenz die VCC nimmst, musst du überhaupt nichts abgleichen. Weil bei 127 (8Bit ADC) die Mitte ist - egal ob es 4,8 oder 5.2 V sind.
Peter II schrieb: > Marius D. schrieb: >> Nach dem zusammenlöten der Platine habe ich am Ausgangspin VCC/2. Passt. >> Die Software berechnet einmal beim ERSTEN Start diesen Wert (weil VCC >> kann ja bei jedem Gerät etwas anders sein), legt es ins EEPROM ab. > > wenn du als Referenz die VCC nimmst, musst du überhaupt nichts > abgleichen. Weil bei 127 (8Bit ADC) die Mitte ist - egal ob es 4,8 oder > 5.2 V sind. Das verstehe ich jetzt nicht so ganz. Referenz ist VCC das habe ich auch, ich habe aber 10-Bit beim Tiny. Wie soll ich das dann berechnen?
Marius D. schrieb: > Das verstehe ich jetzt nicht so ganz. Referenz ist VCC das habe ich > auch, ich habe aber 10-Bit beim Tiny. Wie soll ich das dann berechnen? gar nicht rechnen, bei 10Bit ist die mitte bei 512. Wenn die Referenz VCC ist, dann kommt bei 0A ein wert von 512 Raus. Wo hoch die Strom ist, kannst du dann klassich über (ADC-512)* ... brechnen. Dieser wert ist dann zwar anhängig von VCC aber nicht die Mitte.
Manfred schrieb: > Marius D. schrieb: >> Mein analoger Trafo kann nur 1A, deswegen war das gut zu sehen, dass die >> Chips funktionieren. Die Lok fährt los, die Spannung am ACS sinkt, bei >> 1.2A sackt die Spannung ein bis auf 7V, für die Lok zu wenig aber die >> Sensorspannung liegt wieder bei Vcc/2. > > Das liest sich für mich recht wirr. Ich hoffe, Du hast eine stabile und > saubere 5V-Gleichspannung als Versorgung des ACS712. Sein Arbeitsbereich > geht von 4,5..5,5 Volt, wobei die Versorgungsspannung Auswirkungen auf > die Steilheit 185mV/A hat. > > Zu DCC finde ich unter http://www.opendcc.de/info/dcc/dcc.html > "Gleissignal: Rechtecksignal, mind. 7V Hub, max. 22V Hub. > Nominalspannung bei H0 soll 13,5V sein (damit sich nach den > Gleichrichterdioden 12V für den Motor ergeben)." > > Wenn ich mir das Datendiagramm dort ansehe, liegt die Frequenz der Daten > kurz unter 10kHz (116µs). > > Demzufolge würde ich auch am Ausgang des Stromsensors das DCC-Signal > erwarten, womit Dein Multimeter vermutlich nicht umgehen kann. Irgendwie > ist es dennoch nicht schlüssig, das DCC liegt ja nicht dauerhaft an. > > Wie Dir schon anderweitig vorgeschlagen wurde: Den ACS712 plus > Lastwiderstand ans Labornetzgerät und erstmal gucken, ob und wie der > geht. Ja, Versorgungsspannung ist stabil 5,05V. Das kann sein das das wirr ist, ist aber korrekt und funktioniert. Die Chips sind ok und funktionieren. Habe ich mit Gleichspannung und Lastwiderstand getestet - das ist ok. Zu DCC: Ich habe Gartenbahn (24V DCC-Signal). Das DCC Signal wird mit einer H-Brücke idR erzeugt, also einmal linke Seite durchschalten dann die Rechte. Damit ergibt sich das Rechtecksignal was auf beiden Schienen dann immer gegenphasig ist, deswegen ist es auch egal, von welcher man die Daten ließt. Das Signal an sich hat 116µS bei einer logischen 0 und 58µS bei einer logischen 1, damit hat man dann die ca. 18kHz, ich habe gerundet 20 kHz gesagt. Ja, das mit dem DCC-Signal am Ausgang des ACS denke ich auch, das gucke ich mir heute Abend an. Ist aber doof, ich brauche eine Gleichspannung.
Marius D. schrieb: > Ja, das mit dem DCC-Signal am Ausgang des ACS > denke ich auch, das gucke ich mir heute Abend an. Ist aber doof, ich > brauche eine Gleichspannung. die Könntest einfach den Strom vor dem ACS712 gleichrichten. Aber einfach ist es wohl in Software Wert = abs(512-ADC);
Peter II schrieb: > Marius D. schrieb: >> Das verstehe ich jetzt nicht so ganz. Referenz ist VCC das habe ich >> auch, ich habe aber 10-Bit beim Tiny. Wie soll ich das dann berechnen? > > gar nicht rechnen, bei 10Bit ist die mitte bei 512. Wenn die Referenz > VCC ist, dann kommt bei 0A ein wert von 512 Raus. > > Wo hoch die Strom ist, kannst du dann klassich über (ADC-512)* ... > brechnen. Dieser wert ist dann zwar anhängig von VCC aber nicht die > Mitte. Ja genau so mache ich das auch. Ich rechne entweder ADC-512 oder 512-ADC, das kommt drauf an, wie das Relais geschaltet ist, denn entweder sinkt oder steigt die Spannung (theoretisch, praktisch passiert ja nix). Die 512 ist zwar die Mitte, messtechnisch hatte ich aber immer Werte um ca. 504 gesampled, sodass ich diese Variante mit dem EEPROM und STARTWERT genommen habe. Wenn ich denn mal einen richtig funktionierenden Part habe, dann kann ich nochmal gucken, ob das wirklich viel ausmacht.
Marius D. schrieb: > Die 512 ist zwar die Mitte, messtechnisch hatte ich aber immer Werte um > ca. 504 gesampled was schon etwas merkwürdig ist, bei meine Projekt (schon 2 Jahre her) ging es recht genau auf.
Peter II schrieb: > Marius D. schrieb: >> Ja, das mit dem DCC-Signal am Ausgang des ACS >> denke ich auch, das gucke ich mir heute Abend an. Ist aber doof, ich >> brauche eine Gleichspannung. > > die Könntest einfach den Strom vor dem ACS712 gleichrichten. Aber > einfach ist es wohl in Software > > Wert = abs(512-ADC); Habe ich den dann das DCC Signal aufgehoben und den tatsächlichen Stromverbrauch?
Marius D. schrieb: > Habe ich den dann das DCC Signal aufgehoben und den tatsächlichen > Stromverbrauch? ja
Peter II schrieb: > die Könntest einfach den Strom vor dem ACS712 gleichrichten. Da am Ausgang des ACS 2,5V liegen und sich diese 'nur' um 185mV/Ampere verschieben, könnte ich mir sogar einen Gleichrichter am Ausgang vorstellen. Dumm nur, dass die Frequenz schon in einem Bereich liegt, den normale Gleichrichterdioden nicht mehr mit machen. Nach wie vor ist mir unklar, über welchen Zeitraum DCC anliegt - das sollte doch nur kurzzeitig stören? > Aber einfach ist es wohl in Software Wie würdest Du das angehen? Ich könnte mir vorstellen, in einer Schleife 50 Werte zu holen und daraus den Mittelwert zu bilden, wobei das Vorzeichen (die Stromrichtung) unterdrückt werden müsste.
Peter II schrieb: > Marius D. schrieb: >> Habe ich den dann das DCC Signal aufgehoben und den tatsächlichen >> Stromverbrauch? > > ja Ich werde es testen und melde mich dann nochmal. Ich frage mich aber warum die abs Funktion einen int Wert zurück gibt, müsste dich uint sein oder nicht?
Marius D. schrieb: > Ich frage mich aber warum die abs Funktion einen int Wert zurück gibt, > müsste dich uint sein oder nicht? ist doch egal.
Manfred schrieb: > Peter II schrieb: >> die Könntest einfach den Strom vor dem ACS712 gleichrichten. > Da am Ausgang des ACS 2,5V liegen und sich diese 'nur' um 185mV/Ampere > verschieben, könnte ich mir sogar einen Gleichrichter am Ausgang > vorstellen. Dumm nur, dass die Frequenz schon in einem Bereich liegt, > den normale Gleichrichterdioden nicht mehr mit machen. > > Nach wie vor ist mir unklar, über welchen Zeitraum DCC anliegt - das > sollte doch nur kurzzeitig stören? > >> Aber einfach ist es wohl in Software > Wie würdest Du das angehen? Ich könnte mir vorstellen, in einer Schleife > 50 Werte zu holen und daraus den Mittelwert zu bilden, wobei das > Vorzeichen (die Stromrichtung) unterdrückt werden müsste. Das DCC Signal liegt klarer Weise permanent an ist ja ein Datenstrom und versorgt alles mit Strom und Informationen.
Hallo nochmal. Ich habe es mal auf dem Scope angeguckt. Es ist richtig, man hat ein Mini-DCC Signal. Die Belastung bei dem großen Rechtecken auf der linken Seite liegt bei 2A. Habe ich es richtig verstanden, dass ich jetzt quasi immer ganz normal samplen kann und jeden Wert dann mit abs(512 - ADCW) berechne und das dann mein korrekter Strom ist?
Marius D. schrieb: > Ich habe es mal auf dem Scope angeguckt. Es ist richtig, man hat ein > Mini-DCC Signal. Die Belastung bei dem großen Rechtecken auf der linken > Seite liegt bei 2A. Ich nehme an, Dein "Mini-DCC" hat einen Hub von 370mV - also zwischen 2,13 und 2,87 Volt? Setze mal 0,1µF auf den Ausgang und von dort 10kOhm nach Masse - so, wie man ein Audiosignal auskoppeln würde. Das nochmal mit dem Scope bei unterschiedlicher Last angucken, solltest Du ein Signal haben, aber den Offset von 2,5V los sein. Dann könnte man einen AT328 auf die interne 1,2V-Referenz setzen und eine bessere Auflösung erzielen. > Habe ich es richtig verstanden, dass ich jetzt quasi immer ganz normal > samplen kann und jeden Wert dann mit abs(512 - ADCW) berechne und das > dann mein korrekter Strom ist? Andersherum, AD-Wert minus 512. Bei 712 (positiver Strom) sind das 200, bei 312 (negativer Strom) -200. Vorzeichen wegwerfen, sind das jeweils 200. Deine Eisenbahn ist aus Sicht des Prozessors unendlich langsam, ich würde Oversampling (Mehrfachabtastung) machen: Wert = 0 AD lesen Wert = Wert + AD-Wert x = x+1 Vielleicht ein paar µs Pause machen Nochmal AD lesen Wert = Wert + AD-Wert x = x+1 und so weiter im Kreis, bis z.B. x=50 Dann wird gerechnet Strom = Wert / x Damit bist Du das Rauschen des Wandlers weitestgehend los und hast keinen grob falschen Wert, falls Du zufällig mal auf die Schaltflanke sampelst oder die Lok gerade über ein Sandkorn fährt. -------- In einer total anderen Anwendung hole ich zyklisch einen Wert, einfache Messung, ich muß Strom sparen. Wenn dieser aus der Toleranz geht, setze ich einen Merker (Flag) und hole einen weiteren Wert. Diesen hole ich aber per Oversampling, da ich dem ersten Wert nicht vertraue. Liegt der in der Toleranz, steige ich aus - war eine Fehlmessung. Liegt der zweite Wert auch außerhalb der Toleranz, wiederhole ich das zweimal. Liegen alle drei draussen, starte ich meine Aktion. Warum mache ich das: Ich will nicht auf jede Störung reagieren, sondern zuverlässig agieren. Wenn Mehrfachabtastung und erneute Prüfung bei Dir 200ms dauern, wen juckt's in Anbetracht der mechanischen Reaktionszeiten?
> In einer total anderen Anwendung hole ich zyklisch einen Wert, einfache > Messung, ich muß Strom sparen. Wenn dieser aus der Toleranz geht, setze > ich einen Merker (Flag) und hole einen weiteren Wert. Diesen hole ich > aber per Oversampling, da ich dem ersten Wert nicht vertraue. Liegt der > in der Toleranz, steige ich aus - war eine Fehlmessung. > > Liegt der zweite Wert auch außerhalb der Toleranz, wiederhole ich das > zweimal. Liegen alle drei draussen, starte ich meine Aktion. > > Warum mache ich das: Ich will nicht auf jede Störung reagieren, sondern > zuverlässig agieren. Wenn Mehrfachabtastung und erneute Prüfung bei Dir > 200ms dauern, wen juckt's in Anbetracht der mechanischen > Reaktionszeiten? Danke für die Antwort. Oversampling mache ich schon, das ist ja üblich eigentlich. Ich habe allerdings aktuell nur 10 Werte und bilde daraus den Mittelwert. Aber das lässt sich via CV anpassen (habe einen Decoder integriert). Die CPU ist ein Tiny 85. Das mit dem Hochpass hinten ist ne verdammt gute Idee, hätte mir aber auch mal selber einfallen können :D. Dann ist allerdings die negative Spannung weg.... Ich bilde ja den Betrag mit abs(512 - ADCW), das ist doch dann völlig egal ob ich ADCW-512 oder umgekehrt rechne, oder? Weil das Signal ja um die Vcc/2 schwingt. Egal nach welcher Berechnung man geht, mal ist das Ergebnis >0 mal <0, dass sieht man ja auch gut auf dem Bild. Ich frage mich gerade nur, wie ich aus den Werten eine korrekte Berechnung erwirtschafte. i_in_deziAmpere = (((ADCW * 50) + 128) / 185); Ich will dezi Ampere. Ich habe einen Samplewert von 20 (~0,55A, Zentrale zeigt 0,6A an). Wenn ich nach obiger Rechnung gehe, dann komme ich (durch's runden (+128) auf 6 = 0,6A da dezi Ampere). Problem ist: Das ist durch testen entstanden, ich weiß nicht warum ich das * 50 rechnen muss.
An den ACS nicht einfach eine dicke Kapazität packen. Wimre darf der nur 1nF treiben. Klar ist DCC gemessen am ADC schnarchlangsam. Aber es ist verhältnismäßig Gleichanteilfrei. Damit rechnen sich bei unglücklich gewählten Abtastungen/Mittelwerten die Messwerte raus, und es bleibt eine saubere 0A-Linie übrig.
Roland E. schrieb: > An den ACS nicht einfach eine dicke Kapazität packen. Wimre darf der nur > 1nF treiben. > > Klar ist DCC gemessen am ADC schnarchlangsam. Aber es ist > verhältnismäßig Gleichanteilfrei. Damit rechnen sich bei unglücklich > gewählten Abtastungen/Mittelwerten die Messwerte raus, und es bleibt > eine saubere 0A-Linie übrig. Nein, das ist verhindert durch abs. Funktioniert was ich bis heute getestet habe jetzt sehr gut.
Mit ABS geht's theoretisch auch. Bis zum nächsten Überlauffehler aus einem unbekannten Offset. Normalerweise nimmt man einfach den Abstand zwischen Min und Max. Das ist Fehlersicherer.
:
Bearbeitet durch User
Marius D. schrieb: > Die CPU ist ein Tiny 85. Kurz mal G* befragt - scheint auch eine interne 1,1V-Referenz zu haben. > Das mit dem Hochpass hinten ist ne > verdammt gute Idee, hätte mir aber auch mal selber einfallen können :D. > Dann ist allerdings die negative Spannung weg.... Nö, warum soll die weg sein? Der Kondensator koppelt ja nur die Wechselspannung aus, solange die halbwegs symmetrisch ist, liegt die symmetrisch zu null. Könnte sein, dass Deine Flanken verschliffen werden. Teste es mal bitte. > Ich bilde ja den Betrag mit abs(512 - ADCW), das ist doch dann völlig > egal ob ich ADCW-512 oder umgekehrt rechne, oder Stimmt, dreht lediglich das Vorzeichen um. Roland E. schrieb: > An den ACS nicht einfach eine dicke Kapazität packen. Wimre darf der nur > 1nF treiben. Na und? Meine Idee war, per Koppelkondensator (in Reihe zum Ausgang) den DC-Offset von 2,5V abzutrennen - in gleicher Weise, wie man Audiosignals auskoppelt. Da sehe ich in meinem Vorschlag 10kOhm Last, keine Kapazität nach Masse. Roland E. schrieb: > Normalerweise nimmt man einfach den Abstand zwischen Min und Max. Das > ist Fehlersicherer. Und wie macht er das? Das Signal wechselt zwischen zwei Werten, ist vollkommen asynchron zum µC und muss in jedem Falle irgendwie abgetastet werden.
Manfred schrieb: >> Das mit dem Hochpass hinten ist ne >> verdammt gute Idee, hätte mir aber auch mal selber einfallen können :D. >> Dann ist allerdings die negative Spannung weg.... > Nö, warum soll die weg sein? Der Kondensator koppelt ja nur die > Wechselspannung aus, solange die halbwegs symmetrisch ist, liegt die > symmetrisch zu null. Könnte sein, dass Deine Flanken verschliffen > werden. Teste es mal bitte. Ja ne das ist natürlich nicht weg, aber ich kann, soweit ich weiß, keine negativen Spannungen samplen ==> negativ = weg. So meinte ich das.
Roland E. schrieb: > An den ACS nicht einfach eine dicke Kapazität packen. Wimre darf der nur > 1nF treiben. Nö, mehr ist legitim. Im Datenblatt auf Seite 10 sind 470nF in einer Tabelle als Maximum, zumindest so viel sind also mindestens erlaubt. Es ist ja auch einfach der herausgeführte C des internen RC Tiefpasses zwischen Vor- und Ausgangsstufe. Klar verändert sich die PowerOn Zeit, man muss also etwas länger warten, bis der erste Wert stabil ist.
:
Bearbeitet durch User
Marius D. schrieb: >> Der Kondensator koppelt ja nur die >> Wechselspannung aus, solange die halbwegs symmetrisch ist, liegt die >> symmetrisch zu null. > Ja ne das ist natürlich nicht weg, aber ich kann, soweit ich weiß, keine > negativen Spannungen samplen ==> negativ = weg. So meinte ich das. Scheiße, das habe ich übersehen. Muß also noch ein Widerstand nach Plus hinten drauf, um das Signal in den positiven Bereich zu verschieben. Ich habe selbst schon mit dem ACS712 gearbeitet und diesen Offset Ub/2 als störend empfunden, weil er meine Auflösung verschlechtert.
Manfred schrieb: > Ich habe selbst schon mit dem ACS712 gearbeitet und diesen Offset Ub/2 > als störend empfunden, weil er meine Auflösung verschlechtert. Und wie willst du ohne den Offset einen negativen Strom messen? MfG Klaus
Klaus schrieb: > Manfred schrieb: >> Ich habe selbst schon mit dem ACS712 gearbeitet und diesen Offset Ub/2 >> als störend empfunden, weil er meine Auflösung verschlechtert. > Und wie willst du ohne den Offset einen negativen Strom messen? In meiner Anwendung gab es keinen negativen Strom bzw. nur eine Richtung.
Es gibt auch reine DC Typen des ACS. Ich arbeite mit einigen, anderen Typen als der 712, die vertragen nur das 1nF. Zur Abstandsmessung: Eine Flanken/Pegelerkennung an das Gleissignal, und schon ist bekannt ob gerade ein Minimum oder Maximum an liegt. Damit erschlägt sich auch die Abschalterkennung für den Notstop-Fall.
Manfred schrieb: > In meiner Anwendung gab es keinen negativen Strom bzw. nur eine > Richtung. Dann benutzt du den falschen Chip. Ich brauch den Strom in beide Richtungen. MfG Klaus
Hallo, im Fall des TO's ist der Offset irrelevant, die Stromrichtung auch. Einfach ein paar mal abtasten, den höchsten Wert minus den Kleinsten, fertig! Hast sogar noch ein Bit gewonnen! Gruss Chregu
Der Offset ist im Fall des OP unwichtig, richtig. Ihn aber mit pauschal 1/2 Vollausschlag rauszusubtrahieren ist fehlerträchtig.
Roland E. schrieb: > Ihn aber mit pauschal > 1/2 Vollausschlag rauszusubtrahieren ist fehlerträchtig. Der Offset wird auch nicht raussubtrahiert, sondern es wird der Spitzenwert gebildet! Gruss Chregu
Der OP rechnet (addiert/subtrahiert) pauschal mit 512. Das führt zu seltenen und seltsamen Falschmessungen. Eben weil keine Elektronik absolut Offsetfrei ist.
Roland E. schrieb: > Ich arbeite mit einigen, anderen Typen als der 712, die vertragen nur > das 1nF. Schön, aber wir reden hier ja über den ACS712, also lese bitte das Datenblatt und dann kannst du mitreden. Man kann also den Tiefpass so tief drehen, bis das DCC Signal weg ist. Der Sensor mittelt dann auch selber schon, so das sich der Rechenaufwand in Grenzen hält.
Roland E. schrieb: > Der OP rechnet (addiert/subtrahiert) pauschal mit 512. Das führt zu > seltenen und seltsamen Falschmessungen. Eben weil keine Elektronik > absolut Offsetfrei ist. Also diese ganzen Abkürzungen (TO, OP) ich habe 0 Plan was das eigentlich heißt. Aber ich denke das bezieht sich auf mich, den Thread Aufmacher! Und ich möchte eins klarstellen! Ich rechne nicht pauschal mit -512!! Das habe ich angegeben, da es zur ERklärung einfacher ist (und ungefähr hinkommt). Ich habe im Anfang und auch mittig geschrieben, dass ich beim ERSTEN Start den korrekten Wert ermittel (liegt meist bei 507 ca.) und den dann im EEPROM speichere. Damit rechne ich den Offset raus! Nur für die Klarstellung!
Der 712-05 darf 10nF treiben. Na wow. Das ist jetzt richtig viel. DCC ist kein periodisches Signal, daher ist filtern über einen Tiefpass, egal ob nu RC an Pin7 oder C an Pin 6 generell Müll. PS: TO : Thread opener OP : original poster/original post Ja, Webboards sind nur ein armseliger Ersatz für das USENET... Genaugenommen ist es egal mit welcher magischen Zahl als Offsetkorrektur gearbeitet wird. Es ist für das (theoretisch) gleichanteilfreie Signal nur gefrickelt. Denn jedes "gemessene" Offset ist nur eine Momentaufnahme für exakt den einen Moment. Es geht ohne dieses Offsetdenken erheblich stabiler, und wie oben schon geschrieben sogar mit einer höheren Genauigkeit einher. PPS: Eine solche Herangehensweise mit einmalig gemommenem Offset pro Einschaltzyklus wäre für unsere Vereinsanlagen gar nicht denkbar. Die Änderung des Raumklimas über einen Fahrtag hinweg ändern das Kriech/Blindstromverhalten der Anlagen so erhablich, dass das Offset nie stimmen würde.
:
Bearbeitet durch User
Roland E. schrieb: > Der 712-05 darf 10nF treiben. Na wow. Das ist jetzt richtig viel. > > DCC ist kein periodisches Signal, daher ist filtern über einen Tiefpass, > egal ob nu RC an Pin7 oder C an Pin 6 generell Müll. > > PS: > TO : Thread opener > OP : original poster/original post > > Ja, Webboards sind nur ein armseliger Ersatz für das USENET... > > Genaugenommen ist es egal mit welcher magischen Zahl als Offsetkorrektur > gearbeitet wird. Es ist für das (theoretisch) gleichanteilfreie Signal > nur gefrickelt. Denn jedes "gemessene" Offset ist nur eine > Momentaufnahme für exakt den einen Moment. > Es geht ohne dieses Offsetdenken erheblich stabiler, und wie oben schon > geschrieben sogar mit einer höheren Genauigkeit einher. > > PPS: > Eine solche Herangehensweise mit einmalig gemommenem Offset pro > Einschaltzyklus wäre für unsere Vereinsanlagen gar nicht denkbar. Die > Änderung des Raumklimas über einen Fahrtag hinweg ändern das > Kriech/Blindstromverhalten der Anlagen so erhablich, dass das Offset nie > stimmen würde. Ja, aber dazu muss ich 4 Sachen sagen. 1. Danke für die Aufklärung mit den OP/TO 2. Hast du auch 'ne LGB? 3. Mit dem Offset hast du zwar Recht, aber meine Module sind vergossen und ich muss nicht exakt den Strom wissen, sondern will nur wissen ob der eine Grenze von 5A, 10A 15A... übersteigt (ist einstellbar via CV). Ist ja ein Kehrschleifenmodul. Das funktioniert super, keine Sensorgleise, kein Kurzschluss in dem Sinne wie von handelsüblichen Geräten wo die Funken sprühen. Das Modul löst aus, bevor die Zentrale auch nur 200mA Lasterhöhung erkennt und es bilden sich keine Funken. 4. Der Offset ist egal, nur wenn kein Verbraucher im Abschnitt ist, dann muss ich das Ergebnis ja ~ 0A bekommen.
Wir fahren TT/HO. Da muss es sehr viel empfindlicher sein. Die Gleise sind geschottert, da kommt ne Menge Kriechstrom zusammen. Die handelsüblichen Kehrschleifenmodule tun es aber sauber und ohne Funken. Bei einer fest (im Garten) aufgebauten LGB dürfte da auch einiges an Kriechstrom zusammen kommen. Wasser hat einen verdammt spitzen Kopf.
Roland E. schrieb: > Bei einer fest (im Garten) aufgebauten LGB dürfte da auch einiges an > Kriechstrom zusammen kommen. Wasser hat einen verdammt spitzen Kopf. Habe 0m und die Besetztmelder geben fast immer an! Muss mal die Widerstände anpassen. Momentan fahre ich auf "Sicht". https://scontent.fomr1-1.fna.fbcdn.net/v/t31.0-8/10496029_520282124784928_2751546381616848270_o.jpg?oh=e99394b9fd10870f1c49b39bb6c0e735&oe=591301FF Gruss Chregu
Roland E. schrieb: > Der 712-05 darf 10nF treiben. Na wow. Das ist jetzt richtig viel. Nö. Der ACS712 hat einen extra Filter Pin und an den darf man mindestens bis zu 470nF anschliessen. Siehe Seite 10 im Datenblatt.
Roland E. schrieb: > Der 712-05 darf 10nF treiben. Na wow. Das ist jetzt richtig viel. > > DCC ist kein periodisches Signal, daher ist filtern über einen Tiefpass, > egal ob nu RC an Pin7 oder C an Pin 6 generell Müll. > Einfach noch einmal sinnentnehmend lesen ;-)
Roland E. schrieb: > Wir fahren TT/HO. Da muss es sehr viel empfindlicher sein. Die Gleise > sind geschottert, da kommt ne Menge Kriechstrom zusammen. Die > handelsüblichen Kehrschleifenmodule tun es aber sauber und ohne Funken. > > Bei einer fest (im Garten) aufgebauten LGB dürfte da auch einiges an > Kriechstrom zusammen kommen. Wasser hat einen verdammt spitzen Kopf. Ja, aber wie gesagt, hier geht's nicht um 1-2 oder 3A. Und die Platinen sprühe ich immer mit so einem Schutzlack von Kontaktchemie ein. Die Kehrschleifenmodule im Gartenbahnbereich sind entweder mit blöden Sensorgleisen (total größer Verkabelungsaufwand) oder per Kurzschluss. Letzteres verursacht schon einen heftigen Kurzschluss. Funkensprühen da auf jeden Fall! Finde ich nicht so gut. Außerdem kosten die Module >80€, meins liegt, von den Materialkosten her, bei 4€ und kann 15A Dauerleistung.
Ja, bei Gartenbahnen wird unverschämt zugelangt. Man könnte den HO-Bausatz von Tams mit einem anderen Relais ausrüsten. Lenz kann von Haus aus 5A.
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
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.