Forum: Mikrocontroller und Digitale Elektronik [H] TelemetrieEmpfänger für Modellflugzeuge


von Michael B. (planlessmichi)


Angehängte Dateien:

Lesenswert?

Hallo zusammen,

ich mache jetzt einfach mal einen neuen Thread auf, weil der Titel vom 
alten (Beitrag "FT232RL MOSFET IRLML6402 und IRLML6401") inzwischen nicht 
mehr so ganz passt.
Ich möchte für meine Modellbauflugzeuge eine Telemetriestrecke aufbauen 
und so diverse Daten während des Fluges auslesen/überwachen. Dazu habe 
ich die im Anhang angehängte Schaltung entwickelt.
Nun mein Problem: Da ich im Microcontroller-Bereich noch ein absoluter 
Anfänger bin (das hier wird erst meine dritte Schaltung überhaupt) habe 
ich leider noch viele Verständnisprobleme. Ich wollte zuerst die 
Stromversorgung abklären und stieß da schon direkt auf die ersten 
Probleme mit dem Datenblatt vom FT232RL (deswegen der erste, oben 
erwähnte Thread).
Dort wurden mir dann auch schon einige wichtige Tipps gegeben (vielen 
Dank an Falk), aber auch die Aufforderung, den ganzen Schaltplan 
einzustellen.
Also habe ich mich heute drangesetzt und das Teil fertig gestellt. 
Zumindest nach meinem Kenntnisstand hoffe ich, dass er fertig ist (etwas 
naiv bin ich ja :-)).
Meine große Bitte: Können sich die Profis hier das Teil bitte mal 
anschauen und mir sagen, ob das so machbar ist? Wäre super, wenn ich da 
ein paar Meinungen drüber bekommen könnte, bevor ich mit dem Layout der 
Platine anfange.
Im "Gegenzug" dachte ich mir, stelle ich dann das komplette Projekt 
(Schaltplan, Layout, Sourcecode, Doku) hier zur freien Verfügung ein. 
Vielleicht findet es ja ähnlichen Anklang, wie der AVR-Transistortester 
von Markus F.!?

Zur Funktionsbeschreibung:
Im Flugzeug sitzt ein 868MHz-RFM-Sendemodul (RFM12 / RFM02 - muss ich 
noch überlegen) und schickt so 1x pro Sekunde diverse Daten zu diesem 
Teil hier auf den Boden (geplant: Geschwindigkeit über GPS, 
Akkuspannung(en), bisheriger Stromverbrauch, Temperaturen,...). 868MHz 
sind geplant, weil das 433MHz-Band doch schon etwas voller ist und sich 
2.4GHz-Module (ZigBee etc.) sicherlich unschön auf evtl. verwendete 
2.4GHz-Anlagen der Modellflugzeuge auswirken würde.
Der Empfänger wird ausschließlich über "DAS" Pollin-Touchscreen-LCD 
DG-16080 bedient (bis auf den NotReset-Taster S100 mal abgesehen).

1) Stromversorgung
Das Teil wird über einen 1000mAh-LiPo Akku versorgt (ebenfalls Pollin) 
und soll über USB auch wieder aufgeladen werden. Dazu habe ich von Maxim 
den 1Zellen-LiPo-Laderegler MAX1811 gefunden und gleich verwendet.
Die USB-Verbindung soll mit dem oft verwendetem FT232RL hergestellt 
werden. Dieser wird für 500mA-Verbrauch konfiguriert. Wenn die Anmeldung 
am USB-Host erfolgreich war, geht PWREN# auf Low und schaltet den 
P-Kanal MOSFET vom Typ IRLML6302 durch. Dadurch bekommt der SELI-Eingang 
High-Pegel und der MAX darf mit max. 500mA laden. Sollte der USB-Host 
keine 500mA zur Verfügung stellen können, bleibt es bei 100mA. Da die 
USB-Spec wohl vorsieht, dass man im Suspend nur wenige µA ziehen darf, 
hängt der SLEEP#-Anschluß des FT232 am Enable-Eingang des MAX1811 und 
kann den dann sogar komplett abschalten.
Über den "SELV"-Anschluß kann man im Programm später einstellen, ob man 
einen LiPo, oder LiIo-Akku verwendet, die Ladeschlußspannung also bei 
4.1, oder 4.2 liegen soll. Der Ladevorgang wird über die LED D10 
signalisiert und die wird über /CHG vom MAX gesteuert. Der Pegel geht 
auch gleichzeitig noch zum ATMEGA; ob man's für irgendwas später 
brauchen kann, weiß ich noch nicht.
Noch was zum FT232: Der VCCIO bekommt seine "Referenzspannung" vom 
ATMega, der dafür einen Pin immer auf High legt... Kann es da evtl. 
Probleme geben, wenn das Teil nicht am USB hängt und somit keine 
Versorgungsspannung am VCC des FT232 liegt? Sollte ich da vielleicht 
noch einen ADC-Eingang verwenden (z.B. ADC6), der überprüft, ob eine 
USB-Spannung (über Spannungsteiler) anliegt und wenn nicht, dann kommt 
der VCCIO-Pin vom ATMega eben auf Low!?

2) Resetschaltung
Ich habe heute zum ersten Mal eine Resetschaltung gesehen, bei der neben 
dem Widerstand auch noch eine Diode (hier die D100) geschaltet ist. Das 
soll wohl ein extra Schutz sein, weil der Reset-Eingang keine Diode 
intern verbaut hat (HV-Programming). Macht sowas wirklich Sinn, oder 
kann ich die auch locker weglassen? Ist jetzt eher Neugierde als 
Befürchtung, dass der Platz ausgeht :-)

3) Display
Da gibt es jetzt glaube ich nicht viel zu erzählen. Das Ding kennt wohl 
keinen 4Bit-Modus, daher sind alle Leitungen angeschlossen... Die 
TouchScreen-Auswertung erfolgt über die vier ADCs 0-3;

4) Externes EEPROM
Habe ich einfach mal dazugehängt, weil die Pins noch frei waren und 
später vielleicht nützlich sein kann. Geplant ist da vielleicht sowas, 
dass das Teil die Daten auch noch aufzeichnet und dann später am PC 
(über Rx/Tx) ausgewertet werden können (Google-Maps etc.)

5) Spannungsüberwachung der Batterie
Der Spannungsteiler R101/R102 ist so ausgelegt, dass der komplette 
Spannungsbereich des LiPo-Akkus (2.5 bis 4.2 Volt) auf eine Spannung von 
1.5 bis 2.5 abgebildet wird. Somit liege ich bei vollem Akku noch knapp 
unter der internen ADC-Referenzspannung von 2.56V und habe doch 1V als 
Messbereich. Da der ADC zwar von 0 bis 2.56V misst und ich nur 
Spannungen von 1.5 bis 2.5V haben kann, geht mir zwar Einiges an 
Auflösung verloren, aber mir ist da leider nichts Besseres eingefallen. 
Aber ich denke, dass sollte trotzdem reichen, oder? Den Bereich von 1.5 
bis 2.5V kann ich damit mit 400 Stufen abbilden (1V/x = 2.56V/1024 --> x 
= 400), also 2.5mV.

6) RFM-Anbindung...
Tja, also da liegt noch mein größtes Sorgenkind. Ich habe zwar schon 
eine Verbindung RFM01 und RFM02 herstellen können, aber da wurde nIRQ 
gepollt; ich habe den vorsichtshalber aber mal auf INT0 gelegt, weil ich 
es mit Interrupt schaffen möchte; zur Not muss ich da halt die nicht 
ganz so elegante Polling-Lösung nehmen, die sich bisher zwar schon als 
funktionsfähig herausgestellt hat, aber mir nicht wirklich gefällt...

Ja, ich glaube das war's erstmal. Ich würde mich rießig freuen, wenn der 
eine oder andere Profi sich das mal genauer anschauen könnte. Und 
erwähnt bitte auch - für Euch - selbstverständliche Dinge. Wie gesagt, 
es ist erst meine dritte MC-Schaltung und da weiß ich es leider bei 
vielen Dingen noch nicht besser.

Noch kurze Anmerkung zu den Dateianhängen: Ich weiß, Schaltpläne sollen 
nur als GIF oder PNG angehängt werden, aber ich habe mich damit jetzt 
etwas länger gespielt und das PNG wäre sogar noch größer; und noch 
kleiner kann ich das fast nicht machen, sonst kann man gar nichts mehr 
lesen. Zusätzlich habe ich aber auch das "böse" PDF eingestellt, auch 
wenn das einigen nicht so gefällt. Aber es ist kleiner als das Bild und 
SEHR viel detailreicher.

So, jetzt aber wirklich Ende :-)

Vielen Dank für das Durchhaltevermögen (war jetzt ja nicht gerade wenig 
Text) und vielen Dank im voraus, an all diejenigen, die mir bei dem 
Projekt Starthilfe geben werden.

Viele Grüße und gute Nacht :-),
Michael

von Michael B. (planlessmichi)


Angehängte Dateien:

Lesenswert?

Hallo zusammen,
es gibt ein kleines Update: Ich habe noch den netten Baustein IMP803 
gefunden, mit dem dann auch die EL-Folie (habe nur solche bekommen) zum 
leuchten - äh, funzeln - gebracht werden kann. Die fertigen Inverter 
sind mir leider alle zu groß. Selbst der E-Inverter Typ "08" von 
Reichelt ist mir etwas zu groß.
Aus diesem Grund habe ich rechts noch zwei Varianten für die 
Display-Beleuchtung eingeplant. Der Rest der Schaltung ist (fast) 
unverändert.
Neu hinzugekommen ist am PA6 das Signal, mit dem man den IMP803 ein- und 
ausschalten kann (bzw. mit dem der Transistor bei einer LED-Variante 
angesteuert wird).

Hat sich das Teil schon mal einer bisschen näher angeschaut und ist 
dabei auf gröbere Schnitzer gestoßen?

Btw.: Den PORTA kann man schon so benutzen, dass die ersten 4 Pins als 
ADC-Eingänge funktionieren, die restlichen aber weiterhin als GPIO, 
oder?

Viele Grüße und vielen Dank,
Michael

von Markus M. (adrock)


Lesenswert?

...grundsätzlich sehr interessant. Wollte soetwas auch mal bauen, aber 
die RFM-Module gammeln hier noch orig. verpackt rum mangels Zeit...

Noch eine Anregung:

Wenn man schnelle Modelle oder Helis fliegt, hat man normalerweise nicht 
die Zeit auf irgendwelche Displays o.ä. zu schauen.

Ich würde unbedingt eine Audio-Ausgabe vorsehen, wenigstens irgendeinen 
Piepser der auf eine Alarmsituation hinweisen kann.

Ciao...
Markus

von Michael B. (planlessmichi)


Lesenswert?

Autsch! Stimmt ja. Als ich mich vor ein paar Wochen mit meinen 
Vereinskollegen darüber unterhalten hatte, wurde das sogar als absolute 
Notwendigkeit aufgeführt. Für das wichtigste Feature wurde da die 
Messung des Stromverbrauchs gehalten und der Empfänger sollte dann bei 
unterschreiten eines Wertes piepsen.
Das habe ich in meinem Plan glatt vergessen. Danke für die "Erinnerung" 
:-) Werde ich dann gleich heute Abend erweitern...
Jetzt muss ich glatt mal schauen, wie das am besten geht... Die 
Timer-Ausgänge sind ja schon besetzt :-( Vielleicht kann ich ja die 
Display-R/W oder CS oder oder oder fest verdrahten... Dann wären die 
Pins wieder frei.
Außerdem habe ich gestern gesehen, dass ich den PORTA nicht gleichzeitig 
für ADC und IO verwenden kann :-( D.h., Ladestatus und 
Displaybeleuchtung müssen auch auf andere Pins... Wieso haben die Dinger 
immer so wenig Pins? :-( (und beim Routen schimpfe ich bestimmt, warum 
das immer so viele sind :-))
Ach ja; und mit dem Quarz muss ich auch auf 8MHz runter :-( Hab gesehen, 
dass ich bei der angedachten Stromversorgung nur die L-Typen nehmen 
kann, die dann aber nur bis 8MHz gehen....

von Markus M. (adrock)


Lesenswert?

...verstehe ich nicht. Du hast doch am PORTA sogar noch Pins frei.

Wieso kannst Du die nicht gleichzeitig als I/O verwenden? Lt. Datenblatt 
sollte man nur gerade dann dort keine Schaltvorgänge vornehmen, wenn 
gerade eine A/D-Wandlung läuft.

Oder habe ich etwas übersehen?

Ciao...
Markus

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.