collapse

* Posts Recentes

Como reproteger as pontas de cobre do ferros de soldar? por vasco
[Ontem às 18:53]


é preciso ter cuidado com ESD? por vasco
[15 de Dezembro de 2018, 21:26]


Bibliotecas para arduino e drivers de stepper - o problema da 'distracção' por SerraCabo
[14 de Dezembro de 2018, 12:12]


Potênciometro 4.7 ou 5 KOhm com switch por brunus
[13 de Dezembro de 2018, 19:35]


Zener BZW04-105? por brunus
[11 de Dezembro de 2018, 17:34]


Artigo 11, 13 e os restantes por jm_araujo
[10 de Dezembro de 2018, 11:05]


Compra Colectiva Mouser N3-2018 (limite 25 Nov) por Hugu
[10 de Dezembro de 2018, 01:07]


Ajuda para reparar Luzes de LED de Natal por brunus
[09 de Dezembro de 2018, 00:59]


Usar steppers de 5 pontas como se fossem de 4 pontas por SerraCabo
[08 de Dezembro de 2018, 21:18]


LusoRobótica - Website - Estado actual por Tech_JA
[06 de Dezembro de 2018, 09:18]

Autor Tópico: Atmega8 com servo motor  (Lida 3501 vezes)

0 Membros e 1 Visitante estão a ver este tópico.

Offline terran

  • Mini Robot
  • *
  • Mensagens: 47
Atmega8 com servo motor
« em: 03 de Agosto de 2009, 02:15 »
Boas pessoal,

Alguêm sabe que eu já dei montes de cabeçadas e não chego lá de como  conseguir controlar um servo motor com o atmega8?

A ideia é criar um carro telecomandado em que as rodas da frente são controladas por um servo motor. Já vi vários exemplos mas eu uso o programmer's notepad para criar o software e uso o avrdoper como programador do microcontrolador e ele dá sempre erro.

Offline Njay

  • Mini Robot
  • *
  • Mensagens: 3.396
    • Tróniquices
Re:Atmega8 com servo motor
« Responder #1 em: 03 de Agosto de 2009, 22:11 »
Bom, tens que concordar que não estás a dar lá muitos detalhes técnicos...

Offline terran

  • Mini Robot
  • *
  • Mensagens: 47
Re:Atmega8 com servo motor
« Responder #2 em: 07 de Agosto de 2009, 02:34 »
Sim, tens razão, peço desculpa. Já está resolvido...

Tinha o ICR1 configurado para 8Mhz e o "clock" estava a 1 MHz mas já o coloquei a 8 MHz e assim já consigo

TOP = (Clock_Speed / (Prescaler * Output_PWM_Frequency)) - 1

No "Clock_Speed" estava a colocar como referi acima a 8MHz quando deveria ter colocado 1MHz mas resolvi mudar para 8 MHz

A solução é a seguinte:

Código: [Seleccione]
....

TCCR1A|=(1<<COM1A1)|(1<<WGM11);
TCCR1B|=(1<<WGM13)|(1<<WGM12)|(1<<CS11);
ICR1=20000;
OCR1A = 1500;
....

Para depois alterar a rotação do servo é só alterar o valor de OCR1A entre 1000 e 2000 sendo o valor 1500 a posição central.

Deixo aqui uma página que explica bem o funcionamento do pwm:

http://mil.ufl.edu/~achamber/servoPWMfaq.html

Um abraço e obrigado

Offline zecralos

  • Mini Robot
  • *
  • Mensagens: 2
Re:Atmega8 com servo motor
« Responder #3 em: 18 de Setembro de 2009, 11:15 »
se eu comprar uma placa arduino normal, consigo depois montar as rodas e isso mais tarde  nele?

Offline metRo_

  • Administrator
  • Mini Robot
  • *****
  • Mensagens: 3.749
Re: Atmega8 com servo motor
« Responder #4 em: 18 de Setembro de 2009, 15:03 »
A placa Arduino não tem qualquer tipo de suporte para rodas, agora se depois podes ligar motores à placa? Sim.

Offline terran

  • Mini Robot
  • *
  • Mensagens: 47
Re: Atmega8 com servo motor
« Responder #5 em: 20 de Setembro de 2009, 02:47 »
Não conheçoo sistema arduino, eu programo o amtega 8 na sua pureza mas do que eu já li, acho que tem suporte para o servo motor. Programas o servo e ligas as rodas direccionais ao servo.

Offline metRo_

  • Administrator
  • Mini Robot
  • *****
  • Mensagens: 3.749
Re: Atmega8 com servo motor
« Responder #6 em: 20 de Setembro de 2009, 03:06 »
É assim se ele se refere a suporte físico para encaixe dos servos motores nenhum microcontrolador tem :P
Agora se é possível programar de maneira a controlar um servo? Sim, quase todos os microcontroladores o fazem.

Offline terran

  • Mini Robot
  • *
  • Mensagens: 47
Re: Atmega8 com servo motor
« Responder #7 em: 20 de Setembro de 2009, 21:24 »
sim metRo_, eu estava a falar no suporte das bibliotecas... De não precisares de fazer esta manha toda que eu tive de fazer para ligar o pwm. Bastando como já vi em algures usar este métdo right(50) e ele vira 50% para o lado direito

Offline metRo_

  • Administrator
  • Mini Robot
  • *****
  • Mensagens: 3.749
Re: Atmega8 com servo motor
« Responder #8 em: 21 de Setembro de 2009, 16:43 »
sim metRo_, eu estava a falar no suporte das bibliotecas... De não precisares de fazer esta manha toda que eu tive de fazer para ligar o pwm. Bastando como já vi em algures usar este métdo right(50) e ele vira 50% para o lado direito

Sim, isto é possivel ;)