Analisis del art. 37 de la Ley del Impuesto a la Renta
Sensores II
1. www.fiec.espol.edu.ec
www.espol.edu.ec
Capítulo 4
Sensores II
4.4 Sensores de fuerza
4.5 Sensores de sonido
4.6 Posición y orientación
4.7 Sensores propioceptivos
4.4 Sensores de fuerza
De todos los tipos de sensores, estos son los más confiables, tienen el menor ruido y
producen las señales más fáciles de interpretar. Se los puede usar para determinar cuando el
robot entra en contacto con otro objeto y donde está el objeto en relación con el robot. Tal
información permite al robot maniobrar sin colisiones.
4.4.1 Microswitches
Son interruptores pequeños y momentáneos (botoneras) que pueden ser fijados al
parachoques (bumper) del robot para indicar si este entra en contacto con un obstáculo.
Fig.4.1
La Fig.4.2 muestra dos maneras de conectar los microswitches al microcontrolador. El
circuito en la Fig.4.2 (a) es directo: Un pin del puerto E es usado para cada switch. Ventaja:
fácil de entender e implementar, pero usa hasta tres líneas de entradas del
microcontrolador. La otra manera para conseguir la misma funcionalidad pero usando un
solo pin de entrada lo muestra la Fig. 4.2 (b), donde una red de resistencias es usada para
crear diferentes voltajes en el pin de entrada del microcontrolador (uC), dependiendo de
cual switch se cierra. Esto es esencialmente un sumador de voltajes.
2. Fig. 4.2
4.4.2 Sensores de curvatura (bend sensors)
Estos dispositivos usan una tinta conductiva entre dos electrodos para dar una resistencia
variable, dependiendo del grado de curvatura. Esta resistencia variable puede ser conectada
a un uC de la misma manera que un fotoresistor, es decir, usando un divisor de voltaje con
la salida conectada a un canal A/D.
4.4.3 Force-sensing resistors
También están basados en tinta conductiva. Su resistencia puede cambiar en varios órdenes
de magnitud como fuerza sea aplicada (esto es un cambio mucho mayor que los sensores
de curvatura) Típicamente usados para medir presión en grippers y pies de robots.
3. 4.4.4. Regla de goma (rubbery ruler)
Sensor que puede medir acertadamente cambios a lo largo de este. Tales sensores pueden
usarse en el parachoques del robot para detectar deformaciones o desplazamientos o puede
ser usado para determinar la posición de un brazo o gripper.
Este sensor está compuesto por dos cables no conectados enrollados lado a lado en una sola
capa en un tubo elástico. Los alambres forman las placas de un capacitor. Cuando el tubo
se estira, la distancia entre los cables se incrementa y la capacitancia disminuye.
4.5 Sensores de sonido
Los sensores de sonido en el rango auditivo pueden permitir al robot interactuar con su
operador.
4.5.1 Micrófonos
Un micrófono puede fácilmente conectarse a un uC a través de una interfaz que amplie su
respuesta. La señal del micrófono típicamente debe ser amplificada antes de que sea leída
por el uC ya que su señal de salida es muy baja. Un problema al usar un micrófono es la
necesidad de tomar muestras de la señal muy frecuentemente (ej.: si se quiere detectar un
aplauso, este puede durar solamente un milisegundo). Puede ser necesario dedicar un
microprocesador u otro dispositivo de hardware para realizar la tarea de monitorear el
micrófono. Otro problema es que un micrófono puesto en el robot, puede estar detectando
su propio sonido proveniente de los motores.
4.5.2 Sensores de cinta piezoeléctricos (piezoelectricfilm sensors)
4. Una cinta piezoeléctrica es un sensor cuyo material es notablemente versátil y barato.
Apropiadamente configurado, el mismo material puede ser usado para detectar vibraciones,
cambios en la fuerza aplicada, cambio de temperatura y aún radiación infrarroja distante.
En cada caso, la operación de sensado consiste en medir el voltaje impuesto en un par de
electrodos en los lados opuestos de una cinta de fluoruro de polivinideno. Este sensor
produce un voltaje solamente cuando sufre cambios en la cantidad sensada.
4.6 Posición y orientación
Para un robot encontrar su dirección acerca del mundo, es a menudo necesario para hacer
ciertas medidas. Por ejemplo, puede ser de ayuda para el robot conocer la dirección de la
gravedad, o cuán lejos se ha movido o girado desde que este ha estado en una posición
conocida.
4.6.1 Codificadores del eje (shaft encoders)
Un codificador del eje es un sensor que mide la posición o tasa de rotación de un eje.
Típicamente, un codificador del eje está montado en el eje de salida de un motor. La señal
entregada por este sensor puede ser un código que corresponde a una particular orientación
del eje (codificadores absolutos) o puede ser un tren de pulsos(codificadores
incrementales). Cada vez que el eje gire una pequeña cantidad, el estado de su salida
cambiará de alto a bajo o viceversa. Así, la tasa a la cual los pulsos son producidos
corresponde a la tasa a la que el eje gira.
Una manera para que el robot tenga una retroalimentación de cuán distante sus llantas han
girado o para sincronizar la velocidad de dos llantas es conectar un codificador a cada eje
del motor. Los codificadores del eje pueden comprarse como unidades separadas o como
una parte integral del motor. Algunos codificadores incrementales contienen un disco
giratorio con orificios. El disco se fija al motor y gira con este. Un led infrarojo-cercano es
colocado a un lado del disco y un fototransistor al otro. A medida que el disco gira, la luz
que atravieza el disco es interrumpida por los agujeros, y una señal en la forma de un tren
de pulsos es producida a la salida del fototransistor. Usando un uC que cuente estos pulsos,
el robot puede conocer cuan distante sus llantas han girado. La combinación de un led
emisor infrarrojo y un fotodetector, empaquetados para el propósito de ser montado en
cualquier lado del disco del eje, es llamado un fotointerruptor.
5. Otra implementación del codificador del eje es un fotoreflector, donde la luz brillante de un
led infrarojo incide en una llanta rayada, reflejando la luz al fototransistor.
4.6.2 Giroscopio (gyros)
Los giroscopios mecánicos usan el principio de conservación del momento angular para
mantener uno o más ejes internos apuntando en la misma dirección como el exterior del
giroscopio, la caja del giroscopio, se traslada y gira. Así, un giroscopio sujeto a un robot
hace posible determinar cuán rápido está girando o cuán lejos este ha rotado, en relación a
un sistema de coordenadas fijo.
4.6.3 Sensores de inclinación (tilt sensors)
6. Algunos tipos de sensores pueden proveer información acerca del ángulo relativo entre el
cuerpo del robot y el vector de la gravedad. El sensor de inclinación más simple y barato es
el interruptor de mercurio. Este sensor consiste en una pequeña bombilla de cristal
conteniendo dos o más contactos y una gota de mercurio. Dependiendo de que manera la
bombilla es inclinada, la gota de mercurio abrirá o cerrará el circuito. Este tipo de sensor es
fácil de conectarlo a un uC. Como el robot inicia, se detiene, y a veces rebota, la gota de
mercurio frecuentemente hace contacto, aún cuando el robot no está en una inclinación
peligrosa.
El sensor de inclinación electrolítico, un tipo de inclinómetro, ofrece una mejora sobre el
interruptor de mercurio en algunas aplicaciones. Este sensor tiene dos o más electrodos
inmersos en un fluido conductivo. La conducción entre los electrodos es una función de la
orientación del sensor en relación a la gravedad. Este sensor produce una señal de salida
analógica proporcional al grado de inclinación. Estos son más caros que los de mercurio.
Un reciente desarrollo en la tecnología de sensores es el “micromachined accelerometer”.
4.6.4 Brújulas (compasses)
Una brújula provee a un robot de un medio para adquirir la información absoluta acerca de
su orientación. Esto puede ser de mucha ayuda cuando se tienen algoritmos de navegación.
En áreas abiertas, las brújulas son muy confiables, pero en áreas cerradas, la funcionalidad
se ve afectada debido a los campos magnéticos del cableado, las estructuras de acero en los
edificios, y aún los componentes metálicos del robot pueden producir graves errores en la
toma de su lectura.
4.6.5 Sonar
7. Un sonar puede proveer la información de la distancia a un objeto, debido a la posibilidad
de medir el tiempo de vuelo entre el inicio de un sonido corto (ping) y el retorno de su eco.
Midiendo el tiempo de vuelo y conociendo la velocidad de sonido en el aire, es posible
calcular la distancia cubierta por el paseo de ida y vuelta del ping. Estos dispositivos suelen
utilizarse en los mecanismos de autofoco para las cámaras. Para medir la distancia a un
objeto la tarjeta inicia enviando una breve señal de 400 voltios al transductor. Este crea un
chirrido ultrasónico. Después de transmitir el chirrido, la tarjeta monitorea el transductor
por un eco de retorno. La tarjeta automáticamente incrementa su ganancia con el tiempo
para detetar mejor los ecos débiles que retornan desde los objetos más distantes. Cuando un
eco es detectado, la tarjeta mantiene en alto su línea de salida. Midiendo el tiempo entre el
inicio del chirrido y el retorno del eco, el uC del robot puede determinar la distancia al
objeto responsable del eco.
Un controlador de software simple puede calcular el alcance. Las siguientes tres funciones
es todo lo que se necesita:
void init_sonar(): habilita la captura de la entrada en picos crecientes en PA1 y PA2.
void ping(): Inicia un ping en el sonar.
float range(): Determina si un eco fue recibido; si lo recibe, calcula el alcance.
4.7 Sensores propioceptivos
Un sensor propioceptivo es cualquier sensor usado para medir el estado interno del robot.
Monitoreando esta clase de sensores puede indicar al robot cuando es tiempo de recargar
sus baterías, cuando un motor se está sobrecalentando o cuando un componente no está
funcionando correctamente.
4.7.1 Detección del nivel de batería (battery-level sensing)
Sensando su voltaje de la batería, un robot puede determinar cuando es tiempo de retornar a
la estación de recarga o disminuir las operaciones de alto consumo de energía. Es sencillo
diseñar un indicador del nivel de la batería cuando el microprocesador opera desde una
fuente regulada de voltaje. En este caso, un divisor de voltaje es necesario.
4.7.2 Detección de la corriente de parada (stall current sensing)
Una manera confiable para determinar si un robot está atascado es monitorear la corriente
usada para manejar los motores. Si los demás sensores fallan en detectar una colisión
inminente, el robot quedará pegado contra el obstáculo. En esta situación, las llantas
dejarán de girar mientras la corriente en los motores crecerá a su máximo valor. Así, la
8. corriente del motor sirve como detector de colisiones como último recurso. Una manera
para detectar la corriente del motor es colocando un pequeña resistencia en serie con el
motor, amplificar el voltaje a traves del resistor y medir el voltaje con uno de los canales
A/D.
Para detectar una colisión , el software que monitorea la corriente en el motor no debería
responder muy rápidamente. Cada vez que el robot acelera desde un punto muerto, la
corriente en el motor crecerá a un valor máximo, luego decrecerá a medida que el robot
aumenta de velocidad.
4.7.2 Temperatura
A menudo es una buena idea monitorear ciertas temperaturas dentro del robot. Si los
circuitos electrónicos se ponen muy calientes, el microprocesador puede dañarse. Las altas
temperaturas pueden además reducir la vida de los motores, y las baterías de NiCd pueden
dañarse por el calor.