Ich bin im Moment dabei, ein Rotordisplay zu bauen. Allerdings bin ich mir nicht sicher, ob das alles so funktioniert. Als "Hauptprozessor" habe ich mich für einen Atmel AVR Mega 644P entschieden, da dieser nicht so viele Pins hat, die ich dann eh nicht brauche, weil es ein AVR ist, denn man "relativ" einfach mit Bascom programmieren kann und weil er recht viel Speicher hat, sodass man auch ein paar Grafiken auf ihm Speichern könnte, ohne dass er eine PC Verbindung nötig hätte, da sich der AVR ja mitdrehen soll. Falls man doch mal noch mehr Speicher braucht, um evtl. sogar Animationen anzuzeigen, habe ich optional den Atmel AT25DF321 mit eingefügt. Da dieser aber 3,3 Volt braucht, habe ich den Spannungswandler AS 1360 von Austriamicrosystems eingefügt, damit dieser aus den normalen 5Volt 3.3 Volt macht. Über den ISP Stecker kann ich den Prozessor programmieren. Damit die LED Treiber keine falschen Signale beim programmieren bekommen, habe ich den DIP-Schalter mit eingefügt, sodass man den BUS zu den Treibern einfach unterbrechen kann. Als LED Treiber habe ich die AS 1110, ebenfalls von Austriamicrosystems, da diese eine interne Strombegrenzung für die LEDs haben. Im Anhang habe ich den Schaltplan des ganzen. Außerdem habe ich mein Layout für die LED-Platine mitgeschickt. Meine Frage ist jetzt, ob das alles so funktioniert, wie ich mir das gedacht habe, vor allem mit dem Flashspeicher. Außerdem weiß ich nicht, ob das ganze schnell genug ist.(ca. 10MHz Bus, sodass ich auf 50Hz der LEDs komme, bei 3000 U/min.) Eigentlich müsste es das, doch ich weiß nicht, ob es da noch versteckte "Verbraucher" gibt.
@Tobias soll ich mir das RAR File runterladen, entpacken und dann feststellen, das ich die Dateien gar nicht öffnen kann??? Als Bild sehen sich viel mehr User die Pläne an... nitraM
was für einen durchmesser bekommt dein rotor? pass auf dass die fliehkräfte nicht irgendwann zu groß werden und dein rotordisplay anfängt mit hühnerfutter oder platinen zu ballern. 50Hz ist schon einiges wenn man mehr als eine kleine welle hat. wenn ich mich nicht irre ging die zentripetalkraft (fz) so: Fz= m*omega^2*r ab wann lötstellen bzw. eher platinen versagen weiß ich leider nicht.
Schaltplan zeichnen musst du noch üben. Falls der 8pol. neben dem Spannungsregler der Speicher ist, dann ist da nix mit optional, weil sonst der SPI-Bus unterbrochen ist.. Weiterhin halte ich es nicht für sinnvoll, die LEDTreiber und den Speicher zu kaskadieren. Du musstest ja alles durch den jeweils anderen durchschieben, weil es eher unwahrscheinlich ist, die Daten direkt aus dem Speicher in die LEDtreiber zu senden... Falls der OEN Anschluss am LED-Treiber eine output-enable ist, würde ich den an einen output compare ausgang vom µC legen. So kannst du alle zugleich mit ner PWM dimmen.. >bei 3000 U/min.) Dir ist aber schon klar, dass das 50!!! Umdrehungen die Sekunde sind? => Auswuchten, wie, womit? Wie realisierst du die Spannungsübertragung auf die drehende Elektronik? Wie ist die Mechanik realisiert, damit sich das "ordentlich" drehen kann? Wenn dein 8Pinner der 3,3V Speicher ist, dann wirst du wohl eines in die ewigen Chipgründe bringen, wenn du einschaltest. Du kannst nicht einfach 3,3V und 5V Signale mischen und direkt verbinden... Der 20MHz Quartz sollte wohl eher an die XTAL Anschlüsse, die TOSC sind nur für Uhrenquartze... Du willst wirklich einen riesigen DIL40 schnell drehen lassen...? Zum DIP Schalter S1: Es gibt bessere (elegantere) Lösungen als solche Schalter (zumindest für den Zweck) >Falls man doch mal noch mehr Speicher >braucht, um evtl. sogar Animationen anzuzeigen Wie willst du die Daten da reinbekommen? Beitrag "Re: IrDA mit 89,6kb/s für Propeller Clock" Achja: kein einziger Block-C an den LED Treibern vorhanden: EMV - Sechs.Setzen. So wie das auf der Platine aussieht, hast du 5V als eine Lage und GND als die Andere? Sowas macht man schonmal garnicht, zumindest nicht bei Zweilagenplatinen! >ob das ganze schnell genug ist Wenn ich richtig gelesen habe, hast du für jede der 150LEDs einen 16bit-Helligkeitswert, dass bedeutet, du brauchst für EIN (statisches) BILD einen Videospeicher von 300Byte PRO SPALTE!!! Da dein Atmel aber nur 4kB SRAM hat, kannst du nur 13Spalten darstellen. Dass du jetzt keine Variablen/Spapelzeiger mehr unterbekommst, lass ich mal weg. Nehmen wir mal 12Spalten an: Ergäbe eine Auflösung von 50 (RGB) mal 12 Punkten. Videospeicher ist dann 3600Bytes!Willst du 50Frames pro Sek darstellen, musst du 300x12x50=180kB/sek NETTOdatendurchsatz haben, Also mindestens 1,44MBit/Sek. Das berücksichtigt noch nicht, dass die Daten Irgendwo hergeholt werden müssen, und evtl. auch irgendwie erzeugt werden müssen, bzw irgendein Overhead (Steuerdaten für LEDtreiber)... Weiterhin: Wie erkennst du, wann eine neue Zeile auszugeben ist? Hallsensor? Inkrementalscheibe..? Bei angenommenen 12Spalten pro Umdrehung. Bei 50 Umd/sek und 12Spalten ergibt das ein Refresh von 600Hz, also alle 1,67ms müssen (mind.) 300Bytes (für eine Spalte) geholt UND geschrieben werden. Wohlgemerkt: bei 12Spalten, was reichlich wenig ist.. >ca. 10MHz Bus Kann man das mit Bascom überhaupt so schnell ansteuern..? Achja, ich halte softwaretechnisch für unklug, die Videodaten im Videospeicher so abulegen: RotLED1,GrünLED1,BlauLED1, RotLED2,GrünLED2,.. Es sollte besser so sein: RotLED1..LED50, GrünLED1...LED50, Blau.. (Da wird das Layout komplizierter) Ich würde dir raten, bevor du Schaltpläne/Layouts erstellt, nochmal LÄNGER üner das Konzept nachzudenken. Eine Softwareentwicklung fängt auch nicht! mit dem Eingeben von Quellcode an, das kommt VIEL später... Mehr fällt mir jetzt in meiner Müdigkeit und auf die Schnelle nicht dazu ein.. Beitrag "Re: Auftragsarbeit - RGB-LED-Lauflicht"
Oh, das war ernüchternd. Ich meinte aber nicht, dass ich für jede LED einen 16 bit Helligkeitswert habe, sondern nur, dass ich die Farben einzeln ansteuere, sodass ich nur die Farben Rot Grün und Blau und die reinen Mischfarben aus diesen habe. Was ist Block-C und EMV?
>16 bit Helligkeitswert habe, sondern nur, dass ich die Farben >einzeln ansteuere Die TreiberICs brauchen 16bit pro Ausgang. ob du die nutzt oder nicht spielt da keine Rolle. Übertragen musst du die. Es sei denn, du nimsmt normale SRGs, da gibts nur an/aus pro Farbe, somit auch nur 1bit. >Was ist Block-C Abblockkondensatoren für die Spannungsversorgung. >EMV? Elektromagnetische Verträglichkeit. Also sowas wie: wieviel Störung sendet meine Schaltung aus bzw verträgt sie. Störungen entstehen durch (schnell) schaltende ICs. Also wenn sich Spannungen/Ströme schnell ändern..
@ Tobias Ich hab das mal gebaut vor einer Weile http://www.myvideo.de/watch/1268548 Mega16 Dil led direkt an Pins (Widerstände) Spannung 7805 etc etwas grössere Kondi 1000uF 16V Pc-Lüfter Motor Kupferrohr fuer Strom also alles lowcost probier es erstmal ganz einfach mein Tip(p) Grüsse
@atomino: nicht schlecht. @ lippy: Ich werde jetzt das ganze wahrscheinlich kleiner bauen, und dann die LEDs direkt an die I/Os des AVRs hängen (natürlich mit Transistor und Widerstand) mal sehen. Trotzdem danke.
hier auch von mir ein groesseres ca 75cm durchmesser http://de.youtube.com/watch?v=jkcFnVIT9kk Tip:bau alles so konzentriert ( Ausdehnung) wie möglich smd? grösste schwierigkeit mist dynamische Balance cu
ich würd mit ja mal sowas für die meine karre bauen, aber mir graut etwas vor einer allgemeinen verkehrskontrolle...
1. hall oder gabellichtschranke an int 2.leds direkt + resistor an avr 3.kondi 500...1000uf wg u-stabilität 4.cu rohr 15ner 5.altes relais ---->schleifkontakte 6.7805 , 100nf etc 7.intern calib takt 8.assembler da konkreter summa:wenig bauteile denn ---> grosses problem wg dyn. unwucht muss vermieden werden
gibt es ein Bauteil, sozusagen einen elektronischen umschalter, der, wenn das Eingangssignal high ist, Kanal 1 durchschaltet und wenn das eingangssignal low ist Kanal 2 durchschaltet? Welche Transistorart brauche ich, wenn ich ein positives Signal verstärken will? (npn oder pnp?) Ich habe einen Motor, der seine Drehzahl konstant hält, da habe ich akeine Probleme mit Hallsensor...^^ Grüße Tobias
um gleich bei Austriamicrosystems zu bleiben, der AS1743 kann das recht gut. nette schaltung übrigens, die hab sowas mit dem AS1108 gebaut ... bist du ein AMS Fan?
nö, eigentlich nicht. wiso? ST Microelektronicks ist mit denen und Atmel gleichauf... :-)
Was gibt es eigentlich für schöne Transistorcluster? (muss nicht von AMS sein ^^)
kann ich nicht zwei Transistorn so zusammenschließen, dass sie an ein AVR pin geschlossen werden können und bei High der eine schaltet und bei low der andere? (sie sollten beide möglichst plus schalten)
Würde empfehlen erstmal ein kleineres Display mit weniger LEDs aufzubauen. Probleme hast du damit noch genug. Jedenfalls mehr als man denkt. Ein Motor mit konstanter Drehzahl wird dir den Hallsensor (o.ä.) nicht ersetzen. Hatte einen billigen Modellbaumotor. Ohne synchronisation hat auch bei mir das Bild nicht gewackelt. Aber es schwimmt. Und reicht es schon, wenn dein Controller und Motor nur ein ganz klein wenig von der Drehzahl nicht zusammenpassen. Andererseits kann man so das Bild "wegpusten". Ist auch ganz lustig. Sebastian
An den AS1110? Ich bin einfach auf die Seite der Hersteller, Austriamicrosystems, gegangen und habe mir dort Free Samples bestellt. Dann bekommt man drei Bauteile gratis zugeschickt. Man kann zusätzlich noch den AS 1113 nehmen, der ist das gleiche, nur das er maximal 50 anstatt 100 mA schalten kann. Damit hätte man schon 6 ICs.
habs in meiner Studienzeit gleich gemacht. PS.: Ich arbeite übrigens bei AMS :)
Oh, ähä, da hätt ich dir evtl nicht gleich auf die Nase binden sollen, wie ich die verarsche, oder?
nein, wir sehen das ja auch nicht als Verarschung an sonst würden wir auch keine Free Samples anbieten, ich hab zu meiner Studienzeit auch bei Analog, National, usw. Gratis IC's besorgt, und das hat auch seine Gründe, denn schließelich kenne ich dadurch diese Produkte und Designe sie auch in meinem Job gelegentlich ein ( eben diese die ich schon kenne ). Und das wird bei dir falls du mal wo Arbeitest genau so passieren, für uns sind das nur "werbeausgaben". Und immerhin wir haben es geschafft dich für unser produkt zu begeistern oder zumindest hast du es eindesignt, mich würde es freuen wenn dein Rota Display funktioniert. Wenns gut funktioniert wönnen wir ja auch drüber reden ob du es uns vl. verkaufen würdest :) ( würde sich bei uns sicher als schicker Demonstrator machen ) lg
Jo, mag sein, aber ich habe mich jetzt umentschieden, es nicht mit Schieberegistern zu machen, sondern die LEDs direkt an den AVR zu hängen, ist mir sonst zu kompliziert, aber trotzdem danke...
>ist mir sonst zu kompliziert, aber trotzdem danke...
Ändert aber nicht wirklich was an den Punkten, die ich dir genannt habe.
Im Moment muss ich das als Facharbeit für die Schule machen und die Zeit läuft mir davon , daher wähle ich jetzt erstmal die leichtere Variante, aber das Interesse an den Schieberegistern bleibt, falls ich mal viele LEDs steuern muss... Vielleicht wird es auch noch eine zweite Version des Rotordisplays geben, mal sehen, was sich zeitlich machen lässt, da die elfte Klasse nicht grade gechillt ist.
Das war nicht auf die SRGs bezogen, sondern auf die Herangehensweise. Du wirst sehen, wenn du jetzt zuwenig (bis garnicht) an die (nachfolgende) Softwareentwicklung denkst, wird sich das an entsprechender Stelle rächen. Trotzdem viel Glück
hm noch meine Frage.: was is an den SRGs so kompliziert, Schematic, das Layout oder die SW?
Alles. egal was ich gemacht habe, es war irgendwie falsch. Ich weis nicht, wie man diese programmiert, ich weiss nicht wie man mit dem bus arbeitet (ISP bus)...Kannst dir ja mal meinen komplett falschen Schaltplan oben ansehen... (Da hatte ich ja die AS1110 verbaut) :-)
...Ich weis nicht, ob der Bus schnell genug ist, ich weis nicht, ob man die SRGs überhaupt so ansteuern kann.....
Ich kann doch mit einem Inverter ein positives Signal in ein negatives Signal wandeln, oder? Doch wie ist so ein Inverter aufgebaut und wie funktioniert er?
nanana, des Design passt eh, du hast lediglich DataIn und DataOut verwechselt. zu schnell für das Ding wirst du min AVR ned sein können und zu langsam gibts ned wirklich. vl. hilft dir das ein wenig :) funzt auf dem AS1008 wirklich gut. /* austriamicrosystems AS1108 Democode for SPI */ void OEN( unsigned char value ) { P2 = (P2&~4)|(value<<2); } void LD( unsigned char value ) { P2 = (P2&~8)|(value<<3); } void CLK( unsigned char value ) { P2 = (P2&~16)|(value<<4); } void SDI( unsigned char value ) { P2 = (P2&~32)|(value<<5); } void WriteSPI( unsigned char *values , unsigned char Devices ) { unsigned char i; unsigned char j; for ( j = 0; j < Devices ; j++ ) for ( i = 0; i < 8 ; i++ ) { SDI( (values[j]>>(7-i))&1 ); CLK(1); CLK(0); } LD(1); LD(0); } und im Hauptprogramm steht dann sowas.: unsigned char RPM[10]; WriteSPI( RPM , 9 ); OEN(0); Wait(10) ; OEN(1); Wait(10); musst eigentlich nur noch die Portpins anpassen, bei mir wars halt ein LPC938uC für Demozwecke.
ich habe halt kein Bock, jetzt noch C oder Assembler zu lernen. Tschuldigung!
>habe halt kein Bock,
Ist selbstverständlich dir überlassen, C wäre aber sinnvoller...
naja gut, also mit zb LD(0), setzt mal die LD Leitung auf 0V und mit LD(1) setzt man die LD leitung auf High. Assembler lernen brauchste da wirklich nicht, wäre auch Zeitverschwendung. Aber C wirst du für sowas schon brauchen spätestens wenn du dir gedanken machst was du da überhaupt anzeigen willst. Ich glaub du solltest dich etwas mit Grundlagen beschäftigen bevor du weiter mit deinem Projekt arbeitest. lg
Also, mein Rotordisplay ist seit Sommer fertig. es ist sehr gut bei meinen Lehrern angekommen. Seitdem habe ich allerdings nichts mehr an dem Rotordisplay gemacht, da ich im Moment in der 12. Klasse bin und wichtigeres zu tun habe, und ich nach dem Stress erstmal genug von Elektronik hatte. Daher ist das Rotordisplay in einem relativ unfertigen, aber lauffähigen Zustand geblieben. Nach Abschluss der Arbeit habe ich das Display hier im Forum gepostet. Beitrag "Mein Rotordisplay" Sollte sonst noch jemand Fragen haben, zögert nicht, mich zu löchern.^^ PS: sorry, hatte erst jetzt gesehen, dass dieser Thread noch lebt, :-) Sonst hätte ich natürlich schon geantwortet...
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
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.