Vai al contenuto
PLC Forum


aiuto istruzioni sensore ir


Francesco Querin

Messaggi consigliati

Francesco Querin

vedo sempre 

int recv_pin =8

IRrecv irrecv(recv-pin)

posso fare questo

IRrecv irrecv(8)

cioe saltare la creazione della variabile e passare alla selezione del pin direttamente mentre creo l'oggetto ir ?

 

poi cosa che mi impensierisce di piu e questa

decode_result result

decodifico e inserisco in result il valore decodificato e poi sotto nel loop ce

if (irrecv.decode(&results))

non capisco bene questa istruzione, dovrei fare in modo che arduino invii un codice trammite ir e lo riceva sempre trammite ir, se passa un oggetto il segnale si blocca ed esegue una azione che gli dico.

 

Link al commento
Condividi su altri siti


Non si capisce molto, anzi si capisce poco o nulla.

 

Descrivi bene cosa stai usando, come lo stai usando e se stai usando delle librerie qualilibreirie sono.

COme l'hai messo è un quesito per indovini

Link al commento
Condividi su altri siti

Francesco Querin

sto ancora imparando le istruzioni da usare e cercando di capirle, per ora non ho fato nulla di hw e sw, da un po di giorno sto cercando tutorial, esempi, istruzioni e lezioni su come usare il sensore ir emettitore e ricevitore.

dovrei usare il sensore ir per spedire un codice xxx a un sensore ir che riceve il codice.

se un oggetto come un bicchiere si intromette il codice non arriva.

se ce il codice fai a se non ce fai b 

 

 

Link al commento
Condividi su altri siti

Dopo Livio, te lo ripeto anche io : non siamo indovini, se non dici che hardware stai usando (qualcosa che ha a che fare con l'infrarosso, di cui esistono un miliardo di versioni..), come lo hai collegato, a cosa lo hai collegato (Arduino? PIC? Teensy? [altri migliaia]) e cosa speri di ottenere difficilmente otterrai aiuto. Dal poco che ho letto mi sembra che stai cercando di creare una barriera a infrarossi, perchè complicarsi la vita con codici (che si usano nei telecomandi, ad esempio) quando ti serve solo ON/OFF? Spiegati, con calma, come tu lo dovessi spiegare ad uno che non ne sa nulla.

 

Ciao, Ale.

Link al commento
Condividi su altri siti

Francesco Querin

scusatemi non sono bravo a spiegare e ho supposto che sappeste che lo collegato ad arduino.

 

ho arduino mega marca elego, a cui dovrei collegare il modulo emettitore ir e il modulo ricevitore ir, che ho nel kit sensori per arduino che ho comprato, non so al momento le specifiche ce scritto modulo emettitore ricevitore e modulo emettitore ricevitore.

sono 2 sensori che dovrei usare come 2 fotocellule, se il modulo ricevitore rileva un segnale la variabile posizione ha un valore di 100 se invece non rileva il segnale la variabile posizione vale 30.

e un apgrade di un progetto che ho fatto questo controllo dovrebbe dirmi se il bicchiere e alto tot centimetri ho se e alto piu di tot centimetri.

 

attualmente sto ancora imparando le istruzioni relative ai moduli ir emettitore e ir ricevitore cercando in rete, non ho collegato ancora nulla e non ho steso un programma.

sto chiedendo aiuto per imparare a usare questi moduli prima di mettermi a programmare.

 

Link al commento
Condividi su altri siti

Una foto dei 2 moduli (ricevitore e trasmettitore) aiuterebbe a capire meglio di cosa parliamo. Quindi riassumendo il tuo scopo è discriminare un altezza, non tanto la presenza/assenza del bicchiere, giusto?

 

Ciao, Ale.

Link al commento
Condividi su altri siti

Non si capisce molto, anzi si capisce poco o nulla. Le foto danno solo una vaga idea.

Scrivi le sigle dei 2 oggetti o, meglio, metti i links ai data sheets.

 

 

Link al commento
Condividi su altri siti

Francesco Querin

mi sono spedito il datashit  sulla mia mail

https://mail.google.com/mail/u/0/?tab=wm#inbox/15f63afe6a5bddb5

sul disco contenuto nel pacchetto che ho comprato online su amazon da smraza ce 

TL1838 Infrared Receiver

non so come mettere i datashit, sul disco sono in pdf e non ci sono quelle dell'emettitore, non sono riuscito a trovare i datashit.

Link al commento
Condividi su altri siti

Francesco si scrive data sheets, non data shit perchè uno significa fglio dei dati, mentre l'altro significa...foglio di m...a.:)

 

15 ore fa, Francesco Querin scrisse:

non so come mettere i datashit, sul disco sono in pdf e non ci sono quelle dell'emettitore

 

Devi mettere il pdf sullo spazio di upload del foreum, poi segui le indicazioni del tasto in basso a dx.

Senza indicazioni su che tipo di segnali arrivano ed emettono è un po' difficile darti indicazioni.

Però visto che ti serve solo per rivelare un oggetto in transito ti basta mettere un sensore a riflessione, oppure se la distanza è troppo grande, mettere un foto emettitore (diodo led) ed un foto ricevitore.

Lo TL1838 Infrared Receiver è un fotoricevitore sensibile agli infrarossi. Si limita a dare un'uscita alta o bassa in funzione del segnale che gli arriva. Poi sarà il trasmettitore di telecomando a dare una serie di bits in funzione del codice.

Io ne hom usato uno per fare un telecomando, se hai pazienza quando ho tempo riprendo la roune di test che ho fatto e te la metto nella discussione.

Link al commento
Condividi su altri siti

Ti metto l'esempio ch ti dicevo.

 


#include <IRremote.h>
---------
int irReceiverPin = 3; //ingresso telecmado IR
IRrecv irrecv(irReceiverPin);         // IRrecv signal
decode_results results;               // decode result
/****************************************************************/
const long lStart = 0x00ffc23d; //Comando Start/Stop
const long lavant = 0x00ff02fd; //Comando avanti
const long lindie = 0x00ff22dd; //Comando indietro
const long laumen = 0x00ffa857; //Comando aumenta   
const long ldimin = 0x00ffe01f; //Comando diminuisci 
const long ldestr = 0x00ffa25d; //Comando a destra
const long lsinis = 0x00ffe21d; //Comando a sinistra
  
void setup()
{
  -----------
 irrecv.enableIRIn();
  
---------
}
 
  
void loop()
{
   rxComandiIR();
  
  ---------------
}
void rxComandiIR()
{
    if (irrecv.decode(&results)) 
      {
         //Serial.println(results.value, HEX);
         irrecv.resume(); // Receive the next value
    
      command = results.value;
      results.value = 0;
      switch(command)
        {
          case lStart:
          flg_start = ((flg_start)^1);
          break;
          
          case lavant:
          flgavanti = HIGH;
          flgindietro = LOW;
          break;
          
          case lindie:
          flgavanti = LOW;
          flgindietro = HIGH;
          break;

          case ldestr:
          flgdestra = HIGH;
          flgsinistra = LOW;
          break;
          
          case lsinis:
          flgsinistra = HIGH;
          flgdestra = LOW;
          break;

          case laumen:
          flg_dec = LOW;
          flg_acc = HIGH;
          break;
          
          case ldimin:
          flg_dec = HIGH;
          flg_acc = LOW;
          break;
         }
    }
 }

 

Link al commento
Condividi su altri siti

Attenzione che nel mio caso l'emettiore è un telecomando, quindi le costanti sono i codici che invia il telecomando.

Link al commento
Condividi su altri siti

Francesco Querin

avevo intuito questo, quindi devo solo cambiare e mettere un codice che decido io, dato che nel mio caso ho un emettitore e un ricevitore per fare linea di selezione altezza

Link al commento
Condividi su altri siti

1 ora fa, Francesco Querin scrisse:

quindi devo solo cambiare e mettere un codice che decido i

 

No il codice lo decide il trasmettitore, se è un telecomando commerciale.

Se hai un semplice emttitore non ti serve alcun codice se devi solo rivelare quando il fascio è intercettato.

Link al commento
Condividi su altri siti

Francesco Querin
2 ore fa, Livio Orsini scrisse:

Se hai un semplice emttitore non ti serve alcun codice se devi solo rivelare quando il fascio è intercettato.

esattamente questo che devo fare, pero vedo sempre dei codici quindi ho presunto dovessi comunque inviare un codice 

Link al commento
Condividi su altri siti

2 ore fa, Livio Orsini scrisse:

Se hai un semplice emttitore non ti serve alcun codice se devi solo rivelare quando il fascio è intercettato

Non credo che possa funzionare con quel ricevitore, perchè prevede una portante a 38Khz su cui poi viene modulato il codice, però premetto che non ci ho mai provato (nel senso ad usarlo come semplice on/off). Poi la vedo difficile anche farci una barriera, perlomeno così com'è, perchè è fatto per accettare il segnale da un'angolazione più ampia possibile, anzi spesso li ho visti funzionare anche di "rimbalzo" , con il telecomando orientato verso una parete opposta.

 

Ciao, Ale.

Link al commento
Condividi su altri siti

Francesco Querin

infatti pensavo di coprirlo con una pezza cosi con un oggetto il segnale viene bloccato del tutto, pero credo si debba comunque spedire un codice non credo si possa semplicemente dire manda un segnale, gli devo dire manda il codice 0x999555bb e se ricevi il codice 0x999555bb  fai questo se non lo ricevi fai quellaltro.

Link al commento
Condividi su altri siti

8 ore fa, Francesco Querin scrisse:

infatti pensavo di coprirlo con una pezza

 

Francesco cambia dispositivo!

Le pezze, che siano hardware, software o.....di pezza, non funzionano mai bene. Ci sono in commercio per meno di 1€, dei bei fotoemettitori e foto ricevitori, con fascio sottile che servono allo scopo di barriera.

Oppure come ti ho scritto prima, puoi usare un sensore a riflessione; fino a circa 30 cm di distanza rivelano tranquillamente gli oggetti.

Link al commento
Condividi su altri siti

12 ore fa, ilguargua scrisse:

Non credo che possa funzionare con quel ricevitore, perchè prevede una portante a 38Khz su cui poi viene modulato il codice,

 

Infatti non è il dispositivo adatto, anche perchè come hai fatto notare è un grandangolare. per quel lavoro è necessario un dispositivo a fascio molto stretto.

Anni fa io ed una ltro utente del forum, realizzammo una macchina industriale dove usavamo, se ricordo bene, 64 coppie di fotoemettitori e fotoricevitori composti da un diodo emettitore e da un diodo foto ricevitore amplificato.

Link al commento
Condividi su altri siti

Francesco Querin

https://www.amazon.it/gp/product/B00EFOTJZE/ref=ox_sc_act_title_1?smid=A3ELF4DIIXL1GD&psc=1

https://www.amazon.it/gp/product/B01MZ9M2SZ/ref=ox_sc_act_title_2?smid=A1S6E21XPJ9FU9&psc=1

quale mi consigliate di prendere ? 

li ho trovati cercando fotocellula su amazon 

ho se ce un modo di usarli per creare una fotocellula, in senso piu generale cosa potrei usare per creare una fotocellula ?

Link al commento
Condividi su altri siti

Son 2 cose differenti.

Il primo ha il ricevitore grand'angolare, come quello ch stai usando; anzi misembra proprio il tipo da ricevitore per radiocomando.

Il scondo è a riflessione, se la distanza dall'oggtto da rilvare è <30cm va senz'altro meglio.

Link al commento
Condividi su altri siti

Francesco Querin

ok grazie delle informazioni prendo il secondo, mi sono incuriosito i moduli tx e rx ir che volevo usare possono essere utilizzati come quello a riflessione? o quel tipo di ricevitore quadrangolare puo essere utilizzato in abinamento a un emettitore come fotocellula a riflessione?

ho dipende da come e l'emettitore e il ricevitore ? 

cosi imparo cose nuove e capisco meglio questa parte di elettronica e cosa mi serve ho mi servira in futuro.

 

Link al commento
Condividi su altri siti

13 ore fa, Francesco Querin scrisse:

ho dipende da come e l'emettitore e il ricevitore ? 

 

Questi dispositivi sono specifici per ricevitori da telecomando, perchè devono avere una grande sensibilità ed un grande angolo di ricevimento; tutto il contrario dei ricevitori per intercetazione che devono avere l'angolo di ricezione il più stretto possibile, per evitare intercettazioni improprie.

Link al commento
Condividi su altri siti

Crea un account o accedi per commentare

Devi essere un utente per poter lasciare un commento

Crea un account

Registrati per un nuovo account nella nostra comunità. è facile!

Registra un nuovo account

Accedi

Hai già un account? Accedi qui.

Accedi ora
×
×
  • Crea nuovo/a...