Manufactura industrial
Internet industrial de las cosas | Materiales industriales | Mantenimiento y reparación de equipos | Programación industrial |
home  MfgRobots >> Manufactura industrial >  >> Manufacturing Technology >> Proceso de manufactura

Elevador de servicio accionado por Arduino

Componentes y suministros

Arduino Mega 2560
× 1
Micro Limit Switch de OpenBuilds
× 4

Acerca de este proyecto

Diseñe y pruebe un sistema de control para un elevador de servicio que funcione en cuatro pisos. El microcontrolador (ATMega2560) se utiliza para determinar qué contactor proporcionar energía para activar el motor del elevador para mover el elevador hacia arriba o hacia abajo comprobando el piso en el que se encuentra actualmente. El sistema de control también debe poder detener la energía del elevador cuando haya alcanzado el piso requerido. Se debe implementar un factor de seguridad integral para cerrar siempre la puerta del ascensor antes de subir o bajar. El sistema de control puede determinar con éxito qué contactor necesita ser alimentado para mover el elevador al piso deseado. El sistema puede controlar el motor de la puerta del ascensor de seguridad para cerrar la puerta cuando el ascensor necesita moverse y abrir la puerta automáticamente cuando ha alcanzado el piso requerido.

Video de demostración:

1.1 Cableado del motor trifásico

En esta aplicación se utiliza un motor trifásico, ya que requiere un motor potente que pueda soportar una carga pesada. El motor trifásico se alimenta a través de la alimentación trifásica principal. La energía a través de la red principal pasa por dos contactores principales. Cuando se enciende el primer contactor y se apaga el segundo contactor, la energía pasa a través del primer contactor al devanado del motor que mueve el motor en la dirección de avance.

Cuando se enciende el segundo contactor y se apaga el primer contactor, la energía pasa a través del segundo contactor al devanado del motor que mueve el motor en la dirección hacia atrás. Tenga en cuenta que el cableado es diferente para la dirección inversa.

1.2 Detección de suelo

Para detectar el piso en el que se encuentra actualmente el ascensor, se utiliza un interruptor de límite. A medida que el elevador se mueve hacia arriba o hacia abajo, se cierra y abre un interruptor de límite en cada piso. Cuando el ascensor está en un piso en particular, el piso límite en ese piso en particular está cerrado, lo que indica al microcontrolador en qué piso se encuentra el ascensor. A medida que el elevador se mueve, el interruptor de límite se abre indicando al microcontrolador que el elevador se está moviendo.

La transición de señal baja a alta producida por el interruptor de límite cuando el ascensor se mueve a través de un piso ocurre en una fracción de segundo y, a menudo, demasiado rápido para ser detectado por el microcontrolador. Los interruptores de límite están conectados a una fuente de 5 V CC y la salida del terminal NO (normalmente abierto) está conectada a un pin IO del microcontrolador. Cuatro interruptores de límite en cuatro pisos envían datos al microcontrolador. Esto permite al microcontrolador determinar el piso en el que se encuentra el elevador al verificar qué pin pasó de menor a mayor. La transición del estado de un interruptor de límite se muestra en el siguiente diagrama:

La tarea complicada es permitir que el microcontrolador detecte la transición de bajo a alto. Hay dos métodos para abordar este problema. El primer método es determinar si un pin del interruptor de límite se pone ALTO dentro de la función de bucle usando una condición if. El programa esencialmente mientras ejecuta otro código siempre verifica si un pin pasa a ALTO. Esto ocupa mucha memoria ya que el programa busca constantemente una señal ALTA de un pin del interruptor de límite. Otro problema es que a veces el programa puede perder esta transición ya que la función de bucle estaba ejecutando algún otro código mientras ocurre una transición. Para evitar estos problemas, se utilizan interrupciones. Básicamente, las interrupciones pausan la ejecución del código y ejecutan una función separada cuando se satisface una condición de interrupción específica. Esto es ideal para la operación de elevación. Cuando un pin del interruptor de límite pasa de bajo a alto, se ejecuta una función de interrupción y esta función verifica si el elevador está en el piso actual y detiene el elevador o permite que se mueva más. Dado que el programa se ve obligado a ejecutar la función de interrupción cuando se conmuta un interruptor de límite, el sistema puede garantizar que el programa no omita deliberadamente la detección de un piso. El microcontrolador utilizado para esta aplicación es el Arduino Mega 2560 que tiene 6 pines digitales utilizables para interrupciones, lo que es ideal para usar en los cuatro pisos. El primer parámetro para attachInterrupt es un número de interrupción. Normalmente, debe usar digitalPinToInterrupt (pin) para traducir el pin digital real al número de interrupción específico. Por ejemplo, si se conecta al pin 3, use digitalPinToInterrupt (3) como el primer parámetro para attachInterrupt. También es importante tener en cuenta que la función delay () no funcionará dentro de la función ejecutada por la Rutina de servicio de interrupción (ISR).

El diagrama de arriba muestra cómo los interruptores de límite están conectados a la MCU. Los pines de la MCU están conectados a través de una resistencia desplegable. Esta resistencia baja el pin de la MCU a tierra para garantizar que la MCU lea una lectura de voltaje BAJO cuando el interruptor de límite se deja abierto. La configuración de la resistencia se muestra en el diagrama a continuación.

1.3 Control de subida y bajada del motor

Se utilizan dos relés de 12 V CC para conmutar la alimentación de CA a los contactores del motor que controlan su dirección (hacia arriba o hacia abajo). El circuito diseñado con Multisim se muestra en el siguiente diagrama:

Un extremo del contactor de bobina de ambos relés está conectado al suministro de 12 V CC a través de un transistor PNP. La razón principal para hacer esto es asegurarse de que el motor no reciba energía hasta que la puerta del elevador esté cerrada. Una vez que la puerta del elevador está cerrada, el pin de salida del interruptor de puerta a la puerta del transistor PNP se tira a tierra, asegurando que el PNP esté encendido para proporcionar energía VCC a ambos relés. Por lo tanto, el relé no se enciende incluso si la señal MotorUp o MotorDown es ALTA. El otro extremo de la bobina del relé se pone a tierra a través de un transistor NPN. La señal MotorUp se genera desde la MCU. Cuando la señal MotorUp es ALTA, el primer transistor NPN se activa y tira del otro contacto de la bobina a tierra para completar el circuito y alimentar la bobina del relé Up para alimentar el motor. El mismo método se utiliza para activar el relé de bajada. Las razones para usar transistores para cambiar los relés son:

  • Ambos relés tienen bobinas de 12VDC, por lo tanto, es necesario usar un transistor PNP para cambiar la parte del lado alto (12V) de la bobina, ya que la MCU solo es capaz de producir 5V, lo cual no es suficiente para encender la bobina del relé.
  • Se pueden usar transistores para encender el relé usando una corriente mínima de la MCU ya que la poca corriente a través de la base del transistor lo activa. Esto ahorra energía en la MCU cuando necesita cambiar los relés.
  • También aísla la MCU de cualquier contracorriente que pueda fluir hacia el pin de la MCU, lo que potencialmente puede dañar la MCU.

1.3.1 Diodo de retorno para protección adicional

Se instala un diodo Flyback a través de los contactos de la bobina del relé para garantizar que la contracorriente tenga un camino para fluir cuando la bobina se enciende y apaga. Las cargas inductivas, como una bobina en el relé, crean picos repentinos de voltaje cuando la corriente de suministro se interrumpe repentinamente. Esto agrega protección adicional a la MCU. El siguiente diagrama muestra cómo conectar un diodo de retorno a través de los contactores de bobina del relé.

1.3.2 Control de entrada del usuario

El usuario controla el funcionamiento del ascensor a través de los botones del piso. Hay cuatro pulsadores de piso, cuando se presionan indica al microcontrolador que el ascensor debe llevarse al piso deseado.

Un botón cuando se presiona momentáneamente crea una señal ALTA y luego una señal BAJA cuando el usuario suelta el botón. La tarea del microcontrolador es identificar una señal ALTA de un botón de piso presionado por el usuario. Esta tarea en particular no necesita ser manejada a través de una interrupción. Siempre que el usuario presione el botón durante un período de tiempo suficiente, la MCU puede registrar la señal del botón. La siguiente tarea del microcontrolador es evaluar si se debe girar el motor hacia arriba o hacia abajo según la entrada del usuario y el piso actual del ascensor.

Con la programación inteligente a través de microcontroladores podemos eliminar el hardware adicional que se hubiera requerido si un sistema se diseñara puramente a través de lógica y analógica. El sistema anterior para el elevador requería un interruptor direccional adicional, como se muestra en el diagrama a continuación, que se usó para permitir que el sistema identificara la dirección en la que se desplaza el elevador (hacia arriba o hacia abajo).

Pero mediante el diseño de un algoritmo para mantener el piso actual del ascensor en una variable y compararlo con la entrada del usuario, el sistema permitió que el sistema se deshaga por completo de los interruptores direccionales para determinar la dirección en la que el ascensor debe moverse para llegar a la posición deseada. piso. Por ejemplo:En el diagrama de conexiones de entrada y detección de piso al MCU que se muestra arriba, el ascensor le indica al MCU que está en el segundo piso a través del Pin 3. Luego, el usuario ingresa presionando el botón Cuarto piso. La MCU recibe este comando y compara las dos entradas. Dado que la entrada del usuario, "4" es mayor que la entrada del interruptor de límite, "2" la MCU envía una señal a través del Pin MotorUp para activar el transistor para alimentar el relé Up.

A medida que el ascensor sube, la variable de piso actual en el programa se actualiza cuando llega al tercer piso. Tan pronto como se activa un interruptor de límite, se compara con el valor de entrada del usuario que en este caso es “4” y nuevamente se compara este valor con el piso actual actualizado para determinar si el ascensor se ha acercado al piso deseado. Una vez que se activa el interruptor de límite del cuarto piso, la MCU identifica que el elevador se ha acercado al cuarto piso y envía una señal BAJA a través del pin de señal Motor Up para detener la energía al motor y evitar que se mueva más.

1.3.3 Aislamiento del control de las entradas

Otro factor importante es aislar el lado de control de CC del microcontrolador de cualquier interferencia de CA que pueda afectar al MCU a través de las entradas del sistema. Un problema al que me enfrenté ya que no tenía ningún hardware de aislamiento instalado inicialmente, la interferencia de CA que se originó en el cuerpo metálico del elevador se transfirió al MCU a través de los interruptores de límite. Aunque los interruptores de límite funcionan con una fuente de CC separada, la entrada de los interruptores de límite se alimenta directamente al microcontrolador, la interferencia se produce cuando el elevador comienza a moverse y, debido a esta interferencia de CA, el MCU no puede identificar correctamente el piso del elevador Me senté. Para contrarrestar este problema, se utilizó un optoacoplador para cada entrada para aislar la MCU de la interferencia externa.

El propósito del optoacoplador es transferir la señal de entrada generada desde el interruptor de límite de piso al MCU a través de un LED y un fototransistor. Cuando el interruptor de límite está cerrado, el LED se enciende y la luz entrante del LED activa la puerta del fototransistor que luego transfiere una señal ALTA a la MCU, aislando con éxito la entrada del exterior y la MCU.

1.4 Prototipo


Proceso de manufactura

  1. Ascensor
  2. Arduino Spybot
  3. FlickMote
  4. Televisión casera B-Gone
  5. Reloj maestro
  6. Encuéntrame
  7. Arduino Power
  8. Tech-TicTacToe
  9. Arduino Cuadrúpedo
  10. Registrador de datos de globos meteorológicos con tecnología Arduino
  11. Joystick de Arduino