Forum: Mikrocontroller und Digitale Elektronik IR-Empfänger durch ATTiny85 ersetzen


von Jörg M. (joerg-ne)


Lesenswert?

Hallo,

ich habe das Problem, dass ich 2 Geräte mit IR-Empfänger habe, die beide 
auf das selbe Protokoll hören. Soll heißen, drücke ich auf Fernbedienung 
A eine Taste so reagiert auch Gerät B und umgekehrt.

Da ich auch noch eine Universalfernbedienung habe möchte ich diese in 
Zukunft nutzen. Dafür möchte ich zumindest den IR-Empfänger von einem 
Gerät durch einen ATTiny 85 ersetzen.

Die einfache Variante wäre neuen IR-Code für Gerät B emfangen, diesen 
dann auf den eigentlichen IR-Code mappen und per IR-Sender an Gerät B 
senden. Wobei der Sender vom ATTiny und der Emfänger von Gerät B in 
einem Gehäuse sitzen würden.

Ich stelle mir aber vor den IR-Empfänger in Gerät B gegen den ATTiny zu 
tauschen. Also den neuen IR-Code emfangen und mappen aber dann das 
modullierte Signal direkt über die Anschlüsse des IR-Empfängers von 
Gerät B zu übertragen. Also Sender und Emfänger aus der Schaltung 
eleminieren.

Ich hoffe, dass das verständlich beschrieben ist. Im Netz habe ich dazu 
bisher nichts gefunden.

G Jörg

von Apollo M. (Firma: @home) (majortom)


Lesenswert?

Jörg M. schrieb:
> Ich hoffe, dass das verständlich beschrieben ist. Im Netz habe ich dazu
> bisher nichts gefunden.

Gehts noch wirrer?!

Jörg M. schrieb:
> Also Sender und Emfänger aus der Schaltung
> eleminieren.

Denke, das geht nicht! Du kannst nur den IR-Empfänger abklemmen und den 
Attiny das IR-Signal empfangen lassen und dann umkodiert weiterreichen 
an deine Kiste, weil die ganze original Empfängerlogik bekommst du eher 
nicht heraus selektiert. Und wenn doch, dann nur mit viel Aufwand.
Das macht daher keinen Sinn für mich.

Jörg M. schrieb:
> Im Netz habe ich dazu bisher nichts gefunden.

Gehts noch, kannst du auch irgendwas selber?!

von Christian S. (roehrenvorheizer)


Lesenswert?

Hallo,

im Prinzip sollte mittels IRMP ein passender Empfänger für eine 
andersartige Fernbedienung realisierbar sein. Zusätzlich ist noch ein 
Softwareteil nötig, das anschließend auf dem ursprünglichen Code sendet. 
Stichwort "Umsetzer"

https://www.mikrocontroller.net/articles/IRMP

Gegenstück dazu
https://www.mikrocontroller.net/articles/IRSND#top

brauchst nur die beiden verheiraten, auch wenn sie sich noch so sehr 
wehren. Ob das in den Tiny85 passt?



Schön wäre, wenn Du das Ergebnis hier vorstellen würdest.

mfG

: Bearbeitet durch User
von Axel S. (a-za-z0-9)


Lesenswert?

Apollo M. schrieb:
> Gehts noch wirrer?!

Wenn die Informationsfluß vom Sender zum Empfänger gestört ist, muß es 
nicht am Sender liegen ...

> Du kannst nur den IR-Empfänger abklemmen und den
> Attiny das IR-Signal empfangen lassen und dann umkodiert weiterreichen
> an deine Kiste

Genau das will er doch.

Jörg M. schrieb:
> Im Netz habe ich dazu bisher nichts gefunden.

IRMP und IRSND kennst du?

Und was war jetzt nochmal deine Frage? Ob das so geht? Sicher geht das.

von c-hater (Gast)


Lesenswert?

Axel S. schrieb:

> Und was war jetzt nochmal deine Frage? Ob das so geht? Sicher geht das.

Nicht ohne Änderungen (oder zumindest eine spezielle Konfiguration von 
ISND, keine Ahnung, ob diese unterstützt wird).

In der angedachten Anwendung müßte nämlich die Ausgabe ohne Träger 
erfolgen, um halt zu simulieren, dass das, was normalerweise der Job des 
IR-Empfängers ist, bereits erledigt ist.

Im Prinzip würde also die Komplexität des Codes sinken, weil die 
Modulation mit dem Träger entfällt. Die Frage ist: ist der Code von 
IRSND auf eine solche trägerlose Anwendung in irgendeiner Form 
vorbereitet?

Da müßte man halt einfach den Code lesen, um das herauszufinden...

von euerDoofi (Gast)


Lesenswert?

Axel S. schrieb:
> Wenn die Informationsfluß vom Sender zum Empfänger gestört ist, muß es
> nicht am Sender liegen ...

Du bist ja ein ganz Schlauer?!

Eine Grundregel der Kommunikation zwischen Menschen lautet, der Sender 
ist verantwortlich, dass der Empfänger ihn versteht. Sonst kannst du 
auch gerne Selbstgespräche führen oder mit deinem Hund um die Wette 
bellen oder Pantomik vorm Spiegel üben.

Wenn der Sender allerdings kein echtes Interesse an der Kommunkation 
hat, dann argumentiert man so wie du.

... niemand versteht mich, nur ich versteh mich! Sind die anderen alle 
doof oder böse? Nein, nur du bist ungebildet bzgl. der menschlichen 
Interaktionen, sprich eher ein Nerd/Autist oder so.

von Harald W. (wilhelms)


Lesenswert?

Jörg M. schrieb:

> Die einfache Variante wäre neuen IR-Code für Gerät B emfangen, diesen
> dann auf den eigentlichen IR-Code mappen und per IR-Sender an Gerät B
> senden.

Dann mach das doch. Da Deine Anwendung aber sehr speziell ist,
kannst Du nicht erwarten, dort etwas fertiges zu finden. Das
heisst, Du musst das Programm dafür schon selber schreiben.

von Jörg M. (joerg-ne)


Lesenswert?

Harald W. schrieb:
> Jörg M. schrieb:
>
>> Die einfache Variante wäre neuen IR-Code für Gerät B emfangen, diesen
>> dann auf den eigentlichen IR-Code mappen und per IR-Sender an Gerät B
>> senden.
>
> Dann mach das doch. Da Deine Anwendung aber sehr speziell ist,
> kannst Du nicht erwarten, dort etwas fertiges zu finden. Das
> heisst, Du musst das Programm dafür schon selber schreiben.

Hallo Harald,

diese Variante gibt es schon im Netz und ich werde diese wohl auch 
umsetzen.

Danke und Gruß Jörg

von Jörg M. (joerg-ne)


Lesenswert?

Christian S. schrieb:
> Hallo,
>
> im Prinzip sollte mittels IRMP ein passender Empfänger für eine
> andersartige Fernbedienung realisierbar sein. Zusätzlich ist noch ein
> Softwareteil nötig, das anschließend auf dem ursprünglichen Code sendet.
> Stichwort "Umsetzer"
>
> https://www.mikrocontroller.net/articles/IRMP
>
> Gegenstück dazu
> https://www.mikrocontroller.net/articles/IRSND#top
>
> brauchst nur die beiden verheiraten, auch wenn sie sich noch so sehr
> wehren. Ob das in den Tiny85 passt?
>
>
>
> Schön wäre, wenn Du das Ergebnis hier vorstellen würdest.
>
> mfG

Hallo Christian und Axel,

Danke für die konstruktiven Hinweise ;-) IRMP kenne ich bereits von 
RasPi. IRSND war mir noch neu ist aber zum Senden via IR-Diode.

G Jörg

von Axel S. (a-za-z0-9)


Lesenswert?

c-hater schrieb:
> Axel S. schrieb:
>
>> Und was war jetzt nochmal deine Frage? Ob das so geht? Sicher geht das.
>
> Nicht ohne Änderungen (oder zumindest eine spezielle Konfiguration von
> ISND ...)

Ja. Man muß doch noch was selber machen. Schlimm.

> Im Prinzip würde also die Komplexität des Codes sinken, weil die
> Modulation mit dem Träger entfällt. Die Frage ist: ist der Code von
> IRSND auf eine solche trägerlose Anwendung in irgendeiner Form
> vorbereitet?

Standardmäßig aktiviert/deaktiviert IRSND das Output-Compare Toggeln 
eines Pins. Es schreibt also ein paar Bits in ein Register. Das ist 
nicht komplex. Einfacher wird es nur dahingehend, daß man es auf des 
Setzen/Löschen eines einzelnen Bits reduzieren kann.

von Frank M. (ukw) (Moderator) Benutzerseite


Lesenswert?

Axel S. schrieb:
> Einfacher wird es nur dahingehend, daß man es auf des Setzen/Löschen
> eines einzelnen Bits reduzieren kann.

So ist es. Es gibt jeweils eine Funktion irsnd_on() und eine Funktion 
irsnd_off(), wo die PWM ein- und abgeschaltet wird. Diese müssen 
lediglich auf ein Bit-Löschen und Bit-Setzen reduziert werden. Das sind 
jeweils Einzeiler.

: Bearbeitet durch Moderator
von c-hater (Gast)


Lesenswert?

Axel S. schrieb:

> Ja. Man muß doch noch was selber machen. Schlimm.

Also für mich wäre das nicht schlimm...

von Axel S. (a-za-z0-9)


Lesenswert?

c-hater schrieb:
> Axel S. schrieb:
>
>> Ja. Man muß doch noch was selber machen. Schlimm.
>
> Also für mich wäre das nicht schlimm...

http://www.ironiedetektorshop.de

von Jörg M. (joerg-ne)


Lesenswert?

Frank M. schrieb:
> Axel S. schrieb:
>> Einfacher wird es nur dahingehend, daß man es auf des Setzen/Löschen
>> eines einzelnen Bits reduzieren kann.
>
> So ist es. Es gibt jeweils eine Funktion irsnd_on() und eine Funktion
> irsnd_off(), wo die PWM ein- und abgeschaltet wird. Diese müssen
> lediglich auf ein Bit-Löschen und Bit-Setzen reduziert werden. Das sind
> jeweils Einzeiler.

Hallo Frank und Axel,

das muss ich mir dann mal näher ansehen.

G Jörg

: Bearbeitet durch User
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.