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.
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.
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.
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.
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.
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.
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.
Ú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.
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.
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.
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 DebianLinux, 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.
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.
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:
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.
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:
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.
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.
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.