Sistemas de Control – Configuración Python y Jupyter Notebook

Como lo había mencionado en la introducción de esta serie de repaso de sistemas de control, creí que sería buena idea agregar ejercicios como forma de demostración de algunos conceptos. La herramienta comúnmente usada para esto es MATLAB con su Control Systems Toolbox, sin embargo, MATLAB no es gratuito y probablemente no todos pueden acceder al software sin recurrir a la piratería. Por eso, buscando alternativas encontré la Control Systems Library de Python (python-control), que ofrece funciones de análisis y diseño básicas similares a las de MATLAB. En esta entrada abordo la configuración del espacio de trabajo usando Jupyter Notebook y la instalación de la Control Systems Library.

Es importante recordar qué Python funciona en Windows, MacOS y Linux, y que las instrucciones de esta entrada aplican para estos sistemas operativos. Para comenzar es necesario instalar Python desde aquí, al momento de escribir esta entrada la versión 3.9.2 es la más reciente, pero versiones superiores a la 3.5 deberían trabajar sin inconvenientes.

Luego de instalar Python debemos instalar pip, que es instalador de paquetes de software de Python. Para descargarlo podemos ir a este enlace: get-pip.py. Luego de descargarlo, debemos correr el siguiente comando desde la ventana de comandos o desde la terminal, dependiendo del sistema operativo.

python get-pip.py

Después de instalar pip tenemos que crear un ambiente virtual de Python para instalar los módulos que vamos a usar; es importante aclarar que los módulos se pueden instalar sin crear un ambiente virtual, pero esto podría crear problemas de compatibilidad con otros módulos o programas. En este caso usamos la herramienta de Python para crear ambientes virtuales, pero también se puede usar Conda.

Para comenzar creamos una carpeta con el nombre control_systems, luego corremos el siguiente comando en la carpeta que acabamos de crear.

python -m venv venv

Para activar el ambiente virtual usamos el siguiente comando.

Para Windows:

venv\Scripts\activate.bat

Y para Linux o Mac:

source venv/bin/activate

Después de activar el ambiente virtual tenemos que preparar la interfaz en la que vamos a trabajar. En este caso vamos a usar Jupyter Notebook, que es una aplicación web que funciona como IDE y que nos permite hacer algo parecido al live script de Matlab. Para instalar Jupyter Notebook en nuestro ambiente virtual sólo debemos escribir el siguiente comando en la ventana de comandos o la terminal.

(venv) pip install notebook

Luego de la instalación, podemos correr la aplicación escribiendo el siguiente comando.

(venv) jupyter notebook

La interacción con la aplicación la hacemos desde el navegador, en este caso se abrirá en el navegador predeterminado. Desde allí se podremos explorar el disco duro y acceder a los archivos .ipynb, que son los notebook.

El proyecto Jupyter también ofrece JupyterLab, que es una aplicación web con más funcionalidades que las ofrecidas por Notebook. Para la instalación de JupyterLab usamos el comando pip install jupyterlab, una vez instalado podemos correr la aplicación con el comando jupyter-lab ; en este caso es posible trabajar con la aplicación que nos parezca mas cómoda.

Luego de definir la interfaz, tenemos que instalar NumPy, que es un paquete esencial para poder hacer cálculos matemáticos y rutinas de algebra lineal. La instalación es sencilla usando pip con el siguiente comando.

(venv) pip install numpy

En ese orden, también debemos instalar SciPy, que es una librería fundamental para computación científica. El comando es el siguiente.

(venv) pip install scipy

Para manejar matemática simbólica debemos instalar SymPy usando el siguiente comando.

(venv) pip install sympy

Para poder generar y visualizar gráficos usamos Matplotlib con el siguiente comando.

(venv) pip install matplotlib

Finalmente, instalamos el paquete de control para Python, que es el que nos permite usar funciones para analizar y diseñar sistemas de control. El comando de instalación es el siguiente.

(venv) pip install control

Con este paso podemos dar por finalizada la configuración del ambiente para poder hacer los laboratorios o ejercicios de este repaso. Tal vez en algún punto del repaso vea que el paquete de control no es suficiente, en ese caso cambiaré a MATLAB o buscaré otra alternativa.

Más información:
Python
pip
Jupyter Notebook
NumPy
SciPy
SymPy
Matplotlib
Python Control Systems Library

Si tienes alguna inquietud no dudes en comentar.

1 pensamiento en “Sistemas de Control – Configuración Python y Jupyter Notebook”

  1. Pingback. Sistemas de Control – Introducción e Índice – palmacas

Deja un comentario

Este sitio usa Akismet para reducir el spam. Aprende cómo se procesan los datos de tus comentarios.