Glosario Completo
Conjunto de componentes físicos y tangibles que conforman un sistema informático o electrónico. Incluye dispositivos internos como placas base, procesadores (CPU), memoria RAM, discos duros, tarjetas gráficas (GPU), y componentes externos o periféricos como monitores, teclados, ratones, impresoras y sensores. El hardware es esencial para el funcionamiento de cualquier dispositivo, ya que alberga los circuitos y mecanismos que ejecutan las instrucciones del software. En el contexto del Internet de las Cosas (IoT), el hardware se refiere a los dispositivos conectados, como sensores, actuadores y controladores, que interactúan con el entorno físico y recopilan o transmiten datos.
Conjunto de programas, aplicaciones y sistemas operativos que dirigen y controlan el funcionamiento del hardware. El software proporciona instrucciones y algoritmos que permiten al hardware realizar tareas específicas, desde operaciones básicas del sistema hasta aplicaciones complejas. Incluye sistemas operativos como Linux, aplicaciones de usuario, herramientas de desarrollo y software embebido en dispositivos. En IoT, el software es crucial para procesar datos, gestionar comunicaciones y permitir la interacción entre dispositivos conectados y usuarios finales, a menudo mediante interfaces web o móviles.
Acrónimo en inglés de Science, Technology, Engineering, Mathematics (Ciencia, Tecnología, Ingeniería y Matemáticas). Estas disciplinas forman la base de la innovación tecnológica y el desarrollo científico. La educación en STEM fomenta habilidades críticas como el pensamiento analítico, la resolución de problemas y la creatividad. En el contexto de IoT, una formación sólida en STEM es fundamental para diseñar, desarrollar y mantener sistemas complejos que integran hardware, software y redes de comunicación.
ARM (Advanced RISC Machine)
Arquitectura de procesadores basada en el conjunto de instrucciones RISC (Reduced Instruction Set Computer), diseñada para optimizar el rendimiento y minimizar el consumo energético. Los procesadores ARM son altamente eficientes y se utilizan ampliamente en dispositivos móviles, tabletas, sistemas embebidos y dispositivos IoT. Características clave de ARM:
- Eficiencia energética: Ideal para dispositivos alimentados por batería o que requieren bajo consumo.
- Rendimiento adecuado: Suficiente para ejecutar sistemas operativos modernos y aplicaciones complejas en entornos embebidos.
- Versatilidad: Soporta múltiples sistemas operativos, incluyendo Linux, Android y sistemas en tiempo real.
- Licenciamiento abierto: ARM Holdings licencia su arquitectura a fabricantes como Qualcomm, Broadcom y Samsung, permitiendo personalizaciones y optimizaciones específicas.
En IoT, los procesadores ARM permiten crear dispositivos compactos, eficientes y capaces de ejecutar tareas avanzadas, desde el procesamiento de datos hasta la conectividad en red.
Página oficial: https://www.arm.com/
SoC (System on Chip)
Sistema en un Chip, es un circuito integrado que combina todos los componentes de un sistema informático o electrónico en un solo chip. Incluye:
- CPU: Procesador central para ejecutar instrucciones.
- GPU: Procesador gráfico para manejo de imágenes y videos.
- Memoria: RAM y almacenamiento interno.
- Controladores de entrada/salida: Para interfaces como USB, HDMI, Ethernet.
- Componentes adicionales: Como módulos de conectividad inalámbrica (Wi-Fi, Bluetooth), gestión de energía y otros periféricos.
Los SoC son fundamentales en dispositivos móviles y embebidos, incluyendo smartphones, tabletas y dispositivos IoT, ya que permiten reducir el tamaño físico, el costo y el consumo de energía, mientras aumentan la integración y el rendimiento general del sistema.
SO Linux (Sistema Operativo Linux)
Sistema operativo de código abierto basado en Unix, conocido por su estabilidad, seguridad y flexibilidad. Linux es altamente configurable y puede adaptarse a una amplia gama de dispositivos y aplicaciones, desde servidores y supercomputadoras hasta dispositivos móviles y sistemas embebidos. Características clave:
- Multiplataforma: Compatible con arquitecturas x86, ARM y otras.
- Comunidad activa: Desarrollo continuo y soporte de una amplia comunidad de desarrolladores y usuarios.
- Distribuciones variadas: Existen múltiples distribuciones (distros) como Ubuntu, Debian y Fedora, adaptadas para diferentes necesidades.
En IoT, Linux es comúnmente utilizado en dispositivos como la Raspberry Pi, proporcionando un entorno robusto para ejecutar aplicaciones, gestionar dispositivos y asegurar la conectividad en red. Su naturaleza de código abierto permite personalizaciones y optimizaciones específicas para cada proyecto.
Página oficial: https://www.linuxfoundation.org/
Versión compacta de Raspberry Pi, con un procesador ARM de un solo núcleo a 1 GHz, 512 MB de RAM y puertos mínimos para reducir su costo y tamaño. Ideal para proyectos IoT de bajo consumo, como monitoreo remoto o dispositivos portátiles. Cuenta con pines GPIO accesibles para conectar sensores y actuadores.
Página oficial: https://www.raspberrypi.org/products/raspberry-pi-zero/
Modelo que incorpora un procesador ARM Cortex-A53 de 64 bits a 1.2 GHz, 1 GB de RAM y conectividad Wi-Fi 802.11n y Bluetooth 4.1 integrados. Incluye puertos GPIO, HDMI, USB y un conector Ethernet de 100 Mbps, lo que lo hace adecuado para proyectos que requieren conectividad inalámbrica y potencia moderada.
Página oficial: https://www.raspberrypi.org/products/raspberry-pi-3-model-b/
Mejora significativa del modelo anterior, con opciones de RAM de 2 GB, 4 GB y 8 GB, procesador ARM Cortex-A72 de cuatro núcleos a 1.5 GHz, puertos USB 3.0, Gigabit Ethernet y dos salidas micro-HDMI con soporte para monitores 4K. Ofrece mayor capacidad para ejecutar aplicaciones más exigentes, como servidores ligeros, procesamiento multimedia y aplicaciones de inteligencia artificial.
Página oficial: https://www.raspberrypi.org/products/raspberry-pi-4-model-b/
Última generación de Raspberry Pi con procesador ARM Cortex-A76 de cuatro núcleos a 2.4 GHz, GPU mejorada VideoCore VII y opciones avanzadas de almacenamiento con eMMC o NVMe. Soporta módulos de expansión PCIe 2.0, ofreciendo mayores velocidades de transferencia. Es ideal para aplicaciones más complejas, como inteligencia artificial, visión por computadora, servidores edge y aplicaciones industriales.
Página oficial: https://www.raspberrypi.com/products/raspberry-pi-5/
GPIO (General Purpose Input/Output)
Pines programables en placas como la Raspberry Pi, que pueden actuar como entradas o salidas digitales. Se utilizan para conectar sensores, actuadores, LEDs, botones y otros dispositivos electrónicos. Los GPIO soportan varios protocolos de comunicación como I2C, SPI y UART, y se pueden controlar mediante lenguajes de programación como Python o C, permitiendo la automatización y control en tiempo real de dispositivos conectados.
SDA (Serial Data)
Línea de datos utilizada en el protocolo de comunicación I2C (Inter-Integrated Circuit). Permite que múltiples dispositivos se comuniquen en un mismo bus utilizando solo dos cables (SDA y SCL), facilitando la conexión de sensores y módulos sin necesidad de múltiples pines. La línea SDA transporta la información entre el maestro y los dispositivos esclavos.
SCL (Serial Clock)
Línea de reloj utilizada en el protocolo de comunicación I2C. La señal en SCL sincroniza la transferencia de datos en la línea SDA entre los dispositivos conectados al bus I2C. El dispositivo maestro genera la señal de reloj en SCL para coordinar la lectura y escritura de datos con los dispositivos esclavos.
TXD0 (Transmit Data 0)
Pin de transmisión de datos utilizado en la interfaz UART. Envía datos seriales desde la placa (por ejemplo, una Raspberry Pi) hacia un periférico externo, como un módulo GPS, Bluetooth o un microcontrolador. Es esencial para establecer comunicación serial asíncrona en proyectos IoT.
RXD0 (Receive Data 0)
Pin de recepción de datos utilizado en la interfaz UART. Recibe datos seriales desde un dispositivo externo hacia la placa principal. Junto con TXD0, permite la comunicación bidireccional entre dispositivos, facilitando el intercambio de información en proyectos IoT.
Arquitectura de conjunto de instrucciones para microprocesadores desarrollada por Intel y utilizada ampliamente en ordenadores personales, portátiles y servidores. Características principales:
- Alto rendimiento: Diseñada para ejecutar aplicaciones complejas y exigentes en recursos.
- Compatibilidad amplia: Soporta una gran variedad de sistemas operativos, incluyendo Windows, Linux y macOS.
- Consumo energético mayor: En comparación con arquitecturas como ARM, los procesadores x86 suelen consumir más energía.
En el contexto de IoT, los procesadores x86 se utilizan en dispositivos que requieren mayor potencia de cálculo y donde el consumo energético no es tan crítico, como en pasarelas de datos, servidores edge o sistemas industriales de control.
Sistema operativo basado en Debian Linux, optimizado para las placas Raspberry Pi. Proporciona un entorno gráfico ligero y herramientas preinstaladas, como Python, Scratch y diversas utilidades de configuración. Características:
- Soporte para GPIO: Incluye bibliotecas para interactuar con los pines GPIO y controlar hardware externo.
- Entorno educativo: Diseñado para facilitar el aprendizaje de programación y electrónica.
- Actualizaciones regulares: Mantiene compatibilidad y seguridad con actualizaciones periódicas.
Página oficial: https://www.raspberrypi.org/software/
Lenguaje de programación de alto nivel, interpretado y de propósito general, conocido por su legibilidad y sintaxis sencilla. Es popular en aplicaciones de IoT debido a:
- Facilidad de aprendizaje: Ideal para principiantes y educación.
- Amplia comunidad y bibliotecas: Soporta numerosos módulos para redes, control de hardware, procesamiento de datos y más.
- Interacción con hardware: Mediante bibliotecas como GPIO Zero o RPi.GPIO, permite controlar pines GPIO y periféricos en la Raspberry Pi.
Página oficial: https://www.python.org/
Conjunto de bibliotecas y herramientas de Python diseñadas para interactuar con el hardware de la Raspberry Pi. Permiten controlar los pines GPIO y conectar sensores, actuadores y otros dispositivos. Bibliotecas destacadas:
- RPi.GPIO: Biblioteca estándar para controlar pines GPIO en Raspberry Pi.
- GPIO Zero: Biblioteca simplificada para principiantes, facilita el control de dispositivos comunes como LEDs, botones y sensores.
- pigpio: Ofrece control avanzado y permite acceso remoto a los GPIO.
Estas bibliotecas facilitan la programación y automatización en proyectos de IoT utilizando Python en la Raspberry Pi.
Página oficial de GPIO Zero: https://gpiozero.readthedocs.io/
DHT11
Sensor digital de temperatura y humedad, conocido por su bajo costo y facilidad de uso. Características:
- Rango de temperatura: 0°C a 50°C con precisión de ±2°C.
- Rango de humedad: 20% a 90% de humedad relativa con precisión de ±5%.
- Comunicación: Utiliza un solo pin de datos para enviar información al microcontrolador.
Es ampliamente utilizado en proyectos de IoT que requieren monitoreo ambiental, como estaciones meteorológicas caseras o sistemas de control de clima.
Página de referencia: https://learn.adafruit.com/dht
RFID (Radio Frequency Identification)
Tecnología que utiliza ondas de radio para identificar y rastrear automáticamente etiquetas adheridas a objetos. Componentes principales:
- Etiquetas RFID: Dispositivos pequeños que contienen un chip y una antena, pueden ser activos (con batería) o pasivos (sin batería).
- Lectores RFID: Dispositivos que emiten ondas de radio para activar y comunicarse con las etiquetas.
- Frecuencias comunes: LF (125-134 kHz), HF (13.56 MHz), UHF (860-960 MHz).
En IoT, RFID se utiliza para control de acceso, seguimiento de activos, gestión de inventario y aplicaciones donde se requiere identificación sin contacto.
Página de referencia: https://www.rfidjournal.com/
RC522
Módulo RFID basado en el chip MFRC522 de NXP, utilizado para leer y escribir en tarjetas y etiquetas RFID de alta frecuencia (13.56 MHz). Características:
- Comunicación: Utiliza el protocolo SPI para comunicarse con microcontroladores como la Raspberry Pi o Arduino.
- Compatibilidad: Soporta tarjetas MIFARE y otros estándares ISO/IEC 14443A.
- Aplicaciones comunes: Sistemas de control de acceso, identificación de usuarios, seguimiento de activos.
Página oficial del chip MFRC522: https://www.nxp.com/products/rfid-nfc/nfc-readers/mifare-ultralight-reader-ic
Flask
Microframework web escrito en Python que permite desarrollar aplicaciones web ligeras y rápidas. Características:
- Simplicidad: Ofrece las herramientas básicas necesarias sin sobrecargar con funcionalidades innecesarias.
- Flexibilidad: Permite ampliar funcionalidades mediante extensiones según las necesidades del proyecto.
- Ideal para APIs: Utilizado para crear servicios web RESTful que pueden interactuar con dispositivos IoT.
En proyectos IoT, Flask se utiliza para crear interfaces web que permiten controlar y monitorear dispositivos de forma remota.
Página oficial: https://flask.palletsprojects.com/
Raspbian
Nombre anterior de la distribución oficial de Linux para Raspberry Pi, ahora conocida como Raspberry Pi OS. Basada en Debian, está optimizada para el hardware de la Raspberry Pi y ofrece un entorno amigable para la enseñanza y desarrollo de proyectos. Incluye software educativo, herramientas de programación y utilidades para interactuar con el hardware.
Página oficial: https://www.raspberrypi.org/software/
Mathematica
Software de cálculo simbólico y numérico desarrollado por Wolfram Research. Permite realizar desde cálculos matemáticos básicos hasta simulaciones complejas y visualizaciones avanzadas. Características:
- Lenguaje de programación propio: Wolfram Language, orientado a computación simbólica.
- Amplias capacidades: Matemáticas, gráficos, procesamiento de señales, análisis de datos.
- Integración con Raspberry Pi: Una versión de Mathematica está disponible para Raspberry Pi, permitiendo realizar cálculos avanzados en este dispositivo.
Página oficial: https://www.wolfram.com/mathematica/
SSID (Service Set Identifier)
Nombre que identifica de manera única una red inalámbrica Wi-Fi. Características:
- Visibilidad: El SSID es difundido por el punto de acceso para que los dispositivos puedan encontrar y conectarse a la red.
- Seguridad: Aunque ocultar el SSID puede agregar una capa adicional de seguridad, no es un método efectivo por sí solo para proteger una red.
- Configuración: Los dispositivos deben conocer el SSID y la contraseña (si está protegida) para conectarse a la red.
El SSID permite a los usuarios seleccionar la red correcta entre múltiples opciones disponibles.
SSH (Secure Shell)
Protocolo y conjunto de herramientas que permiten acceder y gestionar dispositivos de forma remota y segura a través de una red. Características:
- Encriptación: Proporciona comunicación cifrada para evitar interceptaciones y asegurar la confidencialidad.
- Acceso remoto: Permite controlar dispositivos sin necesidad de conexión física, ideal para dispositivos IoT.
- Túneles seguros: Puede utilizarse para crear túneles seguros para otros protocolos y servicios.
En la Raspberry Pi, SSH se utiliza comúnmente para administrar el dispositivo en modo headless, sin monitor ni teclado conectados.
Página oficial de OpenSSH: https://www.openssh.com/
Herramienta oficial proporcionada por la Fundación Raspberry Pi para instalar sistemas operativos en tarjetas SD para su uso en la Raspberry Pi. Características:
- Facilidad de uso: Interfaz sencilla que permite seleccionar el sistema operativo y la tarjeta SD.
- Configuración previa: Permite preconfigurar opciones como habilitar SSH, configurar Wi-Fi y establecer el idioma y la zona horaria.
- Amplia selección de sistemas operativos: Incluye opciones para instalar Raspberry Pi OS y otras distribuciones compatibles.
Página oficial: https://www.raspberrypi.org/software/