# Encoder acoplado a una cinta transportadora



## quacua (Abr 6, 2010)

Hi everybody,

Os comento la situacion me he estado leyendo el manual de Siemens S7 en concreto el apartado de contadores rapidos HSC y es un poco locura. Yo trabajo con una CPU 214, la cual puede programar como maximo solo Tres High-speed counters HSCO, HSC1 y HSC2.

Para HSC0 solo permite un modo 0 para el reloj.
Para HSC1 permite los 12 modos 
Modos (0,1,2)---> clock, puesta a 0 y arranque.
Modos (3,4,5)---> clock, direccion de sentido, puesta a 0 y arranque.
Modos (6,7,
	

	
	
		
		

		
			





---> Contaje adelante contaje atras, puesta a 0 y arranque
Modos (9,10,11)---> Reloj (Fase A), Reloj (Fase B), puesta a 0 y arranque.

Para HSC2 Trabaja con los mismos 12 modos que HSC1 pero con la pega de que las entradas y los bits tienen otra numeracion.

Me gustaria empezar a trabajar con él realizando simples programas por ejemplo:

Imaginaos una cinta transportadora q tiene un detector al inicio de la cinta y en mitad de la cinta a un lado hay un simple motor a todo ello anado dos pulsadores un marcha y un paro. Para hacertelo mas entendible os comento los pasos.

MARCHA----> Su funcionamiento seria el de activar el motor de la cinta.
PARO-----> Parar el proceso de la pequena estacion de trabajo.
DETECTOR-----> Una vez activada la cinta mediante el pulsador de marcha, el detector esperara la pieza para que el encoder empiece a realizar el contaje de pulsos. 
ENCODER---->Empezar a activarse cuando reciba la senal de que la pieza a sido detectada. Nota: Este encoder esta acoplado al eje del motor de la cinta transportadora.
SIMPLE MOTOR----> Cuando la pieza llegue a la altura del simple motor la cinta debera pararse (mediante los valores que haya prefijado al encoder).

OUTPUTS:
CINTA TRANSPORTADORA: Q0.0
SIMPLE MOTOR (SITUACION LATERAL CINTA): Q0.1

INPUTS:
MARCHA: I0.0
PARO: I0.1
DETECTOR INICAL: I0.3
ENCODER 
FASE A: I1.2 ? No estoy muy seguro Utilizaria el modo 9
FASE B: I1.3 ? No estoy muy seguro Utilizaria el modo 9

Bueno ahora bien: Que me recomendas para hacer una programacion entendible y curiosa: tema interrupciones, subrutinas, programa principal. ?


Bueno como podeis ver estoy empezando con el mundillo por el momento me parece imposible pero creo que vuestros consejos me podran ayudar a resolver estos misterios.

P.D: Lo siento por las n sin n y los acentos (estoy trabajando con un teclado ingles en el laboratorio).

Toda ayuda me seria gratificante


----------



## quacua (Abr 9, 2010)

Os comento mi progreso:

Tengo el encoder cableado (Alimentacion necesaria 5Vdc y salidas A/B, pero solo conecto A a la entrada de la CPU).

La salida de alimentacion que me ofrece la CPU 214 es de 24 Vdc, por lo tanto necesitare de un reductor de voltaje para conseguir los 5 Vdc para alimentar el encoder en este caso eligo el LM317 y lo diseno para obtener dicho voltaje.

Ahora bien, la salida A del encoder me dara unos pulsos de 5 Vdc mientras el motor gire. la salida A la tengo conectada a la entrada I0.6 (Modo HSC1 para CPU 214) pero no visualizo los pulsos del encoder (velocidad del motor: super-lenta) en los leds verdes de mi CPU.

El problema puede ser que necesite unos pulsos de 24 Vdc en la entrada de mi CPU para que funcione?. Pero claro el datasheet me especifica que mi encoder tiene que funcionar con 5 Vdc como maximo. Como lo veis? Necesito un encoder q trabaje con 24 Vdc para obtener en las salidas unos pulsos de 24VDC? o veis q lo puedo solucionar de otra manera.

Gracias y siento el parrafon.


----------



## hbrouet (Abr 9, 2010)

Hola, la cpu no lo lee al pulso por q necesita 24voltios, podes usar el encoder de 5v y a la salida A le pones un transistor,  si es npn mandas una resistencia de 1k a la entrada de la cpu desde los 24vcc del comun de entradas y el colector del transistor a la entrada y el emisor a 0vcc. Desde la salida A del encoder pones una resistencia de 100k a la base del transistor.


----------



## AcoranTf (Abr 9, 2010)

La idea de hbrouet no es mala, salvo por dos pequeñas pegas, el transistor invertira los impulsos, no se si ello comportara algun problema en este montaje y en segundo lugar la resistencia de base es excesivamente alta, ten en cuenta que le van a llegar solo 5 voltios, asi que con una de 1 K seria perfecto, aunque dependiendo de la ganancia del transistor, podria ser entre 470 Ohm. y 10 K. Por ejemplo para un BC547, valdria cualquier resistencia entre 470 Ohm. y 4K7.
No obstante otra solucion seria realizar el convertidor de nivel con un operacional, por ejemplo el LM741 o similar, en modo amplificador de tension y una ganancia de 4,5, (5 voltios * 4,5 = 22,5 voltios), suficientes para excitar la entrada del S7.

Saludos.


----------



## quacua (Abr 10, 2010)

Ok, gracias os he pillado la idea a los dos, en cuanto a material testearé primero el circuito con el transistor y el lunes probare con el UA741 en modo amplificador de tensión.
Un pequeño detalle os adjunto el planteamiento de mi circuito a diseñar con las conexiones de la CPU214 segun el manual. Me gustaria saber si voy en buen camino en cuanto las conexiones de alimentación al circuito, pero no tengo nada claro donde tengo que conectar la entrada de la CPU en el circuito.

Gracias


----------



## AcoranTf (Abr 11, 2010)

Hola de nuevo, ese circuito esta bien, pero para asegurar el corte del transistor deberias poner una resistencia entre la base y masa de unos 10 K. La entrada de la CPU debes conectarla a la union de la resitencia de 1K y el colector.

Saludos.


----------



## quacua (Abr 11, 2010)

Gracias Acoran queria asegurarme de la conexión de la entrada a la CPU y el detalle de añadir la resistencia de 10 K es genial, garantiza totalmente que el transistor esta en zona de corte. Mañana por la mñana te comento los resultados espero k no se escapen pulsos.

Saludos


----------



## quacua (Abr 12, 2010)

Si perfecto visualizo los pulsos en la CPU gracias Acoran.
Finalmente: Resistencia de base= 4K7, Resistencia colector=1K, Resistencia entre base y masa que no esta dibujada es de 10K.

Ahora estoy liado con la opcion de (Contadores rapidos) HSC de siemens, para realizar el proyecto que os he comentado mas arriba. Pero como siempre con problemas : ) .

Os comento mi idea inicial para un mini programa.

Programa Principal:

I0.2: Boton Marcha para activar la cinta transportadora.
Q0.4: Cinta transportadora.
I0.3: Emergencia.
I0.4: Detector de barrera: Detectara el objecto que he puesto en la cinta y a la vez empezara el contaje de pulsos del encoder.

Bueno bien cual es mi pequeno objectivo: Cuando el encoder cuente 40 pulsos la cinta se para y activa una salida de mi cpu x ejemplo Q0.0.

Adjunto pantallazos de la configuracion de HSC en siemens. La configuracion la he seguido en, aqui los pantallazos estan en espanol, esta muy bien el pdf pero no tiene ningun ejemplo a seguir:

http://isa.umh.es/temas/plc/doc/Practica9.pdf


Gracias avanzadas


----------



## AcoranTf (Abr 12, 2010)

Me alegro de haberte sido de utilidad.
Con respecto a lo de los contadores rapidos, no acabo de entender tu problema. Dime que quieres hacer exactamente, ya que entiendo que una vez detectada la pieza en la cinta, esperas que avance una cierta distancia y paras la cinta, si es asi ni siquiera necesitas el encoder, con una barrera fotoelectrica seria suficiente.
Explicame mejor tu problema.

Saludos.


----------



## quacua (Abr 19, 2010)

Buenas siento el retraso en contestar he estado muy liado montando la maqueta, ahora ya stoy con el programa. Te comento:

Puedes ver dos pulsadores marcha y emergencia y la realimentacion para activar la cinta transportadora, bueno hasta aqui todo bien pero el problema viene cuando tengo que usar los HSC que estoy totalmente perdido tengo el manual de siemens y me lo he leido ya 3 veces y por mas que leo mas me pierdo. Necesito a alguien que me comente como hacer para que cuando el detector del principio de la cinta detecte un objeto y a la vez empiece a contar los pulsos del encoder en HSC. La idea es como ya he dicho anteriormente seria la de para la cinta Q0.4 y activar una salida Q0.0 a una determinada distancia por ejemplo en el medio de la cinta que vendrian a ser para dar un numero unos 500 pulsos del encoder

Luego en el programa de microwin no he anadido el detector inicial supongo que se tendra k enlazar con las interrupciones del HSC. Por cierto las salidas A y B del encoder las tengo conectadas en A=I1.2 y B=I1.3 en modo 12 y HSC2 ya q trabajo con CPU214 me gustaria empezar a hacer un programita sencillo de momento y solamente trabajare con la entrada A.

Adjunto el programa a ver si alguien me lo puede reenviar y anadir los detalles que faltan o tener una organizacion mejor.

Gracias avanzadas

Se me olvido comentarte que necesito trabajar con el encoder pq lo estoy estudiando, ya me gustaria a mí poner un detector y a la apaga y vamonos pero el supervisor lo quiere ver funcionar ya!!!.


----------

