Aula 4 – Arduino VB.net – Domótica

Objectivos:

Controlar várias fontes de iluminação através do microcontrolador Arduino, recorrendo a uma aplicação construída no Visual Studio 2010.

Material Utilizado:

  • Arduino
  • Placa de Relés
  • Tomada Monofásica
  • Casquilho
  • Lâmpada
  • Fio VU 1.5mm
Projecto Domótica - Controlo de lâmpadas através VB.net:

Diagrama de Blocos:
No Diagrama de blocos está representado o sentido da comunicação de dados, podendo as setas ter dois sentidos ou apenas um.

Programação Arduino:

O Arduino vai ser o intermediário entre a placa de relés e a aplicação do PC. Logo, como podemos ver no diagrama de blocos em cima, teremos que estabelecer um protocolo de comunicação entre o Arduino e o PC.

Mas o que é isto de protocolo de comunicação?

Um protocolo de comunicação não é nada mais que uma linguagem comum a dois sistemas. Podemos pensar numa analogia no que seria um dialogo entre um Português e um Inglês.

Exemplo:

Português: Olá bom dia? Como está?
Inglês: What? (Não iria perceber)


Vamos supor agora que cada uma destas duas palavras é atribuída uma única letra (ver abaixo).
Olá bom dia – Digo apenas a letra “a”
Tudo Bem – Digo apenas a letra “b”


Assim sendo veremos como fica agora o nosso diálogo:
Português: a               //Olá bom dia.
Inglês: b                       //Tudo Bem

Espero que este pequeno reparo tenha facilitado a aprendizagem…

Protocolo PC – Arduino:

Agora que já temos o nosso protocolo de comunicação construído vamos programar o arduino. Poderíamos ligar/desligar a lâmpada fazendo o toggle do pino recebendo o mesmo caracter, mas isso fica para trabalho futuro.

Código Arduino:

O Arduino vai fazer uma sequência de acções da seguinte forma:

1. Recebe um caracter do PC

  • Exemplo: ‘a’

2. Liga o pino 13             //escolhi o 13 por ser mais fácil testar para quem não tem led, ou placa relés

3. Envia Informação para PC a dizer que o led está ligado.

Código VB.net
Uma vez que já terminamos o programa no arduino, vamos colocar a mão na massa para fazer a nossa primeira aplicação em VB.net.
Antes de mais, na programação temos sempre o hábito de programar sem pensar, o que por vezes não é bom, pois se não sabemos para onde queremos ir como podemos escolher o caminho?

Para simplificar, vamos esclarecer alguns pontos importantes.

O nosso programa no arduino está a funcionar bem?
OK, até aqui não temos problema nenhum; ele funcionou bem ao testar através do serial monitor, agora terá de funcionar da mesma forma pois vamos fazer exactamente a mesma coisa, apenas vamos mostrar os dados num interface diferente.

Sequências de acções:

Bem, aqui nesta parte é fundamental perceber o que teremos que fazer. Como já tínhamos visto no código do arduino, começamos logo por receber um “a” (ver em cima) então se recebemos um “a ”, alguém tem que o enviar.

Então vou logo tentar mandar o “a” para o arduino? O que acha?

Sim? Errado…

1. Defina as propriedades da ligação
2. Estabeleça ligação abrindo a porta serie
3. Envia dados
4. Receba dados

Nota:
O exemplo que se encontra abaixo descreve as funções básicas da comunicação entre o arduino e o PC, ficando por tratar casos como excepções, no caso a porta não ser a correcta, bem como outras pontos.
Serve este manual para utilizadores mais básicos, pois utilizadores avançados criam as suas classes para comunicar, servindo para programas futuros.

Criar um novo projecto:

Escolha o nome que entender.

Depois deve carregar duas vezes no objeto SerialPort.

De seguida, deve carregar duas vezes no formulário, para que seja criado um evento chamado formload. Isto
significa que, sempre que o formulário é aberto, é executada uma determinada acção. Deve aparecer algo do
género:

Definição dos parâmetros de comunicação:
•BaudRate=9600;
•Paridade= None;
•Bits Dados=8;
•Stop Bits=1;

O que acha que falta definir?

O nome da porta a usar, pois caso contrário o PC não saberia.

Acrescente esta linha:
SerialPort1.PortName = “COM2” ‘Nome da porta

Feito isto, temos já todas as configurações inseridas no nosso programa; agora falta ligar a porta.
Então vamos ao modo de design:
• Colocar dois botões,
• Duas lables
• Duas caixas de texto

Crie um evento carregando duas vezes no botão liga.
Deve escrever o seguinte código:

Agora faça a mesmo processo para o botão envia:

Posto isto compile o seu programa, e se não tiver erros está pronto para funcionar.
Agora, faça a mesmo processo para o botão envia:

Placa de relés:


À placa de relés podemos-lhe chamar “conversor de sinal”, pois é mais fácil de compreender. Assim, o que esta vai fazer é, converter os 5 volt do arduino em 220volt que vão ligar a lâmpada.
Para a construção desta placa foram utilizados os materiais:

  • Resistências
  • Led
  • Relé
  • Díodo

Cujo esquema é apresentado em baixo:

Placa de relés 3D:

  Veja o video deste projecto:

Veja o video como programar em vb.net:

Manual



Deixe uma Resposta

Preencha os seus detalhes abaixo ou clique num ícone para iniciar sessão:

Logótipo da WordPress.com

Está a comentar usando a sua conta WordPress.com Terminar Sessão / Alterar )

Imagem do Twitter

Está a comentar usando a sua conta Twitter Terminar Sessão / Alterar )

Facebook photo

Está a comentar usando a sua conta Facebook Terminar Sessão / Alterar )

Google+ photo

Está a comentar usando a sua conta Google+ Terminar Sessão / Alterar )

Connecting to %s