Forum: Mikrocontroller und Digitale Elektronik Propeller Uhr Programmierung


von tobias p. (topat)


Angehängte Dateien:

Lesenswert?

Hallo,
für ein Schulprojekt möchte ich zunächst eine Propelleruhr theoretisch 
entwickeln, um sie anschließend selber zu bauen. Beim Punkt "Darstellung 
der Uhrzeit", sprich wie realisiere ich die Uhrzeitdarstellung hängt es 
bei mir.
Das ist was ich schon habe:

"Um das Leuchten der LEDs auf der Propellerplatine mit der 
Rotationsgeschwindigkeit des Motors abzugleichen, wird eine 
Gabellichtschranke benutzt. Um auf die aktuelle Umdrehungszahl schließen 
zu können, wird eine Kombination aus Interrupt und Timer verwendet. Bei 
jeder Umdrehung des Propellers wird ein Interrupt durch die 
Gabellichtschranke ausgelöst. Ein Timer kann dazu verwendet werden, die 
verstrichene Zeit zwischen zwei Interrupts zu messen, somit kann auf die 
aktuelle Drehzahl geschlossen werden. Wenn die Zeit für eine Umdrehung 
durch 360° Grad geteilt wird, kann daraus die Zeit für jedes einzelne 
Grad ermittelt werden.
Um jetzt eine Uhrzeit auf der Propellerplatine anzeigen zu können, muss 
eine Font Tabelle erstellt werden. In dieser Font Tabelle werden alle 
Zahlen nach folgendem Schema abgespeichert (siehe Anhang). Zuerst muss 
die Anzahl der LEDs berücksichtigt werden. In diesem Beispiel sollen 
sieben LEDs in Reihe angesteuert werden, somit ergibt sich ein 
Pixelbereich von einer Breite 1 und einer Länge 7. Anschließend muss 
definiert werden, wie Breit eine Zahl oder ein Buchstabe sein soll. Hier 
sollen alle Ziffern eine feste Breite von 5 haben. Das obige Bild zeigt, 
wie die LEDs angesteuert werden müssen, um den Buchstaben „A“ zu 
erzeugen. Dieses Schema wird für die Ziffern, die die Propelleruhr 
anzeigen soll, fortgeführt. Die Informationen, welche LED leuchten muss 
und welche nicht, kann in einen zweidimensionalen Array hinterlegt 
werden. Wichtig dabei ist, dass das Array öffentlich deklariert ist, um 
einen Zugriff jeder Zeit von außen zu ermöglichen. Anschließend muss die 
Zeit, die durch einen RTC-Chip oder durch ein DCF77 Empfängermodul 
generiert wird, in einzelne Zeichen zerlegt werden. Zum Beispiel die 
Uhrzeit 12:36, muss in ihre Einzelheiten ( 1 , 2 , : , 3 , 6 ) 
aufgeteilt werden. Danach wird in der Font Tabelle nachgeschaut, welche 
LEDs an und welche LEDs aus sein müssen, um diese Zahlen darstellen zu 
können. Zum Schluss müssen die Spalten für die Erzeugung der Ziffern, 
passend zum Timing des Propellers ausgegeben werden. "

Sind diese Informationen ausreichend? Wie gesagt soll das Ganze nur 
theoretisch sein, also wie man was machen muss, damit es funktioniert. 
Kein Programmcode oder sonstiges, nur reine theorie

Vielen Dank

von Karl H. (kbuchegg)


Lesenswert?

tobias p. schrieb:

> Sind diese Informationen ausreichend?

Jaein


> Wie gesagt soll das Ganze nur
> theoretisch sein, also wie man was machen muss, damit es funktioniert.

Ich würde an deiner Stelle erst mal damit anfangen, das Gesamtkonzept zu 
beschreiben. Welche Module gibt es, wie sind die Zusammenhänge? Das kann 
ruhig auf sehr hohem Niveau sein.
Im Moment ist mir dein Aufsatz ehrlich gesagt noch etwas zu sehr 
durcheinenadergewürfelt, wobei du zwischen sehr allgemeinen Aussagen und 
sehr detaillierten Erklärungen hin und her wechselst.
Die Stichworte, die sich aus deinem Gesamtkonzept ergebn, können dann 
die Überschriften für die 'Kapitel' sein, in denen du dann die 
Hintergünde näher ausführst.

Zb erzählst du mir recht detailiert, wie du dir die Sache mit den Fonts 
vorstellst, aber dass sich das Bild dadurch ergibt, dass eine LED-Leiste 
mit hoher Geschwindigkeit bewegt und es daher genügt die jeweilig 
benötigten LED (aus dem Vorrat der senkrecht angeordneten LED in der 
Leiste) zum richtigen Zeitpunk ein bzw. aus zu schalten, damit sich die 
Buchstaben ergben, weil ja die andere 'Dimension' durch die Bewegung der 
kompletten Leiste sich ergibt, das erzählst du an keiner Stelle.


Ich denke wirklich, du solltest erst mal damit anfangen das 
Gesamtprojekt auf sehr hohem Niveau beschreiben, ehe du dich dann in 
Details verlierst. Und füg ruhig ein paar Absätze ein, damit man 
unterscheiden kann, wann ein neuer Themenkreis beginnt. Welche 
Themenkreise hast du überhaupt in deinem Projekt?

von Michael (Gast)


Lesenswert?

Ich fürchte ich muss dich enttäuschen, aber eine solche Darstellung 
wirst du auf einer Propelleruhr mit 7 LEDs in Reihe nicht hinbekommen. 
Du vergisst nämlich, dass das Raster eigentlich Rund ist, deine Anzeige 
aber vom quadratischen Raster ausgeht.

von Guido (Gast)


Lesenswert?

Hallo,

Michael schrieb:
> Ich fürchte ich muss dich enttäuschen, aber eine solche Darstellung
> wirst du auf einer Propelleruhr mit 7 LEDs in Reihe nicht hinbekommen.
> Du vergisst nämlich, dass das Raster eigentlich Rund ist, deine Anzeige
> aber vom quadratischen Raster ausgeht.

Naja, wenn die Ziffern etwas gebogen sind geht das schon.
http://www.luberth.com/ken0.jpg

Mit freundlichen Grüßen
Guido

von tobias p. (topat)


Lesenswert?

> Und füg ruhig ein paar Absätze ein, damit man
> unterscheiden kann, wann ein neuer Themenkreis beginnt. Welche
> Themenkreise hast du überhaupt in deinem Projekt?

Also ein Konzept steht, es ist halt nur die Sache mit der Darstellung 
der Zahlen. Ich habe die Realisierung folgendermaßen aufgeteilt

-Funktiosweise Propelleruhr, Stichwort Nachbildwirkung
-Geeignete Motoren als Antrieb beschrieben und bewertet
-Drahtlose Stromübertragung (Kugellager, Batterie, Schleifkontakte, 
Generator, Royer Converter) auch bewertet
-Unwucht beschrieben und Methoden zur dezimierung vorgeschlagen
-Motorsteuerung für einen Festplattenmotor (dient als Antrieb)
-Dann die wichtigsten Bauteile der Propuhr beschrieben 
(Gabelleichtschranke zur Synchro mit LEDs, Uhrzeit [DCF77 , RTC mit 
Bewertung], Programmierung des uC Stichwort ISP,

und zum schluss halt die darstellung der zahlen wo ich stecken bleibe..

von tobias p. (topat)


Lesenswert?

Guido schrieb
> Naja, wenn die Ziffern etwas gebogen sind geht das schon.
> http://www.luberth.com/ken0.jpg

Das würde so passen!!

von topat (Gast)


Lesenswert?

Hat sonst niemand eine Idee :(

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.