Arduino DMX mit Master Dimmer und Strobo mit der DMX.Serial Libary

  • @Gast Könntest du mir den von der ergänzten Code noch erklären oder einer der es weiß ich möchte es genau kapieren so genau wie möglich und Anfänger freundlich würde mich riesig freuen

    Habe beim Arduino mit den Mathematischen Formen noch kein mal was wirklich gemacht

    LG Julian

  • Das dimm Programm geht jetzt super für RGB würden wir einen Strobo bis 50 Hz auch noch hin bekommen ? were supi den Code wo ich bis jetzt habe schick ich mal mit rein

    Strobo macht eig nur bis 20Hz Sinn (genauer bis 24 Hz), da es ab da für das Auge zu "schnell" wird. Siehe PWM. Deshalb sind Kinofilme auch i.d.R in 24 fps gefilmt.

    Okay ich habe hald einen Scheinwerfer der 50 Hz kann deswegen auch egal Hauptsache es blinkt langsm und schnell mit DMX xD :D

  • Deshalb sind Kinofilme auch i.d.R in 24 fps gefilmt.

    Heute auch nicht mehr. Eher 60 FPS, bei 3D sogar 120 FPS, damit es 60 pro Auge sind, aber unabhängig davon stimmt die Aussage mit dem Strobo.


    Arduino Master

    Ich erkläre dir grob, wie ich das machen würde, aber den Code musst du selber schreiben. Das du Anfänger bist ist hier allen klar, also frag ruhig weiter, aber das "Lernen" kann keiner für dich übernehmen, daher ist das beste wenn du dich selber durchkämpfst, da ist der Lerneffekt am größten.


    Ich würde in der loop() Funktion eine Variable hochzählen. Die Grenze wie hoch gezählt wird, bestimmt der Strobo Kanal. Wenn der Kanal auf 1 ist (Langsam) dann zählt die Variable von 0 - z.B. 1000, und startet wieder bei 0. Wenn der Kanal bei z.B. 255 ist, dann Zählt die Variable nur bis 50. Wenn der Strobe Kanal > 0 ist, dann würde ich im Wertebereich 0 - 10 einfach den berechneten R, G, B Wert ausgeben, und ansonsten 0. Das führt dazu, dass für ein paar Schleifendurchläufe deine LEDs leuchten und dann aus gehen. Über die Obergrenze der Variablen bestimmst du die Strobefrequenz. Die genauen Zahlen für die Wertebereiche musst du ausprobieren, da die davon abhängen, wie schnell die loop Funktion durchlaufen wird. Meine Zahlen sollen lediglich zur Verdeutlichung des Algorithmus dienen.


    Gruß Soon5

  • Also so wie ich es verstanden habe mit einer if Schleife mit Kanal 5 in meinem Programm if der wert 1bis 10 dann Leuchten die leds aber wie sagt ich dem Arduino von 1 bis 10 ist nix mit einer Byte Funktion in der 1 bis 10 drinnen ist mit einen namen der dann in die if ( der Name > 255); oder wie geht das

  • Uhuhu. Ganz übel. Es gibt keine "if Schleife". Es gibt eine "if Abfrage".


    Du deklarierst eine variable "uint_t16 stroboZaehler" oben in deinem Programm, da wo auch die konstanten stehen. Dann kannst du die stroboZaehler hochzählen und mit "if (stroboZaehler <= 10)" vergleichen.

  • Ich habe das mal mit dem Arduino Gemacht mit dem poti kann ich da einfach einen DMX wert einsetzen ?


  • Ja, kannst du machen, das sollte funktionieren.


    Anstelle des digitalWrite(strobePin,...) machst du halt deine analogWrites für R, G, B. Einmal mit dem berechneten Wert, einmal mit 0. Und du musst in der map Funktion deinen Wertebereich anpassen. DMX geht nur von 0 - 255

  • Hier ist die Deutsche Referenz: https://www.arduino.cc/referen…guage/functions/math/map/


    Was du dir überlegen musst: Willst du Programmieren lernen? Dann kannst du nicht nach 5 Minuten schreiben "Ich finde den Fehler nicht". Programmieren ist gerade am Anfang zäh, und nervig, aber da muss man durch.


    Wenn du es nicht lernen willst, sondern einfach eine funktionierende Lösung haben willst, dann sag es einfach. Ich würde dir auch empfehlen dich in einem Forum für Arduino Einsteiger und SW Entwickler Einsteiger an zu melden, weil ganz ehrlich, du hast die Grundzüge von Programmierung nicht verstanden. Das ist jetzt nicht böse gemeint, sondern einfach eine Feststellung. Es gibt super Tutorial Videos auf YouTube welche die Grundzüge der Programmierung erklären.


    Viel Erfolg noch heute Abend.


    Gruß Soon5

  • So eine Reihe habe ich schon angesehen von leds ein und aus bis einen sensor auslesen und Display ansteuern habe den Code schon kapiert auch was er tut

  • Also Es Geht so halb ja so halb nein ich bin entweder zu doof oder keine Ahnung habe jetzt alles probiert haben den Arduino Artikel 2 mal gelesen ich finde es nicht geb mir mal einen kleinen tipp bitte

  • Newly created posts will remain inaccessible for others until approved by a moderator.

    The last reply was more than 365 days ago, this thread is most likely obsolete. It is recommended to create a new thread instead.