www.mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik Hilfestellung gesucht, Wasserrakete


Autor: Stefan Trampert (Firma: TU Berlin) (stefantu)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo, wir suchen ein paar Anregungen, Hilfestellungen, Adressen um bei 
einer Programmierung weiterzukommen.

Ich stelle mal 2 Versionen "online" die Kurzinformation und die längere 
Geschichte.

Lange Version:
Wir sind eine Projektlaborgruppe im Studienfach Physik, die soweit es 
ihre freizeit zulässt neben den
"standardversuchen" ein gesammtprojekt verfolgen will: Bau einer 
Wasserrakete.
Ziel ist es mittels eines Microkontrollers (Attinity 85) eine Flugbahn 
aufzuzeichnen.
Das "Herzstück" der Rakete, 2 Beschleunigungsensoren sind schon fertig 
und funktionieren (ADXL 321 in einem Furchtbaren
SMD Format). Diese geben von 0 bis 3,3v die Beschleunigung aus.
Das ungedachte Problem ist allerdings die Programmierung. Ich der diesen 
Beitrag schreibe habe leider noch
überhaupt keine tiefergehende ahnung, nur von ein paar Versuchen mit 
einem Asuro. In unserer Gruppe
sind allerdings ein paar fittere Programmierer die (kann man sie dann 
noch fit nennen?) noch
nicht mit C bzw den Atmegas gearbeitet haben.
Jedenfalls haben wir uns die Problematik viel viel einfacher Vorgestellt 
(vielleicht eine Arbeit von 12h sich so weit in die Materie einzulesen
wie nötig ist). Allerdings sind die bisherigen Versuche ziemlich 
missglückt, und ich vermute auch, dass es keinen Sinn macht, das
von uns bisher vorhandene Programm solange zu debuggen, bis es 
"irgendwie" funktioniert.
Wir wollen eigentlich nichts mehr, als den Analogen Spannungswert des 
Sensors in den ROM (oder noch besser in den Programmflashbereich zu 
schreiben)
Nun wäre es toll ein paar Beispielsprogramme zu bekommen. Denn dieses 
Einsatzgebiet ist doch sicher nicht neu.

Kurzversion:
Wir wollen probieren mit einem ATinity85 als Logger des analogen 
Eingangs zu verwenden und suchen (da wir nicht sehr erfahren sind)
nach Beispielsprogrammen, bzw. hilfreiche Links. (Ja ich weiß, mit 
512Byte bekommt man nicht wirklich viele Werte gespeichert, aber die 
Raketenbrenndauer liegt unter 1sec)



Ich hoffe die Fragen sind für euch nicht viel zu ungenau, jeder Anfang 
ist schwer und wenn ein "gesammtes" Projekt dahintersteht
ist der Ansporn umso größer dies zu schaffen.

Autor: Micha (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert

Autor: Alexander Liebhold (lippi2000)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hi Stefan,

deine Beschleunigungssensoren kannst du mit dem internen ADC 
quantisieren. 8Bit sollten vielleicht zu Beginn reichen. Diese schreibst 
du in den RAM. Warum nicht ROM? Weil dieser sehr Begrenzt ist (RAM kann 
durch externen RAM erweitert werden) und dieser sehr Begrenzte 
Schreibzyklen zulässt. Der Nachteil ist, das die Daten ausgelesen werden 
müssen, bevor die Spannungsversorgung unterbrochen wird. Das ist 
vielleicht nicht unbedingt praktisch in eurem Fall. Hier würde ich eher 
zu einem externen Flash-Speicher mit SPI-Interface gehen und die Daten 
ablegen.

Das Programm an sich ist dann eher simpel.

0:Initialisierung(PORTS/ADC/Startspeicheradresse laden)
1: ADC1 auslesen -> Wert an Adresse schreiben
2: ADC2 auslesen -> Wert an Adresse+1 schreiben
3: Delayzeit
4: Adresse+1
5: Beginne wieder bei 1.

Gruß Alexander

Autor: Gast2 (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Zeitstempel unbedingt mit wegschreiben!

Gast2

Autor: Alexander Liebhold (lippi2000)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
>Zeitstempel unbedingt mit wegschreiben!

Ist nicht nötig. Wenn mit einem Timer gearbeitet wird, kann der Zeitwert 
jedes Samples bestimmt werden.

Autor: Martin (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Wäre nett die Rakete (Zeichnung, Bild, Daten) zu sehen.

Autor: Stefan Trampert (Firma: TU Berlin) (stefantu)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hey, schon mal gut, dass sich ein paar dafür interessieren.
Also das Problem ist an sich auch nicht die Idee (also in welche 
Reihenfolge was etwa geschehen muss), sondern die Sprache an sich.
Daher auch die Suche nach den Beispielprogrammen.
Ich bin durch Zufall einer "quick and dirty" lösung etwas näher 
gekommen, mein Mitbewohner hat ein Arduino board, dass mit einem 
Beispielsprogramm (das allerdings schon eine riesige Bilbliothek von 
Befehlen mit sich brachte). Damit bekomme ich es hin, werte in den ROM 
zu schreiben und anschließend mit einem anderen Beispielsprogramm wieder 
auszulesen. Was mir daran nicht gefällt, ist dass das Board sehr groß 
ist und das Auslesen ewig dauert, ich keinen überblick habe wo ich die 
Interne Referenzspannung auf 3,3V umschalte usw. (d.h. die Software 
läuft, ich weiß aber nicht ganz wie sie funktioniert.). Toll ist, dass 
das Board mit festem Takt läuft, sodass man Zeiten in ms im Programmcode 
angeben kann.
Im Projektlabor Programmieren wir mit Win AVR und einem STK 500 board.
Das Problem ist gerade, dass ich wie schon erwähnt nicht der 
kompetenteste in den Angelegenheiten ist und sich sicherlich noch Pavel 
hier im laufe des Tages melden wird.
Eine Skizze:
Die Rakete ist noch nicht fertig gebaut, morgen wollen wir erstmal 
Fesselflugübungen machen. Letztendlich ist es nichts weiter als eine mit 
500ml Wasser gefüllte Colaflasche die mittels Luftpumpe auf 6-10bar 
gebracht wird. Es werden Kurzzeitig sicherlich fast über 18G erreicht 
werden.

Ich weiß, dass es nicht schön ist den Chip so "abnutzen" zu lassen, aber 
im RAM ist die Sache schon zu heikel und genauso rätzelhaft wie wir die 
Daten dann rausbekommen sollen? (was passiert wenn beim Aufprall die 
Stromversorgung kurzzeitig weg ist usw...)

Ihr seht, wir sind absolute Anfänger. Und um die Links die oben genannt 
werden richtig zu verstehen wird es wohl noch Wochen dauern.
Ich kenne es leider sehr gut wie oft man in einem Forum gegen das "Hey 
ich hab zwar keine Ahnung, aber was ihr macht ist klasse und könnt ihr 
mir mal was basteln, danach werdet ihr mich nicht wiedersehen" kämpft.
Aber vielleicht hat jemand noch auf seinem Rechner solche Programme, die 
er einfach mal vergeben kann.
Das mit der SD Karte, wie ich es mal in der CT gesehen habe ist ja ein 
totaler overkill ;-(.
Eigentlich wären schon 512 Sinnvolle bytes etwas.


Ein Bild kannst du hier finden:
http://upload.wikimedia.org/wikipedia/commons/thum...

Autor: Guido Körber (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Die Beschleunigung ist für den Chip Pippifax, problematisch sind 
eventuelle Steckverbindungen u.ä. so zum Beispiel die Anbindung der 
Batterie. Auf jeden Fall sollte die Elektronik möglichst klein sein und 
alle Verbindungen gelötet.

Habt Ihr mal nachgesehen was die Modellraketenleute so verwenden? Da 
gibt es diverse Bausätze u.ä. für solche Anwendungen.

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [avrasm]AVR-Assembler-Code[/avrasm]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.
Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt.
Bitte hier nur auf die ursprüngliche Frage antworten,
für neue Fragen einen neuen Beitrag erstellen.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.