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 Hochladen auf AtTiny45. Hilfe -.- Jonas Lindenblatt 5 117 24.03.2017 22:58
Letzter Beitrag: Tommy56
  ESP8622 - 01 sendet UDP - Problem WLan Kriskind 37 2.592 14.03.2017 19:49
Letzter Beitrag: Tommy56
  Smart Home Webserver Basic Authentication Problem Osotastic 21 558 20.02.2017 18:00
Letzter Beitrag: Tommy56
  Problem mit Sketch senden an Uno feuerwehr 5 455 31.01.2017 20:41
Letzter Beitrag: Tommy56
  Can-Bus Shield ok, aber keine Daten Clubsport 52 2.853 26.01.2017 16:32
Letzter Beitrag: Tommy56
  [Gelöst] SD Card (Ethernet Shield) IO funktioniert nicht __jb__ 7 513 05.01.2017 09:51
Letzter Beitrag: rpt007
  Beim Hochladen USB Problem Nils 10 659 29.12.2016 21:05
Letzter Beitrag: renid55
  CP2102 und USB Host Shield ?? DL1AKP 0 125 01.12.2016 08:55
Letzter Beitrag: DL1AKP
  Arduino UNO und Ethernet Shield 2 POE und Fritzbox 3272 tr3 2 319 19.11.2016 10:46
Letzter Beitrag: tr3
  Kommunikation über das WiFi-Shield Flap 3 367 07.11.2016 20:20
Letzter Beitrag: hotsystems

Gehe zu:


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