Mini-Datenlogger



Bevor Ihr weiterlest: Ich musste aus vielerlei Gruenden die Weiterentwicklung des Projektes anderen ueberlassen und somit ist diese Seite nicht der aktuelle Stand.  Bitte lest auf www.rclineforum.de unter Elektronik-Spezial wie es jetzt aussieht :-)





Da mein neuer Heli, durch einen defekten Motor, von Anfang an Probleme mit dem Stromverbrauch hatte, wollte ich diesen schon immer im Flug pruefen koennen. So entstand folgende Idee:

Man nehme einen kleinen und guenstigen Microcontroller, ein Stueck Kupferdraht und ein kleines Programm, das den Stromverbrauch im EEPROM des Controllers mitprotokolliert und beim Einschalten die Daten ueber die serielle Schnittstelle ausgibt.

Leider spielten die Physik und die Beschaffenheit des Controllers nicht so ganz mit, sodass noch einige Widerstaende und Kondensatoren benoetigt wurden. Da die Verbrauchswerte ohne die Spannung und die Rotor-Drehzahl nicht besonders aussagekraeftig sind, sollten diese nun auch noch mit aufgezeichnet werden.  Dafuer reichte aber nun der Speicherplatz nicht aus und es wurde ein externes EEPROM notwendig.

Somit werden jetzt folgende Werte protokolliert:




Das Program


Das im Microcontroller arbeitende Programm wurde in Basic geschrieben. Einen passenden Basic-Compiler gibt es von der Firma  MCS Electronics in den Niederlanden. Die kostenlose Demo-Version von Bascom-AVR kann bis zu 2 KB Code erzeugen und reicht fuer den Mini-Datenlogger voll aus. Da Bascom-AVR aber nicht nur ein Basic-Compiler, sondern eine komplette Entwicklungsumgebung ist, kann der Microcontroller aus der Umgebung heraus programmiert werden, sofern man sich den passenden Brenner baut. Dieser Brenner besteht notfalls nur aus einem 25-poligen Sub-D-Stecker und ein paar Draehten und ist in der Anleitung von Bascom-AVR beschrieben.

Die Schaltung

Die Schaltung ist mit dem Programm Eagle der Fa. Cadsoft gezeichnet. Das Programm gibt es, fuer den privaten Anwender ohne kommerzielle Interessen, in einer kostenlosen Version.



Das Layout dazu sieht dann so aus:
 

Die Stueckliste
Bauteil:
Wert/Typ
Stueck
Reichelt-BestellNr.
Stk.-Preis
IC1
AVR Tiny26 DIP
1
ATtiny 26 DIP
2,00
IC3
24C16 - 24C64
1
ST 24C64 BN6
0,62
C1
47uF
1
rad 47/16
0,04
C2, C4
2,2uF
2
rad 2,2/63
0,04
C3, C5
100nF
2
X7R-5 100n
0,12
R1,R2,R8,R9,R11,R12
10k
6
Metall 10k
0,08
R4
1k
1
Metall 1k
0,08
R10
100k
1
Metall 100k
0,08
LED1
2mA-Typ
1
LED 3mm 2MA rt
0,09
JP1-9
Stiftleiste
1
STIFTL. 36G
0,17
Sockel IC1
DIP 20
1
GS 20P
0,23
Sockel IC3 DIP 8
1
GS 8P
0,09





Lochrasterplatine*
Punktraster 1
H25PR050
0,61
oder
Streifenraster
1
H25SR050 0,46
oder Loetpunkt-Dreierketten
1
H25PS050 0,56





Fuer den Programmieradapter




Widerstaende
330 Ohm
3
Metall 330R
0,08
Parallel-Port-Stecker
Sub-D 25 male
1
D-SUB ST 25
0,10
Programmierstecker mit Kabel
5 Pol Buchse + Stecker statt JP8
1
PS 25/5G 0,61





Fuer die serielle Schnittstelle




Seriell-Port-Stecker Sub-D 9 female 1
D-SUB BU 09
0,10
Stecker mit Kabel 3 Pol Buchse + Stecker statt JP1 1
PS 25/3G 0,42
Widerstand
33k
1
Metall 33k
0,08
Widerstand 10k
1
Metall 10k 0,08
Transistor
BC 547 C
1
BC 547C
0,03





Fuer die Sensoren (optional)




Reflex-Lichtschranke
CNY 70
1
CNY 70
0,58
Hallsensor
TLE 4905 L
1
TLE 4905 L 0,77
Temperatursensor
KTY 83-120
1
KTY 83-120 0,43
Temperatursensor 10K NTC Widerstand
1
NTC-0,2 10k
0,29
Fototransistor
BPX 81 1
BPX 81
0,61

Die Lochrasterplatine kann je nach Geschmack verwendet werden. Fuer Anfaenger empfehle ich das Punktraster.
Das wirklich Teure sind die Modellbau-Sachen wie MPX-Stecker und Servo-Kabel - Die gibt es recht guenstig bei www.flugmodellbau.de

Die Bestueckung auf einer Lochrasterplatine koennte so aussehen (oder hoffentlich besser :-):
Achtung: auf den Bildern fehlt der Pullup-Widerstand R1 fuer die Resetleitung! Er kann rechts neben dem Sockel IC1 plaziert werden.

 
 
Mit fliegender Verdrahtung:
Achtung: Auf jeden Fall die rechts eingezeichnete Bruecke nicht vergessen, sonst stirbt der Microcontroller!



Der Strom-Sensor (Shunt)

Da man den Strom nicht direkt messen kann, wird das Ohmsche Gesetz bemueht:

I = U/R

Ein von einem Strom (I) durchflossener Leiter (z. B. Kupferdraht) hat einen Widerstand (R), an dem eine Spannung (U) abfaellt bzw. anliegt. Wenn wir also ein Voltmeter an zwei Stellen eines, von einem hohen Strom durchflossenen Kabels halten, so werden wir eine Spannung ablesen koennen. Man muss jetzt nur wissen, wie viel Widerstand (in Ohm) ein Stueck Draht hat und kann dann anhand der Spannung, die man abliesst, den Strom ausrechnen.

Kupfer hat einen spezifischen Widerstand von 0,0175 Ohm/Meter (bei 1 mm2 Draht-Durchmesser). Der wohl gelaeufigste Kupferdraht duerfte 1,5 mm2 Durchmesser haben - das ist das Zeug, das ueberall fuer die Lampen und Steckdosen in den Waenden verlegt wird. Mit 0,001 Ohm laesst sich prima rechnen und messen:

Laenge = (Sollwiderstand * Querschnitt) / spezifischer Widerstand
(0,001 Ohm * 1,5mm2) / 0,0175 Ohm =  0,0857 Meter

Der Sensor besteht also aus 8,5 cm Kupferdraht 1,5 mm2 - Wer soetwas nicht zuhause hat, bekommt das bestimmt im Baumarkt geschenkt (nehmt 10cm!) - Wir nehmen aber erstmal 10 cm und isolieren ca. 1,5 cm ab, sodass genau 8,5cm Isolierung uebrig bleiben. Die Isolierung wird mittig auf dem Kupferdraht positioniert und an jedes Ende vorsichtig ein Stueckchen Litze angeloetet - die Loetpunkte muessen moeglichst genau 8,5cm auseinander liegen - wenn hier nicht genau gearbeitet wird, kann spaeter nicht genau gemessen werden!

Das sollte dann ungefaehr so aussehen:


An die Enden lassen sich dann z.B. 4mm-Goldstecker anloeten, damit sich der Sensor in die Stromversorgung einstecken laesst. Wenn man eine dreifarbige Litze benutzt, so sollte die rote Litze spaeter an den Pluspol des Akkus, die gelbe/orange/weisse Litze an den Minuspol des Akkus und die schwarze/braune/blaue an den Minuspol des Reglers/Stellers angeschlossen sein.

Bei mir sieht das so aus:



Die Stecker werden dann mit Schrumpfschlauch isoliert und der Strom-Sensor ist fertig :-)

Das Ganze nochmal mit MPX-Hochstrom-Steckern (auf den ersten zwei Bildern ist die Buchse verkehrt angeloetet ;-) :



Und letztenlich das Gesamtwerk:



Drehzahl-Sensor Nr.1


Mit CNY-70 Reflexlichtschranke, Reflektirende Flaeche mit Edding 2185 "crystaljelly" auf das Hauptzahnrad gemalt.

(in Arbeit)


Drehzahlsensor Nr. 2


Mit Hallsensor TLE 4905

(in Arbeit)

Drehzahlsensor Nr. 3


Mit Photo-Transistor  BPX-81

(in Arbeit)

Der Temperatursensor


Mit 10k-NTC-Widerstand (rechts am Regler zu sehen)

(in Arbeit)
 

Die serielle Schnittstelle

Der MiniLogger kann nur Daten schicken, dadurch ist die Schaltung sehr uebersichtlich. Daten oder Befehle zu empfangen, wuerde zuviel des kostbaren Programm-Speichers verschenken. Die folgende Schaltung sollte mit 99,9% aller modernen PCs funktionieren, man kann aber auch Pech haben und die Daten werden nicht empfangen.Dann hilft nur eine Schaltung, die mit den richtigen Spannungspegeln arbeitet (+/- 9V)
 


Der AVR-Brenner


Aehnlich wie bei der seriellen Schnittstelle, sollte diese Schaltung keine Probleme machen, es kann aber sein, dass sie nicht sauber funktioniert und fehlerhaft programmiert. Dann muss eine aufwaendigere Schaltung benutzt werden, wie man sie im Internet zuhauf findet. Die Widerstaende schuetzen den PC vor Kurzschluessen, sie koennen aber auch weggelassen werden!