Telemóvel controlado por telemóvel com módulo DTMF

Neste projeto, controlaremos um robô manual através de nosso telefone celular, usando o módulo DTMF e o Arduino.

Por: Ankit Negi, Kanishk Godiyal e Navneet Singh sajwan

Telemóvel controlado por telemóvel com módulo DTMF

INTRODUÇÃO

Dois telefones celulares são usados ​​neste projeto, um para ligar e outro para receber a ligação. O telefone que recebe a ligação está conectado ao robô através de um conector de áudio.

O chamador pode controlar o robô simplesmente pressionando as teclas no teclado de discagem. (ou seja, o robô pode ser operado a partir de qualquer canto do mundo).

COMPONENTES NECESSÁRIOS

1 – Arduino UNO

2 – Robô manual

3-4 motores (aqui usamos 300 rpm cada)

4 – módulo DTMF

5 – Motorista

Bateria de 6-12 volts

7 – Switch

8 – Entrada para fone de ouvido

9 – Dois telefones celulares

10 – Cabos de conexão

SOBRE O ROBÔ MANUAL

Um robô manual consiste em um chassi (corpo) no qual três ou quatro motores (parafusados ​​com pneus) podem ser acoplados de acordo com os requisitos.

Os motores a serem utilizados dependem de nossos requisitos, ou seja, podem fornecer alta velocidade ou alto torque ou uma boa combinação de ambos. Aplicações como o helicóptero quádruplo exigem motores de alta velocidade para se elevarem contra a gravidade, enquanto aplicações como mover um braço mecânico ou subir uma inclinação íngreme exigem motores de alto torque.

Ambos os motores no lado esquerdo e direito do robô são conectados em paralelo separadamente. Eles geralmente são conectados a uma bateria de 12 volts por meio de comutadores DPDT (pino duplo de lançamento duplo).

Mas neste projeto, usaremos um telefone celular em vez do DPDT para controlar o bot.

SOBRE O MOTOR DE CONDUÇÃO

1590355666 950 telemovel controlado por telemovel com modulo dtmf projetos de

O Arduino fornece uma corrente máxima de 40 mA usando pinos GPIO (saída de entrada de uso geral), enquanto fornece 200 mA usando Vdc e terra.

Os motores requerem uma corrente alta para funcionar. Não podemos usar o arduino diretamente para alimentar nossos motores, por isso usamos um controlador de motor.

O controlador do motor contém a ponte H (que é uma combinação de transistores). O IC do controlador do motor (L298) é alimentado por 5v, fornecido pelo arduino.

Para alimentar os motores, é necessária uma entrada de 12v do arduino, que é fornecida por uma bateria de 12v. Portanto, o arduino apenas pega a energia da bateria e a entrega ao controlador do motor.

Ele nos permite controlar a velocidade e a direção dos motores, fornecendo uma corrente máxima de 2 amperes.

INTRODUÇÃO AO MÓDULO DTMF

1590355666 259 telemovel controlado por telemovel com modulo dtmf projetos de

DTMF significa Multi Frequency Dual Tone. Nosso teclado de discagem é uma multifreqüência de dois toners, ou seja, um botão fornece uma mistura de dois tons com uma frequência diferente.

Um tom é gerado a partir de um grupo de tons de alta frequência, enquanto outro de um grupo de baixa frequência. Isso é feito para que qualquer tipo de voz não imite os tons.

Portanto, ele simplesmente decodifica a entrada do teclado do telefone em código binário de quatro bits. As frequências dos números de teclado que usamos em nosso projeto são mostradas na tabela abaixo.

DigitBaixa frequência (hertz) Alta frequência (hertz) 2697133647701209677014778852133609411336

A sequência decodificada binária dos dígitos do teclado de discagem é mostrada na tabela abaixo.

dígitoD3D2D1D010 00 00 0120 00 010 030 00 0114 40 010 00 05 50 010 016 60 0110 07 70 0111810 00 00 09 910 00 010 010 010 0* *10 011# #110 00 0

DIAGRAMA DE CIRCUITO

1590355666 195 telemovel controlado por telemovel com modulo dtmf projetos de

LIGAÇÕES

Motorista –

  • Os pinos “A” e “B” controlam o motor no lado esquerdo, enquanto os pinos “C” e “D” controlam o lado direito do motor. Esses quatro pinos estão conectados aos quatro motores.
  • O pino “E” é para alimentar o IC (L298) retirado do arduino (5v).
  • o pino “F” é retificado.
  • O pino “G” consome 12 volts de energia da bateria através do pino Vin do arduino.
  • Os pinos “H”, “I”, “J” e “K” recebem a lógica do arduino.

DTMF –

  • o pino “a” está conectado a 3,5 volts do arduino para alimentar o IC (SC9270D).
  • O pino “b” está aterrado.
  • A entrada DTMF é obtida do telefone através de um conector.
  • A saída na forma de dados binários através dos pinos (D0 – D3) vai para o arduino.

ARDUINO –

  • A saída DTMF dos pinos (D0 – D3) atinge os pinos digitais do Arduino. Podemos conectar esta saída a qualquer um dos quatro pinos digitais que variam de (2 a 13) no arduino. Aqui usamos os pinos 8, 9, 10 e 11.
  • Os pinos digitais 2 e 3 no arduino estão conectados aos números de pino ‘H' e ‘I' no controlador do motor, enquanto os pinos 12 e 13 no arduino estão conectados a ‘J' e ‘K'.
  • O arduino está conectado a uma bateria de 12 volts.

Código do programa

int x ; // initialising variables
int y ;
int z ;
int w ;
int a=20 ;
void setup()
{
pinMode(2,OUTPUT) ; //left motor
pinMode(3,OUTPUT) ; //left
pinMode(8,INPUT) ; // output from DO pin of DTMF
pinMode(9,INPUT) ; //output from D1 pin of DTMF
pinMode(10,INPUT) ; //output from D2 pin of DTMF
pinMode(11,INPUT) ; // output from D3 pin of DTMF
pinMode(12,OUTPUT) ; //right motor
pinMode(13,OUTPUT) ; //right
Serial.begin(9600);// begin serial communication between arduino and laptop
}
void decoding()// decodes the 4 bit binary number into decimal number
{
if((x==0)&&(y==0)&&(z==0)&&(w==0))
{
a=0;
}
if((x==0)&&(y==0)&&(z==1)&&(w==0))
{
a=2;
}
if((x==0)&&(y==1)&&(z==0)&&(w==0))
{
a=4;
}
if((x==0)&&(y==1)&&(z==1)&&(w==0))
{
a=6;
}
if((x==1)&&(y==0)&&(z==0)&&(w==0))
{
a=8;
}
}
void printing()// prints the value received from input pins 8,9,10 and 11 respectively
{
Serial.print(" x ");
Serial.print( x );
Serial.print(" y ");
Serial.print( y );
Serial.print(" z ");
Serial.print( z );
Serial.print(" w ");
Serial.print( w );
Serial.print(" a ");
Serial.print(a);
Serial.println();
}
void move_forward()// both side tyres of bot moves forward
{
digitalWrite(2,HIGH);
digitalWrite(3,LOW);
digitalWrite(12,HIGH);
digitalWrite(13,LOW);
}
void move_backward()//both side tyres of bot moves backward
{
digitalWrite(3,HIGH);
digitalWrite(2,LOW);
digitalWrite(13,HIGH);
digitalWrite(12,LOW);
}
void move_left()// only left side tyres move forward
{
digitalWrite(2,HIGH);
digitalWrite(3,LOW);
digitalWrite(12,LOW);
digitalWrite(13,HIGH);
}
void move_right()//only right side tyres move forward
{
digitalWrite(2,LOW);
digitalWrite(3,HIGH);
digitalWrite(12,HIGH);
digitalWrite(13,LOW);
}
void halt()// all motor stops
{
digitalWrite(2,LOW);
digitalWrite(3,LOW);
digitalWrite(12,LOW);
digitalWrite(13,LOW);
}
void reading()// take readings from input pins that are connected to DTMF D0, D1, D2 and D3 PINS.
{
x=digitalRead(8);
y=digitalRead(9);
z=digitalRead(10);
w=digitalRead(11);
}
void loop()
{
reading();
decoding();
if((x==0)&&(y==0)&&(z==1)&&(w==0))
{
move_forward();
reading();
decoding();
printing();
}
if((x==1)&&(y==0)&&(z==0)&&(w==0))
{
move_backward();
reading();
decoding();
printing();
}
if((x==0)&&(y==1)&&(z==0)&&(w==0))
{
move_left();
reading();
decoding();
printing();
}
if((x==0)&&(y==1)&&(z==1)&&(w==0))
{
move_right();
reading();
decoding();
printing();
}
if((x==0)&&(y==0)&&(z==0)&&(w==0))
{
halt();
reading();
decoding();
printing();
}
a=20;
printing();
}

CÓDIGO DE EXPLICAÇÃO

  1. Primeiro, inicializamos todas as variáveis ​​antes de substituir a configuração.
  2. Na configuração nula, todos os pinos a serem utilizados são atribuídos como entrada ou saída de acordo com sua finalidade.
  3. Uma nova função “decodificação nula ()” é criada. Nesta função, toda a entrada binária que obtemos do DTMF é decodificada em decimal pelo arduino. E a variável atribuída para esse valor decimal é a.
  4. Outra função “null print ()” é executada. Esta função é usada para imprimir valores de entrada dos pinos DTMF.
  5. Da mesma forma, são necessárias cinco funções para executar a tarefa necessária. Essas funções são:

void move_left (); // robô vira à esquerda

move_right () vazio; // robô vira à direita

null move_forward (); // o robô avança

null move_backward (); // o robô se move para trás

nulo alto (); // robô para

  1. Essas funções agora são usadas na função de loop vazio para executar sua tarefa, desde que sejam chamadas de acordo com a entrada do teclado do telefone celular.

Por exemplo:::

if((x==0)&&(y==0)&&(z==1)&&(w==0))
{
move_forward();
reading();
decoding();
printing();
}

portanto, quando o botão 2 é pressionado ou 0010 é recebido nos pinos de entrada, o arduino decodifica isso e, portanto, essas funções fazem seu trabalho: Siga em frente ();

lendo();

decodificação ();

Impressão();

CIRCUITO DE TRABALHO

Os controles que usamos em nosso projeto são os seguintes:

2 – Avançar

4 – Vire à esquerda

6 – Virar à direita

8 – Voltar

0 – para parar

Depois de fazer uma ligação para o telefone conectado ao robô, a pessoa abre o teclado de discagem.

  • Se “2” for pressionado. O DTMF recebe a entrada, a decodifica em seu número binário equivalente, ou seja, ”0010′ e a envia para os pinos digitais do Arduino. O arduino envia esse código ao controlador do motor, já que programamos quando o código será ‘0010', os motores girarão no sentido horário e, portanto, nosso robô avançará.
  • Se “4” for pressionado, seu código equivalente será “0100” e, de acordo com a programação, os motores do lado esquerdo irão parar e apenas os motores do lado direito girarão no sentido horário, portanto, nosso robô girará para a esquerda .
  • Se “6” for pressionado, o motor do lado direito irá parar e somente os motores do lado esquerdo girarão no sentido horário, portanto, nosso robô girará para o direito.
  • Se ‘8' for pressionado, nossos motores girarão no sentido anti-horário e, portanto, nosso robô se moverá para trás.
  • Se “0” for pressionado, todos os nossos motores irão parar e o robô não se moverá.

Neste projeto, atribuímos uma função a apenas cinco números de teclado. Podemos adicionar qualquer tipo de outro mecanismo e atribuir um número de teclado de discagem a esse mecanismo para criar uma versão atualizada deste projeto.

PONTOS A CONSIDERAR

1 – O gato não deve estar solto.

2 – Os tons do teclado do telefone devem ser máximos.

3 – A Internet / Wi-Fi do telefone receptor deve estar fechada para evitar efeitos de interferência.

4 – O pino esquerdo (ou seja, pino ‘b') do DTMF é aterrado e o pino direito (ou seja, pino decir a ‘) é conectado a 3,3v.

Imagens de protótipo do circuito do carro robô controlado por telefone celular usando DTMF

1590355668 474 telemovel controlado por telemovel com modulo dtmf projetos de

Vídeo de demonstração de um carro RC controlado por telefone celular usando DTMF



FONTE

Nota: Este foi traduzido do Inglês para português (auto)

Pode conter erros de tradução

Olá, se tiver algum erro de tradução (AUTO), falta de link para download etc…

Veja na FONTE até ser revisado o post.

Status (Não Revisado)

Se tiver algum erro coloque nos comentários

Mas se gostou compartilhe!!!


Veja mais

Axtudo
Axtudohttps://www.axtudo.com/
“Solidários, seremos união. Separados uns dos outros seremos pontos de vista. Juntos, alcançaremos a realização de nossos propósitos.” (Bezerra de Menezes)

Comentários

DEIXE UMA RESPOSTA

Por favor digite seu comentário!
Por favor, digite seu nome aqui

Compartilhe

Últimos Posts

00:19:34

ESSE MÉTODO TRANSFORMA SUAS HABILIDADES EM DINHEIRO| Tiago Fonseca...

#ESSE #MÉTODO #TRANSFORMA #SUAS #HABILIDADES #DINHEIRO #Tiago #Fonseca #Pablo #Marçal #Parte2 Neste vídeo Tiago...

Medalhão de carne| Na Cozinha com Oloares Ferreira

#Medalhão #carne #Cozinha #Oloares #Ferreira Mais uma receita de torta para você. Veja e aprenda como fazer esse medalhão de...
00:15:32

As 5 coisas que te impedem de ter uma...

#coisas #impedem #ter #uma #vida #extraordinária #Tiago #Fonseca #Caio #Carneiro #EP1 Neste vídeo Tiago...

Lançamento Do nosso Livro.

Pagina para comprar o livro: link➤http:www.ocriadordeoportunidades.com.br/livro #Lançamento #nosso #Livro FONTE - Duração do vídeo: 00:08:29
00:01:53

VOCÊ NÃO DEVERIA ESTAR USANDO O TELEGRAM PARA ISSO...

Essa é a função do conteúdo raiz. Entre para o nosso grupo #GaleraRaiz no Telegram: link➤http:formuladelancamento.com.br/raiz Você também pode me encontrar ↴ Facebook ☛ ...

COMO VIVE O SULTÃO MAIS RICO DO MUNDO

#COMO #VIVE #SULTÃO #MAIS #RICO #MUNDO A lista da Forbes mostra anualmente as pessoas mais ricas do mundo e...