Já faz alguns dias que venho estudando um pouco de eletrônica para o desenvolvimento do meu TCC. Estive pesquisando um pouco sobre microcontroladores e recentemente andei desenvolvendo umas aplicações com o Arduino Duemilanove.
Andei fazendo uns testes com servo motor, e resolvi fazer este tutorial para compartilhar.
Abaixo segue um video que fiz da aplicação em funcionamento.
Para este tutorial é necessário que você saiba um mínimo de programação e já tenha feito alguma coisa com o arduino. Se quiser saber mais acesse o site: www.arduino.cc.
Este projeto nada mais é do que uma interface desenvolvida em C# que permite controlar um servo motor conectado ao arduino a partir das setas direita e esquerda do teclado. Ao final estão os links para download dos projetos que podem ser abertos no Visual Studio (utilizei a versão 2008).
Desenvolvi uma versão mais simples utilizada no tutorial e uma outra um pouco mais completa, os dois projetos estão disponiveis para download no final.
Tentei desenvolver utilizando Java, porém, não consegui compilar no Windows 64 bits. Mas futuramente posto alguma coisa. 😉
Utilizei o servo S3003 da Futaba, mas acredito que não há problema em usar outro modelo.
Abaixo segue uma lista do que utilizei no desenvolvimento:
- Arduino Duemilanove
- IDE Arduino 0018
- Servo Motor Futaba S3003
- Visual Studio 2008 Express (Acho que não há problema em usar o 2010)
1º: Conectar o Servo Motor ao Arduino
O Servo Motor que estou utilizando possui um conector com tres fios, um vermelho (5V), um preto (GND) e um branco (responsável pela comunicação com o servo), cada um desses deve ser conectado de acordo com a figura abaixo:
2º: Código para o Arduino e Teste
O programa que será gravado no Arduino, recebe três caracteres através através da comunição serial, por exemplo: se receber “000” o motor ira para 0 graus, se receber “050” para 50 graus, “120” para 120 graus, e assim por diante. É dessa forma que os comandos são enviados para o servo
Note que quando inicio a comunicação Serial utilizando “Serial.begin(9600)”, estou definindo que a taxa de transmissão (baud rate) da porta será de 9600.
Abra a IDE Arduino 0018. Automaticamente ela já inicia com um novo projeto.
Em seguida, utilize o código abaixo e faça o upload para o seu Arduino ou se preferir, faça o download do arquivo no final da página e abra-o na IDE.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63 // Importa a biblioteca Servo.h do arduino
#include <Servo.h>
// Cria uma variavel do tipo Servo que será
// o nosso servo.
Servo servo1;
// Array de char que receberá o comando
// via serial
char buffer[4];
// Variavel que identifica quantos
// caracteres foram recebidos, pois só é
// possível receber um caracter por vez
int received;
void setup(){
// Define o baud rate (taxa de trasmissão) como 9600
Serial.begin(9600);
// Atribui o servo ao pino 8 do Arduino
servo1.attach(8);
// Atribui o valor 0 para a variavel received
received = 0;
// Na posição 0 do array, atribui o valor '\0'
// que identifica onde começa o array
buffer[received] = '\0';
}
void loop(){
// Verifica se existe alguma entrada de dados
// disponivel na entrada serial
if(Serial.available()){
// Salva os caracteres no array a cada iteração
buffer[received++] = Serial.read();
if(received >= (sizeof(buffer)-1)){
// Imprime na saída serial o valor
// Apenas para mostrar o valor
Serial.println(buffer);
// Converte o valor de "char" para "int"
int numero = atoi(buffer);
// Envia o comando para o Servo Motor
servo1.write(numero);
// Zera novamente a variavel
received = 0;
}
// Limpa o buffer da entrada serial
Serial.flush();
}
}
Após ter feito o upload do código para o Arduino, você pode testar utilizando o Serial Monitor da IDE.
Insira valores entre 0 e 180 utilizando 3 caracteres por exemplo:
Para 0, digite 000
Para 2, digite 002
para 87, digite 087
para 153, digite 153
e assim por diante.
As duas figuras abaixo demonstram como abrir e como utilizar o serial monitor:
3º: Implementação em C#
No código C# utilizamos a Classe “SerialPort” para conectar a porta serial (no meu caso a porta “COM3”) e enviamos o comando desejado através da função “Write()” ou “WriteLine()”, podendo ser uma string, um array de char ou de bytes. Simples não ?… hehe
O código abaixo mostra como abrir a conexão a porta serial “COM3” utilizando o Baud Rate de 9600 (como explicado anteriormente) e enviando a string “Hello World”:
1
2
3 SerialPort porta = new SerialPort("COM3",9600);
porta.Open();
porta.WriteLine("Hello World");
Para saber qual porta você está utilizando, na IDE Arduino 0018 vá no menu Tools->Serial Port, conforme a figura abaixo:
Abaixo segue o código utilizado na classe da Janela que conecta na porta e interage com o Servo Motor utilizando as setas do teclado.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137 /**
*
* Aplicativo desenvolvido para controlar
* servo motores com Arduino a partir de
* uma porta serial.
*
* Autor: Renato Peterman
* E-mail: [email protected]
*
* Data: 26/07/2010
*
*/
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
using System.IO.Ports;
namespace ArduinoSimpleServoControl
{
public partial class JanelaPrincipal : Form
{
// Atributo do tipo SerialPort necessário para abrir a conexão
private SerialPort porta;
// Atributo do tipo int que armazenara a posição do motor
private int posicao;
public JanelaPrincipal()
{
InitializeComponent();
// Atribui o valor zero a posição
posicao = 0;
/* Cria um novo objeto SerialPort
* Que conecta a porta "COM3"
* E utiliza um Baud Rate (Taxa de Transmissão de dados) de 9600
*/
porta = new SerialPort("COM3", 9600);
//Verifica se a porta não está aberta
if (!porta.IsOpen)
{
// Abre a porta
porta.Open();
/* Envia o valor "000", para que o
* motor volte para a possição 0
*/
porta.WriteLine("000");
}
}
/* Sobrescreve o metódo ProcessCmdKey
* responsável por processar as entradas
* do teclado
*/
protected override bool ProcessCmdKey(ref Message m, Keys keyData)
{
bool blnProcess = false;
/* Verifica se a tecla que está sendo pressiona
* é a seta Esquerda (Left)
*/
if (keyData == Keys.Left)
{
if (posicao >= 0 && posicao < 180)
{
// Incrementa 10
posicao += 10;
}
// Aqui serão enviados os dados para a porta.
if (posicao >= 0 && posicao >= 100)
{
porta.WriteLine(posicao.ToString());
}
else
{
porta.WriteLine("0" + posicao.ToString());
}
labelGraus.Text = posicao.ToString();
blnProcess = true;
}
/* Verifica se a tecla que está sendo pressiona
* é a seta Direita (Right)
*/
if (keyData == Keys.Right)
{
if (posicao > 0 && posicao <= 180)
{
// Diminui 10
posicao -= 10;
}
if (posicao >= 0 && posicao >= 100)
{
porta.WriteLine(posicao.ToString());
}
else if (posicao == 0)
{
porta.WriteLine("000");
}
else
{
porta.WriteLine("0" + posicao.ToString());
}
labelGraus.Text = posicao.ToString();
blnProcess = true;
}
/* Aqui verifica se "blnProcess" for verdadeiro
* retorna este método, se não chama o metódo pai (super)
*/
if (blnProcess == true)
{
return true;
}
else
{
return base.ProcessCmdKey(ref m,keyData);
}
}
}
}
Abaixo a aplicação resultante do código acima que mostra o grau de rotação do servo.
No mesmo projeto desenvolvi outra aplicação um pouco mais completa conforme a figura abaixo, os arquivos de ambas estão disponíveis para download no final da página.
4º: Fim
Acho que é isso ai, agora é só divertir e usar a criatividade. 😀
Abaixo segue o link para download do projeto completo, com o projeto para upload no Arduino e as duas aplicações desenvolvidas em C#.
Pra saber como controlar mais de um servo motor na sua aplicação clique aqui.
Oi tudo bem? Eu queria saber se é somente conectar o arduino e ir no programa?
Olá Aluisio,
A princípio sim.
É necessário configurar a porta serial corretamente.
Já faz um tempo que a aplicação foi compilada, caso não funcione, aconselho a tentar compilar novamente.
Olá amigo, muito interessante o projeto!
Gostaria de fazer um projeto para controlar uma persiana remotamente, (esquerda / direita ou pra cima / pra baixo) usando um servo-motor. Você poderia me ajudar sobre quais componentes eu devo usar e o código?
meu email: [email protected]
Muito obrigado
Olá Daniel, tudo bem?
De uma olhada nos links abaixo, acredito que possa lhe ser útil:
https://renatopeterman.com.br/blog/2011/07/26/controlando-dois-ou-mais-servo-motores-com-arduino/
https://renatopeterman.com.br/blog/2012/09/18/comunicacao-serial-rxtx-com-java-e-arduino-no-mac-os-x/
Renato Peterman
Parabéns Renato, muito bom!!!
Really enjoyed reading ur blog. bdgcecdgeeck
Renato, legal seu desenvolvimento, parabéns, gostei muito.
Estou desenvolvendo um sistema onde controlo 6 servo motores com Arduino e C, para um braço robótico. Gostaria de saber com você, se é possível e se for como eu posso fazer para que eu vá movimentando os servos e armazenando na memória os movimentos e depois eu clico em um botão repete, onde ele faz todos os movimentos que eu fiz com ele. Poderia me ajudar ?
Olá Alexandre! Tudo bem ?
O princípio é o mesmo para movimentar é o mesmo.
O tutorial abaixo ensina como controlar mais de um servo usando o mesmo conceito.
https://renatopeterman.com.br/blog/2011/07/26/controlando-dois-ou-mais-servo-motores-com-arduino/
Bons estudos!
Renato Peterman
boas amigo.
é o seguinte eu ando a tentar controlar um motor normal de 5 voltes pelo arduino atravez do teclado do computador, ou seja tenho de utilizar o vb.
mas até agora o que consigo fazer é carrego num botao o motor anda, carrego no outro o motor para, mas o que quero fazer é o que o seu programa faz, carregio na seta e ele anda.
onte tem o código em vb desse procedimento?
dá para mandar para o meu mail para estudar o código?
aguardo respostas, desde já obrigado pela atenção ;]
Olá Pedro! Tudo bem ?
Infelizmente não tenho o código em VB, desenvolvi apenas em C#.
Renato
Olá Renato!
Sou iniciante com Arduino e sei somente o básico de programação, há como eu utilizar esse principio que você utilizou porém com mais servos e fazendo eles se movimentarem automaticamente ?
Grato
Olá Rodrigo, tudo bem ?
De uma olhada neste outro tutorial:
https://renatopeterman.com.br/blog/2011/07/26/controlando-dois-ou-mais-servo-motores-com-arduino/
Bons estudos!
Renato Peterman
Boa Noite Renato, Muito Bom seu projeto.
Estou com um pequeno problema, quando controlo o servo pelo serial monitor do arduino ela gira certo mas quando estou pelo teclado ele gira errado vai e volta sem parar mesmo eu apertando so um lado. Alguem teve esse problema?
Peterman parabéns pelos seus projetos.
Estou com o mesmo problema. Acho que pode ser que alguma coisa está reiniciando o Arduino: diferencial de tensão, corrente etc sei não. E aí Peterman o que vc acha?
Olá David e Marcelo,
Um pouco difícil de saber assim. Mas se pelo serial monitor da ide do arduino ele funciona ok e no código C# que efetua a rotação apresenta o problema, pode ser que o problema esteja no código C# ou na classe que faz a comunicação serial.
Boa sorte! 😉
Renato
Boa noite!
Renato, muito legal seu site, parabéns!
Cara, estou iniciando com o arduino, portanto comprei uma placa arduino mega 2560 e queria saber se irei conseguir reproduzir seu exemplo na mesma!
Tenho o .net 2010 e quero fazer uma aplicação onde será necessário passar alguns parâmetros pela interface.
Queria implementar para web, portanto vou iniciar com o windows form e evoluindo a aplicação ao longo do tempo até conseguir fazer uma aplicação que será possível ler e enviar dados pelo celular, pc, tablet e outros.
Se for possível, me envie algumas dicas ou links que eu posso implementar usando shield para enviar dados pela internet.
Atenciosamente,
Kennedy Sampaio
Olá Kennedy,
Eu particularmente não testei com o mega, mas acredito que consiga sim.
Não conheço muito de .net, logo, não posso te passar muita coisa, mas essa comunicação com móvel e pc é tranquilo, só conhecer bem a plataforma.
Qualquer coisa estou a disposição.
Renato
Boa noite, estou implementando seu projeto num sistema que estou fazendo.. gostaria de conversar mais com voce a respeito disso.. pretendo usar esse seu sistema em C# para utiliza-lo para controlar diversos servo motores (implementar tipo uma caixa para selecionar o servo desejado) me passa seu contato para que possamos conversar a respeito e quem sabe chegar a alguma soluçao.
Obrigado
Olá Marcio, tudo bem ?
Legal o seu projeto!
Se você seguir esse tutorial certinho terá quase tudo o que é necessário para o seu projeto mas terá que fazer algumas modificações e adapta-lo a suas necessidades.
Para saber como controlar mais de um servo de uma olhada no tutorial:
https://renatopeterman.com.br/blog/2011/07/26/controlando-dois-ou-mais-servo-motores-com-arduino/
Boa sorte!
Então, eu ja tinha visto esse tutorial.. o que eu estou querendo agora é implementar esse seu software em vb C# para que ele possa movimentar todos os servos que eu preciso.
Tem algum email que eu posso entrar em contato com voce para que possamos discutir a respeito disso $$?
Gostaria de saber se tem como me ajudar na programação para dois servomotor.
Obrigado
Olá Ramon,
Dá uma olhada neste post:
https://renatopeterman.com.br/blog/2011/07/26/controlando-dois-ou-mais-servo-motores-com-arduino/
copie o code no arduino 0018…mas da error
Olá Moises,
Você precisa verificar qual erro está dando e debugar o código. Muitas pessoas já utilizaram e não tiveram problemas, provavelmente deve ser algum detalhe no seu código.
Ola Renato, Boa tarde!!
Gostei muito do que vi no seu site, e como muitos outros mencionaram acima também estou projetando um sistema usando servo motor e arduino Uno.
O que eu gostaria de confirmar é:
– Decidi usar o servo motor, por enquanto seram utilizados 4 no meu projeto ( um braço mecânico ), mas o que eu quero mesmo é alem de programar os movimentos deles com entradas de teclado, tentar deixa-los trabalhando sozinhos ( automatiza-los para gerar um movimento especifico)
Você sabe o que eu preciso estudar para alcançar esse objetivo?
Sera q preciso simplesmente criar um Loop para determinadas posições do servo?
Desde ja muito Obrigado meu amigo e parabens pelo site!
Olá Douglas, tudo bem ?
Legal!, acredito que não terá problemas no seu projeto. Procure se informar se o arduino terá corrente suficiente para alimentar os 4 motores, mas acredito que sim.
Acredito que neste tutorial você terá quase tudo o que é necessário, se você já programa, não terá dificuldades.
Pra automatizar eles, não sei exatamente o que está querendo fazer, mas se for algo simples, é só fazer isso mesmo que você disse, definir os movimento e deixar pré programado.
Espero que tenha dado tudo certo, boa sorte no projeto!
Bom dia!
Renato, preciso fazer o controle de um servomotor através da leitura de um encoder utilizando o arduino, se possível gostaria que me enviasse um Email para tratarmos desse projeto e para que eu possa lhe explicar melhor.
Obrigado.
Já enviei o e-mail.
Olá, como faço para que o motor gire apenas de 73º para 90º? Obrigado, Beijos
Olá Priscila,
Após implementar o projeto de acordo com o código e informar os valores para movimentar o motor.
Mas se você deseja que o motor gire apenas entre este intervalo de 73º a 90º, acredito que será necessário definir uma condição para isso.
Olá amigo se eu pagasse teria como vc desenvolver um programa em visual studio para 8 servos ? e tem como ligar 8 servos no arduino uno ?
Olá Marfos,
Acho que da pra ligar os 8 servos sim, mas é bem provável que você precise de uma fonte de alimentação externa, tem que pesquisar certinho.
Vou te enviar um e-mail e nos falamos melhor.
Abraço!
Olá Renato. Preciso saber como faço para criar um código pro arduino que interprete um código binario de até 8 bits e acione as saida do arduino de acordo com o codigo recebido.
Olá,
Infelizmente nunca fiz isso com o arduino, talvez você encontre algo no forum oficial: http://arduino.cc/forum/
Boa tarde!
temos um braço mecanico com seis servos, estamos utilizando o arduino master. estamos com problemas em definir a posição e mandar informação para a placa, se colocar o passo dois que vc descreveu acima consigo adiciona mais servos?
Olá Kleverson,
Dê uma olhada neste post: https://renatopeterman.com.br/blog/2011/07/26/controlando-dois-ou-mais-servo-motores-com-arduino/
Abraço!
oi …. muito bom seu trabalho .. meu projeto é com arduino e um leitor RFID ….. tipo ja consegui recolher os dados com arduino na porta COM 1 … queria saber oq eu faço para jogar esses dados no visual studio (2008) , para comparar com o banco de dados por fim lançar em uma interface … porfavor … se puder me ajuda..
Olá Jeferson,
Você consegue fazer isso lendo a saida serial que o Arduino gera.
É só usar essa mesma classe do C# que eu utilizo no tutorial para escrever porta serial, só que ao invés disso, você terá que ler.
Só dar uma pesquisada na web que você acha fácil como fazer isso.
Se preferir fazer em Java, você pode tentar este tutorial – https://renatopeterman.com.br/blog/2012/09/18/comunicacao-serial-rxtx-com-java-e-arduino-no-mac-os-x/.
Ola Gostaria de saber se você tem ou teve alguma experiencia utilizando arduino e sdk kinect para movimentar um servo motor atravez dos movimentos das mãos?
Olá Alisson,
Ainda não tive oportunidade de mexer com o sdk do kinect.
Já vi alguns hacks e exemplos, mas nunca testei.
Mas deve ser tranquilo, aliás, você pode usar esse código do tutorial pra fazer a movimentação dos servos com Arduino, só tem que implementar as funções do Kinect.
Valeu, obrigado pela atenção!!!
Excelente! Ya lo probare y espero me funcione de maravilla, espero no cambiar mucho en la versión visual studio 2010..
Excelente! Isso prova o que eu espero um grande trabalho, espero não mudar muito na versão visual studio 2010 ..
Caro Renato, estou fazendo testes para fazer meu projeto, tentei fazer esse seu teste com o C#, porem na hora de compilar da um erro:
expected unqualifiel-id before ‘public’
e marca a linha 26 do seu codigo acima, nao entendi bem que erro é esse, e nao tô conseguindo compiplar, será q vc pode me ajudar?
Abraço!
Olá Lucas, tudo bem ?
Você já trabalha com C# ?… faz um tempinho que não mexo com C#, se não estou enganado, parece ser um erro simples, deve ser algo relacionado com sua estrutura de arquivos do projeto.
Tente, ao invés de copiar toda a classe descrita acima, copie apenas a parte útil do código seguindo a implementação, acredito que vai dar certo.
Espero ter ajudado.
Abraço,
Renato Peterman
Ola Renato!
sera que tem jeito de conectar um receptor usb no arduino
e utilizar um teclado ou um joystyck wiriles para comadar o arduino?
Olá Danilo,
Não entendi muito bem a sua pergunta, mas vou tentar responder.
Se você se refere aqueles mouses e teclados sem fio que geralmente acompanham um dispositivo usb pra comunicação, confesso que nunca vi algo relacionado e não sei como funciona a comunicação.
Talvez, seja possível realizar essa comunicação utilizando um desses módulos bluetooth pra arduino e um teclado bluetooth.
Boa sorte!
Muito legal mesmo seu site, parabéns!!! Eu gostaria de receber tb o seu programa com 2 servos, pois estou a construir uma mini ponte levadiça para poder controlar ela por dois servo motor e um arduino, ja comprei o arduino bt que é bluetooth, porem quero tb fazer funcionar pelo adaptador APC 220 de 1 km sendo um no arduino e outro no computador por um adaptador usb. O que puder me ajudar agradeço muito.
Pingback: Controlando dois (ou mais) servo motores com Arduino. | Blog do Renato Peterman
Boa tarde,
Reparei ai em comentarias que conseguiu com o mesmo sistema controlar 2 servos.
Podia-me explicar se faz favor.
E-mail:[email protected]
Obrigado
Olá Renato,
Eu baixe os seus arquivos, eu até consegui conectar essa aplicação em C#, porém da um erro na hora de fazer o upload para o arduino, esse erro mostra algo de errado com o java. Você sabe me dizer porque aconteceu isso?
Olá Wanderson,
Eu desenvolvi usando a IDE 0018, talvez pode ser algum erro quanto a compatibilidade, ou pode ser algum erro com a IDE que você está usando mesmo, tente reinstalar ou atualizar o Java.
Abraço,
Renato
Consegui fazer o upload para o arduino, realmente era a versão da IDE, porém tive que utilizar a opção Duemilanove mesmo sendo o arduino UNO. Mas ainda não consegui mover meu servo através do teclado. Quando eu seleciono a porta da IDE COM3 e a porta do aplicativo COM3, ele avisa que a porta já está sendo usada. O que eu faço?
Obg pela atenção!
Olá Wanderson,
Que bom que resolveu.
Isso deve estar ocorrendo porque ela deve estar em uso mesmo, procure abrir o programa sem estar com o Serial Monitor do IDE aberto. Se não pode ocorrer este tipo de conflito, e verifique se é esta porta mesmo que você deve utilizar.
Abraço,
Renato
meu caro muito massa este site!
gostaria de saber como faço para que o servo motor obedeça os movimentos do mouse, ex: mouse direita = motor direita, mouse esquerda = motor para esquerda. obrigado!
Olá Marcelo, tudo bem ?…
Ainda não tive tempo de implementar esse, mas da uma olhada nesse video -> http://www.youtube.com/watch?v=CvduIpJ5URI , tenta entrar em contato com esse cara, ele fez em java o projeto e ficou bem legal.
Abraço,
Renato
Hi Renato. First of all, congratulations for your project, it’s really interesting. I have readen in comments that you have developed another project to control two servos, is this right? If it is possible, could you send me, please? Thanks a lot.
Hello Jose,
Yes, that´s right, I developed another project to control two servos. Actually, is the same project, but, with a small modification.
I will send the project to you, and, ASAP I will post the project in.
Thank´s.
Hi Renato, finally I have modified/developed this project to control two servos, and it works very well!!! Now I’m trying to control these two servos trough the net (ie explorer, firefox…), but I don’t Know how to access to the executable (.exe) using explorer. Have you any idea about it? Could you give a hand, please?
Thanks in advance.
Hi Jose,
I’m glad you’ve managed to develop the application.
Try to do in the some language like php, java or Asp, the same what you do in the C# (.exe), try to comunicate with the serial port in one of these languages.
It may be possible.
Have fun and good lucky !
Thank’s!
Olá Renato, sou professor de robótica a 3 anos e estou iniciando os meus estudos com arduino, porém eu tenho algumas dúvidas e gostaria que você me ajudasse. Primeiro eu gostaria que você me enviasse essas imagens que você anexou nessa página para meu email, não está abrindo no seu blog. Porque você utiliza o visual basic 2008 se existe a própria IDE do arduino?
Um abraço!
Olá Wanderson, tudo bem ?…
Eu utilizei a IDE do arduino sim, para desenvolver o programa que vai no Arduino e é responsável por controlar os servos, utilizei o Visual Studio para desenvolver a aplicação em C# que monitora as ações do teclado e se comunica com o Arduino via serial para con.
Tá tudo ai no tutorial. 😉
Qualquer dúvida estou a disposição.
Abraço!
cara teu programa é muito maneiro!!!!
vc naum saberia como faser um outro programa pra controlar 12 servos e salvar as posiçoes deles e q tenha um outro programinha conpativel q seja o controle…
muito obrigado e parabens pelo programa!!!
Olá Guilherme,
Obrigado. 😉
Acredito que com o Arduino Mega seja possivel sim, para 12 servos.
Utilizando esse código, é possivel adaptar ele para isso, dai vai de você.
Abraço,
Renato
Ola boa tarde meu nome é Lucas estou no ultimo ano de engenharia mecatronica e estou fazendo um projeto de controle do sistema de comando das aletas de uma missel, vou usar um arduino mega e servomotores para controle das aletas, porem ñ tenho muita experiencia na programação do arduino queria se fosse possivel da sua ajuda para que eu possa fazer a programação no arduino vou usar 4 servomotores um pra cada aleta! Vi seu blog e as postagens q vc deixou e achei q vc poderia me ajudar se possivel aguardo contato
Um otimo fim de semana
Good day Renato
Please send me the source code & scetch for arduino to control 2 servos.
I did not mannage to edit the c# or scetch to work.
Please help me with this.
You mentioned to use pin 8 & 9 in the scetch, so i have wired my servos to pin 8 & 9 in advance.
Thank you & regards
Riaan Deyzel
South Africa
Good day Renato
I did not mannage to get the second servo working for my project.
Can you please send me the source code & scetch for your two servo project.
I will appreciate it very much.
Thank you & regards.
Olá gosto muito dos teus projectos estou a pensar em adquirir o arduino mas nao sei por onde começar e onde posso comprar sou de Portugal
Olá Tiago, aqui no Brasil eu comprei no site Mercado Livre, é um site de leilões e compras muito parecido com o eBay, ai em Portugal não sei onde pode comprar, talvez, você encontre no eBay.co.uk, ai fica mais perto de você ai. Há vários sites sobre Arduino, e também há o site oficial arduino.cc que tem tudo o que você precisa pra iniciar os seus estudos. grande abraço !
Really nice post,thank you, best website ever
Beneficial info and excellent design you got here! I want to thank you for sharing your ideas and putting the time into the stuff you publish! Great work!
the valuable info you presented do help the investigation for my company, thanks.
– Lucas
godd aplication on vb but you have it in visual basic 2008
if have could you please send to my e-mail
Hi Miguel,
Sorry, I don’t have the project in VB.
But the logic is the same if you use .Net.
Regards and good luck,
Renato
Hi Renato
How are you doing?
Just checking in to see if you have the source code & Arduino scetch ready to control 2 servos. I am taking my robot out to a show on Sunday, and at the moment it can only look left & right, not up and down yet. Can you perhaps zip the files(Source Code & Aruino sketc) & e-mail it to me if you do not have time to update your website.
My e-mail address is [email protected]
Please let me know.
Thank you & regards
Riaan
Hi Riaan,
I did a project using two servos, the code is simple to understand, I will send it to you, ok ?…
The sketch is pratically the same, I did use the port 9 for first servo e port 8 to second servo.
Regards,
Renato
Ola caro renato…
Tem aqui um bom trabalho…
Gostaria que me pudesse ajudar a fazer o controlo de um servo-motor através do Arduino…
reparei no seu código, contudo tem ai coisas que ainda nao tive oportunidade de dar na escola ainda…
caso tivesse disponibiblidade para me dar uma ajudinha agradecia…
Cumprimentos, falcao…
caso queira responder pode mandar um email: [email protected]
Cumprimentos,
Boa noite,
vc consiguiu desenvolver algo em java?? To tentando fazer meu tcc so que to utilizando java e a bliblioteca rxtx pra fazer a comunicação.
Abraços
Olá Michel, tudo bem ?…
Ainda não tive tempo de mexer cara, tentei com algumas bibliotecas mas deu erro por causa do Windows 64 bits.
Tenta usar essa biblioteca para se comunicar via serial: http://java.giovynet.com/Giovynet/
Dá uma pesquisada no site parece que é bem simples de usar.
Abraço !
Valeu a dica ai Renato!!
o codigo parece bem simples…oq eu to criando tem uma classe para cada coisa…procurar…abrir…escrever…fechar!!
So que ainda vou ter que colocar isso em um ambiente web de acesso remoto para a movimentação!!
Abraços
Legal cara, espero que seja útil.
Boa sorte ai no teu trabalho.
Abraço !
Putz cara.. olhando as especificações da placa. Eu não sou bom no Inglês, mas então ele também se conecta via USB??
Meu amigo estou fazendo algo parecido para meu TCC também. Você saberia me dizer se está placa aceita 2 servomotores?
Olá Ilan,
Fiz um projeto que com dois sevomotores, acredito que não é a melhor forma de fazer, mas funcionou legal.
Posso mandar o projeto pra você se quiser, no projeto estou utilizando dois servos e um lcd, caso não saiba como funciona o lcd simplesmente ignore.
Abraço.
Você pode me iluminar então para eu trabalhar com 2 servomotores. Eu gostaria de receber o projeto sim… Obrigado e abraços
Bom dia
Depois de escolher a porta e o baud ao conectar dá erro:
“Erro: Selecione a Porta e o baud rate para se conectar”
Será por utilizar o Windows vista?
responda p meu email pf
Obrigado
Good day
I love this project, and wondered if it is possible for you to add support for another servo.
The one you currently got can Pan, but i need a version to tilt as well (up & down)
Can you please configure it so that the pan section (left & right work of pin 9) and the tilt section (up & down) Work on pin 10
Hi Riann,
In really, I´ve added support for another servo, but, I haven´t had a free time to post it. 😀
I will post here as soon as possible. 😉
Good day Renato
Thank you, I will really appreciate it.
I am building an robotic tank, and need this app to control the turret(CO2 Paintball gun) of the tank.
I have been looking for this app, scetch & code now for more than 5 months, until I found it here.
Have a great day.
Regards,
Riaan Deyzel
Pingback: Tweets that mention Renato Peterman » Blog Archive » Controlando Servo Motor utilizando o teclado com Arduino e C# - "Simplicidade é complexidade resolvida." – Constantin Brancusi -- Topsy.com