Escolar Documentos
Profissional Documentos
Cultura Documentos
27 11 13 Como Controlar Arduino Via Delp
27 11 13 Como Controlar Arduino Via Delp
Marcelo Cuin
Arduino | Computação | Eletrônica | Engenharia e etc…
Início
Contato
-- Main Menu --
mai
13
By Hemicharly Thiago
Uma dica para quem quiser obter comunicação entre arduino e o delphi, para desenvolver interfaces que possibilita controlar o arduino através do
delphi, desenvolver aplicações para projetos de automação e outros projetos. Para conseguir esta comunicação com o delphi será necessário a
instalação do componente TComPort, pois é este componente que lhe dará todo suporte para que você consiga obter a comunicação quanto ao envio
e o recebimento de dados com arduino.
Para instalar o componente TComPort, é preciso fazer o download do componente no LINK: http://www.cuin.com.br/wp-
content/uploads/2013/05/COMPONENTE.rar
1º Passo: Depois de baixar o componente, salve ele em uma pasta de preferencia a pasta que você utiliza pra salvar outros componentes.
2º Passo: Abra o delphi é necessário encerrar as aplicações abertas para isto clique em FILE e clique em CLOSE ALL.
3º Passo: Clique OPEN abrira uma janela nesta janela você localiza o componente no diretório o qual você o salvou: Localize a pasta comport411 e
abra pasta source nesta pasta e localize o arquivo DsgnCPort7 ou o da versão do delphi o qual esta utilizando e seleciona e clica em abrir.
4º Passo: Será aberto uma janela, clique em Compile depois clique em Install, feche a janela, será solicitada uma mensagem para salvar clique em não.
Related Searches:
www.cuin.com.br/2013/05/como-controlar-arduino-via-delphi/ 1/9
27/11/13 Como controlar Arduino via Delphi | Marcelo Cuin
Servo Controller
PIC
Microcontrollers 5º Passo: Agora é preciso você setar diretório do componente liberando seu funcionamento, para isto clique em TOOL/OPTION IDE, abrira uma
janela clique na aba Library, clique nos 3 pontinhos que corresponde a Library path, será aberto uma janela chamada directories clique nos 3
pontinhos e sete o diretório onde encontra se salvo o componente em seu computador, feito isto clique em ok duas vezes.
AVR Freaks
Stepper Motor
Controller
Utilizando o Componente.
Abra o delphi procure a aba CPortLib e adicione o componente ComPort, para você obter a comunicação com o arduino, você só precisará
praticamente duas partes. O método ComPort1.WriteStr e o evento ComPort1RxChar. Trust Rating
Whilokii Ads
Recebendo Dados:
Para receber dados pela porta Serial, basta utilizar o evento OnRxChar que é acionado automaticamente toda vez que alguma informação chega à
porta Serial.
Exemplo código abaixo:
www.cuin.com.br/2013/05/como-controlar-arduino-via-delphi/ 2/9
27/11/13 Como controlar Arduino via Delphi | Marcelo Cuin
Para testar funcionamento do aplicativo basta compilar o código abaixo no arduino e utilizar a interface desenvolvida em delphi para realizar os teste.
Código para o Arduino:
Basta digitar os comando A e B no campo comando e clicar em enviar e será recebida a resposta logo em seguida.
Para fazer o download do código fonte do aplicativo desenvolvido em delphi e o código fonte para o arduino esta disponível no LINK:
http://www.cuin.com.br/wp-content/uploads/2013/05/CODIGO-FONTE.rar
A principal ideia é conseguir a comunicação com o arduino via delphi, a partir desta ideia você tem uma noção de como funciona o envio e
recebimento de dados, agora é só usar criatividade e desenvolver diversos projetos.
1. Cristianosays:
15 de julho de 2013 at 21:28
Responder
Cara valeu mesmo!!! Seu artigo me ajudou bastante. Já estava procurando como instalar este componente. Um lembrete os componentes do
tcomport esta faltando um arquivo eu tive que baixar de outro site ai deu certo a instalação.
Marcelo Cuinsays:
16 de julho de 2013 at 8:44
Responder
Olá Cristiano, que bom que gostou do artigo. Com relação ao arquivo que está faltando, informe o nome do arquivo e também onde
você pegou, assim ajustamos a postagem para não ter mais problemas. Obrigado.
2. Thomé Lucassays:
1 de agosto de 2013 at 12:53
Responder
Uso o Delphi 7 e o componente Tcomport corretamente instalado, só que quando vou compilar o projeto dá erro na seguinte linha:
Unit1 in ‘Unit1.pas’ {F_COMUNICACAO};
www.cuin.com.br/2013/05/como-controlar-arduino-via-delphi/ 3/9
27/11/13 Como controlar Arduino via Delphi | Marcelo Cuin
[Fatal Error] teste.dpr(5): File not found: ‘Cport.dcu’
Hemicharly Thiagosays:
1 de agosto de 2013 at 13:29
Responder
4. Márciosays:
28 de agosto de 2013 at 21:52
Responder
1) Preciso de outro tipo de cabo (serial) para fazer conexão com o Arduino ou só o fato dele estar ligado ao usb funciona?
2) Como devo configurar o componente ComPort? Só sei que o Arduino está usando a porta COM4 e 9600 baud, mas como configuro
corretamente o ComPort?
3) Baixei o seu codigo fonte, mas quando clico em conectar ele dá erro “Unable to open com port (Error: 5)”. Tem alguma sugestão?
Hemicharly Thiagosays:
29 de agosto de 2013 at 17:35
Responder
Olá Marcio!
Respondendo suas dúvidas.
1) Não precisa de nenhum outro tipo de cabo “serial”, somente o cabo USB do Arduíno é o suficiente para conexão.
2) Para configurar o componente ComPort, quando você liga o Arduíno com o cabo USB, automaticamente deve-se aparecer a porta o
qual o Arduíno está conectado, verifique no no compilador de código C do Arduíno qual porta esta usando, e clique no botão
configuração do software que faz a comunicação com Arduíno e delphi e o configure, você não precisa mudar nada basta colocar a porta
que o Arduíno está usando o resto deixa como está.
3) Esse erro provavelmente não está instalado corretamente o componente ComPort, verifique o se encontra-se instalado corretamente.
Espero que tenha ajudado, qualquer duvida estarei a disposição, comunique se obter resultados.
Abraços!
5. Camilosays:
13 de setembro de 2013 at 13:34
Responder
Estou com o seguinte problema, estou lendo a temperatura de um sensor de temperatura através do arduino, e escrevo este valor já convertino
na serial, leio este valor no delphi, se eu coloco o valor em label, ele escreve o valor tudo blz, eu quero converter este valor para inteiro ou float,
para que possa comparar no proprio delphi, se a temperatura for maior que 30 escreva no programa delphi “o tempo esta quente”, porem da
erro.
Sleep(500);
comport1.Connected:=true;
contador:=comport1.InputCount;
comport1.ReadStr(buffer,contador);
label3.Caption:=ansistring(buffer);
valor:=strtofloat(buffer);
Hemicharly Thiagosays:
www.cuin.com.br/2013/05/como-controlar-arduino-via-delphi/ 4/9
27/11/13 Como controlar Arduino via Delphi | Marcelo Cuin
15 de setembro de 2013 at 14:03
Responder
Olá, Camilo.
valor:= strtofloat(buffer); // Para armazenar os dados na variável “valor” “Creio que o erro encontra-se aqui nesta linha de código.”
Faça o seguinte ao invés de fazer com que a variável “valor” receba (buffer), faça com que ela receba o dados do label3, pois nele já
encontra-se
os dados que você precisa.
label3.Caption:= ansistring(buffer);
valor:= strtofloat(buffer);
label3.Caption:= ansistring(buffer);
valor:= strtofloat(label3);
Caso não de certo, coloque os dados de (buffer) em um edit e faça com que a variável “valor” receba os dados do edit.
Caso conseguiu solucionar o erro me avisa os resultados, espero que tenha ajudado qualquer dúvida entre em contato.
Abraços.
6. lucas Henriquesays:
17 de setembro de 2013 at 11:50
Responder
Primeiramente Muito obrigado Marcelo pela grande ajuda em relação a edição de aplicativos em delphi, Prezado estou tendo a mesma
dificuldade do Tomé em relação ao erro:
Unit1 in ‘Unit1.pas’ {F_COMUNICACAO};
desde já agradeço
att
Hemicharly Thiagosays:
20 de setembro de 2013 at 11:21
Responder
Olá Lucas, tudo que indica que o componente não esta instalado corretamente, tenta desinstalar e instalar novamente, não esqueça de
setar o diretório aonde esta a pasta do componente.
7. Elinelson Colaressays:
18 de setembro de 2013 at 14:40
Responder
Estou gostando muito destas informações, afinal pretendo utilizar RFID com o Arduino para leitura de tags. Meu caro amigo, dentro das
possibilidades, gostaria da sua ajuda para leitura dos códigos com tags ou etiquetas utilizando o Arduino e RFID, é possível?
Hemicharly Thiagosays:
20 de setembro de 2013 at 11:14
Responder
Olá Elinelson, no momento não poderei te ajudar com nenhuma informação, pois nunca utilizei RFID, mas posso estar pesquisando se eu
encontrar alguma informação, posso estar lhe enviando. Abraços!!!
www.cuin.com.br/2013/05/como-controlar-arduino-via-delphi/ 5/9
27/11/13 Como controlar Arduino via Delphi | Marcelo Cuin
Estou tentando fazer o arduino conversar com meu software, porem alguns dos comando passados no tutorial não funcionam no componente do
delphi XE4.
Por exemplo o comando “comport1.readsrt” não existe, tem como me dar uma mão pra usar o componente do delphi xe4??
Hemicharly Thiagosays:
20 de setembro de 2013 at 11:11
Responder
Olá Klederson, o aplicativo que desenvolvi foi em delphi 7, nunca utilizei em outras versões do delphi, vou estar verificando o que
acontece, mas posso ir adiantando que muitos componentes utilizados em versões inferiores não rodam 100% em versões superiores do
delphi, no caso teria que estar pesquisando componentes compatível com a versão de seu delphi.
9. Eduardo Costasays:
23 de setembro de 2013 at 22:05
Responder
Ola! como faço para controlar a posiçao de um servo via Delphi ? Ja instalei o componente e testei a comunicação …
Hemicharly Thiagosays:
24 de setembro de 2013 at 11:03
Responder
Bom, se você já instalou os componentes tudo certo testou a comunicação, a comunicação do servo com delphi é mesma coisa da
comunicação com compilador do arduino, se você consegue fazer ele funcionar, tipo no compilador você programa se 1 para esquerda 2
para direita, você envia estes comando para o delphi.
10. Stephaniesays:
26 de setembro de 2013 at 1:44
Responder
Boa Noite, gostei muito do post, fiz de primeira e deu tudo certo, porém depois que fechei o delhpi, a aba “CPortLib” não aparece mais, eu
desisntalei e reinstalei o delphi, instalei os componentes novamente, mas não há mais santo que faça a aba aparecer novamente, e eu testei com
o seu teste.exe para ver se funcionava, e não importa qual “comando eu digite”, sempre aparece que o comando foi digitado errado, sabe me
dizer o pq nao estou mais conseguindo adicionar a porta para comunicação??
Obrigada.
Hemicharly Thiagosays:
26 de setembro de 2013 at 10:18
Responder
Bom dia Stephanie, respondendo sua pergunta, sobre os comandos digitados não estarem sendo reconhecido, você deve compilar o
código para o arduino, pois foi programado para ser reconhecido no delphi os comando “A” e “B” caso é digitado outro comando,
aparecerá que não foi digitado comando correto. Respondendo a parte que a aba CPortLib não aparece mais, você indicou o diretório
certinho? Quando desinstalar o componente para instalar novamente não esqueça de apagar os arquivos que contem nomes CPortLib
que estão no diretório C:\Program Files\Borland\Delphi7\Projects\Bpl.
Espero ter ajudado, qualquer dúvida e sucesso obtido entre em contato em me diga os resultados obtidos.
Abraços!
11. Stephaniesays:
26 de setembro de 2013 at 13:56
Responder
Olá Thiago,
Percebi o erro q estava fazendo, tava com sono já e a cabeça começa a não pensar direito, ao invés de estar instalando o DsgnCPort7, estava
instalando o CPortLib7, por isso a cport nao tava aparecendo, agora apareceu novamente, obrigada
Stephaniesays:
26 de setembro de 2013 at 14:00
Responder
Só uma pergunta, há algum modo do programa identificar automaticamente a porta em que o arduino foi conectado??
Hemicharly Thiagosays:
27 de setembro de 2013 at 11:06
Responder
Olá Stephanie, tem como sim identificar a porta automaticamente, basta colocar o seguinte comando “Edit1.Text :=
www.cuin.com.br/2013/05/como-controlar-arduino-via-delphi/ 6/9
27/11/13 Como controlar Arduino via Delphi | Marcelo Cuin
ComPort1.Port; ” junto ao botão conectar, então ele te retornará a porta que o arduino está conectado. E para conectar o arduino
automaticamente, basta colocar o comando que está no botão conectar na inicialização do programa, pois quando você configura
pela primeira vez o programa na opção configuração e logo conecta o arduino ele fica pré – configurado, então sempre que iniciar
o programa se o arduino estiver conectado na entrada USB ele será iniciado automaticamente, caso ele não esteja conectado você
pode colocar uma mensagem dizendo que o arduino não esta conectado na USB.
Ola
Tas dando uma grande força ao pessoal que esta precisando estes tutoriais
Fiz o teu passo a passo e me deu um erro sobre os parametros usar com a variavel
Buffer : ansistring;
Erro: Types of actual and formal var parametres must be identical.
Entendi que o erro diz que não está identico ao parametro utilizado.
Espero.
Grande Abraço
Hemicharly Thiagosays:
21 de novembro de 2013 at 19:01
Responder
O seu endereço de email não será publicado Campos obrigatórios são marcados *
Nome *
Email *
Site
Comentário
Você pode usar estas tags e atributos de HTML: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote
cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>
Publicar comentário
Tópicos recentes
DevTronic
www.cuin.com.br/2013/05/como-controlar-arduino-via-delphi/ 7/9
27/11/13 Como controlar Arduino via Delphi | Marcelo Cuin
ArduinoSP
Publicidade
Arquivos
novembro 2013
outubro 2013
setembro 2013
agosto 2013
junho 2013
maio 2013
fevereiro 2013
janeiro 2013
dezembro 2012
outubro 2012
agosto 2012
julho 2012
Categorias
Android
Arduino
ArduinoSP
Controle Remoto
Delphi
Dicas
Facebook
Grupo
Iptables
www.cuin.com.br/2013/05/como-controlar-arduino-via-delphi/ 8/9
27/11/13 Como controlar Arduino via Delphi | Marcelo Cuin
Linguagem C
Motor
Novidade
Optoacopladores
PCB
PCI
Ponte H
Python
Raspberry PI
Relê
RF
Sem categoria
Sensores
Serial
Temperatura
Tutorial
Tags
4n25 AC Alone Arduino atmega circuito Circuito Impresso controle remoto Delphi Economia Energia estado Hardware impresso infravermelho interruptor Java
laminadora led Leonardo Linux LM35 lâmpada Massimo Banzi moc3021 monitoramento Open pcb pci placa Projeto relay relê Sensor servo solid sólido temperatura
Tensão transferência triac Tutorial térmica Voltage Voltagem
www.cuin.com.br/2013/05/como-controlar-arduino-via-delphi/ 9/9