Vous êtes sur la page 1sur 17

CENTRO DE ESTUDIOS:

UNIVERSIDAD PRIVADA ANTENOR ORREGO

FACULTAD:

INGENIERÍA ELECTRÓNICA

DOCENTE:

ING. ALVA ALARCON, JORGE

INTEGRANTES:

AVALOS CRUZ VÍCTOR HUGO

RODRIGUEZ HERNANDEZ LENIN LUIS

TORRES VARAS ELVIS

CURSO:

SISTEMAS EMBEBIDOS

TEMA:

CONTROL PID PARA LA TEMPERATURA DE LA CPU DE RASPBERRY PI

TRUJILLO-PERÚ
2018
CONTROL PID PARA LA TEMPERATURA DE LA CPU DE RASPBERRY PI
Introducción
Mi motivación para el Control PID de la temperatura de la CPU de la Raspberry Pi
se debió a muchas razones, como una CPU muy caliente, un sonido del ventilador
muy ruidoso y un rápido consumo de batería porque la CPU caliente hace que el
sistema sea realmente inestable al usar la Raspberry Pi durante mucho tiempo. Por
lo tanto, he optimizado la falla utilizando el nodo PID en Node-RED. Es visualmente
útil para un aprendiz entender el sistema de control PID para un propósito educativo.
Esto cubrirá los pasos básicos que debe seguir para comenzar con las fuentes
abiertas como el nodo PID, el nodo MQTT en Node-RED. Además, es realmente
doloroso y difícil ajustar 3 ganancias como K P, K I y K D como método de ajuste
manual (prueba y error). Hay muchos métodos de sintonía, como la sintonía manual,
Ziegler – Nichols, Tyreus Luyben, Cohen – Coon, Åström-Hägglund y herramientas
de software como Simulink en Matlab o Excel PID Simulator (incluido).

lista de materiales

 Raspberry Pi2 X 1ea


 Pi-1, 2, 3 son posibles.
 Instalación de VNC : puede conectar Raspberry Pi2 con Macbook Pro o
Windows.
 Transistor PNP A1015 X 1ea
 Resistencia ajustable (102) X 1ea
 Cables de puente (1m) x 1ea
 Dongle wifi x 1ea.
 Batería portátil del teléfono inteligente Android X 1ea
 Software Nod-RED X 1ea
 MQTT v3.1 software X 1ea
 Incluye guía de instalación en el paso.
 ¿Lugares para comprar?
 Element14
 Adafruit
 DigiKey
 Sparkfun
 eBay
 Amazonas
CONFIGURACIÓN DE UNA CAJA TRANSPARENTE DE ACRÍLICO CON UN
VENTILADOR DE CIRCUITO CON RASPBERRY PI

Pasos de montaje
(1) Le sugiero que use una placa de pruebas antes de soldar y cablear todo.
(2) Conecte la Raspberry Pi2 con un transistor PNP 1015, un ventilador y una
resistencia variable de 102 (1 k) como se muestra en las imágenes adjuntas.
(3) Utilicé una pistola de pegamento para unir con la caja transparente.
(4) Por último, conecte una batería portátil con Raspberry Pi2. (Use cualquier batería
portátil para conectar el cable conector del mismo tamaño en Raspberry Pi2).
Programación de NodeRED en Raspberry Pi2
 Escriba el comando que se muestra a continuación en una ventana de
terminal.
 node-red-start
 Puede encontrar una dirección IP como se muestra a continuación. 'Una vez
que se inicie Node-RED, apunte un navegador a http://169.254.170.40:1880'
(Depende de su dirección IP)
 Abra su navegador web.
 Copie la dirección IP y péguela en el navegador web.
 Mostrará un editor visual de Node-RED en el navegador web.
 Puede comenzar a codificar con el editor visual en el navegador web.
 Intente arrastrar y soltar cualquier nodo desde el lado izquierdo al lado
derecho. Es realmente fácil de codificar. (Puede usar cómodamente el editor
visual fuera de línea y en línea). Descargue el archivo
'PID_Control_For_CPU_TEM_ver0.5.txt'.
 Haga clic en el número (1) en la esquina derecha que se muestra
en NodeRED en el navegador web.
 Haga clic en el botón Importar en el menú desplegable.
 Abra el portapapeles que se muestra en la primera imagen
anterior.
 Por último, pegue el texto del formato JSON de
'PID_Control_For_CPU_TEM_ver0.5.txt' en el editor de Importar
nodos.

Configuración de MQTT V3.1 en Raspberry Pi2


Este intermediario de mensajes (Mosquitto) es compatible con MQTT v3.1 y se
instala fácilmente en la Raspberry Pi y es algo menos fácil de configurar. A
continuación, pasamos a través de la instalación y configuración del agente
Mosquitto. Vamos a instalar y probar el "mosquitto" de MQTT en la ventana de la
terminal.
 curl -O http://repo.mosquitto.org/debian/mosquitto-repo.gpg.key
 sudo apt-key add mosquitto-repo.gpg.key
 rm mosquitto-repo.gpg.key
 cd /etc/apt/sources.list.d
 sudo curl -O http://repo.mosquitto.org/debian/mosquitto-jessie.list
 sudo apt-get update
Luego instale el broker y los clientes de línea de comando:
 mosquitto - el corredor MQTT (o en otras palabras, un servidor)
 mosquitto-clients - clientes de línea de comandos, muy útiles para la
depuración
 python-mosquitto - las uniones del lenguaje Python
 sudo apt-get install mosquitto mosquitto-clients python-mosquitto
Como es el caso con la mayoría de los paquetes de Debian, el agente se inicia de
inmediato. Ya que tenemos que configurarlo primero, detenlo.
 sudo /etc/init.d/mosquitto detener
 Ahora que el broker MQTT está instalado en el Pi, agregaremos algo de
seguridad básica.
Crear un archivo de configuración:
 cd /etc/mosquitto/conf.d/
 sudo nano mosquitto.conf
Dejemos que los clientes anónimos se conecten a nuestro agente agregando
algunas líneas a su archivo de configuración. Para controlar el acceso del cliente al
intermediario, también debemos definir nombres de usuario y contraseñas
válidos. Añade las líneas:
 allow_anonymous false
 archivo de contraseñas /etc/mosquitto/conf.d/passwd
 require_certificate false
Guarde y salga de su editor (nano en este caso).
Desde el directorio actual /conf.d, cree un archivo de contraseña vacío:
 sudo touch passwd
Utilizaremos la herramienta mosquitto_passwd para crear un hash de contraseña
para el usuario pi:
 sudo mosquitto_passwd -c /etc/mosquitto/conf.d/passwd pi
Se le pedirá que ingrese su contraseña dos veces. Ingrese la contraseña que desea
usar para el usuario que definió.
Prueba Mosquitto en Raspberry Pi
Ahora que Mosquitto está instalado, podemos realizar una prueba local para ver si
está funcionando: Abra tres ventanas de terminal. En uno, asegúrese de que el
corredor de Mosquitto esté ejecutando:
mosquitto
En el siguiente terminal, ejecute el abonado de línea de comando:
 mosquitto_sub -v -t 'topic / test'
Debería ver el primer eco de la ventana del terminal que un nuevo cliente está
conectado. En el siguiente terminal, ejecute el editor de línea de comandos:
 mosquitto_pub -t 'topic / test' -m 'helloWorld'
Debería ver otro mensaje en la primera ventana de terminal que dice que otro cliente
está conectado. También debería ver este mensaje en el terminal del suscriptor:
 tema / prueba helloworld
Hemos demostrado que Mosquitto está configurado correctamente y podemos
publicar y suscribirnos a un tema. Cuando termine de probar todo, configuremos
más abajo.
 sudo /etc/init.d/mosquitto start
verifica tus códigos NodeRED con MQTT en Raspberry Pi2
Cuando utilice el formato JSON del ' PID_Control_For_CPU_TEM_ver0.5.txt ' en
Node-RED, se configura y codifica automáticamente cada dato. Ya he configurado
cada uno de los datos en cada nodo.
 Haga clic en cada nodo.
 La información de verificación dentro de cada nodo se ha completado
previamente.
 Por favor, no cambie los datos establecidos. (Lo anterior se puede
personalizar para usuarios más avanzados).
Agregar y configurar un nodo PID, Panel de control en Raspberry Pi2
Buscando los nodos
Node-RED viene con un conjunto central de nodos útiles, pero hay un número
creciente de nodos adicionales disponibles para instalar tanto desde el proyecto
Node-RED como desde la comunidad en general. Puede buscar los nodos
disponibles en la biblioteca Node-RED o en el repositorio npm .
Luego, vamos a instalar el paquete npm , node-red-node-pidcontrol, node-red-
dashboard en Raspberry Pi.
Para agregar nodos adicionales, primero debe instalar la herramienta npm, ya que
no está incluida en la instalación predeterminada. Los siguientes comandos
instalan npm y luego lo actualizan a la última versión 2.x.
 sudo apt-get update
 sudo apt-get install npm
 sudo npm install -g npm@2.x
 hash -r
 cd /home/pi/.node-red
Por ejemplo, 'npm install node-red- {nombre de nodo de ejemplo}'
Copie el 'npm install node-red-node-pidcontrol' desde la web de npm. Pégalo en
una ventana de terminal.
Ej: node-red-dashboard , y node-red-node- pidcontrol
 npm install node-red-node-pidcontrol node-red-dashboard
Deberá reiniciar Node-RED para que recoja los nuevos nodos.
 nodo-rojo-parada
 node-red-start
Cierre su navegador web y vuelva a abrir el navegador web.

Usando un Tablero para el Control PID


Cómo utilizar el tablero de mandos en Raspberry Pi.
 Haga clic en el número (1) del nodo de indicador.
 Establecer la propiedad del grupo.
 Establezca las propiedades de (3) a (7) que se muestran desde arriba de la
imagen.
 Haga clic en el número (8) para ir a la ventana del panel de control.
 Presione el número (9) para mostrar el indicador en el navegador web.
 Puede ver el indicador que muestra '40 .1 'desde el navegador web.
 El gráfico que se muestra en el navegador web es el mismo que el
indicador (1 - 9 pasos).
Tuning PID Controller
Existen muchos métodos de ajuste, como el ajuste manual , Ziegler –
Nichols , Tyreus Luyben , Cohen – Coon , Åström-Hägglund y herramientas de
software como Simulink en Matlab o Excel PID Simulator (incluido).
Ajuste manual (Prueba y error)
¿Cómo afectan los parámetros PID a la dinámica del sistema?
Estamos más interesados en cuatro características principales de la respuesta
escalonada de circuito cerrado. Son
- Tiempo de subida: el tiempo que tarda la producción de la planta y en aumentar
- Overshoot: cuánto el nivel máximo es más alto que el estado estacionario,
normalizado contra el estado estacionario.
- Tiempo de establecimiento: el tiempo que tarda el sistema en converger a su
estado estable.
- Error de estado estacionario: la diferencia entre la salida de estado estacionario y
la salida deseada.
(NT: No hay tendencia definida. Cambio menor.)
¿Cómo usamos la mesa?
Los pasos típicos para diseñar un controlador PID son: Determinar qué
características del sistema deben mejorarse.
- Utilice K P para disminuir el tiempo de subida.
- Use K D para reducir el tiempo de rebasamiento y asentamiento.
- Use K I para eliminar el error de estado estable.
- Esto funciona en muchos casos, pero ¿cuál sería un buen punto de partida? ¿Qué
pasa si los primeros parámetros que elegimos son totalmente malos? ¿Podemos
encontrar un buen conjunto de parámetros iniciales de forma fácil y rápida?
Método Ziegler – Nichols
- Ziegler y Nichols llevaron a cabo numerosos experimentos y propusieron reglas
para determinar los valores de K P, K I y K D según la respuesta de paso transitoria
de una planta.
- Propusieron más de un método, pero nos limitaremos a lo que se conoce como el
primer método de Ziegler-Nichols en este tutorial. Se aplica a plantas sin
integradores ni polos dominantes conjugados complejos, cuya respuesta de unidad-
paso se asemeja a una curva en forma de S sin rebasamiento. Esta curva en forma
de S se llama curva de reacción. Esta curva en forma de S se llama curva de
reacción.
- La curva de reacción en forma de S se puede caracterizar por dos constantes, el
tiempo de retardo L y la constante de tiempo T, que se determinan trazando una
línea tangente en el punto de inflexión de la curva y encontrando las intersecciones
de la línea tangente con el eje de tiempo y la línea de nivel de estado estacionario.
- La tabla de reglas de ajuste de Ziegler-Nichols
Usando los parámetros L y T, podemos establecer los valores de K P, K I y K D
de acuerdo con la fórmula que se muestra en la tabla anterior.
Estos parámetros normalmente le darán una respuesta con un exceso de
aproximadamente el 25% y un buen tiempo de ajuste. Luego podemos comenzar a
ajustar el controlador utilizando las reglas básicas que relacionan cada parámetro
con las características de respuesta. K P , K I y K D según la respuesta de pasos
transitorios de una planta.
Software de ajuste de PID
- Matlab: PID Controller Tuning
- Simulink: PID Controller Tuning
- Excel PID simulator
- Etc
Control PID VS control On / Off
- Control de encendido / apagado: Un controlador de encendido / apagado es la
forma más simple de control de temperatura. La salida del dispositivo está activada
o desactivada, sin estado intermedio. Un controlador de encendido / apagado
cambiará la salida solo cuando la temperatura cruce el punto de ajuste. Para el
control de calefacción, la salida está activada cuando la temperatura está por debajo
del punto de ajuste y se apaga por encima del punto de ajuste. Dado que la
temperatura cruza el punto de ajuste para cambiar el estado de salida, la
temperatura del proceso estará en ciclos continuos, yendo desde abajo del punto
de ajuste hasta arriba, y luego volverá a bajar. En los casos en que este ciclo se
produce rápidamente, y para evitar daños a los contactores y válvulas, se agrega
un diferencial de encendido / apagado o "histéresis" a las operaciones del
controlador. Este diferencial requiere que la temperatura exceda el punto de ajuste
en una cierta cantidad antes de que la salida se vuelva a encender o encender. El
diferencial de encendido / apagado evita que la salida "parlotee" o haga
interrupciones rápidas y continuas si el ciclo por encima y por debajo del punto de
ajuste se produce muy rápidamente. El control de encendido y apagado
generalmente se usa cuando no es necesario un control preciso, en sistemas que
no pueden manejar que la energía se encienda y apague con frecuencia, donde la
masa del sistema es tan grande que las temperaturas cambian extremadamente
lentamente, o para una alarma de temperatura. Un tipo especial de control de
encendido y apagado utilizado para la alarma es un controlador de límite. Este
controlador utiliza un relé de enclavamiento, que debe restablecerse manualmente,
y se utiliza para detener un proceso cuando se alcanza una cierta temperatura. en
sistemas que no pueden manejar tener la energía encendida y apagada
frecuentemente, donde la masa del sistema es tan grande que las temperaturas
cambian extremadamente lentamente, o para una alarma de temperatura. Un tipo
especial de control de encendido y apagado utilizado para la alarma es un
controlador de límite. Este controlador utiliza un relé de enclavamiento, que debe
restablecerse manualmente, y se utiliza para detener un proceso cuando se alcanza
una cierta temperatura. en sistemas que no pueden manejar tener la energía
encendida y apagada frecuentemente, donde la masa del sistema es tan grande
que las temperaturas cambian extremadamente lentamente, o para una alarma de
temperatura. Un tipo especial de control de encendido y apagado utilizado para la
alarma es un controlador de límite. Este controlador utiliza un relé de enclavamiento,
que debe restablecerse manualmente, y se utiliza para detener un proceso cuando
se alcanza una cierta temperatura.
- Control PID: Este controlador proporciona proporcional con control integral y
derivado, o PID. Este controlador combina el control proporcional con dos ajustes
adicionales, lo que ayuda a la unidad a compensar automáticamente los cambios
en el sistema. Estos ajustes, integrales y derivados, se expresan en unidades
basadas en el tiempo; también son referidos por sus recíprocos, RESET y RATE,
respectivamente. Los términos proporcionales, integrales y derivados deben
ajustarse individualmente o "ajustarse" a un sistema en particular mediante prueba
y error. Proporciona el control más preciso y estable de los tres tipos de
controladores, y se utiliza mejor en sistemas que tienen una masa relativamente
pequeña, aquellos que reaccionan rápidamente a los cambios en la energía
agregada al proceso
IMÁGENES ADJUNTAS:
CONFIGURACIÓN DE UNA CAJA TRANSPARENTE DE ACRÍLICO CON UN
VENTILADOR DE CIRCUITO CON RASPBERRY PI

Imagen nº1 Imagen nº2

Imagen nº3 Imagen nº4


Programación de NodeRED en Raspberry Pi2

Imagen nº1 Imagen nº2

Imagen nº3
verifica tus códigos NodeRED con MQTT en Raspberry Pi2

Imagen nº1 Imagen nº2

Imagen nº3 Imagen nº4

Imagen nº5 Imagen nº6


Usando un Tablero para el Control PID

Imagen nº1 Imagen nº2

Imagen nº3 Imagen nº4

Imagen nº5
Tuning PID Controller

Imagen nº1 Imagen nº2

Imagen nº3 Imagen nº4


Imagen nº5 Imagen nº6

Imagen nº7 Imagen nº8


Imagen nº9

Imagen nº10
Paso 11: Lista de referencias
 Una guía para desarrolladores de Internet de las cosas (IoT) de IBM ***
 Cómo usar la plataforma IBM Bluemix (Docs)
 MQTT.org: la versión 3.1.1 se convierte en un estándar de OASIS
 MQTT.org: Documentación
 Eclipse Paho
 ¿Qué es Really Small Message Broker (RSMB)? (IBM) ***
 http://stanford-clark.com/
 La casa que twitters - Andy Stanford-Clark
 Node-RED.org: Documentación ***
 Node-RED: Corriendo en Raspberry Pi ***
 Node-RED: Funciones de escritura ***
 JavaScript Reservado Palabras
 Node-RED: Node-RED Library ***
 KIT DE EJECUCIÓN: controlador PID ***
 GitHub: un controlador PID avanzado de nodo basado en la biblioteca PID de
Arduino (
index.js Por wilberforce)
 GitHub: controlador PID Node.js Por wilberforce
 GitHub: node-red-nodes / function / PID / pidcontrol.js Por dceejay ***
 Excel PID simulator ***
 Tutorial PID **
 Automatizando mi ventilador basado en la temperatura de la CPU
 Controlador PID Wikipedia **
 Sintonice automáticamente las ganancias del controlador PID
 PID Controller Tuning en Simulink
 Ingeniería de control moderna Quinta edición Katsuhiko Ogata ****
 Sistemas de Control Automático 9ª Edición BENJAMIN C. KUO
 Sistemas de control modernos 12ª edición Richard C. Dorf

Vous aimerez peut-être aussi