Ciao a tutto
Sto realizzando un progetto di una macchina radiocomandata con due bracci dove si primo ho montato una telecamera e sul secondo voglio mettere un ricetrasmettitore ir che riceve un segnale da un telecomando e lo trasmette ad un elettrodomestico.
Mi servirebbe una portata di almeno 5 mt.
Mi consigliate un hardware adeguato?
Grazie
Il progetto è tutto pronto.
Avrei bisogno del vostro aiuto per la parte ir.
Grazie
Non si capisce molto del tuo progetto. Parli di segnali IR poi parli di macchina radiocomandata, poi di "bracci" (una macchina non ha "bracci"), e poi che significa che vuoi mettere un ricetrasmettitore IR "sul secondo" (secondo cosa? su un "secondo" braccio?)? E Ricetrasmettitore verso "un elettrodomestico", che elettrodomestico e come ci vuoi comunicare? Accenderlo? Spegnerlo? E poi "ricetrasmettitore" per gli infrarossi non ha molto senso, se tu mandi un segnale infrarosso con un telecomando, questo segnale può interferire con il segnale che questo "braccio" cerca di mandare all'elettrodomestico (quindi dovresti prevedere l'invio non appena il segnale dal telecomando cessa).
Insomma visto che hai il "progetto pronto" spiegaci meglio come è fatto (almeno una descrizione ed uno schemino aiuterebbero...) e cosa vorresti realizzare.
Mamma mia scusa non pensavo non aver reso l'idea.
Lasciamo stare il progetto nella sua interezza.
Avevo raccontato il tutto per dare una idea globale.
In pratica vorrei far in modo che, indirizzando un Telecomando verso la macchina su di essa ci sia un ricevitore ir che recepisca il codice è lo riproietta verso l'aria condizionata. Questo mi serve perché il ricevitore dell'aria condizionata si trova in una posizione scomoda e che richiede ogni volta di alzarsi per accenderla o spegnerla o cambiare temperatura.
Spero di essere stato più chiaro
In alternativa caricherà i principali comandi ir su arduino per poi usarli all'occorrenza in prossimità del ricevitore dell'aria condizionata.
Ok, allora ti serve un ricevitore IR e almeno uno ( o più ) Led IR per la parte trasmittente
Me ne consigliereste qualcuno in particolare tenendo conto che dovrei coprire una distanza di almeno 4mt?
qualunque led iR, ad esempio questi
Ah, ti servono anche dei transistor NPN
Frank1977:
In pratica vorrei far in modo che, indirizzando un Telecomando verso la macchina su di essa ci sia un ricevitore ir che recepisca il codice è lo riproietta verso l'aria condizionata. Questo mi serve perché il ricevitore dell'aria condizionata si trova in una posizione scomoda e che richiede ogni volta di alzarsi per accenderla o spegnerla o cambiare temperatura.
Spero di essere stato più chiaro
Molto meglio.
Allora, devi prima sapere alcune cose generali sui telecomandi e su quelli dei condizionatori (quale marca e modello?).
Non per scoraggiarti, ma devi cercare di ottenere queste informazioni e non hai mai avuto a che fare con telecomandi IR ed Arduino.
-
devi sapere che i telecomandi dei condizionatori purtroppo sono "particolari" (per ragioni che mi sono sempre sfuggite, ma lo prendo come un dato di fatto) ossia non associano un solo codice ad ogni tanto, ma generalmente hanno DUE codici, che mandano in modo alternato. Ad esempio, quando premi il tasto di accensione, la prima volta manda il comando ON la seconda volta che lo premi manda OFF. Per verificare questa cosa, tu a condizionatore spento premi il tasto di accensione/spegnimento per accenderlo (quindi comando ON), se poi tenendo coperto il telecomando premi nuovamente il tasto (per cui "butti" il comando OFF), e poi nuovamente dirigi il telecomando verso il condizionatore e premi il tasto, dato che manda il comando ON non si spegne affatto.
-
una volta compreso questo, devi capire quale sia la frequenza della portante di quel telecomando. Esistono in generale telecomandi a varie frequenze, ad esempio 32, 36, 38, o 52 kHz eccetera. Quelli più comuni sono a 38 kHz ma non è detto. Cercando in rete informazioni sui telecomandi del modello esatto che possiedi, dovresti riuscire a trovare questa informazione se è magari uno abbastanza diffuso. L'informazione ti serve sia per il ricevitore IR sia per ritrasmettere alla giusta frequenza.
-
poi ti serve conoscere quale sia la codifica del segnale del telecomando. Anche qui se il tuo condizionatore è conosciuto è probabile che tu possa trovare informazioni. In ogni caso è opportuno realizzare un semplice circuitino nel quale metti un ricevitore infrarossi (collegato in genere al pin D2) e carichi lo sketch "IRrecvDump" che trovi tra gli esempi della libreria IRremote. Per andare su quello più probabile direi un TSOP1738 (le ultime 2 cifre indicano quasi sempre la frequenza, quindi questo esempio è da 38 kHz) o analoghi, che puoi trovare spesso nei vari kit Arduino (se hai un kit è possibile che tu già ce l'abbia), ma se non ce l'hai si può recuperare da qualche vecchio apparecchio di recupero, oppure lo trovi anche su amazon o eBay (in questo caso magari per sicurezza acquistane un paio di almeno un paio di frequenze, ti direi 32 e 38).
In questo modo potrai analizzare il segnale ed ottenerne la codifica che dovrai poi usare nel tuo codice. -
Per poi poter ritrasmettere il segnale ti serve un LED IR: anche questo è presente in vari kit Arduino, altrimenti devi anche in questo caso o fare "salvage" (recupero da qualche apparecchio o telecomando che non usi più) o acquistarlo su eBay. A meno che non lo installerai proprio davanti vicino al ricevitore sullo split, ti servirà anche un transistor NPN, come ti ha detto anche brunello, ma lo capirai da te facendo le prime prove. Il programma di esempio da usare per le prove è IRsendDemo.
Quando avrai identificato queste cose, sarai pronto a scrivere il tuo programmino di ripetitore di telecomando.
Ok grazie mille. Mi metto all'opera. Vi aggiorno
Come li connetto tra loro npn, ricevitore e trasmettitore?
Come trasmettitore quelli che mi avete indicato o di questo tipo?
Non so se questo hail transistor integrato
Iniziano i dolori
queste sono le specifiche del telecomando:
Frequenza: 433 MHz.
Comunicazione wireless: IR
Numero di modello: Y-H1-02(E).
Canali: 2.
Ma è dotatp di due trasmettitori ir edecco perchè i due canali.
Non capisco quel 433Mhz. Mi sembra un valore da RF e non da ir.
Non riesco a capire la frequenza dei trasmettitori/ricevitori.
Che ne dite?
Cercando in giro ho trovato questo che mi sembra completo
Attendo un vostro consiglio.
Grazie
Frank1977:
Non capisco quel 433Mhz. Mi sembra un valore da RF e non da ir.
Credo (ma non hai un manuale del telecomando?) che via radio riceva informazioni dall'unità mentre gli infrarossi li usa per inviare i comandi, per cui non baderei a quello perché a te serve solo mandare comandi, non leggere la temperatura ambiente rilevata dallo split.
Non trovo informazioni sul segale IR ma al posto tuo investirei qualche Euro prendendo un paio di ricevitori IR ma almeno uno a 38 kHz, il TSOP1738 o equivalenti. Non hai quindi un kit Arduino nel quale c'è un ricevitore di quel tipo? Se lo trovi (o lo acquisti su Amazon o eBay) fai i test che ti ho indicato per determinare la codifica usata da quel telecomando ed identifiare quindi quella del tasto che a te per ora interessa.
Frank1977:
Cercando in giro ho trovato questo che mi sembra completo
Ma assolutamente NO! Non è un fatto di "completo" o meno, devi PRIMA capire la codifica, POI potrai definire cosa usare. Quello che hai indicato ad esempio decodifica solo la codifica NEC, e non sappiamo ancora se il tuo telecomando usi QUELLA specifica codifica.
Prendi un TSOP come ti ho suggerito, e con la libreria IRremote vedi se riesce a determinare la codifica, o al massimo quali sono i codici "raw" (se non sono in una codifica standard tra quelle riconosciute da IRremote puoi comunque identificarli, anche se con qualche complicazione in più: ad esempio io ho fatto così per i codici del telecomando di MySkyHD!).
L'unico problema in questo periodo è che non puoi andare in un negozio, e le spedizioni di cose di questo tipo richiedono almeno una settimana anche se spediti dall'Italia quindi non è una cosa rapidissima, a meno che tu non abbia già questi componenti nel kit Arduino, se lo hai...
Ciao Doc
Non ho un kit arduino ma ho un modulo per evitare ostacoli a ir che ho già usato per determinare il raw di un altro telecomando.
Stasera provo e ti dico
Eccomi: fatto il test. Cliccando sul tasto di accensione 4 volte ho ottenuto quanto segue:
Encoding : NEC
Code : C160208E (32 bits)
Timing[99]:
+9050, -4250 + 750, -1450 + 750, -1450 + 750, - 350
+ 750, - 350 + 750, - 350 + 750, - 350 + 750, - 350
+ 750, -1500 + 700, - 350 + 750, -1450 + 750, -1450
+ 750, - 350 + 750, - 350 + 750, - 350 + 750, - 400
+ 700, - 400 + 700, - 350 + 750, - 350 + 750, -1450
+ 750, - 350 + 750, - 350 + 750, - 350 + 750, - 350
+ 750, - 350 + 750, -1450 + 750, - 350 + 750, - 350
+ 750, - 350 + 750, -1450 + 750, -1500 + 700, -1500
+ 750, - 350 + 750, - 350 + 700, - 350 + 750, - 350
+ 750, - 350 + 750, - 350 + 750, - 350 + 750, - 400
+ 700, - 400 + 700, - 350 + 750, - 350 + 750, - 350
+ 750, - 350 + 750, - 350 + 750, - 350 + 750, - 350
+ 750, - 350 + 750
unsigned int rawData[99] = {9050,4250, 750,1450, 750,1450, 750,350, 750,350, 750,350, 750,350, 750,350, 750,1500, 700,350, 750,1450, 750,1450, 750,350, 750,350, 750,350, 750,400, 700,400, 700,350, 750,350, 750,1450, 750,350, 750,350, 750,350, 750,350, 750,350, 750,1450, 750,350, 750,350, 750,350, 750,1450, 750,1500, 700,1500, 750,350, 750,350, 700,350, 750,350, 750,350, 750,350, 750,350, 750,400, 700,400, 700,350, 750,350, 750,350, 750,350, 750,350, 750,350, 750,350, 750,350, 750}; // NEC C160208E
unsigned int data = 0xC160208E;
Encoding : NEC
Code : C160208E (32 bits)
Timing[99]:
+9050, -4300 + 750, -1450 + 750, -1450 + 750, - 350
+ 750, - 350 + 750, - 350 + 750, - 350 + 750, - 350
+ 750, -1450 + 750, - 350 + 750, -1450 + 750, -1450
+ 750, - 350 + 750, - 350 + 750, - 350 + 750, - 350
+ 750, - 350 + 750, - 350 + 750, - 350 + 750, -1450
+ 750, - 350 + 750, - 350 + 750, - 350 + 750, - 350
+ 750, - 350 + 750, -1450 + 750, - 350 + 750, - 350
+ 750, - 350 + 750, -1450 + 750, -1450 + 750, -1500
+ 750, - 350 + 750, - 350 + 700, - 350 + 750, - 350
+ 750, - 350 + 750, - 350 + 750, - 350 + 750, - 350
+ 750, - 350 + 750, - 350 + 750, - 350 + 750, - 350
+ 750, - 350 + 750, - 350 + 750, - 350 + 750, - 350
+ 750, - 350 + 750
unsigned int rawData[99] = {9050,4300, 750,1450, 750,1450, 750,350, 750,350, 750,350, 750,350, 750,350, 750,1450, 750,350, 750,1450, 750,1450, 750,350, 750,350, 750,350, 750,350, 750,350, 750,350, 750,350, 750,1450, 750,350, 750,350, 750,350, 750,350, 750,350, 750,1450, 750,350, 750,350, 750,350, 750,1450, 750,1450, 750,1500, 750,350, 750,350, 700,350, 750,350, 750,350, 750,350, 750,350, 750,350, 750,350, 750,350, 750,350, 750,350, 750,350, 750,350, 750,350, 750,350, 750,350, 750}; // NEC C160208E
unsigned int data = 0xC160208E;
Encoding : NEC
Code : C160208E (32 bits)
Timing[99]:
+9100, -4250 + 750, -1450 + 750, -1450 + 750, - 350
+ 750, - 350 + 750, - 350 + 750, - 350 + 750, - 350
+ 750, -1450 + 750, - 350 + 750, -1450 + 750, -1450
+ 750, - 350 + 750, - 350 + 750, - 350 + 750, - 350
+ 750, - 350 + 750, - 350 + 750, - 350 + 750, -1450
+ 750, - 350 + 750, - 350 + 750, - 350 + 750, - 350
+ 750, - 350 + 750, -1450 + 750, - 350 + 750, - 350
+ 750, - 350 + 750, -1450 + 750, -1450 + 800, -1450
+ 750, - 350 + 750, - 350 + 750, - 300 + 750, - 350
+ 750, - 350 + 750, - 350 + 750, - 350 + 750, - 400
+ 750, - 350 + 700, - 350 + 750, - 350 + 750, - 350
+ 750, - 350 + 750, - 350 + 750, - 350 + 750, - 350
+ 750, - 350 + 750
unsigned int rawData[99] = {9100,4250, 750,1450, 750,1450, 750,350, 750,350, 750,350, 750,350, 750,350, 750,1450, 750,350, 750,1450, 750,1450, 750,350, 750,350, 750,350, 750,350, 750,350, 750,350, 750,350, 750,1450, 750,350, 750,350, 750,350, 750,350, 750,350, 750,1450, 750,350, 750,350, 750,350, 750,1450, 750,1450, 800,1450, 750,350, 750,350, 750,300, 750,350, 750,350, 750,350, 750,350, 750,400, 750,350, 700,350, 750,350, 750,350, 750,350, 750,350, 750,350, 750,350, 750,350, 750}; // NEC C160208E
unsigned int data = 0xC160208E;
Encoding : NEC
Code : C160208E (32 bits)
Timing[99]:
+9050, -4300 + 750, -1450 + 750, -1450 + 750, - 350
+ 750, - 350 + 750, - 350 + 750, - 350 + 750, - 350
+ 750, -1450 + 750, - 350 + 750, -1450 + 750, -1450
+ 750, - 350 + 750, - 350 + 750, - 350 + 750, - 350
+ 750, - 350 + 750, - 350 + 750, - 350 + 750, -1450
+ 750, - 350 + 750, - 350 + 750, - 350 + 750, - 350
+ 750, - 350 + 750, -1450 + 750, - 350 + 750, - 350
+ 750, - 350 + 750, -1450 + 750, -1450 + 750, -1500
+ 700, - 400 + 700, - 350 + 750, - 350 + 750, - 350
+ 750, - 350 + 750, - 350 + 750, - 350 + 750, - 350
+ 750, - 350 + 750, - 350 + 750, - 350 + 750, - 350
+ 750, - 350 + 750, - 350 + 750, - 350 + 750, - 350
+ 750, - 350 + 750
unsigned int rawData[99] = {9050,4300, 750,1450, 750,1450, 750,350, 750,350, 750,350, 750,350, 750,350, 750,1450, 750,350, 750,1450, 750,1450, 750,350, 750,350, 750,350, 750,350, 750,350, 750,350, 750,350, 750,1450, 750,350, 750,350, 750,350, 750,350, 750,350, 750,1450, 750,350, 750,350, 750,350, 750,1450, 750,1450, 750,1500, 700,400, 700,350, 750,350, 750,350, 750,350, 750,350, 750,350, 750,350, 750,350, 750,350, 750,350, 750,350, 750,350, 750,350, 750,350, 750,350, 750,350, 750}; // NEC C160208E
unsigned int data = 0xC160208E;
Direi codifica NEC
Che ne dici?
Ho trovato il manuale del telecomado che allego. Non mi sembra ci siano le informazioni che cerco
telecomando hisense.zip (1.79 MB)
allora è un casino:
ho provato a vedere i codici pigiando sul tasto MODE.
Spingendo più volte passo nelle varie modalità: caldo, freddo, deumidificatore o ventola.
Ho notato che per esempio per il caldo passo dalla codifica NEC a quella JVC a quella AIWA_RC_T501.
Per ogni codifica ho lo stesso codice.
Cosi non ne esco più perchè non ho epserienza in merito.
Che posso fare?