Autor Tema: Servomotores con pic, ayuda para principiante  (Leído 1736 veces)

0 Usuarios y 1 Visitante están viendo este tema.

Desconectado Luisnajera

  • PIC10
  • *
  • Mensajes: 1
Servomotores con pic, ayuda para principiante
« en: 23 de Abril de 2005, 10:45:00 »
Puedo controlar con el pic 3 servomotores y un motor a pasos al mismo tiempo?, o solo puedo uno por uno, gracias. Espero pronto su respuesta, por cierto estoy utilizando un pic16f873.

Desconectado gesteva

  • PIC12
  • **
  • Mensajes: 52
RE: Servomotores con pic, ayuda para principiante
« Respuesta #1 en: 01 de Junio de 2005, 19:34:00 »
Con toda seguridad si se puede, hace ya un tiempo realice un proyecto de robotica (un robot hexapodo) que se mueve en base a tres servo motores que se deben mover al mismo tiempo los tres en direcciones diferentes. Esto solo con un PIC16F84.

Lo que debes hacer es primero tener los tiempos para cada posición del servo, y luego generar una tabla traducida a niveles lógicos de unos y ceros. A ver si me explico mejor:

por ejemplo:

Señal Servo 1:   _··___··___··___   esto es igual a: 0011000011000011... etc
Señal Servo 2:   _···__···___···___  esto es igual a: 0011100001110000... etc
Señal Servo 3:   _··___··___··___   esto es igual a: 1000010000100001... etc
Señal Servo 4:   _··___··___··___   esto es igual a: 0011100001110000... etc
Señal Servo 5:   _··___··___··___   esto es igual a: 0011000011000011... etc
Señal Servo 6:   _··___··___··___   esto es igual a: 1000010000100001... etc
Señal Servo 7:   _··___··___··___   esto es igual a: 0011000011000011... etc
Señal Servo 8:   _··___··___··___   esto es igual a: 0011000011000011... etc

Luego sacas por el puerto cada palabra viendo la tabla de forma vertical:

es decir:

1.- PORTB = 00100100
2.- PORTB = 00000000
3.- PORTB = 11011011
4.- PORTB = 11011011

ETC, ETC...

Trataré de buscar el programa del robot, aunque está hecho en assembler, quiza pueda servirte de guia.

Saludos!


 

anything