Si además quieres enviarnos un Artículo para el Blog y redes sociales, pulsa el siguiente botón:
Hola a todos, soy un estudiante de ingenieria de sistemas y elctronica, y ando buscando como terminar mi proyecto, se compone con un sensor de escla de grises, ahora no recuerdo el dato lo deje en la escuela, un PIC16F628A, 5 Servomotores, un electroiman y un switch.... el punto es que cotnrolando un servo mediante una toma de decison enviada desde el sensor de (negro = 0, blanco = 1) este girara a la iazquierada o a la derecha segun sea el caso, por otro lado no he podido aterreizar el hehco de como es que voy a hacer la parte de ajustar coordenadas ya con los servos en conjunto; pero regresando a la parte que me atañe.... por otro lado.. ya pude controlar todos los servos pero solo en posicion de izquierda centro y derecha, mediante el cierre del circuito (mediante un switch -normalmete abierto-), sin embargo quiero darle una rutina mediante la propgrmacion y que no dependa del cierre del ciercuito... quien sera el valiente que me pueda ayudar...????
La programación la estoy haciendo en PIC Basic (PROTON+) si alguién desea meterse a esta odisea conmigo, se lo agradeceré eternamente -jejejej, de hehco depende mi calificación de ello-....
NOTA: Si queda al valiente que quiera lo invito una semana de Vacaciones aca a México.
NOTA2: Si necesitan mas datos o que sea más explicito y menos guaguara en la explicación de mi problema que me aqueja, por favro notofoquenmelo y con gusto lo modificaré. Les mandare más información si hace falta el hehco de explicarme.
NOTA3: Por cierto si requieren de iformación adicional y se le complica saber algo...... o bien yo les puedo ayudar en algo con mucho gusto lo intentare.... les dejo mi correo para que podemos estar en contaco via messenger,,,,,,, exultet2010@hotmail.com
Hola Exultet2010, vamos a ver con el switch te va a derecha o izquierda y quieres hacerlo con programacion es eso ?
un cordial saludo
Francisco Balbuena
ROBOTIKA
La verdad es que o bien faltan datos o bien yo no he entendido tu explicacion.
Los servos, se controlan enviando pulsos activos de entre 0.7 a0 1.2 ms cada 20ms.(los valores varian segun la marca del servo) es decir que si durante un periode de 20ms activas el servo 0.7ms el servo ira a un extremo y si lo activas durante 1.2 ms ira al otro extremo y, naturalmente, todos los valores intermedios posicionan el servo en posiciones intermedias.
Si vas a esta pagina http://www.x-robotics.com en la seccion mecanica/servos, veras una descripcion mas detallada de lo que te explico.
Si mis excelentes Robotika y UCFort..... les agradezco su pronta respuesta... bueno dejenme les explico bien. Ya logre mediante programacion de mi PIC16F228A controlar el moviemiento del servo mediante siwtches.... con los datos que presisamente me da el amable UCFort de hehco queria subir la imagen de mis esquema pero no encontre la forma de hacerlo -lo siento soy nuevo en esto-
Pero hagan de cuenta hice una rutina mediante la cual control el movieminto del servo a las izquierda mediante un boton al centro mediante otro y a la derecha mediante otro, y con un curto reseteo la rutina...... En mi servo msa o menos la configuracion queda algo asi como a la izquierda .4 ms 1.4 al centro y a la derecha a 2.3ms....
Sin embargo como pueden apreciar, pues lo controlo mediante botones y solo puede ir a la extrema izquierda 180º centro 90º y extrema derecha 0º, con lo cual tengo un pobre control de moviemiento y precison de todo el espectro en grados, porque? por que por ejemplo Pongo en PORTA.0 = botonizq
PORTA.1 = botonCentro
PORTA.2 = botonder
PORTA.3 = ControlServo
en el pin 0, 1 y 2 quedan los botnes, pero imaginen si quieres tener una exactitud de 10º para los 180º de desplazamiento del servo cuantos botones tendría que poner, lo cula sería muy loco si quiero trabajar en el mismo circuito con 4 srervos mas, toddas las patas del PIC quedarian ocupadas en solo unos cuantos pobres movimientos del servo...... imaginen cuantos switches tendría que utilizar, por ello y creo que se me ha secado el cerebro pensado no he podido meterle una rutina predefinida al servo sin necesidad de botones....
Ademas lo que finalmente deseo o la meta que deseo alcanzar es la de que mediante un sensor el brazo manipulador encuentre y diferencia entre fichas negras y blancas... y segun sea el color las recoja y las deposite en algun otro lugar -por elemplo si es negro = 0, veta a la izquierda y depositala ahi, si es blanca = 1, vete a la derecha y depositala alla)... Es evidente y estoy conciente de que no me va a quear todo en un solo paso, pero estiy dispuesto a experimentar y ha echarle un buen de ganas para sacar adelante mi proyecto y mi materia, si necesitan mas datos por favro diganmelo y si me pueden explicar como puedo subor una imagen del circuito y de lo que pretende para ser mas explicito se los agradeceré mucho.
Con Respeto.
A T E N T A M E N T E:
Exultet2010
Vamos a ver, por lo que dices, creo que lo primero que tienes que hacer, es aprender a programar el temporizador del micro que usas. Luego vas probando, activando la PUERTA.3, que es la que dices controla el servo, durante diferentes periodos de tiempo, entre los 0.4ms y los 2.3ms que dices tiene de tope tu servo.
Segun lo que tu dices, para mover tu servo de 10º en 10º necesitarias una temporizacion base de, aproximadamente, 0.1ms.
Forma facil de llevar el brazo donde quieras:
Primero activas el servo y temporizas 0.4ms y luego tantas temporizaciones de 0.1ms como grados de 10 en 10 quieras moverte, luego desconectas el control del servo y pones una temporizacion de 17ms para acabar el ciclo de 20ms que requiere el servo. Pero ya te digo vas a tener que aprender a desenvolverte con el timer del micro.