Comunicação Serial Com C# e Arduino - Parte 2

11
por Fábio Souza em segunda-feira, 18 de agosto de 2014. Na primeira parte dessa série, Comunicação serial com C# e Arduino, foi exibido como criar um terminal simples usando o Visual Studio com a linguagem C#. Foi explicado passo a passo como inserir os componentes e a programação da aplicação para funcionar parecida com o terminal serial que vem no programa Arduino. Neste argo vamos construir uma aplicação de comunicação serial para ligar/desligar um LED no Arduino através de um botão e exibir o valor da tensão presente no pino analógico (A0). Para facilitar o desenvolvimento vamos aproveitar a estrutura desenvolvida na parte 1 desta série. O primeiro passo é rerar o textBoxEnviar e o textBoxReceber, deixando a interface da seguinte forma:

description

Este artigo trata da comunicação com a plataforma arduino utilizando a ide de programação visual studio e a linguagem de programção C# para a comunicação serial mediante a instalação de plugins

Transcript of Comunicação Serial Com C# e Arduino - Parte 2

Page 1: Comunicação Serial Com C# e Arduino - Parte 2

por Fábio Souza em segunda-feira, 18 de agosto de 2014.

Na primeira parte dessa série, Comunicação serial com C# e Arduino, foi exibido como criar um terminalsimples usando o Visual Studio com a linguagem C#. Foi explicado passo a passo como inserir oscomponentes e a programação da aplicação para funcionar parecida com o terminal serial que vem noprograma Arduino.

Neste ar�go vamos construir uma aplicação de comunicação serial para ligar/desligar um LED no Arduinoatravés de um botão e exibir o valor da tensão presente no pino analógico (A0). Para facilitar odesenvolvimento vamos aproveitar a estrutura desenvolvida na parte 1 desta série.

O primeiro passo é re�rar o textBoxEnviar e o textBoxReceber, deixando a interface da seguinte forma:

Page 2: Comunicação Serial Com C# e Arduino - Parte 2

Figura 1 - Alterando o exemplo Comunicação Serial com C# e Arduino - Parte 1

Agora vamos aproveitar o btEnviar para servir como o botão que ligará e desligará o LED na placa Arduino.Vamos trocar a propriedade Name para btLigar e Text para Ligar, e deverá ficar conforme figura abaixo:

Figura 2 - Botão para ligar/desligar o LED através da comunicação Serial

Para exibir a tensão na entrada analógica do Arduino vamos inserir um label logo abaixo do botão Ligar.Trocar a propriedade Name para lbValor e em Text inserir Tensão: 0,0 V. Para ficar mais visível pode-se trocara fonte e aumentar o seu tamanho. No nosso exemplo foi escolhida a fonte Arial com tamanho 16, conformeexibido na figura abaixo:

TQTVD SOFTWARE LTDA - R

Desenvolvedor Back-end naPaulo/SP

Engenheiro Eletrônico na D

Engenheiro de Aplicações pChip Card & Security na InfiTechnologies - São Paulo/SP

Divulgue sua oportunidade

Mais oportunidades

Email

Escolha de MicrocontroladoMicroprocessador

Sistema Operacional Embar

Linguagem de programação

Tipo de Processador

Simulador de Arduino: Virt

31.307 visualizações

Junte-se a Comunidade Embarcados: Realizar Login Registrar-se

Translate »

Page 3: Comunicação Serial Com C# e Arduino - Parte 2

Figura 3 - Label para indicação da tensão

Para ficar melhor a disposição das informações no Form, vamos alinhar os componentes ao centro,conforme figura abaixo:

Figura 4 - Ajustes finais no Form para comunicação serial

Note que foi adicionado um label, logo acima do btLigar, com a propriedade Text igual a LED, que servirápara indicar que o botão acionará o LED.

Esse layout servirá para nossa aplicação, para ser lida a tensão no pino analógico do Arduino. Vamos inserirum componente Timer que será responsável para enviar o dado de leitura do valor analógico em tempo emtempos. Deve ser alterada a propriedade Name para �merLeitura e Interval para 500, conforme exibido aseguir:

Arduino UNO

Comunicação Serial Java + A

Arduino - Entradas Analógic

28.746 visualizações

23.057 visualizações

19.869 visualizações

15.629 visualizações

Junte-se a Comunidade Embarcados: Realizar Login Registrar-se

Translate »

Page 4: Comunicação Serial Com C# e Arduino - Parte 2

Figura 5 - Alteração no intervalo do Timer

Com os componentes inseridos podemos passar para a codificação da nossa aplicação. Deve ser criado oevento do botão Ligar, e para isso basta dar um duplo clique no botão. Insira o seguinte código nesteevento:

Para enviar o comando de leitura para o arduino é necessário criar o evento �ck do �merLeitura, e para issobasta dar duplo clique no �mer na aba Design. No evento deve ser inserido o seguinte código:

Junte-se a Comunidade Embarcados: Realizar Login Registrar-se

Translate »

Page 5: Comunicação Serial Com C# e Arduino - Parte 2

Sempre que enviado o caractere ‘T’ o Arduino retornará o valor lido no pino analógico A0 conver�do paradigital. O código com a formatação do valor a ser exibido, assim como todo o código da aplicação, é exibidoa seguir:

Junte-se a Comunidade Embarcados: Realizar Login Registrar-se

Translate »

Page 6: Comunicação Serial Com C# e Arduino - Parte 2

Junte-se a Comunidade Embarcados: Realizar Login Registrar-se

Translate »

Page 7: Comunicação Serial Com C# e Arduino - Parte 2

O código para o upload no Arduino é exibido a seguir:

Junte-se a Comunidade Embarcados: Realizar Login Registrar-se

Translate »

Page 8: Comunicação Serial Com C# e Arduino - Parte 2

Note no código acima que foi feita uma média de 16 leituras do sinal analógico.

Depois de feito o upload para o Arduino e iniciada a aplicação, com a correta conexão com o Arduino oresultado vai ser bem semelhante ao da imagem a seguir:

Figura 6 - Teste da aplicação final

Variando o valor da entrada analógica com um potenciômetro, será exibido o valor da tensão presente nopino. Caso o botão Ligar seja pressionado, o LED no pino 13 será ligado e, se pressionado novamente, serádesligado.

O Download desta aplicação junto com o programa Arduino pode ser feita através do link: Aplicação.

Lembre-se, você deve ser registrado e estar logado no site para fazer o download.

Desenvolver uma interface gráfica para comunicação serial e controle com Arduino é bem simples u�lizandoa plataforma .Net. Você pode criar botões e indicadores e facilmente interagir com Arduino. A par�r doexemplo apresentado você poderá desenvolver interfaces para controlar o seu Arduino e exibir valores noseu computador de uma forma fácil e rápida.

Aproveite o exemplo, crie novos botões para ligar/desligar disposi�vos em outros pinos e leia as outrasentradas analógicas.

Espero que este ar�go possa ser a porta de entrada para suas aplicações gráficas interagindo com o Arduino.Conte para nós as suas experiências com essa plataforma.

Arduino - Primeiros Passos

Arduino - O documentário

Junte-se a Comunidade Embarcados: Realizar Login Registrar-se

Translate »

Page 9: Comunicação Serial Com C# e Arduino - Parte 2

Arduino UNO

Arduino - Entradas/Saídas digitais

Arduino - Entradas Analógicas

Arduino - Saídas PWM

Arduino - Comunicação Serial

Arduino - ArduBlock

Arduino no Proteus 8.1

Simulador de Arduino: Virtual Breadboard

Arduino Leonardo

Arduino MEGA 2560

Acionamento de uma lâmpada com Arduino

Arduino - Controle de uma lâmpada com LDR

Placa Arduino da Robocore - BlackBoard

Criando suas próprias bibliotecas para Arduino

Arduino UNO - Taxa de amostragem do conversor A/D

Arduino UNO - Sensor de temperatura interno

Medindo o nível de água com Arduino

Comunicação Serial com C# e Arduino - Parte 1

Comunicação Serial com C# e Arduino - Parte 2

Arduino: Expandindo os I/Os - Parte 1

Arduino Esplora

Arduino - Teclado touch capaci�vo

Arduino - Interface com acelerômetro e giroscópio

Arduino: RS-232/RS-485 - Hardware

Trinket - Uma pequena poderosa placa compa�vel com Arduino

Nova Arduino Zero Pro - Disponível no site arduino.org

Embrio: Uma ferramenta de programação visual para Arduino

Comunicação serial com Arduino u�lizando Qt5 Console Applica�on

U�lizando microcontroladores para controle de conversores DC-DC personalizados, parte II

Móveis de escritório + IoT - Uma impressora de recibo com NFC e Wifi

LightBlue Bean - Placa compa�vel com Arduino

BR-Arduino.org: Sua nova fonte de conhecimento sobre Arduino

Shield Arduino YÚN

Arduino Yún

Novo Shield Arduino Wi-Fi com controlador Atmel

Python + Arduino - Comunicação Serial

Arduino vs Raspberry Pi: entenda as diferenças

Papilio - Arduino + FPGA

Intel Galileo Gen 2 - Placa Arduino

Arduino TRE Developer Edi�on - Lançamento!

Novo Arduino - Arduino Zero lançado

Intel Galileo - Placa Arduino

Arduino TRE

Arduino Due

Comunicação Serial Java + Arduino

UDOO - Arduino, Linux e Android em uma mesma placa

Junte-se a Comunidade Embarcados: Realizar Login Registrar-se

Translate »

Page 10: Comunicação Serial Com C# e Arduino - Parte 2

Comunicação Serial com C# e Arduino - Parte 2 por Fábio Souza. Esta obra está sob a licença Crea�veCommons Atribuição-Compar�lhaIgual 4.0 Internacional.

Tweetar 3

veja+

Apresentação A empresaisraelense SolidRun projetou e

está disponibilizando ao mercado um miniPC bem pequeno (2x2x2 polegadas)pesando 91 gramas, de baixo consumo e...

veja+

Hoje em dia o lema é conec�vidade emobilidade. Estamos vendo coisas cadavez mais móveis e conectadas,principalmente no que tange à internet. Edentre... veja+

A área de visão computacional temchamado a atenção nos úl�mos anos etem se tornado cada vez mais acessível atodos, não apenas à indústria...

Disqus seems to be taking longer than usual. Reload?

Engenheiro eletricista com experiência no desenvolvimento de hardware e firmware para

sistemas embarcados. Atua com desenvolvimento de projetos eletrônicos, consultoria e

treinamentos na área de sistemas embarcados.

Sobre

Eventos

Vídeos

Downloads

Login

Contato

Seja Colaborador

Oportunidades

Sites e Blogs

Anuncie Conosco

Embarcados - Todos os Direitos Reservados®

37CurtirCurtir ShareShare 4

Junte-se a Comunidade Embarcados: Realizar Login Registrar-se

Translate »

Page 11: Comunicação Serial Com C# e Arduino - Parte 2

Junte-se a Comunidade Embarcados: Realizar Login Registrar-se

Translate »