Página 1 de 1

motor de passo testes

MensagemEnviado: 22 Mai 2011 04:21
por antonio
Pessoal tudo bem, tenho andando aqui com testes num motor de passo de impressora do qual não tenho qualquer resultado positivo !

Eu uso um 16F628 e o ULN2003 o e programa a baixo o que o motor faz eh dar um pequeno passo para a direita,de seguida outro passo para a esquerda , ou seja não dah uma volta completa ,e assim sucessivamente, notei que o ULN2003 esquenta um pouco eu verifico com o dedo em cima e logo desligo ele!
Eu penso que o circuito esta bem e o codigo penso que tambem ,mas dehem uma olhada para ver algum possivel erro!
desde jah agradço

O motor em questão eh um motor de passo unipolar

Código: Selecionar todos
#include <16f628.H>
#fuses XT, NOMCLR, NOPROTECT, NOWDT, NOLVP
#use delay(clock=4000000)

#use fast_io(b)

#define tempo 40

int passo[]={0b00001000,
                  0b00000100,
                  0b00000010,
                  0b00000001,};
             
    int posicao;
   
void pulsamotor( int direcao )
{
if(direcao!=0) posicao++;
output_b(passo[ posicao & 0x03]);
delay_ms(tempo);
}
void main(void){

int i;
set_tris_b(0x00);

while(true){
for(i=0;i<50;i++)
{
pulsamotor(i);
}

}
}

Re: motor de passo testes

MensagemEnviado: 22 Mai 2011 08:26
por andre_luis
Antonio


Se o motor estiver sem carga a velocidade de 25Hz parece apropriada.
Entretanto aqui vão algumas observações :
1 ) Se tiver algo conectado no restante da porta B ( RB4 RB5 RB6 RB7 ) essa implementação irá gerar problemas já que irá os forçar para '0'.
2 ) Não sabemos como foi feito o seu drive. Se o aquecimento ocorrre em todos os transistores verifique se a lógica está invertida ( invertendo os bits do vetor : 1110 1101 1011 0111 ).
3 ) Voce já deve estar ciente que seu programa irá funcionar por apenas 2seg ( 50 x 40ms ).

+++

MensagemEnviado: 22 Mai 2011 12:56
por antonio
Brigado andre por ajudar!

Andre o motor esta sem carga pois estou fazendo testes!

O port_b do PIC unicamente tem os pinos ocupados que vai para o ULN2003a
O driver eh feito atravez do ULN2003a não usei qualquer transistor, praticamente eh o circuito que vc vê em baixo, no pic usei os pinos RB0 RB3 !
RB0->PINO_1 DO ULN2003
RB1->PINO_2 DO ULN2003
RB2->PINO_3 DO ULN2003
RB3->PINO_4 DO ULN2003

voh seguindo com os testes,caso algem tenha alguma coisa aí no canto que possa ajudar , agradeço


Imagem[/img]

MensagemEnviado: 22 Mai 2011 13:38
por jorgeluiz
veja se a sequencia dos passos esta correta. Cada fabricante coloca cores no fios conforme sua preferencia. Eu prefiro usar transistores no lugar desse integrado.
.
tambem da' pra usar "meio passo", para mais precisao:
.0001
.0011
.0010
.0110
.0100
.1100
.1000'

MensagemEnviado: 22 Mai 2011 13:50
por EvandrPic
Sobre o aquecimento no ULN2003, pode ser que o teu motor esteja exigindo mais corrente do que o ULN2003 possa fornecer, ou muito próxima do limite.
Qual o motor está usando? tem as especificações dele (tensão/corrente)?

MensagemEnviado: 22 Mai 2011 15:50
por andre_luis
Dá uma olhada nessa página :

http://home.cogeco.ca/~rpaisley4/Unipolar.html

A nomeclatura dos enrolamentos A B C D não segue a mesma sequencia que voce postou acima. A causa do problema pode estar por aí.

+++

MensagemEnviado: 22 Mai 2011 17:22
por antonio
Pessoal brigado pelo suporte !

EvandrPic o caro não tem nenhuma especificação nele (tensão/corrente)eu tirei o motor de uma impressora ,mas segundo o date dele a saida do ULN2003 sai em volta de 500mA, se nao estou enganado!

Andre eu queria mesmo era fazer os testes com microcontrolador mesmo , quanto aos enrolamentos que vc falou não tenho certeza se esta bem não eu troquei eles e o resultado foi o mesmo , pode dar uma ajuda ?

O motor tem as seguintes saidas dele,6 fios, duas de 3 fios ,de frente para o motor!

1-°amarelo,laranja,verde-> o laranja eh metade da resistencia do outros dois fios , ou seja entre laranja e amarelo tem um valor de 13.6 ohmios, e entre laranja e verde 13.5, se medir entre o amarelo e verde dah a soma das duas medisas ,ou seja 27.1ohmios

2-°vermelho,preto,marrom->, como nas medidas em cima quase com os mesmos valores entre fios como expliquei em cima

mais uma vez agradeço

MensagemEnviado: 22 Mai 2011 18:25
por MOR_AL
Antonio.
Pega o motor e aplica a tensão de alimentação em cada bobina.
Faz uma marca no rotor.
Aplica a tensão na bobina 12, positivo em 2. Anota onde o rotor fica apontando.
Faz o mesmo para as outras bobinas.
Aí você vai poder conhecer qual é a sequência correta.
Aproveita e mede a corrente na bobina. Confirme que dá próximo de Vcc / 13,6.
MOR_AL

MensagemEnviado: 23 Mai 2011 08:55
por Rubens_Caetano
Antonio, uma vez montei um circuito similar ao seu e dava um defeito parecido, e só funcionou como deveria depois de eu colocar um diodo em série na alimentação do motor mais um capacitor ao terra, quando eu dava um passo no motor o PIC resetava ... não sei se é o caso ai, de qualquer forma fica a dica.

MensagemEnviado: 23 Mai 2011 09:41
por ze
Visite rogercom.com.br e veja algo legal sobre sobre o motor de passo:

Imagem.........Imagem

Imagem

Mas algo me diz que já o visitou
Talvez esteja deixando muito tempo a bobina energizada. Isso faz aquecer +. (descobri isso sozinho!!)

sucessos!

MensagemEnviado: 23 Mai 2011 12:57
por antonio
Pessoal grato mesmo!

Como estou meio sem tempo por motivos proficionais ,vou analizar os topicos acima e fazer testes logo que tenho um tempinho eu posto aqui o resultado!
mais uma vez agradeço

MensagemEnviado: 24 Mai 2011 08:35
por marcelo campos
fiz um demonstrativo para nossas placas só que usando o compilador C18 e PIC18F4520, se te servir: o link pra baixar o projeto

http://www.smartradio.com.br/pic/StepMotor_18F4520_C18.zip


video dele:

http://youtu.be/wummNlvw00g


abraço

Marcelo

MensagemEnviado: 24 Mai 2011 11:42
por EDSONCAN
Seu motor parece ser da Vexta, se for:

Vermelho 1
Preto 2
Marron - center tap

Verde 3
Amarelo 4
Laranja center tap

Edson