Forum: Mikrocontroller und Digitale Elektronik Welchen Arduino für mein Vorhaben


von Maude (Gast)


Lesenswert?

Hallo hallo,

vorab: Bitte kein Pro/Contra Arduino Gebashe
bitte Bitte BITTE

Habe bisher nur direkt auf nackten AtMegas und stm32 rumgedaddelt.
Folgende Idee würde ich gerne mal nutzten, um mir die Arduinowelt 
anzusehen.
Ich habe ein paar einfache RGB Lampen, die mittels DMX512 gesteuert 
werden.
Jetzt kam mir die Idee einen Lichtwecker zu bauen, bei dem per DMX zum 
einen die Uhrzeit eingestellt werden kann, wie ihn auch als normales 
Effektgerät zu benutzten.
Als Zeitanzeige möchte ich etwas abkupfern, was ich wo anders gesehen 
habe:
Pro Ziffer eine RGB LED, jeder Mischzustand steht für eine Zahl von 0 
bis 9

100% rot = 0
70% rot + 30% grün = 1
30% rot + 70% grün = 2

100% grün = 3
70% grün + 30% blau = 4
30% grün + 70% blau = 5

100% blau = 6
70% blau + 30% rot = 7
30% blau + 70% rot = 8

weiß = 9

Auflösen würde ich das PWM gerne mit 10 Bit, zur Not tuns auch 9 oder 8.

Da ich noch nie was mit Arduino zu tun hatte, möchte ich nach Tips 
fragen, welchen ich hinsichtlich Rechenleistung nehmen sollte; 
insbesondere mit Blick auf das PWM, was in der Anzahl und Auflösung 
höchstwahrscheinlich als Soft-PWM gelöst werden müsste.
Ich denke die Programmgröße sollte übersichtlich sein.

Es gibt ja auch "Tricks" was das erzeugen mehrer PWMs angeht, um 
Rechenleistung zu sparen. Mir fällt nur der Begriff nicht mehr ein.

Grützi!

von grundschüler (Gast)


Lesenswert?

Ein Arduino-atmega256 für unter 10€:
http://www.ebay.de/itm/381019068221?_trksid=p2059210.m2749.l2648&ssPageName=STRK%3AMEBIDX%3AIT

Einfach beeindruckend.

von Hubert G. (hubertg)


Lesenswert?

Du solltest nachsehen welche AVR in den diversen Arduino drinnen sind. 
Wenn du schon mit AVR gearbeitet hast, kannst du dann sicher selbst 
entscheiden welcher der zielführende ist.

von isidor (Gast)


Lesenswert?

grundschüler schrieb:
> Ein Arduino-atmega256 für unter 10€:
> Ebay-Artikel Nr. 381019068221

Den gerade lieber nicht. Denn der hat einen anderen USB Controller
drauf der auch noch dazu nicht programmierbar ist.

von Stefan F. (Gast)


Lesenswert?

Ich würde zum Arduino Nano raten. Den kannst Du wahlweise mit und ohne 
Arduino Software nutzen. Er ist mit den sehr gängigen Atmega328 und 
FT232RL bestückt, also Hardwaretechnisch ohne Sonderlocken.

von Maude (Gast)


Lesenswert?

Mir ist noch ne andere Idee gekommen.
Man könnte auch ein Raspbarry oder Banana PI hernehmen und ne QT 
Anwendung mit DMX Interface entwerfen und das Gesamtsystem als Wecker 
benutzten.

Dennnoch danke für die Antworten. Was ich genau mache, steht ja nicht 
fest.
Vorallem, dass es da Varianten gibt, was die "standardmäßigkeit" einiger 
Bauteile angeht, ist gut zu wissen.

Was ich mir fast wünschen würde, währen die kleinen Tinys mit Arduino 
Libs. Da sind ja schon die DIP Varianten winzig. Ich hab da ne Idee, wo 
ich einige kleine simple Einheiten bräuchte, die 1 oder 2 pinnige 
Aufgaben lösen und auch algorithmisch kaum was passiert.

von Axel S. (a-za-z0-9)


Lesenswert?

Maude schrieb:
> Als Zeitanzeige möchte ich etwas abkupfern, was ich wo anders gesehen
> habe: Pro Ziffer eine RGB LED, jeder Mischzustand steht für eine Zahl
> von 0 bis 9
>
> 100% rot = 0
> 70% rot + 30% grün = 1
> 30% rot + 70% grün = 2
...

> Auflösen würde ich das PWM gerne mit 10 Bit, zur Not tuns auch 9 oder 8.

Albern. Wozu brauchst du eine 10-Bit PWM, wenn du nur 4 Helligkeits- 
stufen 0%, 30%, 70% und 100% darstellen willst?

> Da ich noch nie was mit Arduino zu tun hatte, möchte ich nach Tips
> fragen, welchen ich hinsichtlich Rechenleistung nehmen sollte;
> insbesondere mit Blick auf das PWM, was in der Anzahl und Auflösung
> höchstwahrscheinlich als Soft-PWM gelöst werden müsste.

Vollkommen egal. 12 PWM-Kanäle (4 Ziffern * 3 LED) als Soft-PWM mit 
sagen wir 8 Bit schafft jeder.

> Es gibt ja auch "Tricks" was das erzeugen mehrer PWMs angeht, um
> Rechenleistung zu sparen. Mir fällt nur der Begriff nicht mehr ein.

Womöglich meinst du BAM = bit angle modulation. Aber um ein paar LEDs 
"an", "aus" und mit 2 Helligkeitsstufen dazwischen anzusteuern, würde 
man sowieso keine komplette PWM machen. Sondern einen Timer mit 2 
Compare-Interrupts verwenden. Und dann in diesem beiden Interrupts 
einerseits und dem Überlaufinterrupt andererseits die LEDs jeweils ein- 
bzw. ausschalten.

von Jürgen S. (jurs)


Lesenswert?

Maude schrieb:
> Ich habe ein paar einfache RGB Lampen, die mittels DMX512 gesteuert
> werden.

In diesem Zusammenhang verstehe ich Deine Ausführungen zur Generierung 
von PWM-Signalen für Deine Lampen überhaupt nicht.

Du hast offenbar "intelligente" DMX-Scheinwerfer, die Du ansteuern 
möchtest. Und das wird nicht per PWM gemacht, sondern mit 
DMX-Steuerbefehlen, die bei einem Arduino über eine serielle 
Schnittstelle gesendet werden.

Vielleicht schaust Du mal hier rein:
http://playground.arduino.cc/Learning/DMX

Die Ansteuerung von intelligenten DMX-Scheinwerfern erfolgt nicht direkt 
über PWM, daher hast Du auf dem Arduino überhaupt nichts mit PWM zu tun, 
wenn Du tatsächlich nur DMX-Steuerbefehle senden möchtest.

von Rudolph (Gast)


Lesenswert?

grundschüler schrieb:
> Ein Arduino-atmega256 für unter 10€:
> Ebay-Artikel Nr. 381019068221
>
> Einfach beeindruckend.

Yup, einfach beeindruckung das man das Layout noch beschissener 
hinbekommen kann als das Referenz-Design.

Kennt echt niemand preiswerte Alternativ-Boards?

Sowas wie das Linduino ist zwar schon schick, aber hat halt "nur" den 
kleinen Mega328 drauf und soll bei Linear 75 Euro kosten.

von Maude (Gast)


Lesenswert?

Jaaaa, genau, BAM war das Zauberwort :-)

Warum wird oben von "albern" gesprochen? Kann es nicht als normale Frage 
statt mit so einer polemischen Schreibweise angesprochen Werden?
Auf die Art können Farbanteile gemischt und die Helligkeit eingestellt 
werden.

Mir ist schon klar, dass DMX alias RS485 was anderes ist als PWM. Sonst 
würden meine Lampen nicht funktionieren. Aus meinen Posts gehen zwei 
getrennte Ideen hervor. Einmal ein Teilnehmer, der als Wecker fungieren 
kann, mittels DMX gesteuert wird und die PWM für die RGB´s erzeugen 
muss.
Zum anderen ein Steuergerät, welches die Steuersignale erzeugt.

von BjoernS (Gast)


Lesenswert?

Hi,
der Arduino Mega hat die geforderten 12 PWM Kanäle.
analogWrite() erledigt die PWM-Ausgabe beim Arduino, für DMX gibt es 
auch Libraries, sowohl als Master als auch als Slave.

Ziemlich genau für solche Aufgaben wurde der Arduino erdacht...

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.