![Du kannst keine neue Antwort schreiben Du kannst keine neue Antwort schreiben](images/forum/reply_denied.gif)
Autor | Thema |
---|---|
Reinhard
Überflieger Registriert seit: Sep 2003 Wohnort: Österreich Verein: TRA #10691, AGM Beiträge: 1187 Status: Offline |
Beitrag 91363
, Meine 2. MAD-Schaltung
[
![]()
Hi,
ich bin wieder am Tüfteln. Vielleicht kann sich noch jemand an meinen Versuch einen möglichst kleinen DM-Klon zu basteln erinnern. Das hat im Grunde genommen auch funktioniert, aber mit ein paar Eigenschaften dieser Schaltung bin ich unzufrieden. Der Großteil der Mängel liegt wohl in der Miniaturisierung begründet:
Die letzten beiden Mängel ließen sich durch die Verwendung der neueren ATtiny25 (bzw. 45 od. 85) beheben. Trotzdem überwiegen die Nachteile der Konstruktion den (meist nicht genutzten) Vorteil der kleinen Bauform. Deshalb möchte ich jetzt einen Nachfolger entwickeln, der in erster Linie die groben Mängel beheben und nebenbei noch ein paar kleinere Zusatzfeatures besitzen soll. Logischerweise wird er aber mehr Platz brauchen. Hier ist mal der grobe Vorentwurf mit den einzelnen Baugruppen. Bei den grau beschrifteten „Baugruppen“ handelt es sich nur um Steckverbindungen. Die Ziffern stehen für die voraussichtliche Anzahl an Signalleitungen. Am Grundprinzip hat sich nichts geändert. An einem Mikrocontroller (ATmega8) werden die einzelnen Baugruppen wie Magnetfeldsensor mit Verstärker, die Zündstufen sowie ein kleines Userinterface bestehend aus ein paar Leds, Tastern und einem Beeper angebunden. Dazu kommen noch ein paar Anschlüsse für die Anbindung an die Umgebung. Die Wichtigsten sind jene für Batterie, ISP (Programmierung) und eine externe Triggerquelle (z.B. um einen Timer zu starten). Nebenbei sind noch ein paar Anschlüsse für serielle Schnittstellen (UART/TWI) und die optionale Ansteuerung von Servos (anstatt von Zündern) vorgesehen. Ob diese auch mal eine Verwendung finden werden ist noch nicht klar, aber die Vorbereitung benötigt keine fast keine Ressourcen und schadet auch nicht. Die Stromversorgung wurde fast vollständig vom Vorgänger übernommen. Der einzige Unterschied besteht in der Möglichkeit die Batteriespannung durch den µC zu überwachen. Ich hätte sehr gerne einen DC/DC Wandler statt des Linearreglers verwendet, in der Hoffnung den zulässigen Batteriespannungsbereich nach unten zu erweitern um auch einzellige LiPos (3,7V) verwenden zu können. Nur leider sind die (zumindest scheinbar) halbwegs einfach zu verwenden StepUp-Converter (Ausgangsspannung größer als Eingangsspannung, auch Boostconverter genannt) wie der LM2731 nicht in der Lage auch als StepDown-Converter (Ausgangsspannung kleiner als Eingangsspannung, auch Buckconverter genannt) zu arbeiten. Dadurch wird die Verwendung von Batterien mit mehr als 5V unmöglich, womit aus einem kleinen Vorteil ein großer Nachteil wird ![]() Auch bei Sensor und Verstärker hat sich nicht viel getan, nur der Sensorreset wird jetzt vom µC kontrolliert. Es gäbe zwar die Möglichkeit die Genauigkeit der Messung zu steigern (siehe z.B. hier), aber die dazu notwendigen Bauteile erhöhen die Komplexität ohne einen praktischen Vorteil zu bringen. Die Zündstufe wurde ein wenig modifiziert. Der Safe/Arm-Mechanismus wirkt jetzt auch physisch, was eine kleine Sicherheitsmaßnahme gegenüber Softwarefehlern darstellt. Bei gesicherter Schaltung wird der Strom im Falle eines Softwarefehlers auf den Wert begrenzt, den die Ausgangstreiber des AVR liefern können. Dieser ist nicht in der Lage einen Brückenzünder Typ A auszulösen. Die Durchgangsmessung der Zünder wird jetzt durch den µC erledigt. Um ev. später Servos zu verwenden werden die Signalleitungen für die Zünder auch auf einen 3polilgen Steckverbinder geführt. Mit einer einfachen Zusatzbeschaltung, bestehend aus einem Optokoppler und einer Batterie für die Servos können diese dann verwendet werden. Das Userinterface besteht aus 2 Tastern, 3Leds und dem Beeper. Die Art und Weise wie der Beeper angebunden ist gefällt mir noch nicht. Ev. wird sie noch durch eine Vollbrücke und eine Enable Leitung ersetzt, damit der Beeper während des Programmiervorganges nicht stört. Er teilt sich nämlich eine Datenleitung mit dem ISP Interface. Der eigentliche Kern der Schaltung ist ein ATmega8. Er ist an die oben erwähnten Einheiten angebunden. Bei den 3 Verbindern handelt es sich um die seriellen Schnittstellen UART+TWI, den Triggereingang für den Timer und um den ISP-Verbinder zur Programmierung des AVR (von oben nach unten). Die seriellen Schnittstellen werden fürs erste keine Verwendung finden, aber bei Bedarf kann man damit die Schaltung einfach erweitern. So viel zum Vorentwurf. In 1-2 Wochen möchte ich das Design so weit abgeschlossen haben, dass ich die Platinen für den Prototypen bestellen kann. Gruß Reinhard |
Stefan Wimmer
Grand Master of Rocketry
Registriert seit: Aug 2000 Wohnort: Berlin Verein: Deutsche Experimental Raketen Arbeitsgruppe (DERA) Beiträge: 2398 Status: Offline |
Beitrag 91386
[
![]()
Hallo Reinhard,
hübsches Konzept! Ich könnte jetzt fast so viel dazu schreiben, wie Du vorgelegt hast, aber ich muss noch für das Adventskranzfliegen morgen packen... ![]() Nur soviel kurz zur Stromversorgung: Hast Du mal daran gedacht entweder die Logik auf 3(,3)V Betriebsspannung umzustellen oder aber die Versorgung 2-stufig aufzubauen: Zuerst einen Boost-Konverter (National, Linear Technology, Texas,...), der die 3-x V auf eine Zwischenkreisspannung erhöht (aus der dann auch die Zündkreise gespeist werden können (Du weist ja: E = 1/2 CU²), nur die Zündkreisüberwachung muss dann geändert werden wg. Uz > Vcc). Danach dann einen kleinen Linearregler, der die paar (~20-30?)mA für die Logik bereitstellt (sowas wie z.B. LP2950/2980/2985). Die Tasten könntest Du evtl. durch einen TSOP34838 ersetzen und den freiwerdenden Pin z.B. für eine vierte LED nehmen. (oder sowas wie 'ne TIL311 an die 4 Pins hängen ![]() Den ISP kannst Du ggf. auf die 6-polige Variante umstellen - spart Platz. Ach so, eins noch: Du solltest AVCC nicht direkt mit VCC verbinden, sondern noch einen Filter (R/C oder besser L/C) reinsetzen (siehe AVR-Kurs Schaltung). Sonst hast Du nur einen 8-9Bit ADC (speziell wenn Servos in's Spiel kommen) ![]() Und wenn Du gerade dabei bist: Die 5 Pads für sowas wie einen LP4040 und 'nen Widerstand an AREF sind vielleicht auch noch drin... Geändert von Stefan Wimmer am 10. Dezember 2005 um 00:14 It's the Government - it doesn't have to make sense! (B. Kaplow in r.m.r) |
Reinhard
Überflieger Registriert seit: Sep 2003 Wohnort: Österreich Verein: TRA #10691, AGM Beiträge: 1187 Status: Offline |
Beitrag 91414
[
![]() Zitat: Hi Stefan, danke für deine Tipps! Eine 3,3V-Schaltung möchte ich vermeiden. Die Verwendung von UART, TWI, ISP wird in Verbindung mit 5V Systemen vermutlich nur unnötig kompliziert. Eine 2stufige Schaltung gefällt mir da schon besser. Allerdings schmerzt mir beim Gedanken an den Wirkungsgrad das Herz. Wenn ich mit 60-90% Wirkungsgrad die Eingangsspannung auf 15V bringe, um danach mit einem Linearregler wieder auf 5V runterzukommen, ergibt das dann einen Gesamtwirkungsgrad von 20-30% (Annahme: Kondensatorladung vernachlässigbar gegenüber dem restlichen Strombedarf). Wenn ich deshalb den Linearregler noch durch einen Buck-Konverter ersetze kann man die Schaltung schon als komplexes Powersupply bezeichnen, das nebenbei noch irgendwie auf das Magnetfeld reagiert. ![]() Der Zündelko ist übrigens bei 1000µ/5V schon kleiner als der kleinste Beeper den ich gefunden habe. Optimierungen der Elkogröße sind da auch nicht mehr so sinnvoll. Inzwischen habe ich ein weiteres Bauteil gefunden, das mir kurzzeitig als die beste Lösung erschien. Der LM2611 ist ein invertierender CUK-Converter, der einfach aus einer Spannung von -2,7V bis -14V die Ausgangsspannung von 5V erzeugen kann. Die Batterie verkehrt herum anzuhängen ist ja kein Problem. Nur habe ich mich, wiederholt, zu früh gefreut. Erstens ist die negative Versorgungspannung eine potentielle Fehlerquelle, wenn es darum geht mehrere Schaltungen miteinander zu kombinieren, was sich aber durch entsprechende Überlegungen meist vermeiden lässt. Ein größeres Problem ist es aber die Versorgungsspannung, zwecks Batterieüberwachung, noch irgendwie an den ADC des AVR anzubinden (Ev. von einem Eingangsspannungsteiler über eine Z-Diode und einem Widerstand nach +5V, braucht aber viel Strom). Zur Zeit gefällt mir folgende Lösung am Besten: Die Schaltung wird ganz einfach über einen LDO mit 5V versorgt. Wenn ich mich mal in einen LiPo verliebe, bekommt der einfach ein kleines Boostplatinchen (~1cm2) verpasst. Zitat: Die Idee mit dem IR-Empfänger muss ich mir noch einmal durch den Kopf gehen lassen. Aber Pins sind noch 5 (davon 2 am ISP) frei. TIL311 wäre natürlich cool, nur kostet sie mit ~16€ wahrscheinlich ähnlich viel wie die restlichen Bauteile zusammen ![]() ![]() Zitat: Wird gemacht ![]() Zitat: Dafür ist sicher noch Platz auf der Platine, auch wenn für die Anwendung wohl ein 5bit ADC gereicht hätte. Google hat zur LP4040 nichts gefunden, aber falls es sich dabei um eine Spannungsreferenz wie die CLM4040 handelt, werde ich sie mir sparen. Die Schaltung liefert eh ein ratiometrisches Signal, da kann ich gleich AVcc (intern verbunden im AVR) als Referenz verwenden. Die Servos werden, falls überhaupt, vermutlich über einen Optokoppler angebunden. Eine separate Versorgungsspannung brauchen sie sowieso. Der 3pol. Stecker wurde auch bewusst inkompatibel zu Servos belegt. Ob die Servos sich überhaupt mit dem KMZ51 vertragen ist auch nicht sicher. Gruß Reinhard Geändert von Reinhard am 10. Dezember 2005 um 19:50 |
Stefan Wimmer
Grand Master of Rocketry
Registriert seit: Aug 2000 Wohnort: Berlin Verein: Deutsche Experimental Raketen Arbeitsgruppe (DERA) Beiträge: 2398 Status: Offline |
Beitrag 91475
[
![]() Zitat: Oops, Tippfehler - klar, sollte LM4040 heissen. Ich dachte ja nur daran, dass - wenn Du schon eine Platine machst - Du die sicher irgendwann auch mal auch für andere Projekte nehmen willst. Und dann freust Du Dich vielleicht darüber, wenn das schon vorgesehen ist. Zumal der Aufwand (2 Bauteile mit 5 Pads, insgesamt ca. 3x5mm²) recht bescheiden ist. It's the Government - it doesn't have to make sense! (B. Kaplow in r.m.r) |
Reinhard
Überflieger Registriert seit: Sep 2003 Wohnort: Österreich Verein: TRA #10691, AGM Beiträge: 1187 Status: Offline |
Beitrag 91484
[
![]()
Hi Stefan,
das soll fürs erste nur eine (hoffentlich) funktionierende Bergungselektronik werden. Für "experimentelle" Anwendungen habe ich ein paar andere Ideen, aber das liegt noch irgendwo zwischen Zukunftsmusik und Utopie ![]() Gruß Reinhard |
Brzelinski
Überflieger Registriert seit: Okt 2000 Wohnort: Verein: Beiträge: 1616 Status: Offline |
Beitrag 91583
[
![]()
Hallo,
ich finde dein Projekt hochinteressant. Obwohl ich im Deteil dazu nichts sagen kann. ( Bin schon an der Versuchsplatine von Pierre gescheitert.) So bleibt mir nur geduldig auf das Ergebnis zu warten. Viele Grüße, Gert. |
Reinhard
Überflieger Registriert seit: Sep 2003 Wohnort: Österreich Verein: TRA #10691, AGM Beiträge: 1187 Status: Offline |
Beitrag 92814
[
![]()
Große Fortschritte habe ich die letzten Wochen nicht gemacht. Dafür habe ich mir stundenlang den Kopf zerbrochen, welche Steckverbinder, Klemmleisten, Leds und Taster ich verwende. Diese Phase des Designs ist wohl die lustigste... Dafür bin ich mit jetzt der vorläufigen Schaltung fertig.
Was sich gegenüber obigen Entwurf geändert hat: Die Stromversorgung wird Keramikkondensatoren in der Bauform 0805 verwenden. Wieso ich dafür beim letzten Mal Tantal-Elkos (sind teurer, brauchen mehr Platz, kann man verkehrt einbauen) verwendet habe ist mir schleierhaft. Der Sensor bekommt eine bidirektionale Flipschaltung statt dem unidirektionalen Reset verpasst. Ob es einen merklichen Unterschied macht wissen die Götter, aber der Mehraufwand beschränkt sich auf 3mm2 Platinenfläche und meine Neugierde wird befriedigt ![]() Sämtliche Datenschnittstellen (UART, I2C/TWI und ISP) kommen, zwecks Platzersparnis, auf einen gemeinsamen Stecker. Pierre hat mich dankenswerterweise auf die SMC-Serie von Erni aufmerksam gemacht, die Winfried auch beim SALT3 Micro verwendet. Der Beeper wird jetzt von einer Vollbrücke, bestehend aus zwei FDC6321C angesteuert, um die Last vom µC zu entkoppeln (die gleiche Leitung wird auch fürs Programmieren verwendet, ging leider nicht anders) und auf PullUp Widerstände zu verzichten (Stromverbrauch). Das Userinterface hat noch ein kleines Upgrade bekommen. Die Anzahl der Leds wird auf 6 verdoppelt (Je 2 Rote, Gelbe und Grüne) und die beiden Taster werden durch einen schnuckeligen kleinen Joystick ersetzt (vermutlich diesen hier, pdf). Der braucht nur 10*12mm Platz und ersetzt 5 Taster (4Wege+Auswahl). Eine Lösung aus Einzeltastern (auch wenn weniger als 5 sind) benötigt entweder viel mehr Platz, oder man kommt nicht umhin sie alle gleichzeitig zu drücken weil sie so nahe bei einander stehen. Der Joystick hilft hoffentlich auch die Bedienung ein wenig intuitiver zu gestalten. Natürlich wird er bei scharfer Schaltung ignoriert um Probleme mit den Beschleunigungen zu vermeiden. Man kann nur schwer übersehen, dass ein paar Details der Schaltung schwer von anderen bekannten Schaltungen beeinflusst oder gar kopiert wurden. Das gilt insbesondere für die Ampelleds der D-Serie, dem integrierten Stecker des SALTs und der Beeperlösung des RMB-AVR-Boards (und all das was ich schon wieder vergessen habe). Ich hoffe Bertram, Winfried und Stefan Wimmer werden mir meine ruchlosen Taten verzeihen. ![]() So viel zur Hardware. Die schon erwähnte Bedienung ist ein kleines Sorgenkind von mir. Die einfachste Lösung wäre es, eine Kombination aus MAD und Timer auf einem Board zu simulieren. Das dürfte auch eine der wahrscheinlichsten Anwendungen sein. Allerdings hängt die gesamte Hardware am AVR, und so liegt es nahe MAD und Timer miteinander zu verknüpfen. Mögliche Anwendungen wären: Verzögertes Scharfschalten des Magnetsensors über den Triggereingang um Probleme mit Stahlrampen zu umgehen. Zündkanal 1 (MAD) um 2s verzögert auslösen, um das Bergungssystem zu schonen (Wenn die Schaltung als Backup verwendet wird). Zündkanal 2 (Timer) entweder mit G-Switch am Start oder erst am Apogäum vom MAD triggern zu lassen. Backuptimer für MAD Ausweichverhalten wenn der Durchgang durch einen der beiden Zünder vorzeitig verloren geht. Beliebige Kombinationen davon… Wie man das alles mit nur ein paar Leds, einem Beeper und dem Joystick sinnvoll einstellen soll ist noch fraglich. Zusätzlich kommen ja noch die Schaltschwelle des Sensors und die Verzögerungszeit des Timers hinzu. Ganz einfach könnte man das über die serielle Schnittstelle (wie bei SALT, AltAcc,etc.) erledigen. Es wird aber so schon genug über die Laptopdichte auf den Flugtagen gelästert ![]() Vermutlich wird es wohl auf eine Kompromisslösung hinauslaufen. Die Schaltung kann standalone in einen (oder wenige) Standartmodi versetzt werden, die auch entsprechend parametrisiert werden können (Schaltschwelle, Timerzeit). Für alles andere, also alles was man sowieso nur selten braucht, muss ein externes Konfigurationstool her. Aber vorher kommen noch die Freuden des Entflechtens. Für Kritik, Anregungen etc. bin ich die nächsten Tage noch offen, dann werden die Platinen in Auftrag gegeben. Wenn die Hardware keine Fehler enthält werden dann die Designunterlagen (Eagle-Files, Bauteillisten,…) zum freien Ge- und Missbrauch hier gepostet. Gruß Reinhard PS: Im Anhang die Schaltung als Bitmap (.png) ![]() Geändert von Reinhard am 02. Januar 2006 um 21:51 |
Reinhard
Überflieger Registriert seit: Sep 2003 Wohnort: Österreich Verein: TRA #10691, AGM Beiträge: 1187 Status: Offline |
Beitrag 92817
[
![]()
Falls jemand Probleme mit der .png Datei hat, hier noch mal das gleiche als pdf. Leider werden beim Drucken als pdf die Linien hinter den Texten verdeckt.
Gruß Reinhard ![]() Geändert von Reinhard am 02. Januar 2006 um 22:07 |
Stefan Wimmer
Grand Master of Rocketry
Registriert seit: Aug 2000 Wohnort: Berlin Verein: Deutsche Experimental Raketen Arbeitsgruppe (DERA) Beiträge: 2398 Status: Offline |
Beitrag 92820
[
![]() Zitat: Ja, das wird wohl mit der spannendste Punkt an dem Projekt. Duck und weg.... ![]() ![]() It's the Government - it doesn't have to make sense! (B. Kaplow in r.m.r) |
Brzelinski
Überflieger Registriert seit: Okt 2000 Wohnort: Verein: Beiträge: 1616 Status: Offline |
Beitrag 92830
[
![]()
Super, super, super gut. Bitte vier mal Platine und vier mal Bauteile für mich.
![]() ![]() ![]() ![]() Geändert von Brzelinski am 03. Januar 2006 um 13:36 |
![Du kannst keine neue Antwort schreiben Du kannst keine neue Antwort schreiben](images/forum/reply_denied.gif)