
Re: Automatización Servomotor
Que tal Freddy? De españa cierto
Bueno pues gracias por recurrir al foro, sería
"justo y necesario" que nos comentes cual será la aplicación que deseas realizar con esta pequeña automatización.
Bueno te dejo mi apoyo
'****************************************************************
'* Name : Servo *
'* Author : [select VIEW...EDITOR OPTIONS] *
'* Notice : Copyright (c) 2009 All Rights Reserved *
'* Date : 24/09/2009 *
'* Version : 2.0 *
'****************************************************************
@ DEVICE PIC16F628A, WDT_OFF
@ DEVICE PIC16F628A, PWRT_OFF
@ DEVICE PIC16F628A, BOD_OFF
@ DEVICE PIC16F628A, PROTECT_OFF
@ DEVICE PIC16F628A, CPD_OFF
@ DEVICE PIC16F628A, MCLR_OFF
@ DEVICE PIC16F628A, INTRC_OSC_NOCLKOUT
'===============================================================================
i var byte
j var word
'===============================================================================
SERVO VAR PORTB.7 : TRISB.7=0
'===============================================================================
gosub pos_inicial
MAIN:
gosub bucle1
gosub bucle2
goto main
pos_inicial:
for i=0 to 5
servo=0
pulsout servo,158
pauseus (20000-158)
next i
return
bucle1:
for i=158 to 248
for j=0 to 17
servo=0
pulsout servo, i
pauseus (20000-i)
next j
next i
return
bucle2:
for i=248 to 158 step -1
for j=0 to 17
servo=0
pulsout servo, i
pauseus (20000-i)
next j
next i
return
y bueno el esquema sencillamente es esto:
La explicación breve de lo que necesitas:
Cojamos el ejemplo del bucle1:
for i=158 to 248
for j=0 to 17
servo=0
pulsout servo, i
pauseus (20000-i)
next j
next i
el primer
"for i=..." hace 1 barrido de grado en grado desde la posición central 0°(158) hasta la posición +90°(248), donde realiza 90 iteraciones, entonces vemos que siempre se demora 20ms en mandar la posicion al servo,

, bueno entonces primero tenemos 90x20ms=1800ms osea 1.8s; bueno entonces para que se demore 30 solo hay que dividir y ver que ese numero de veces se repita, entonces es por ello que aparece el otro
"for" j=..." donde repite la escritura del grado actual 17 veces, finalmente tenemos que: 1.8s x 17 = 30.6s que es un aproximado del tiempo que necesitas.
Bueno un gusto, espero que nos comentes de que trata, aunque x el msn ya me comentaste, todos seguro querrán saber de que trata.
BytezZz...
____________
En la vida no siempre gana el hombre mas fuerte o el mas ligero, sino el que cree poder hacerlo.