Laboratorio Virtual con VirtualBreadboard: Simulador de Arduino y PIC.

Una pregunta frecuente que muchos interesados en aprender a programar microcontroladores se hacen es: ¿Puedo aprender a programar el Arduino o microcontroladores PIC sin tener la placa o el hardware necesario?

La respuesta es: Sï, con la ayuda de un emulador como VirtualBreadboard.

Del sitio oficial de VirtualBreadboard:

"VirtualBreadboard es un entorno de simulación y desarrollo para aplicaciones embebidas que usan microcontroladores. Es fácil de usar y puede reemplazar un protoboard para experimentar con nuevos diseños.

VBB simula muchos microcontroladores de las líneas PIC16 y PIC18, ahora también con la emulación de Arduino. En adición se encuentran una amplia variedad de componentes simulados como LCDs, servos, lógica y otros dispositivos de E/S que pueden ser usados para modelar y simular circuitos de alto nivel."

NOTA: Virtual Breadboard ha sufrido algunos cambios desde la época en que se escribió este artículo, por lo cual parte de la información presentada podría no aplicarse más a las nuevas versiones.

ACTUALIZACION 17/12/12: Las condiciones para la licencia de este producto son muy inestables; hay épocas en que la descarga aparece gratuita y otras en las que tiene un costo (¿?) . Para verificar los detalles actuales por favor ingresen a su sitio web en www.virtualbreadboard.com. Por otra parte, a partir de la versión 4.5 (11/10/2011) aparentemente se han hecho cambios sustanciales en el software, por lo cual los procedimientos descritos en este tutorial podrían variar en alguna manera.

¿Cómo Funciona?

VirtualBreadboard (VBB) te permite conectar "virtualmente" (en la pantalla de tu computadora) los componentes para formar tu circuito o hardware virtual y probar tus programas o código sin necesidad de contar con el hardware real implementado.

Funciona en base a una librería de componentes virtuales que vienen incluidos en el paquete de software: botones pulsadores, LEDs, potenciómetros, displays LCD, motores servo y steppers, chips de lógica e incluso memorias EEPROM y convertidores ADC y DAC. Adicionalmente VBB incluye una plataforma llamada Micromorph CDK (Kit de Desarrollo de Componentes Micromorph) que te permite construir y añadir tus propios componentes con simulación de entradas y salidas.

Componentes en el VirtualBreadboard


Crear y simular un proyecto es simple e implica básicamente lo siguiente:

  1. Interconecta todos los componentes necesarios en la ventana de conexiones (breadboard virtual).
  2. Escribe el código que debe correr en el microcontrolador. Para el Arduino se usa el lenguaje de Arduino y para los PICs actualmente sólo soporta lenguaje ensamblador.
  3. Simula la ejecución del código y el comportamiento de los componentes.
  4. Realiza los ajustes necesarios en tu hardware y código.

El VBB en su última versión al momento de esta publicación viene con numerosos proyectos de ejemplo para Arduino, PIC16 y PIC18, la plataforma Amicus y Netduino, listos para correrlos y analizarlos. A continuación se muestra las ventanas de breadboard virtual y código de un ejemplo sencillo con Arduino, un LED y un potenciómetro:

Ventajas y Limitaciones de VirtualBreadboard

VBB es una excelente opción de entrada para aprender a programar el Arduino si no se cuenta con la placa real y para quienes desean probar primeramente la plataforma y verificar que se ajusta a sus necesidades y expectativas, antes de arriesgarse a realizar la inversión económica en la compra de la placa de hardware. ¿Será dificil aprender a programarlo? ¿Cómo funciona? se preguntan quienes no tienen experiencia con Arduino; ahora pueden probarlo virtualmente por sí mismos antes de comprar la placa.

Respecto a la simulación de los PICs sería excelente si el VBB soportara la simulación de lenguaje C; actualmente solo soporta el lenguaje ensamblador asociado al PIC, el cual es complejo y no muy recomendable para principiantes, sin embargo es posible que en el futuro soporte lenguaje C también.

Desde ya cualquier plataforma de simulación tiene sus limitaciones. Para los principiantes el VBB es una excelente herramienta para el aprendizaje; para los que tienen más experiencia es útil para pruebas y prototipos sencillos y rápidos; pero no muy útil para realizar proyectos de complejidad media o alta en los cuales ppor lo general se requiere contar con el hardware implementado para pruebas reales no simuladas.

El uso del software es por sí mismo muy intuitivo, cualquier persona con conocimientos básicos del manejo de la PC puede instalarlo y comenzar a probar los ejemplos incluidos en la instalación del paquete. Si uno no tiene conocimientos muy básicos de electronica y microcontroladores posiblemente necesite al principio un tutor para aprender a usarlo.


En BINARY MICROSYSTEMS, nos interesa tu apredizaje por lo que en el área de Downloads dejaremos algunos tutoriales y manuales de VirtualBreadboard y Arduino para que empieces a desarrollarte como todo un experto en microcontroladores.


Hasta el proximo articulo.


Ing. Irving Adair Salinas C.

CEO & General Manager de Binary Microsystems

Escribir comentario

Comentarios: 2
  • #1

    Royland22 (sábado, 21 noviembre 2015 23:25)

    excelente blog.. Yo utilizo una herramienta de adobe que se llama 123DCircuit , en ella trabajad en la nube sin necesidad de instalar ningún software (directamente desde el navegador) pero igual y la pruebo... Al fin es recomendada por ti.

    Esperando los tutoríales de Arduino .. Ah por cierto, no veo el link de Downloads!!

  • #2

    isalinas@bmicrosys.com.mx (sábado, 21 noviembre 2015 23:39)

    Que tal Royland22, primeramente muchas GRACIAS por tus buenos comentarios.
    En lo personal, he estado trabajando aproximadamente como 8 meses con este software y no he tenido problema alguno, sin embargo, no dudo que la herramiento de Adobe sea más experimentada en cuanto a componentes virtuales, como lo es en otras herramientas de la marca, creo que sería de cada quien averiguar que herramienta le permite desarrollarse mejor.
    En cuanto al área de Descargas, la tengo suspendida, por lo que te pido una DISCULPA por no tenerla en servicio, por lo que a más tardar el día de mañana estará disponible.

    Cabe mencionar, que tambien puedes colaborar con la carga de archivos (como tutoriales o manuales) para que otros lectores puedan acceder a ellos.

    SALUDOS.

    I. ADAIR SALINAS
    CEO & GENERAL MANAGER BINARY MICROSYSTEMS