| Autor |
Mensagem |
 ciroluiz
Level 2
2516574 xp
Registrado em: Oct 15, 2008
Local: Belo Horizonte / MG
Mensagens: 52
|
Enviado: Sab Mai 30, 2009 8:20 am Assunto: Circuito controlador de servo motor através de PIC
| |
|
Olá,
Percebi que fazer um circuito utilizando o CI555 para gerar pwm e controlar um servo motor para três posições distintas não foi bem sucedido. Então resolvi fazer com PIC.
Achei esse circuito de um gravador de PIC:
http://py2rlm.sites.uol.com.br/Gravpic.HTM
E esse circuito controlador do servo motor utilizando o PIC12F675:
http://www.electronics-lab.com.....index.html
Agora eu queria saber se esse gravador é bom e o circuito com o PIC12F675 irá funcionar corretamente da maneira que eu espero. Caso contrário, me envie circuitos de ambos que funcionem corretamente.
A explicação do meu projeto é uma imagem que está anexada abaixo.
Obrigado.
ANEXOS:
|
|
|
|
 |
|
 |
 jeff_pimenta
Level 11
11673881 xp
Registrado em: Nov 04, 2008
Local: Ubajara-Sobral / CE
Mensagens: 272
|
Enviado: Sab Mai 30, 2009 10:01 am Assunto: Circuito controlador de servo motor através de PIC
| |
|
O Basic tem uma função para ser usada com o 8051 que consegue controlar até 14 servos com um simples comando:
servo1 = x
Onde x é multiplicado pela resolução, dependendo da quantidade de servos pode-se ter até 10us de precisão!!
Estou com uns servos aqui para testar pega meu msn ai que quando eu fizer o programa para usar em servos eu te passo...
|
|
|
|
 |
 PauloChip
Level 26
26413374 xp
Registrado em: Nov 23, 2006
Local: Embu / SP
Equipe: Proteus
Mensagens: 692
|
Enviado: Sab Mai 30, 2009 11:34 am Assunto: Circuito controlador de servo motor através de PIC
| |
|
Usando PIC vc está indo p a maneira mais complicada...
Não conheço este gravador, mas o circuito tem tudo pra funcionar.
Ele possui 2 teclas: sweep e center.
Vc vai ter q alterar o programa p q estas teclas façam o q vc quer.
Pra isso vc precisa entender assembler. O programa é bem simples e está suficientemente comentado.
Apesar da quantidade de informação na internet é muito difícil achar exatamente o q agente quer... por isso q a internet não substitui o aprendizado, mas ajuda.
_________________
PauloChip
Equipe Proteus
"Nenhuma certeza absoluta é mais inteligente do que uma simples dúvida (PC)."
|
|
|
|
|
 |
 ciroluiz
Level 2
2516574 xp
Registrado em: Oct 15, 2008
Local: Belo Horizonte / MG
Mensagens: 52
|
Enviado: Sab Mai 30, 2009 8:18 pm Assunto: Circuito controlador de servo motor através de PIC
| |
|
Uma coisa que não entendi foi esses dois botões sweep e centre.
Veja se está correto meu pensamento.
Quando eu apertar sweep o servo que estará na posição central (inicio) irá para a esquerda e quando eu apertar centre o servo vai para a direita?
|
|
|
|
 |
 PauloChip
Level 26
26413374 xp
Registrado em: Nov 23, 2006
Local: Embu / SP
Equipe: Proteus
Mensagens: 692
|
|
|
|
 |
|
 |
 ciroluiz
Level 2
2516574 xp
Registrado em: Oct 15, 2008
Local: Belo Horizonte / MG
Mensagens: 52
|
Enviado: Ter Jun 02, 2009 1:38 pm Assunto: Circuito controlador de servo motor através de PIC
| |
|
ok obrigado...eu estava procurando por circuitos controladores de servo através de PIC e acabei me deparando com este: http://www.mecatronicaatual.co.....leitura/42
para ler o artigo inteiro cadastre-se no site.
percebi que este circuito do link acima atende totalmente as minhas nescessidades..então eu montei ele e não funcionou...alguem podria me ajudar?
|
|
|
|
 |
 marcus_rm
Level 0
495712 xp
Registrado em: Feb 09, 2008
Local: Ribeirão Preto / SP
Mensagens: 10
|
Enviado: Sex Jun 26, 2009 12:52 pm Assunto: Circuito controlador de servo motor através de PIC
| |
|
é....estou na mesma situação que vc...a diferença é q eu já montei 3 diferentes e nada...num sei se é o circuito ou aquela peça grande e pesada que faz errado...hehe
Esse fds vou tentar mais 2 circuitos diferentes...
|
|
|
|
 |
 HP
Level 6
6198724 xp
Registrado em: Aug 09, 2006
Local: Curitiba / PR
Equipe: Guaxinim Furioso
Mensagens: 137
|
|
|
|
 |
 laerciovp
Level 3
3265887 xp
Registrado em: Jun 26, 2006
Local: Cascavel / PR
Equipe: LVP Labs
Mensagens: 52
|
Enviado: Ter Out 06, 2009 4:24 pm Assunto: Circuito controlador de servo motor através de PIC
| |
|
Eu tenho um programa de PIC criado e ajustado para um servo Futaba S3003. Manda uma private message ou e-mail que eu lhe envio.
Laércio
LVP Labs
|
|
|
|
 |
 Bladeus
Level 2
2284017 xp
Registrado em: Nov 12, 2010
Local: Rio de Janeiro / RJ
Equipe: Robô Blade!!!
Mensagens: 49
|
Enviado: Dom Set 18, 2011 7:04 pm Assunto: Circuito controlador de servo motor através de PIC
| |
|
Boa noite a todos!
Gostaria de pedir a ajuda de vocês mais uma vez.
Estou com um problema para compilar um programa de controle de servos no compilador ccs.
Se eu selecionar o pic 16f877 ele compila, mas se eu selecionar o 16f877a ele da o seguinte erro:" *** Error 128 "C:\PROGRA~1\PICC\devices\16F877a.h" Line 163(1,23): A #DEVICE required before this line"
E descobri que isso acontece em todos os programas que estão escritos para o 16f877a, até programas que eu ja tinha escrito a um tempo e funcionavam, hoje nao funcionam mais.
Esse é o programa:
#include <16F877a.h>
#FUSES NOWDT //No Watch Dog Timer
#FUSES HS //High speed Osc (> 4mhz)
#FUSES NOPUT //No Power Up Timer
#FUSES NOPROTECT //Code not protected from reading
#FUSES NODEBUG //No Debug mode for ICD
#FUSES NOBROWNOUT //No brownout reset
#FUSES NOLVP //No low voltage prgming, B3(PIC16) or B5(PIC18) used for I/O
#FUSES NOCPD //No EE protection
#FUSES WRT_50% //Lower half of Program Memory is Write Protected
#use delay(clock=20000000)
unsigned int servo;
unsigned int16 tempo;
#int_RTCC
void RTCC_isr(void)
{
set_timer0(5 + get_timer0());
if(++tempo >= 10 + servo) output_low(pin_b2); // 50uS
if(tempo == 400)
{
tempo = 0;
output_high(pin_b2);
}
}
void main()
{
setup_adc_ports(NO_ANALOGS);
setup_adc(ADC_OFF);
setup_psp(PSP_DISABLED);
setup_spi(SPI_SS_DISABLED);
setup_timer_0(RTCC_INTERNAL|RTCC_DIV_1);
setup_timer_1(T1_DISABLED);
setup_timer_2(T2_DISABLED,0,1);
setup_comparator(NC_NC_NC_NC);
setup_vref(FALSE);
enable_interrupts(INT_RTCC);
enable_interrupts(GLOBAL);
tempo = 0;
servo = 0;
while(true)
{
if(++servo == 32) servo = 0;
servo=20;
delay_ms(1000);
}
}
Agradeço desde já pela ajuda.
Muito obrigado e uma otima noite a todos!!!!!
|
|
|
|
 |
|
 |
 laerciovp
Level 3
3265887 xp
Registrado em: Jun 26, 2006
Local: Cascavel / PR
Equipe: LVP Labs
Mensagens: 52
|
Enviado: Dom Set 18, 2011 7:21 pm Assunto: Circuito controlador de servo motor através de PIC
| |
|
Bladeus
Eu compilei este mesmo programa e funcionou OK. Como você disse que os programas que funcionavam, hoje não funcionam mais, pode ser o seu compilador. Tenta reinstalar o compilador e testa novamente.
Laércio
LVP Labs
|
|
|
|
 |
 Bladeus
Level 2
2284017 xp
Registrado em: Nov 12, 2010
Local: Rio de Janeiro / RJ
Equipe: Robô Blade!!!
Mensagens: 49
|
Enviado: Dom Set 18, 2011 7:37 pm Assunto: Circuito controlador de servo motor através de PIC
| |
|
Opa!
Certo, vou fazer isso e ja posto os resultados.
Muito obrigado!
|
|
|
|
 |
 Bladeus
Level 2
2284017 xp
Registrado em: Nov 12, 2010
Local: Rio de Janeiro / RJ
Equipe: Robô Blade!!!
Mensagens: 49
|
Enviado: Dom Set 18, 2011 8:38 pm Assunto: Circuito controlador de servo motor através de PIC
| |
|
bom... no fim era isso mesmo
reinstalei e funcionou.obrigado e desculpa por tomar o tempo!
|
|
|
|
 |
 cybercarvalho
Level 14
14397398 xp
Registrado em: Nov 07, 2010
Local: São Paulo / SP
Mensagens: 307
|
Enviado: Seg Set 19, 2011 11:36 am Assunto: Circuito controlador de servo motor através de PIC
| |
|
Pessoal, não sei se ajuda mas eu montei este circuito e funcionou perfeitamente!!
ANEXOS:
|
|
|
|
 |
|