Electrónica en Linux

En GNU/Linux podemos trabajar perfectamente con modestos y muy buenos aplicativos del campo de la electrónica. Aquí tenemos a disposición toda una gama de software multiplataforma, tanto de simulación, programación y diseño de circuitos, como de placas o circuitos impresos. Todo bajo licenciamiento GPL y Open Source. Veamos entonces las herramientas o soluciones que podemos aprovechar de electrónica en Linux.

En este artículo veremos 29 aplicativos que conforman todo un ambiente electrónico para propósitos profesionales, académicos o aficionado. Aunque el número es mayor, con estas es suficiente para comenzar.

Todos los procedimientos de instalación aquí descritos se ejecutaron sobre Ubuntu 18.04.

SimulIDE


SimulIDE es un entorno de desarrollo integrado para la creación y simulación de circuitos electrónicos generales. Incluye simulación de microcontroladores tales como PIC, AVR, así como un ambiente de trabajo virtual para Arduino.

Para instalar SimulIDE solo es suficiente descargarlo de su  sitio oficial y descomprimirlo:

Luego, creamos un acceso en nuestro Escritorio haciendo clic derecho -> Crear un lanzador… En la ventana que se abre le ponemos un nombre a nuestro lazandor, y en el campo «Comando:» le ponemos la ruta donde dejamos el ejecutable de SimulIDE

electrónica en linux

KTechlab


KTechlab es un buen entorno de diseño y simulación de cirtucitos electrónicos, digitales y de microcontroladores. Tal como SimulIDE, KTechlab ofrece todo lo necesario para una simulación completa: compuertas lógicas, flip-flops, multiplexador, un codificador de decimal a binario, etc.

Para instalarlo, debemos descargar su tarball de instalación desde su ubicación en SourceForge (la versión 0.40.1), y seguir el procedimiento explicado en el siguiente vídeo (Amplía a pantalla completa):

Cómo instalar software en Linux desde un tarball

 

PICSimLab


PICSimLab es una emulador en tiempo real de entrenadores para microcontroladores de la familia Microchip. Con este software podemos emular proyectos basados en el PIC16F84, PIC16F628, PIC16F648, PIC16F777, PIC16F877A, PIC18F452, PIC18F4520, PIC18F4550 y PIC18F4620. También podemos emular microcontroladores simavr (ATMEGA328) y Arduino.

pic en linux

PIC16F877

Descargamos el paquete picsimlab_0.7.5_amd64.deb, y lo instalamos con el siguiente procedimiento:

Mu Editor


Mu Editor es un editor de código Python. Aunque no es una entorno de desarrollo integrado de electrónica, podemos usarlo para programar placas electrónicas de desarrollo, tal como la Adafruit Playground Express. Suele usarse ampliamente entre los estudiantes como iniciación en dicho lenguaje de programación.

Placa de desarrollo Playground Express con múltiples sensores y salidas

Tenemos un artículo de inicación que explica la programación básica de la Playground Express, con Mu Editor en Ubuntu (puedes tocar la imagen para abrir el artículo):

Instalar Mu editor

Lo mismo sucede con Jupyter Notebook, el cual podemos instalar en una Raspberry Pi para programar sus puertos GPIO. Hasta podemos programar su bus I2C para comunicarlo con otros dispositivos, y elaborar con esto soluciones industriales (trabajar con I2C en Raspberry):

Raspberry Pi 3+

Orange Pi


Esta placa electrónica para IoT es una versión reducida y más económica de la Raspberry Pi.  En la página de Orange Pi en español podemos ver su proceso de instalación y puesta en marcha, desde GNU/Linux.

electrónica en linux

Orange Pi

Qucs (Quite Universal Circuit Simulator)


También es un simulador de circuitos electrónicos. Es de licenciamiento GPL. Los datos de simulación pueden presentarse con varios tipos de diagramas, incluyendo el cartesiano, tabulares, diagrama de Smith, diagramas cartesianos en 3D, diagramas temporales, tablas de verdad y más.

Podemos descargar la versión para compilar, qucs-0.0.019.tar.gz, desde SourceForge. También podemos probar la nueva versión qucs-0.0.20.tar.gz. Y hablamos de descargar la versión para compilar, porque el último paquete binario DEB de instalación es viejo (del año 2014).

Antes de compilar e instalar Qucs, debemos compilar e instalar la librería ADMS. Esta librería (Automatic Device Model Synthesizer) es un traductor de código abierto de Verilog-A.

Instalación de ADMS

_# git clone https://github.com/Qucs/ADMS
_# cd ADMS
_# ./bootstrap.sh
_# ./configure
_# make
_# make install
_# ldconfig

Instalación de Qucs

El procedimiento es el siguiente (si falla por alguna dependencia, instalela):

_# ./bootstrap
_# ./configure --disable-doc
_# make
_# make install

En el siguiente enlace, puedes ver el modelado de una celda fotovoltaica con Qucs.

Arduino


El proceso de instalación del IDE  de Arduino en GNU/Linux es muy parecido al de SimulIDE. Descargamos el paquete para Linux desde el sito oficial de Arduino. Luego descomprimimos, vamos al ejecutable y listo.

sensor de temperatura

IDE de Arduino

sensor de temperatura

Placa de Arduino

MyOpenLab


Es un entorno de simulación y modelado físico, y electrónico, capaz de conectarse con Arduino a través de la librería Firmata. Su potencia de cálculo y procesamiento de datos la hace una herramienta valiosa. MyOpenLab es la competencia Libre y gratuita de NI Labview. Aunque NI Labview también es una buena herramienta de simulación, se restringe a plataformas Windows y distribuciones Linux basadas en Red Hat, y además, no es Libre ni OpenSource.

Podemos ver un par de vídeos que muestran su instalación y conexión con Arduino, en Ubuntu:

Sitios web en español sobre MyOpenLab:

Fritzing


Es una iniciativa Open Sorce pensada para estudiantes, aficionados, artistas, etc, pues su estilo de  trabajo es más recreativo con la electrónica. Su instalación es similar a la del IDE de Arduino. Solo es descargar el paquete para Linux desde el sitio oficial de Fritzing, descomprimir, darle permisos al archivo parts.db y listo.

KiCad


Es un paquete de software libre que facilita el diseño de placas electrónicas, circuitos impresos, o PCB. Consta de un administrador de proyectos, un editor de esquemáticos, un entorno de diseño PCB, visualizador de archivos Gerber y un convertidor de imágenes a footprint.

Su instalación es muy sencilla, solo ejecuta el siguiente comando:

_$ sudo apt install kicad

Analizador de señales


Quizás el visualizador de señales más maduro y OpenSource, es sigrok-cli y su interfaz gráfica PulseView. Se usa para visualizar las señales provenientes de algunos osciloscopios, multimetros y de Analizadores Lógicos, suficientes para monitorear protocolos como I2C, Serial, CAN, SPI, SMBUS, etc.

Para asegurarnos que la versión instalada de sigrok-cli tenga soporte para cierto modelo del multímetro UNI-T, usamos el comando sigrok-cli -L | grep uni-t

Podemos instalar este dúo con el comando sudo apt install sigrok-cli pulseview. También podemos seguir esta guía de instalación de sigrok-cli y pulseview.

electrónica en linux

Visualización de señales provenientes de un Analizador Lógico

Qucs-S (Qucs con SPICE)


Qucs-S es un spin-off ó desarrollo independiente de Qucs. Esta hecho para integrarse con el programa de simulación SPICE, aunque también acepta la integración con su alterno open source NGSPICE.

Instalación de NGSPICE

Instalación de Quc-S

AVRDUDE


AVERDUDE es un programa desarrollado para leer o cargar (programar) microcontroladores Atmel (ATmega). Podemos instalarlo en Ubuntu con el comando sudo apt install avrdude

Puedes ver una guía básica de uso bajo Linux en el blog de Vida Embebida, también en la página de PenTestPartners, o aquí.

GKmap


Es un programa muy sencillo que expresa la simplificación matemática del mapa de Karnaugh. Su desarrollo se quedó hasta el año 2008, pero todavía sirve. Puedes ampliar más sobre el mapa de Karnaugh aquí.

Instalación de GKmap

Más opciones de electrónica en Linux


Xoscope

Osciloscopio digital para audio, que trabaja con la señal que le proporcionemos por el jack del micrófono. Su tarball en SourceForge.

gEda

Para ampliar más este tema, puedes revisar el proyecto de software libre gEda.

Programación de FPGA

La Matriz de Compuertas Programables, o FPGA, es un dispositivo al que podemos describirle un circuito digital, usando un lenguaje específico como el VHDL y Verilog. Es un dispositivo que puede programarse para casi cualquier cosa. Tiene un conjunto muy grande de componentes digitales combinacionales y secuenciales, tales como compuertas AND, OR, NOT, FLIP-FLOPs, etc.

Puedes simular su programación con Icarus ó Verilator, un simulador libre (GPL) y potente de Verilog HDL (documentación Verilator y Verilog). Con Icarus y Verilator podemos aprender y jugar con Verilog. También puedes revisar GHDL.

Sitio web sobre FPGAs libres. También FPGAs libres en la web de Obijuan.

Qflow

Qflow es un conjunto de herramientas utilizadas para convertir un circuito descrito en lenguaje Verilog o VHDL, en un modelo circuito físico pensado para su fabricación.

Logisim

Logisim es una herramienta libre de diseño y simulación de circuitos lógicos digitales, que puede puede ser utilizado para el diseño de CPUs con propósitos educativos. Puedes instalarlo con el comando sudo apt install logisim

Logisim

QElectroTech

Software para creación de diagramas eléctricos. Sitio oficial de QElectro Tech.

GNUSim8085

Simulador y ensamblador del microprocesador Intel 8085. Puedes descargarlo del sitio oficial de GNUSim8085.

LibrePCB

Sofware EDA, de licenciamiento GPL, para el desarrollo de circuitos impresos. Sitio oficial de Libre PCB.

Pinguino

Pinguino es un ambiente de desarrollo de hardware y de software similar a Arduino, pero para microcontroladores PIC. Existe amplia documentación al respecto la cual puedes revisar en los siguientes enlaces:

Página oficial del proyecto www.pinguino.cc
Programación del PIC18F4550 y PIC18F2550
Introducción a la Plataforma Pinguino

gpSim

El gnupic Simulator, o gpsim, es un simulador de software para microcontroladores PIC de Microchip. Está diseñado para ser lo más preciso posible. Puedes descargar el proyecto desde SourceForge.

Gresistor

Es un identificador ohmico de resistencias codificadas en colores. Puedes instalarlo con el comando sudo apt install gresistor

Linsmith

Linsmith es un software para la generación de cartas de Smith en Linux.

GNU Radio

Es una herramienta de desarrollo libre y abierta que nos permite implementar sistemas de radio definida por software. Puede utilizarse con hardware de RF de bajo costo, o sin hardware en un ambiente de simulación. Es utilizado en ambientes académicos, aficionados y comerciales para dar soporte a la investigación en comunicaciones inalámbricas y en sistemas de radio en el mundo real.

Procedmiento de instalación de GNU Radio

Hardware para trabajar con GNU Radio

Experimentos virtuales

En la página web de PhET projects podemos encontrar una buena cantidad experimentos básicos virtuales sobre electricidad, magnetismo y física en general. Todos elaborados en Java.

Para usarlos, solo debemos descargarlos y ejecutarlos, bien sea por comandos o en entorno gráfico. Debes tener Java en tu sistema. Puedes instalar Java en Ubuntu con el comando apt-get install default-jre, ó, desde el repositorio de webupd8team, así:

_$ sudo add-apt-repository ppa:webupd8team/java
_$ sudo apt update
_$ sudo apt install oracle-java8-installer

Finalmente ejecutamos el java del experimento:

OpenSCADA

Es la versión OpenSource de SCADA, un software de computador para la supervisión, control y adquisición de datos. Entonces facilita el control y la supervición de procesos industriales a distancia. Podemos revisar su documentación en la página oficial de OpenSCADA.

Existen más soluciones tipo SCADA para Linux que puedes revisar en la página Linux SCADA, o en la página de Automation Forum.

Antecesores


Hasta hace unos ocho años (más o menos) existían dos distribuciones GNU/Linux orientadas a este campo. Una se llamaba CEELD (Cyler’s Electronics Engineering Linux Distro) basada en OpenSUSE Studio. Y la segunda era Fedora Electronic Lab (su sitio web era https://spins.fedoraproject.org/fel/). Digo que existían porque su desarrollo de detuvo.

Quizás alguien de la comunidad del Software Libre (podrías ser tu, como podría ser yo) pueda convertir todo este articulo en una nueva distribución GNU/Linux totalemente Libre y OpenSource, orientada a las necesidades de la nueva generación de chicos, estudiantes, profesionales y aficionados de la electrónica.

Electrónica en Linux Overall rating: ★★★★★ 4.5 based on 2 reviews
5 1

 

Su nombre
Email
Titulo
Valoración
Opinión

 

Excelente aporte

★★★★★
5 5 1
Pondré en practica esta información

aficionado a la electronica

★★★★☆
4 5 1
Muy buena colección de programas de electrónica, pero no pude instalar ktechlab en linux mint 19.04 y myopenlab me genera errores con java al instalar, cambié el paquete java JRE8 y no funcionó, luego instalé JDK8 y sigue dando los mismos problemas. saludos desde Fusagasugá, cundinamarca, Colombia

 

Comparte esto en
Publicado en Lógica Digital.