INFO: Dieses Forum nutzt Cookies...
Cookies sind für den Betrieb des Forums unverzichtbar. Mit der Nutzung des Forums erklärst Du dich damit einverstanden, dass wir Cookies verwenden.

Es wird in jedem Fall ein Cookie gesetzt um diesen Hinweis nicht mehr zu erhalten. Desweiteren setzen wir Google Adsense und Google Analytics ein.

Antwort schreiben 
 
Themabewertung:
  • 0 Bewertungen - 0 im Durchschnitt
  • 1
  • 2
  • 3
  • 4
  • 5
Problem mit DMX-Shield und 433MHz-Sender
17.12.2013, 20:41 (Dieser Beitrag wurde zuletzt bearbeitet: 18.12.2013 13:31 von phipper.)
Beitrag #1
Problem mit DMX-Shield und 433MHz-Sender
Hallo ihr,

ich bin sowohl hier als auch in der Welt des Arduino recht neu. Ich habe nach einer Lösung für ein konkretes Problem gesucht und der Arduino schien dabei die richtige Basis. Bisher habe ich so gut wie keine Erfahrung, bin bisher aber immer ganz gut mit Logik und Recherche vorangekommen.

Zu meiner Anwendung:
Ich möchte Funksteckdosen per DMX-Ansteuerung (Lichtsteuerbus) schalten. Dafür habe neben dem Arduino Uno mir ein DMX-Shield von Conceptinetics zugelegt. Das Funkmodul hatte ich schon in meinem Raspberry Pi verbaut und wurde von dort ausgeborgt, stammte ursprünglich von Watterott.

Dann habe ich meinen ersten Sketch programmiert, was auch so weit funktionierte. Ich kann die Funksteckdosen wunderbar per DMX an- und ausschalten.
ABER: Die Funsteckdosen schalten mit einer variablen Verzögerung von ca. 0,5s bis 2s, was für eine Lichtsteuerung zu lange ist. Auch wenn ich per DMX Kanäle gleichzeitig schalte, reagieren die Funksteckdosen nach einander mit etwa 0,5s.

Wie gesagt, ich hab wenig Verständnis dafür, was ich da geschrieben habe. Dass der Atmega langsam getaktet ist, ist mir bewusst, aber doch müsste die Verarbeitung von DMX-Wert auslesen, auswerten, an Funkmodul senden schneller gehen, oder?

Ich würde mich freuen, wenn mir jemand helfen kann!

Beste Grüße,
Philipp

Hier mein Code:
Code:
#include <Conceptinetics.h>
#include <RCSwitch.h>
#define SLAVE_CHANNELS 5

DMX_Slave dmx_slave ( SLAVE_CHANNELS );
RCSwitch mySwitch = RCSwitch();

void setup() {            
  dmx_slave.enable ();  
  dmx_slave.setStartAddress (300);
  mySwitch.enableTransmit(10);  
}

void loop()
{
  if ( dmx_slave.getChannelValue (1) > 127 )
    mySwitch.switchOn("01101", "10000");
  if ( dmx_slave.getChannelValue (1) < 128 )
    mySwitch.switchOff("01101", "10000");
    
  if ( dmx_slave.getChannelValue (2) > 127 )
    mySwitch.switchOn("01101", "01000");
  if ( dmx_slave.getChannelValue (2) < 128 )
    mySwitch.switchOff("01101", "01000");
    
  if ( dmx_slave.getChannelValue (3) > 127 )
    mySwitch.switchOn("01101", "00100");
  if ( dmx_slave.getChannelValue (3) < 128 )
    mySwitch.switchOff("01101", "00100");
    
  if ( dmx_slave.getChannelValue (4) > 127 )
    mySwitch.switchOn("01101", "00010");
  if ( dmx_slave.getChannelValue (4) < 128 )
    mySwitch.switchOff("01101", "00010");
    
  if ( dmx_slave.getChannelValue (5) > 127 )
    mySwitch.switchOn("01101", "00001");
  if ( dmx_slave.getChannelValue (5) < 128 )
    mySwitch.switchOff("01101", "00001");
}
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
19.12.2013, 07:04
Beitrag #2
RE: Problem mit DMX-Shield und 433MHz-Sender
EDIT:
Ich konnte das Problem eingrenzen, die DMX-Verarbeitung läuft super und das "Problem" ist scheinbar keines und folgt gänzlich aus der RCSwitch-Library. Durch Hinzufügen von
Code:
mySwitch.setRepeatTransmit(3);
  mySwitch.setPulseLength(200);
in die setup-Loop konnte ich den Sendeprozess deutlich beschleunigen. Jedoch bin ich dort scheinbar schon an der unteren Grenze, danach läuft die Funkübertragung nicht mehr stabil. Nun werde ich mich mit der Library selbst beschäftigen, um dort evtl. noch etwas Geschwindigkeit rausholen zu können.
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
Antwort schreiben 


Möglicherweise verwandte Themen...
Thema: Verfasser Antworten: Ansichten: Letzter Beitrag
Question Problem beim seriellen Einlesen von RFID-Reader Bezel 5 235 05.11.2017 22:37
Letzter Beitrag: Tommy56
  Aptotec V1.2 Can Bus Shield / Auto Marc2014 23 1.145 01.11.2017 07:30
Letzter Beitrag: Bitklopfer
  Kommunikation über das WiFi-Shield Flap 13 1.551 12.09.2017 22:12
Letzter Beitrag: Flap
  NeoPixels: Sketch will nicht - Problem mit delay? Zabsi 5 424 22.08.2017 15:17
Letzter Beitrag: Tommy56
  Problem mit LSM 303 Snörb 1 281 22.08.2017 14:16
Letzter Beitrag: Snörb
  Problem mit externem Interrupt manfred474 13 1.056 13.08.2017 08:54
Letzter Beitrag: MicroBahner
  Problem mit Klassen GuaAck 4 442 09.08.2017 09:28
Letzter Beitrag: MicroBahner
  Servo mit einem Taster und 433mhz steuern Thor Wallhall 63 3.286 29.07.2017 11:02
Letzter Beitrag: Thor Wallhall
Question Problem mit TFT Sam217 8 796 20.07.2017 21:51
Letzter Beitrag: hotsystems
  Problem FastLED fliege_m 3 550 16.07.2017 16:56
Letzter Beitrag: Tommy56

Gehe zu:


Benutzer, die gerade dieses Thema anschauen: 1 Gast/Gäste