Forum: Mikrocontroller und Digitale Elektronik DVM als Augabe für PIC 818


von Helle Heck (Gast)


Angehängte Dateien:

Lesenswert?

Guten Tag,Zusammen!

Ich habe folgende Absicht:

Ein Batteriemonitor liefert ein serielles Signal mit dem Wert des 
Batteriezustandes in Prozent der Batteriekapazität.
Diesen Wert möchte ich digital anzeigen.
Dazu lese ich das Signal mit einem PIC 16F818 aus.
An einem AD-Eingang hängt ein Kondensator. Dessen Spannung wird 
gemessen.
Ist die höher oder tiefer als der gelesene Wert, wird der Kondensator 
über einen Widerstand ge- oder entladen.
Der DVM zeigt permanent die Spannung des Kondensators an, die dem 
gelesenen Wert entsprechen sollte.

Klappt sowas?

Gruß
Helle

von Matthias S. (Firma: matzetronics) (mschoeldgen)


Lesenswert?

Mit deiner 'von hinten durch die Brust ins Auge' Schaltung handelst du 
dir einige Probleme ein.
1. Muss der PIC ja dann eine Spannung von 10,0V o.ä. für die Anzeige 
100% liefern, er wird aber mit max. 5V gespeist.
2. Ist das recht ungeneu, denn wie willst du die Analogspannung 
erzeugen? Timer ist gestuft, PWM ist gestuft.

Besser ist es also, den PIC direkt die Anzeige antreiben zu lassen und 
nicht den Umweg über ein DVM zu gehen. Auch PICs können LCD oder LED 
antreiben.

von Helle Heck (Gast)


Lesenswert?

Danke Mathias!

Matthias S. schrieb:
> Mit deiner 'von hinten durch die Brust ins Auge' Schaltung handelst du
> dir einige Probleme ein.

Deshalb ist mir ja auch nicht ganz geheuer.

> 1. Muss der PIC ja dann eine Spannung von 10,0V o.ä. für die Anzeige
> 100% liefern, er wird aber mit max. 5V gespeist.

na ja, 1,00V geht ja auch.

> 2. Ist das recht ungeneu, denn wie willst du die Analogspannung
> erzeugen? Timer ist gestuft, PWM ist gestuft.

Die ergibt sich doch von alleine, wenn der PIC die Kondensatorspsnnung 
ständig nachfährt.

> Besser ist es also, den PIC direkt die Anzeige antreiben zu lassen und
> nicht den Umweg über ein DVM zu gehen. Auch PICs können LCD oder LED
> antreiben.

Der Vorteil wäre:

Der PIC könnte bis zu 5 Daten/Werte auslesen und mit nur je 2 Pin's 
anzeigen:
z.B. Spannung, Strom, Solarstrom,  ...

Gruß
Helle

von Matthias S. (Firma: matzetronics) (mschoeldgen)


Lesenswert?

Helle Heck schrieb:
> Der PIC könnte bis zu 5 Daten/Werte auslesen und mit nur je 2 Pin's
> anzeigen:
> z.B. Spannung, Strom, Solarstrom,  ...

Wenn du einmal die Anzeige direkt vom PIC antreibst, dann kann der das 
ja auch. Der Witz bei einem MC ist doch, das der die ganzen Funktionen 
in einem Bauteil vereint. Damit kannst du Anzeige und serielle Daten in 
einem Rutsch ohne Verlust an Genauigkeit verarbeiten.

Aber du kannst dir fürs BMV700 auch einfach den Bluetooth Dongle holen 
und die Daten aufs Smartphone schicken. Da gibts sie dann sogar 
gleichzeitig.

Helle Heck schrieb:
> na ja, 1,00V geht ja auch.

Die Genauigkeit/Auflösung des ADC im PIC bei 1,00V ist schlecht bis 
unbrauchbar.

von Helmut H. (hheck)


Lesenswert?

> Die Genauigkeit/Auflösung des ADC im PIC bei 1,00V ist schlecht bis
> unbrauchbar.

Der PIC kann ja schon mit seinen max Werten arbeiten. Die Spannung für 
das DVM wird dann eben mit einem Spannungsteiler auf 1,00V reduziert.

Aber wie würdest du denn die 4 Anzeigen (fest im Boot montiert) 
ansteuern?
Bin für Alles offen.
(obwohl: wer für Alles offen ist, kann nicht ganz dicht sein)

Gruß
Helle

von Peter D. (peda)


Lesenswert?

Helle Heck schrieb:
> Ist die höher oder tiefer als der gelesene Wert, wird der Kondensator
> über einen Widerstand ge- oder entladen.

D.h. die Anzeige auf dem DVM wackelt ständig hin un her.

Für sowas nimmt man Anzeigen, die digital ansteuerbar sind, z.B. mit dem 
MAX7219 oder MM5450. Der MAX7219 steuert 8 Digits an und läßt sich 
beliebig kaskadieren.

https://www.ebay.de/itm/MAX7219-8-Digit-LED-Display-7-Segment-Digital-Tube-For-Arduino-Raspberry-Pi-New/232696481955?hash=item362dca88a3:m:mobzt1SQOZNH517X8vDUtgA

von Helmut H. (hheck)


Lesenswert?

Wenn ich das richtig gesehen habe, werden die Anzeigen vom Max7219 auch 
nur über 2 Leitungen angesteuert. Kann man die denn auch vom PIC direkt 
ansteuern?

Helle

von Helmut H. (hheck)


Lesenswert?

Nö, hab ich falsch gesehen.

von Helmut H. (hheck)


Lesenswert?

Peter D. schrieb:
....
>
> D.h. die Anzeige auf dem DVM wackelt ständig hin un her.
>
Das hängt ja nur vom Takt ab, in dem die Spannung gemessen wird und dem 
Strom in/aus dem Kondensator, mit dem er nachgefahren wird.

von Peter D. (peda)


Lesenswert?

Helmut H. schrieb:
> Das hängt ja nur vom Takt ab

Nö, sobald die Auflösung des ADC gleich oder schlechter ist, als die des 
DVM, muß es zappeln.

von Matthias S. (Firma: matzetronics) (mschoeldgen)


Lesenswert?

Um 'Barebone' ein 4 stelliges 7-Segment Display anzusteuern, braucht es 
7+4 = 11 Pins an einem beliebigen MC. Damit ist die Verwendung 
beliebiger Anzeigen kein Problem - Farbe und Grösse können nach Wunsch 
gewählt werden.

Ein kleiner Umschnurzler des seriellen Signals aus dem Victron BM auf 
die 4-stellige Anzeige ist vermutlich sogar einfacher als die oben 
angedachte DVM Ansteuerung.

von Helmut H. (hheck)


Lesenswert?

Matthias S. schrieb:
.....
> Ein kleiner Umschnurzler des seriellen Signals....

Was ist damit gemeint?

Gruß
Helle

von Matthias S. (Firma: matzetronics) (mschoeldgen)


Lesenswert?

Helmut H. schrieb:
> Was ist damit gemeint?

In deinem Fall ein Gerät, was ein serielles Signal vom Victron bekommt 
und diese umcodiert und auf eine 7 Segment-Anzeige ausgibt.

von Helmut H. (hheck)


Lesenswert?

Matthias S. schrieb:
> Helmut H. schrieb:
>> Was ist damit gemeint?
>
> In deinem Fall ein Gerät, was ein serielles Signal vom Victron bekommt
> und diese umcodiert und auf eine 7 Segment-Anzeige ausgibt.

Ja, genau das suche ich doch.
Der BMV liefert u.A. seriell einen ASCII-Satz : 0x0d 0x0a "SOC" 0x09 
0100.
Der Satz muß also erst mal interpretiert werden, um an den anzuzeigenden 
Wert zu kommen. Einfach umformen geht nicht.
Ich hab gesehen, heute gibt es "I2C to LCD"-Bausteine. Das wäre eine 
Alternative. Aber die DVM sind halt auch einfach zu montieren.

: Bearbeitet durch User
von Matthias S. (Firma: matzetronics) (mschoeldgen)


Lesenswert?

Helmut H. schrieb:
> Ja, genau das suche ich doch.

Helmut H. schrieb:
> Der Satz muß also erst mal interpretiert werden, um an den anzuzeigenden
> Wert zu kommen. Einfach umformen geht nicht.

Umformen (aka Umschnurzeln) musst du doch in jedem Fall, egal ob du nun 
ein externes DVM als Anzeige benutzt oder den PIC auch die Anzeige 
machen lässt. Wenn der PIC selber die Anzeige macht, hast du die '100' 
jedenfalls sofort numerisch und ohne Abweichungen. Wenn du daraus nun 
wieder eine 1,00 V Spannung erzeugen willst, schleichen sich 
Ungenauigkeiten ein, die völlig unnötig nur durch die Art der Anzeige 
verursacht werden.

Ein kleiner 20 Pinner PIC oder AVR jedenfalls kann locker die seriellen 
Daten empfangen und auf einer 7-Segment Anzeige 4-stellig darstellen. Da 
kommen höchstens noch ein paar Transistoren dazu, um die Anzeigen 
durchzuschalten.

: 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.