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
  Arduino Mega mit Shield und 7" Touch Tudorf 7 124 Heute 15:53
Letzter Beitrag: Tudorf
  [gelöst] Micro SD-Card Shield an ISP? torsten_156 1 134 08.02.2018 22:24
Letzter Beitrag: Tommy56
  Problem mit Wire.available() abfrage avoid 1 254 11.01.2018 13:40
Letzter Beitrag: Tommy56
  Motor Shield V3 Analog Digital Converter Nextero 5 330 19.12.2017 10:54
Letzter Beitrag: Nextero
  SerialComInstruments 4 Problem Darstellung Nextero 35 1.228 15.12.2017 18:51
Letzter Beitrag: ElEspanol
  Problem mit Nema17 und A4988 Philthy 6 368 08.12.2017 12:35
Letzter Beitrag: Tommy56
  Arduino -> Controllino [Problem gelöst] Cyrilsneer 17 1.132 27.11.2017 18:49
Letzter Beitrag: Franz54
Question Problem beim seriellen Einlesen von RFID-Reader Bezel 5 510 05.11.2017 22:37
Letzter Beitrag: Tommy56
  Aptotec V1.2 Can Bus Shield / Auto Marc2014 23 1.685 01.11.2017 07:30
Letzter Beitrag: Bitklopfer
  Kommunikation über das WiFi-Shield Flap 13 1.823 12.09.2017 22:12
Letzter Beitrag: Flap

Gehe zu:


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