Forum: Mikrocontroller und Digitale Elektronik IR Controller über pc ansteuern (für LED Stripe)


von Spike1302 (Gast)


Lesenswert?

Hallo Community,
Ich habe ein RGB LED Stripe. Dieser hat einen normalen IR Controller. 
Dazu war eine passende Fernbedienung mit Knöpfen für Farbumschaltung, 
Blinken, etc. dabei.

Ziel: Controller über PC ansteuern und via Programmierung (C++, Java, 
whatever) die Fernbedienung Simulieren.

Idee: IR Empfänger für Pc besorgen und mit einem Programm die IR Codes 
auslesen (von der Fernbedienung). Dann kann ich diese Codes nutzen und 
einen IR Sender am PC anschließen, um ein Programm mit dem Codes zu 
schreiben, um die Fernbedienung über den pc zu simulieren.


Frage:
- gibt es eine Bbssere Lösung/Idee um an mein Ziel zu kommen?
- Gibt es eventuell sogar etwas fertiges?
- wenn die Idee so umsetzbar ist?! Wo bekomme ich so einen Empfänger, 
Sender und Programm zum auslesen der Codes her?
- Habt ihr weitere Ideen/Anmerkungen?


Ich hoffe ihr könnt mir helfen.


Vielen Dank und freundliche Grüße

von Spike1302 (Gast)


Lesenswert?

Hi,
Offenbar sind das hier die Codes zum ansteuern:
http://woodsgood.ca/projects/2015/02...lers-ir-codes/

Also brauche ich schonmal einen Empfänger mehr.
Jetzt die Frage, gibt es einen USB IR sender, den ich ansteuern kann? 
Sprich mit C# etc?

von Wolfgang (Gast)


Lesenswert?

Spike1302 schrieb:
> Jetzt die Frage, gibt es einen USB IR sender, den ich ansteuern kann?
> Sprich mit C# etc?

Nimm einen kleinen Arduino (z.B. ebay 311726657326), einen Transistor, 
eine IR-LED und zwei Widerstände. Mit C## sprichst du eine virtuelle 
serielle Schnittstelle an.

von Spike1302 (Gast)


Lesenswert?

Hi,
Danke.

Jedoch möchte kein neues Gerät etc. bauen, sondern auf meinem 
bestehenden Laptop kaufen lassen.

Das müsste doch gehen?!
Bloß wie ?

von Spike1302 (Gast)


Lesenswert?

Hallo,
Habe mittlerweile ein USB IR Toy V2 bestellt. Das scheint für meine 
Problemstellung zu funktionieren.

Habt ihr noch weitere Ergänzungen und Hinweise dazu?
Gibt es eine Library bzw schon hex Codes für die 44key FB?

Danke

von Patrick J. (ho-bit-hun-ter)


Lesenswert?

Hi

Also für DIE 44key-FB wäre mir Nichts bekannt - könnte aber auch daran 
liegen, daß hier NICHTS von Deiner Seite aus verlinkt ist bzw. zu 404 
führt.

next try please

MfG

von Sebastian S. (amateur)


Lesenswert?

Für viele Mikrocontroller gibt es fertige Bibliotheken zum Generieren 
der verschiedensten IR-Protokolle.

Der größte Nachteil dabei ist: Man sollte Goolge oder Bing bedienen 
können.

Der PC ist dafür nur eingeschränkt nutzbar, da der Sender auf das "Ziel" 
ausgerichtet sein sollte. Macht es Dir nichts aus, dass der PC irgendwie 
offen auf den Empfänger ausgerichtet steht, so ist dieses Argument 
natürlich zu vernachlässigen.

Auch haben die wenigsten PCs einen IR-Out. In der Praxis wird es also 
darauf hinauslaufen, das Du ein Dingsbums an eine USB-Buchse anschließt 
und dann blinzeln kannst. In dem Teil ist dann wahrscheinlich ein µC.

von Paul (Gast)


Lesenswert?

Hi, hatte vor kurzem die selbe Idee, aber wollte das ganze per ESP-01 
modul per wlan steuern anstatt per ir, dafür hab ich das ESP-01 per 
gpio0/2 und levelshifter anstelle des IR empfängers an die vorhandene 
original empfängerbox angeschlossen. Dazu noch eine selbgebastelte 
Android app aufs handy.
Das IR Protocol ist das von NEC, sehr simpel da ich das Empfänger Signal 
simuliere, im prinzip per timer 562.5µs oder wenn man das arduino zeug 
benutzt per DelayMicroSeconds machbar.
Das IR Signal ist wenn nicht gsesendet wird immer high, ein Frame 
beginnt mit einem 9000µs low und 4500µs high Signal (16x 562.5µs timer 
low, 8x 562.5µs timer high, dann kommen die 8 Adress bits, die 8 Adress 
bits invertiert, 8 Kommando bits und 8 Kommando bits invertiert. die 
übertragung der bits läuft so ab :
log 0 = 562.5µs low Signal, 562.5µs high Signal
log 1 = 562.5µs low Signal ~1687µs high Signal (3 x 562.5µs timer)
es wird immer von LSB -> MSB des jeweiliges bytes übertragen.

Die Geräte Adresse (ist bei mir immer 0x00) und die Kommandos hab ich 
per selbstgebasteltem logicanalyser herausgefunden, im nach hinein habe 
ich aber auch eine webseite gefunden wo die Codes dann standen, die url 
reiche ich noch nach...

Also entweder den ir empfänger abknipsen und simulieren oder einfach 
eine vorhandene IR senderoutine benutzen welche das NEC protokoll kann 
oder halt selbst eine basteln, um das low signal am ir empfänger zu 
erzeugen muss man ja nur für die entsprechende Zeitspanne das 38khz 
Signal am Sender generieren.

von Paul (Gast)


Lesenswert?

RGB LED Strip Controllers: IR Codes : 
http://woodsgood.ca/projects/2015/02/13/rgb-led-strip-controllers-ir-codes/

aber Obacht, entweder hat der Auto hat hier einen Fehler beim 
Aufzeichnen der Signal gemacht und nicht beachtet das LSB zuerst 
übertragen wird, oder ich hab was falsch geamcht, musste seine codes 
"umdrehen" um sie nutzen zu können
1
#define DELAY_PULSE_SHORT 562
2
#define DELAY_PULSE_LONG 1687
3
#define DELAY_FRAME_SHORT 4500
4
#define DELAY_FRAME_LONG 9000
5
6
#define DEVICE_ADDRESS 0x00
7
8
#define COMMAND_BPLUS  0x5C
9
#define COMMAND_BMINUS  0x5D
10
#define COMMAND_PLAY  0x41
11
#define COMMAND_POWER 0x40
12
#define COMMAND_R 0x58
13
#define COMMAND_G 0x59
14
#define COMMAND_B 0x45
15
#define COMMAND_W 0x44
16
#define COMMAND_B1  0x54
17
#define COMMAND_B2  0x55
18
#define COMMAND_B3  0x49
19
#define COMMAND_B4  0x48
20
#define COMMAND_B5  0x50
21
#define COMMAND_B6  0x51
22
#define COMMAND_B7  0x4D
23
#define COMMAND_B8  0x4C
24
#define COMMAND_B9  0x1C
25
#define COMMAND_B10 0x1D
26
#define COMMAND_B11 0x1E
27
#define COMMAND_B12 0x1F
28
#define COMMAND_B13 0x18
29
#define COMMAND_B14 0x19
30
#define COMMAND_B15 0x1A
31
#define COMMAND_B16 0x1B
32
#define COMMAND_UPR 0x14
33
#define COMMAND_UPG 0x15
34
#define COMMAND_UPB 0x16
35
#define COMMAND_QUICK 0x17
36
#define COMMAND_DOWNR 0x10
37
#define COMMAND_DOWNG 0x11
38
#define COMMAND_DOWNB 0x12
39
#define COMMAND_SLOW  0x13
40
#define COMMAND_DIY1  0x0C
41
#define COMMAND_DIY2  0x0D
42
#define COMMAND_DIY3  0x0E
43
#define COMMAND_AUTO  0x0F
44
#define COMMAND_DIY4  0x08
45
#define COMMAND_DIY5  0x09
46
#define COMMAND_DIY6  0x0A
47
#define COMMAND_FLASH 0x0B
48
#define COMMAND_JUMP3 0x04
49
#define COMMAND_JUMP7 0x05
50
#define COMMAND_FADE3 0x06
51
#define COMMAND_FADE7 0x07

von Paul (Gast)


Lesenswert?


von Michael O. (michael_o)


Lesenswert?

Gruselig an Deiner Lösung finde ich die LEDStripe Controller als solche. 
Die verwendete 10bit PWM aus den PIC Microcontrollern ist ja für Weiße 
LEDs ausreichend aber für RGB imho unbrauchbar. Mikrochip hat in letzter 
Zeit einige PICs mit 3*16bit PWM auf dem Markt gebracht sogar als 
8Pinner mit Uart. Damit gibt's auch brauchbare Farben und Helligkeiten 
bis nahe Null.


mfg
Michael

von Paul (Gast)


Lesenswert?

Michael O. schrieb:
> Gruselig an Deiner Lösung finde ich die LEDStripe Controller als solche.
> Die verwendete 10bit PWM aus den PIC Microcontrollern ist ja für Weiße
> LEDs ausreichend aber für RGB imho unbrauchbar.

Naja wirklich Mühe gegeben haben se sich nicht mit ihrem Werks (5 
Bauteile oder so, mehr ist ja nicht drin in der Box), ist schon richtig, 
wenn man etwas besseres benötigt sollte man schon selbst die RGB 
Ansteuerung übernehmen.
Die von dir angesprochenen PICs scheinen da wirklich sehr interessant zu 
sein. Und wenn man mag braucht man da ja bloss son ESP-01 per uart 
anschließen und fertig ist die Laube...

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.