Actuador remoto para cámaras de seguridad

SCM Hacker
Número: 38

El Magazine electrónico de SCM

International

Actuador remoto para cámaras de seguridad
( Cuarta parte )

SCM home
SCM International , le provee puerta a puerta a todo el mundo!
Consultas
Cursos
PLCs
Sensores
Micros
Robótica
Alambres Musculares

¿Requiere de desarrollos a medida? o la integración de un sistema?

On-line Book Store

Compre los mejores libros. Ahorre! Pague menos y con costos de envío reducidos!

Electrónica - Mecánica - Micros - Robótica


Super Micro BASICX
Chip BX24 + Tarjeta de desarrollo + Software + Manual castellanoReloj de tiempo real, I/O, netware, sistema operativo con multiprocesamiento, set de instrucciones reducido del Visual Basic y mucho mas! para disenar sus sistemas microcontrolados de alta calidad!

$75

En la nota anterior desarrollamos los algoritmos de control con una microcomputadora BX24. Usaremos uno de los canales analógicos de la BX24 para medir la posición angular de la cámara con un potenciómetro para servos. El eje del servo deberá ser acoplado al eje del sistema de movimiento de la microcámara y el cupo del potenciómetro debe estar solidario a la estructura fija.

En esta nota avanzaremos en agregar una rutina que permita comunicarse con una PC con las herramientas Cyber Tools preinstaladas. Presupondremos que el protocolo de transmisión es un string de 3 caracteres + 1 caracter de fin de carro ($13).

DIM x  As Char
DIM entrada ( 1 to 30 ) As Byte
DIM salida ( 1 to 30 ) As Byte
DIM Pot asInteger , Setup asInteger
DIM Stack1(1 To 40) As Byte
DIM Stack2(1 To 40) As Byte
Sub Main()
call OpenQueue(entrada, 30)
call OpenQueue(salida, 30)
' Abre el puerto de comunicaciones COM1 de la BX24
' Asocia la cola de datos de entrada al COM1
call openComm (1, 2400,entrada,salida)
Setup = 0
' Controla la posicion d ela camara permanentemente
callTask "ControlAM' , Stack1
' Actualiza permanentemnete el valor de setup
' recibido por el puerto serie
callTask "SetPost", Stack2
' La tarea principal sede el procesamiento a las otras rutinas
Do
callSlep (120.0)
Loop
EndSub
Sub ControlAM
Do
' Lee el canal analógico del pin 13
Pot = GetADC(13)

' Retardo de 0.1 segundo y deja ejecutar otras tareas.
Call Delay(0.1)

' Activa la salida según la posición de Setup y la actual.
If (Pot < Setup) Then Call PutPin(12, bxOutputHigh)
Else
Call PutPin(12, bxOutputLow)
End If

Loop
Sub SetPos
Do

' Toma de la cola de comunicaciones el valor de seteo
call GetQueue ( entrada, Setup,3 )

' Elimina el caracter de final de carro ($13)
call GetQueue ( entrada, x,1 )

call DelayUntilClockTick

Loop

End Sub

El programa principal (Main) inicia su ejecución abriendo el puerto de comunicaciones COM1. Todos los datos recibidos por el COM1 serán apilados en la cola de datos "entrada".

Luego se ejecuta permanente mente la subtarea: ControlAM. Este algoritmo ejecuta permanentemente una rutina sencilla que compara la posición deseada (variable Setup) y la posición instantánea (variable Pot), si la posición angular deseada es mayor a la posición angular actual la salida (pin 12) se activa. Al activarse la salida el microrele activara el Alambre Muscular corrigiendo la posición a la deseada. La instrucción call DelayUntilClockTick permite dejar la rutina de refresco del valor Setup.

Luego se inicia la subrutina Setpos la cual tiene como función actualizar el valor de Setup.

En la próxima edición demostraremos como implementar un control en PC que permita setear a través de un potenciometro virtual la posición de la cámara!

 

Copyright © 2002 SCM International. All rights reserved.

Por favor, lea cuidadosamente los términos y condiciones descriptas para el uso de   notas de aplicación, materiales, e información de este sitio.

Home page de SCM International

SCM Hacker Magazine home page

 

 

 

 

 

 

El Saber Electronica y computacion Hoy es leer este Magazine.