collapse

* Posts Recentes

Amplificador - Rockboard HA 1 In-Ear por almamater
[Ontem às 19:13]


O que é isto ? por KammutierSpule
[26 de Março de 2024, 19:35]


Bateria - Portátil por almamater
[25 de Março de 2024, 22:14]


Emulador NES em ESP32 por dropes
[13 de Março de 2024, 21:19]


Escolher Osciloscópio por jm_araujo
[06 de Fevereiro de 2024, 23:07]


TP4056 - Dúvida por dropes
[31 de Janeiro de 2024, 14:13]


Leitura de dados por Porta Serie por jm_araujo
[22 de Janeiro de 2024, 14:00]


Distancia Cabo por jm_araujo
[08 de Janeiro de 2024, 16:30]


Meu novo robô por josecarlos
[06 de Janeiro de 2024, 16:46]


Laser Engraver - Alguém tem? por almamater
[16 de Dezembro de 2023, 14:23]

Autor Tópico: Comunicação entre Arduinos por IV  (Lida 5187 vezes)

0 Membros e 1 Visitante estão a ver este tópico.

Offline XicoMBD

  • Mini Robot
  • *
  • Mensagens: 571
    • FranciscoDias.net
Comunicação entre Arduinos por IV
« em: 17 de Setembro de 2010, 13:32 »
Boas
Uma das coisas que sempre me fascinou foi a comunicação sem fios. Era uma das coisas que gostava de usar com arduinos. Mas até agora nunca me apeteceu gastar um balúrdio na compra de xbees.
E portanto, ultimamente tenho andado à procura de alternativas mais baratas.

O que até agora mais me chamou à atenção foi a comunicação por infravermelhos pelo seu preço e suposta facilidade em adquirir o material. Mas como ainda sou um grande novato nestas andanças, não percebo bem com a utilizar com arduino.

E assim, venho aqui pedir-vos ajuda e uns quantos conselhos.


Encontrei este
site que tem um tutorial interessante.

Mas não consigo perceber como é feita a ligação aos pinos 9 e 10 segundo este esquema e foto:
   

Está o pin positivo do led apenas ligado ao pin 9, apenas ao 10 ou a ambos?Mas voltando à questão principal, alguém tem experiência nisto, já utilizou este tipo de comunicação com arduino ou outro parecido mas igualmente barato?
« Última modificação: 28 de Setembro de 2010, 18:12 por XicoMBD »

Offline ptrobotics

  • Mini Robot
  • *
  • Mensagens: 133
  • Componentes para Electrónica e Robótica
    • PTRobotics - Componentes para Electrónica e Robótica
Re: Comunicação entre Arduinos por IV
« Responder #1 em: 17 de Setembro de 2010, 16:07 »
Os normais receptores de IV responde a uma determinada frequência. Nesse caso 38khz. Ou seja existe sinal com 38khz = 1, não existe, corresponde a 0. Isto é uma forma simples de modular a frequência (FM). No caso do emissor que apresentas, é na realidade um gerador de 38khz controlado pelo arduino.
Eu construiria da seguinte forma:
Gerador de 38khz (feito com uma porta CMOS NAND 4093 por exemplo ou com o Arduino em software) ligado ao pino positivo dos led's e o outro pino à massa. Ou seja, quando fosse aplicado 1 emite 38khz, 0 não emite nada.
O receptor está já preparado para responder a essa frequencia e apenas apresenta na saida 0 ou 1.
Cumprimentos
Pedro Silva

PTRobotics - www.ptrobotics.com
Loja de Electrónica e Robótica
Praca do Relógio 15 Loja 3, 2635-457 Rio-de-Mouro, Portugal
E-mail - geral@ptrobotics.com

Offline XicoMBD

  • Mini Robot
  • *
  • Mensagens: 571
    • FranciscoDias.net
Re: Comunicação entre Arduinos por IV
« Responder #2 em: 28 de Setembro de 2010, 18:52 »
Bem, mal acabei de desempacotar o meu 2º arduino a primeira coisa que quis fazer foi experimentar este sistema que funcionou perfeitamente até pelo menos um metro de distância.


Como podem ver as montagens e os códigos até são bastante simples:


EMISSOR:

Código: [Seleccione]
//dirt cheap wireless TX//generates 38kHz carrier wave on pin 9 and 10  //sends data via TX every 500ms  void setup()  {    pinMode(9, OUTPUT);    pinMode(10, OUTPUT);      // Clear Timer on Compare Match (CTC) Mode    bitWrite(TCCR1A, WGM10, 0);    bitWrite(TCCR1A, WGM11, 0);    bitWrite(TCCR1B, WGM12, 1);    bitWrite(TCCR1B, WGM13, 0);      // Toggle OC1A and OC1B on Compare Match.    bitWrite(TCCR1A, COM1A0, 1);    bitWrite(TCCR1A, COM1A1, 0);    bitWrite(TCCR1A, COM1B0, 1);    bitWrite(TCCR1A, COM1B1, 0);      // No prescaling    bitWrite(TCCR1B, CS10, 1);    bitWrite(TCCR1B, CS11, 0);    bitWrite(TCCR1B, CS12, 0);      OCR1A = 210;    OCR1B = 210;      Serial.begin(2400);  }    void loop()  {    Serial.println("testing testing testing");    delay(500);  } 



RECEPTOR:

Código: [Seleccione]
//dirt cheap wireless RXvoid setup()  {    Serial.begin(2400);    pinMode(13, OUTPUT);  }    void loop()  {    // if incoming serial    if (Serial.available()) {      readSerial();      digitalWrite(13, HIGH);    } else {      digitalWrite(13, LOW);    }    delay(10);  }    void readSerial() {    char val = Serial.read();    Serial.print(val);  } 




VIDEO:



Podem encontrar mais informações no site original:
http://tthheessiiss.wordpress.com/2009/08/05/dirt-cheap-wireless/

Offline metRo_

  • Administrator
  • Mini Robot
  • *****
  • Mensagens: 3.753
Re: Comunicação entre Arduinos por IV
« Responder #3 em: 28 de Setembro de 2010, 23:13 »
Muito interessante e com bastantes aplicações. Tambem já tinha pensado no mesmo, aliás, uma altura cheguei a pedir mesmo uns transceivers IR da vischay.

Offline ptrobotics

  • Mini Robot
  • *
  • Mensagens: 133
  • Componentes para Electrónica e Robótica
    • PTRobotics - Componentes para Electrónica e Robótica
Re: Comunicação entre Arduinos por IV
« Responder #4 em: 28 de Setembro de 2010, 23:52 »
Para responder algumas perguntas de receptores e emissores possiveis:

http://www.ptrobotics.com/category.php?id_category=34
Cumprimentos
Pedro Silva

PTRobotics - www.ptrobotics.com
Loja de Electrónica e Robótica
Praca do Relógio 15 Loja 3, 2635-457 Rio-de-Mouro, Portugal
E-mail - geral@ptrobotics.com