MikroKopter - Forum » Motoren & Propeller » EPP1045 Mod mit LEDs -> Anzeige von RPM, Bildern...

EPP1045 Mod mit LEDs -> Anzeige von RPM, Bildern...

Neues Thema GESCHLOSSEN

Seite: 1 2 >

Autor Neuer Beitrag
Mitglied
Registriert seit: Aug 2007
Beiträge: 1024
Ort: 54.4248, 10.1721
Vorweg mal das wohl interessantere, bunte Bilder:

externer Link:
User image
externer Link:
User image
externer Link:
User image
externer Link:
User image
externer Link:
User image
externer Link:
User image
externer Link:
User image

Da rcmovie ja leider dicht gemacht hat gibts nen Video bei vimeo:
Megarotate: EPP1045 Mod using LEDs -> Show current RPM and Pictures :)


Und noch eins von Anfang November mit Gesabbel von diversen EPi-Leuten im Hintergrund: leuchtprop.mp4 (9.8MB)

Nachdem hier im Forum (Propeller-Lauftext??? von steffenk) schonmal die Diskussion losging (mit dem RCM Propeller-Laufschrift???) hab ich mal angefangen:

Das ganze ist in C geschrieben, nicht sonderlich schoener Stil aber funktioniert immerhin schonmal (sogar mit -Wall ohne Fehler):
Genutz wurde:
-AVR Studio 4.14.589
-WinAVR 20080610

Sourcecode: megarotate-200901311250.c
Derzeitiger Aufbau: Super schlecht zusammengeschnittenes PNG
Derzeitiges Test-HEX: megarotate-200809160205.hex (Auf dem vimeo video zu sehen)

Ich hab unter rotateimage auch nen kleines script on gestellt mit dem man einfacher nen bild dafuer erzeugen kann. So sind die derzeitigen (20090916) Herz/Batman/Stern Sachen gemacht. Noch nicht super nutzerbar, aber laeuft wie man sieht :)

Also ueber Anregungen und Verbesserungsvorschlaege bin ich dankbar, ist mein erstes mal AVR :)
Und forked ruhig was das zeug haelt, ich guck dann was ihr besser mach und kopier das *g*
« Bearbeitet von CaScAdE am 31.01.2009 14:16. »
Mitglied
Registriert seit: Jul 2008
Beiträge: 678
Ort: tiefstes Allgäu
Schaut schon nich schlecht aus!
Mitglied
Registriert seit: Jun 2008
Beiträge: 221
Ort: Olten, Schweiz
sieht cool aus.

Ich bin noch nicht ganz so weit, da ich auf die Atmega8 uP's von Reichelt warte.
Die Platine auf dem Propeller liegt für die Bestückung bereit.
Ich hoffe mit der Plazierung der Bauteile nicht zuviel unwucht zu haben.
Den Hallsensor plaziere ich auf der anderen Seite des Propellers um die Unwucht durch die LED's etwas in grenzen zu halten.
Ich werde die LED's über Transisoren ansteuern, da 30mA * 8 einwenig viel für den Atmega8
sein wird.

Wie hast Du den Code geschrieben ? Assembler, Bascom, .. ?

Grüsse aus der Schweiz
qrstu
Mitglied
Registriert seit: Jun 2007
Beiträge: 2367
Ort: Gräfenhainichen
Super Sache! Worüber andere (ich auch) nur gequatsch haben, da kniest Du Dich rein und tust einfach! Respekt!
Mitglied
Registriert seit: Feb 2008
Beiträge: 142
Hi CasCade,

Schicker Stehtext ;-)

Nur als Inspiration:
den Hall Sensor brauchst du übrigens nicht.

Wenn du einfach ein paar (10) Windungen dünnen Kupferlackdraht um den Rückschlussring wickelts
bekommst du einen super Puls.
Ich habe einfach mal den Motor in der Hand gedreht und hatte schon so ca. 10mV
( bei ca. 30 UPM)

Für die Anbringung habe ich beim Roxxy einfach den Kunstoff-Abstandshalter zwischen den
Magneten leicht eingeschnitten und in der Kerbe den Draht gewickelt, dazu noch eine kleine Kerbe in den
Rückschlussring untern und fertig.
( hier wäre ein keramischen Küchenmesser sicher ideal, das bleibt nicht immer an den Magneten kleben ;-) )

Und oben kann man gut durch die Lüftungslöcher gehen.

Gegen die Unwucht:
Und wenn du die Syncronisation richtig hinbekommst kanns du auch im "Interleave" Arbeiten.
Also eine Zeile auf dem Linken und die andere auf dem Rechten Propellerblatt.
Dadurch verschwindet die Unwucht und du hast mehr Platz für die LED's bzw. eine kleineren Zeilenabstand.
( die Ansteuerung muss dann aber genau um 180° versetzt arbeiten )

LG
Matthias
« Bearbeitet von df8ms am 05.09.2008 17:01. »
Mitglied
Registriert seit: Sep 2007
Beiträge: 154
Ort: Leverkusen
df8ms meinte
Wenn du einfach ein paar (10) Windungen dünnen Kupferlackdraht um den Rückschlussring wickelts
bekommst du einen super Puls.
Ich habe einfach mal den Motor in der Hand gedreht und hatte schon so ca. 10mV
( bei ca. 30 UPM)

Dran denken: Manche (hochwertigere) Motoren haben einen Rückschlussring, der dick genug ist, um das Magnetfeld komplett "im Motor" zu lassen....
Moderator, MK-Betatester
Registriert seit: Apr 2007
Beiträge: 3646
Ort: Berlin
wow, mega schick! :)
Mitglied
Registriert seit: Jun 2008
Beiträge: 221
Ort: Olten, Schweiz
Zitat
Gegen die Unwucht:
Und wenn du die Syncronisation richtig hinbekommst kanns du auch im "Interleave" Arbeiten.
Also eine Zeile auf dem Linken und die andere auf dem Rechten Propellerblatt.
Dadurch verschwindet die Unwucht und du hast mehr Platz für die LED's bzw. eine kleineren Zeilenabstand.
( die Ansteuerung muss dann aber genau um 180° versetzt arbeiten )


@df8ms

Hättest Du eine Idee, wie man die Ansteuerung genau um 180° versetzt hinbekommen könnte ?

Ich bastle im Moment mit Bascom-AVR um den Text anzeigen.

Ich habe mir schon überlegt die gleiche Verdrahtung auf beiden Seiten des Propellers anzubringen, da meine SMD-Platine auf der Achse des Propellers sitzen wird und somit die Unwucht releativ klein wäre.

Grüsse aus der Schweiz
qrstu
Mitglied
Registriert seit: Aug 2007
Beiträge: 268
Ort: Switzerland
Cool, super Sache!

Bin schon gespannt wie es weiter geht....

En Gruess us dr CH
:-) Dirk

NB: auch die Ausleger-Konstruktion (Alu-Vierkant/Carbon Rohr) finde ich inspirierend!
Mitglied
Registriert seit: Aug 2007
Beiträge: 1024
Ort: 54.4248, 10.1721
einmal von unterwegs:

das mit 180° versetzt wuerde gehen....

zu brauchst ja eh die zeit fuer eine rumdrehung und wenn die ganu gegenueber sind (was schwer wird ohne platine, also das genau an genau gegenueber).

ich hab den vollkreis in 64 teile unterteilt (erstmal und ich fand shiften cooler als teilen)... dann zeigste einfach mit der einen seite den index an und mit der anderen den index um 32 verschoben...

Ich habs in C gemacht weil ich von basic null ahnung hab... aber:
bei mir laeuft teil von 0 bis 63 um das segment auszuwaelen was angezeigt werden soll.
text ist nen unsigned char array mit den Bildern und der RPM anzeige drin.

int teil2 = teil - 32;
if (teil2 < 0) teil2 = teil2 + 64;
PORTD = (0b00001111 & text[which][teil]) | (0b11110000 & text[which][teil2]);

bei mir waere das dann die aeusseren 4LEDs (PD0-PD3) zeigen den anfang an und die inneren 4 (PD4-PD7) ab der mitte und beide zaehlen dann hoch...

ich find 8 LEDs eigentlich ausreichend, denn so kann man noch 8 auf die andere seite kleben und nen anderes bild anzeigen... z.b. oben gruen und unten rot... auf der anderen seite muss man dan ja auch "rueckwaerts" zaehlen...
« Bearbeitet von CaScAdE am 05.09.2008 19:13. »
Mitglied
Registriert seit: Feb 2008
Beiträge: 142
Hi CaScAde,

Die Idee ist nicht, eine horizontale Spule um den Rückschlussring zu legen, sondern eine
sehr ovale Spule senkrecht nur um den ring. Also im Motor zwischen zwei Magneten und Stator direkt am Rückschlussring entlang, Aussen einfach direkt zurück.

Und da das gesamte Feld im Ruckschlussring fließt, fließt es notgedrungen komplett durch die Spule
und erzeugt einen schönen Puls. Allerdings dürften dass nur so 12 Pulse pro Umdrehung sein. Aber das reicht ja zum synchronisieren einer in Software realisierten PLL bzw. eine Pixeltimers.

Was die Positioniergenauigkeit angeht, so wird ja nur ca. 1/2 Pixelbreite benötigt. Das sind schon mehrere mm die man da abweichen darf.

LG
Matthias
Mitglied
Registriert seit: Jun 2008
Beiträge: 221
Ort: Olten, Schweiz
Ich bin nicht der Genie im Programmieren, die Platine habe ich letzes Wochenende mit Eagle
so klein wie möglich erstellt. 34x34mm. (1xuP (Atmega8),8xTranistoren(BCW60A SMD) ,16xWiderstande SMD 0805 (Abhängig von der Betriebsspannung und LED's), 1xQuarz (8 od. 16Mhz HC49), 2xKondensatoren (27pF SMS) und 1xHallsenor TLE4905L).
Wenn jemand Zeit hat zum Programmieren, kann ich das Layout zurverfügung stellen.

http://gallery.mikrokopter.de/main.php/v/MKBilder/2008-09-05_210142.jpg

Benötigt werden Atmega8, Quarz 8 od. 16Mhz, 8 Transistoren SMD und eine handvoll Widerstände und Kondensatoren. Sowie die 8x LED's, Ich würde vorschlagen SMD 0603 (LO L226 od. LA L226 von Reichelt 30mA 180-224mcd)

Wenn jemand Lust und Zeit könnt ihr mir eine PM für das Platinenlayout schicken.

Könnte die Platine leider noch nicht testen, da die Reicheltbestellung erst nächsen Dienstag bei mir eintrifft. Da Bestellungen in die Schweiz erst ab EUR150.--
Mitglied
Registriert seit: Aug 2007
Beiträge: 1024
Ort: 54.4248, 10.1721
Ich hab meine Sourcen mal aufgeraeumt und on gestellt, evtl macht jemand ja was cooleres draus :D
Mal im ernst, mein erstes mal, also erschlagt mich nicht gleich, immerhin funktioniert es (jedenfalls vorm aufraeumen... Hab besuch, kann nun nicht testen)) *g*
Mitglied
Registriert seit: Mar 2007
Beiträge: 678
Ort: Gelsenkirchen
qrstu meinte
[...]die Platine habe ich letzes Wochenende mit Eagle so klein wie möglich erstellt[...]1xQuarz (8 od. 16Mhz HC49), 2xKondensatoren (27pF SMS)[...]


Im Grunde sollte doch die Frequenz des internen RC Oszillators für diese Aufgabe ausreichen oder? Der ist ja kallibrierbar. Dann könntest du dir nochmal 3 Bauteile sparen.

edit: wooohooo, 500. Beitrag ;)
Mitglied
Registriert seit: Mar 2008
Beiträge: 788
Ort: Sued-Ost-Asien
Gratulation! Jetzt müsste man nur noch einen Prop Produzenten finden der die Mods direkt in die Props einbaut. Bei einer Sammelbestellung wär ich dabei.

Gruss,

Arnd
Mitglied
Registriert seit: Jun 2008
Beiträge: 221
Ort: Olten, Schweiz
Soweit bin ich noch nicht.

Ich habe im Datenblatt des Hallsensors übersehen, dass dieser min. 3.8V braucht.
Mit einer CR2032 wäre dies zu wenig, nun halt im Doppelpack.

Oder weiss jemand, ob es auch Hallsensoren gibt, die mit weniger als 3V funktionieren.

6V ist zwar ok für dem Atmega8 nur wird die Kapazität der 2. CR2032 über die Widerstände für die LED's verheizt.

3V wäre optimaler

Grüsse
qrstu
Mitglied
Registriert seit: Aug 2007
Beiträge: 1024
Ort: 54.4248, 10.1721
qrstu meinte
Ich habe im Datenblatt des Hallsensors übersehen, dass dieser min. 3.8V braucht.
Mit einer CR2032 wäre dies zu wenig, nun halt im Doppelpack.


Meiner sogar min 4,5V... aber meine LEDs nehmen sich auch nur 2mA da gehts mit Widerstaenden noch... klar ist es schade aber irgendwann will ich den strom eh anders da rauf bekommen... Irgendwann :)

vaid meinte
Im Grunde sollte doch die Frequenz des internen RC Oszillators für diese Aufgabe ausreichen oder? Der ist ja kallibrierbar. Dann könntest du dir nochmal 3 Bauteile sparen.


Ich nutz auch nur den Internen. Die ungenauigkeit von dem nehm ich in kauf, aber die 8MHz reichen locker. Das sind immernoch welten fuer eine Umdrehung :)
Mitglied
Registriert seit: Jun 2008
Beiträge: 221
Ort: Olten, Schweiz
Hallo Cascade,

Klar könnte ich den internen Takt verwenden, mein Quarz ist ebenfalls ein Ausgleichgewicht.
Sonst hätte ich den uP im Zentrum plaziert, aber ich will dort eine Befestigung für die Platine auf dem Propeller haben. (Schraube oder Stift). Auf die Transistoren kann ich nicht verzichten, da ich LED's mit 20mA (ca. 200mcd) verwende. Die 2mA LED's haben ja nur ca 8-10mcd

Ich will den uP nicht bis an die Grenzen an den PB-Pins belasten.

Das Problem mit der Unwucht des Propellers werde ich vermutlich so Lösen, indem ich auf beiden Seiten LED's anbringe und sehr dünne Kupferlackdrähte verwende. LED's SMD 0603. Die Leds werde ich an die Drähte löten und anschliessend mit Sekundenkleber auf dem Propeller fixieren und eine Schicht Klebband darüber.

Wenn natürlich jemand Propeller selber herstellt könnte man dies und die Elektronik, LED's, Wuchtgewichte direkt einbacken.

Dann könnte ich noch zwei Trasistor plazieren, damit ich einmal rote und grüne Schrift habe.

Ich bin nicht der geborene Programmierer --> BASCOM (Basic)

Grüsse
qrstu
« Bearbeitet von qrstu am 08.09.2008 14:50. »
Moderator, MK-Betatester
Registriert seit: Apr 2007
Beiträge: 3646
Ort: Berlin
wenn man die draehte und/oder die LEDs heiss macht, kann man sie in den prop druecken ;)
Mitglied
Registriert seit: Aug 2007
Beiträge: 1024
Ort: 54.4248, 10.1721
Ich hab testweise mal 128 statt 64 segmente genommen, der AVR wird dann zwar mit som muster schneller voll aber das laeuft immernoch erstaunlich gut...
[das ist nen muster 170,85,170,85.... also 10101010, 01010101 immer abwechselnd]

externer Link:
User image
externer Link:
User image
externer Link:
User image

und grtsu: Programmieren musste doch nicht koennen, kannst doch den quellcode von mir deiner schaltung anpassen?!

jamiro meinte
wenn man die draehte und/oder die LEDs heiss macht, kann man sie in den prop druecken ;)


Sind sie bei mir teils unfreiwillig auch *G*
Mitglied
Registriert seit: Jun 2008
Beiträge: 221
Ort: Olten, Schweiz
@cascade

Ich habe ein Bascom AVR Programm genommen und angepasst. Werde auch dein Programm ausprobieren und dann entscheiden. C-Code oder Basic-Code
Ich warte immer noch auf die Lieferung der Rei...-Bestellung sollte morgen kommen, dann kann ich starten.
Jedes Zeichen ist bei mir ein 6x8 Bitmap. D.h. somit bin ich flexibler mit den unterschiedlichen Drehzahlen.
So kann die Zeit bis zum nächsten 8bit Segment verlängern oder verkürzen.

Wie hast du die Fuse Bit's gesetzt, damit der interne Takt des Atmega8 verwendet wird. Kann ich dann wieder auf den exteren Takt zurück.

Ich werde vermutlich die LED's näher zusammen rücken, damit jeder Punkt ungefähr gleich gross ist.

Werden kurze Nächte werden, das EPI-OSD wartet auch noch.

E Griessli
qrstu
Mitglied
Registriert seit: Aug 2007
Beiträge: 1024
Ort: 54.4248, 10.1721
Die fueses sind oben in meinem "schaltplan" zu sehen... Und ja, die kannste auch wieder umfusen auf externen....

den kram warum 8x6 besser ist als die einzel segmente hab ich noch verstanden, aber gut... falls du deinen code dann auch zeigst werd ich das evtl verstehen :) denn ich messe ja nur einmal pro umdrehung wie lange das dauert, oder machst du mehrere magnete und holst dir mehr takte pro umdrehung?
Mitglied
Registriert seit: Jun 2008
Beiträge: 221
Ort: Olten, Schweiz
@CaScAdE:

Wie ich schon sagte, ich bin nicht der geborene Programmierer.
Ich nehme den Code so wie ich ihn bekomme und ändere den so das es passt.

Der Timer zahlt die Impulse des Hallsensor pro Zeiteinheit z.B. 0.5sek od. 1sek
Der Magnet ist ja nur da, damit die Position des Propellers durch den Hallsensor bestimmt werden kann und der Text an der gleichen Position stehen bleibt. Warum sollte ich mehrere Magnete montieren ?

Ich werde mir auch deinen Code anschauen, danke das du diesen in den Thread gestellt hast.

E Griessli
qrstu
Mitglied
Registriert seit: Aug 2007
Beiträge: 1024
Ort: 54.4248, 10.1721
Ich war eben Fliegen mit den Dingern und hab Dad die Cam in die Hand gedrueckt...
Resultate unten im ersten Post :)

MIT VIDEO!
« Bearbeitet von CaScAdE am 09.09.2008 21:53. »
Mitglied
Registriert seit: Mar 2008
Beiträge: 661
Ort: Kassel
hi,

fette sache das!
würd mich zwar kaum trauen damit zu fliegen aber es funktioniert ja schonmal ziemlich gut.
respekt!

mfg
Rob

Neues Thema GESCHLOSSEN

Seite: 1 2 >

MikroKopter - Forum » Motoren & Propeller » EPP1045 Mod mit LEDs -> Anzeige von RPM, Bildern...