Guías · 18 min de lectura

Tinkercad Arduino: guía del simulador con circuitos y código

Tinkercad Arduino paso a paso: crear cuenta, circuitos con LED y sensores en protoboard, código por bloques y texto, monitor serie, multímetro virtual y Wokwi.

Simular Arduino en Tinkercad es la forma más fácil de montar un circuito y ejecutar su código antes de tener una sola pieza. En Tinkercad Circuits, la herramienta gratuita de Autodesk que funciona en el navegador, conectas un Arduino Uno a una protoboard virtual, añades LED, resistencias, pulsadores y sensores, escribes el código y pulsas Start Simulation (iniciar simulación): el LED se enciende, el servo gira y los datos aparecen en el monitor serie. Ningún LED se quema y ninguna placa se estropea por una conexión equivocada, porque todo ocurre en la pantalla. Por eso muchos cursos escolares de Arduino empiezan con Tinkercad.

En esta guía empezarás creando una cuenta, montarás tu primer circuito en la protoboard, verás la diferencia entre el código por bloques y el código de texto, seguirás los datos de un sensor en el monitor serie y en su gráfica y medirás tensión, corriente y resistencia con el multímetro virtual. Después conocerás las aulas para docentes, qué componentes tiene Tinkercad y cuáles no, en qué se diferencia la simulación de un circuito real y por qué conviene pasar a Wokwi para el ESP32 y la Raspberry Pi Pico.

Placa Arduino Uno R3
La placa que simula Tinkercad es el Arduino Uno R3, así que el circuito que montes y el código que escribas se pueden llevar a un Uno real con los mismos pines.

¿Qué es Tinkercad Circuits y cómo funciona?

Tinkercad es la aplicación web gratuita de Autodesk que reúne diseño 3D, electrónica y programación. Su sección de electrónica, Circuits, es la sucesora de 123D Circuits, que cerró en 2017, y funciona en cualquier navegador actualizado sin instalar nada. Tus diseños se guardan en la nube, de modo que puedes seguir en casa un circuito que empezaste en el ordenador del instituto. Tinkercad no solo ejecuta tu código, también calcula la parte eléctrica del circuito: la corriente que pasa por una resistencia, la tensión en un LED o el voltaje en cualquier punto. Las placas programables son el Arduino Uno R3, el ATtiny y la BBC micro:bit. Tu código de Arduino se compila igual que con el compilador real de Arduino y se ejecuta en un ATmega328P virtual; por eso el código que funciona en Tinkercad también funciona en una placa real.

CaracterísticaTinkercad Circuits
PrecioGratis (se necesita una cuenta de Autodesk)
InstalaciónNinguna; funciona en el navegador y los diseños se guardan en la nube
Placas programablesArduino Uno R3, ATtiny, BBC micro:bit
ProgramaciónBloques, Bloques + Texto, Texto (Arduino C++)
Librerías incluidasUnas 11: Servo, LiquidCrystal, Adafruit NeoPixel, IRremote, Keypad, Wire, SoftwareSerial, EEPROM y otras
InstrumentosMultímetro, osciloscopio, generador de funciones, fuente de alimentación regulable
Ejemplos listosStarters: circuitos básicos, de Arduino y de micro:bit
Gestión de clasesTinkercad Classrooms, hasta 250 alumnos por clase
Paso a una placa realDescargar el código como archivo .ino y subirlo con el Arduino IDE

¿Cómo se crea una cuenta en Tinkercad?

  1. Entra en tinkercad.com desde el navegador y haz clic en el botón Sign Up (registrarse) de la esquina superior derecha.
  2. Elige el camino que te corresponde: una cuenta personal si aprendes por tu cuenta, una cuenta de docente (Educators) si das clase, o Join Class (unirse a una clase) si tu profesor te ha dado un código de clase.
  3. Para una cuenta personal, continúa con tu correo electrónico o con tu cuenta de Google. Una cuenta de Tinkercad es en realidad una cuenta de Autodesk, así que puedes usar los mismos datos en otros servicios de Autodesk.
  4. Cuando hayas iniciado sesión, abre la sección Circuits en el menú de la izquierda de tu panel y empieza un circuito nuevo con el botón Create (crear).
  5. Tu diseño se guarda automáticamente. Tinkercad le pone un nombre aleatorio y gracioso; haz clic en el nombre arriba a la izquierda y escribe algo claro como "LED y pulsador" para encontrarlo después.

Para los alumnos menores de 13 años, lo más sencillo es entrar con el código de clase y el apodo (nickname) que da el docente: no hace falta correo ni contraseña. El alumno pulsa Join Class en tinkercad.com, escribe el código y después el apodo que le han asignado. A los usuarios más jóvenes que quieran una cuenta personal se les puede pedir el consentimiento de sus padres durante el registro. Encontrarás los detalles de las cuentas de docente más abajo, en una sección aparte.

Conoce la interfaz: área de trabajo, componentes y atajos

El editor de circuitos tiene una gran área de trabajo a la izquierda y el panel de componentes a la derecha. Por defecto, el panel muestra los componentes básicos más usados (Basic Components); para verlos todos, elige All Components en el menú desplegable o escribe un nombre como "servo" o "ultrasonic" en el buscador. Más abajo, en la sección Starters, hay unas dos docenas de circuitos de Arduino ya montados. Arrastrar uno al área de trabajo, iniciar la simulación y leer su código es la forma más rápida de aprender a usar un componente nuevo. Con los botones de la barra superior cambias entre la vista del circuito, la vista esquemática que se dibuja automáticamente y la lista de componentes.

AtajoQué hace
FEncaja todo el circuito en la pantalla (Zoom to fit)
RGira el componente seleccionado
N y Mayús + NAñade una nota; oculta o muestra las notas
Teclas numéricas 0–9Cambian el color del cable seleccionado
Mayús + clicSelecciona varios componentes a la vez
Rueda del ratónAcerca y aleja la vista
SuprBorra el componente o el cable seleccionado

Primer circuito: LED, resistencia y pulsador en la protoboard

Protoboard (placa de pruebas)
Una protoboard real está conectada por dentro igual que la de Tinkercad: las líneas largas de los bordes llevan la alimentación y las filas de cinco agujeros del centro alojan los componentes.
  1. Arrastra un Arduino Uno R3 y una protoboard desde el panel de componentes y colócalos uno al lado del otro. Si no sabes cómo está conectada una protoboard por dentro, lee antes ¿Qué es una protoboard?.
  2. Coloca un LED en la protoboard. En el LED de Tinkercad, la pata doblada es el ánodo (+) y la recta es el cátodo (−); al pasar el ratón por encima de una pata, Tinkercad muestra su nombre. Con el LED seleccionado puedes cambiar su color en el panel que se abre.
  3. Añade una resistencia y conéctala en serie con el ánodo del LED. Con la resistencia seleccionada, pon en el panel el valor 220 y la unidad Ω; el valor por defecto es 1 kΩ. Puedes calcular el valor adecuado para tu LED con la calculadora de resistencia para LED.
  4. Coloca un pulsador (Pushbutton) sobre el canal central de la protoboard para que las patas opuestas queden separadas.
  5. Para tirar un cable, haz clic en un pin o un agujero y después en el destino; haz clic en puntos libres por el camino para doblarlo. Conecta el extremo libre de la resistencia a D9, el cátodo del LED a GND, una pata del pulsador a D2 y la pata opuesta en diagonal a GND.
  6. Dale color a los cables: poner la alimentación en rojo y la masa en negro facilita mucho encontrar errores. Después escribe el código de abajo y pulsa Start Simulation.
ConexiónArduino Uno (Tinkercad)ESP32Raspberry Pi Pico
Ánodo del LED (a través de 220 Ω)D9GPIO 18GP14
Cátodo del LEDGNDGNDGND
Pulsador (la otra pata a GND)D2GPIO 4GP2
Patilla central del potenciómetroA0GPIO 34GP26 (ADC0)
Pin central del TMP36 (Vout)A1GPIO 35GP27 (ADC1)
Alimentación del potenciómetro y del TMP365V y GND3V3 y GND3V3(OUT) y GND
Los dos errores más habituales son poner el LED al revés y olvidar la resistencia. Un LED invertido nunca se enciende. Si pasas el ratón por encima de un LED sin resistencia, Tinkercad muestra un aviso de que la corriente supera los 20 mA recomendados, y un LED conectado directamente a una pila "se quema" con un pequeño icono de explosión. Y si eliges sin querer 220 kΩ en lugar de 220 Ω, el LED brilla tan poco que pensarás que está apagado.

Escribir código: modos Bloques, Bloques + Texto y Texto

El botón Code (código) de arriba a la derecha abre el panel de código. El menú desplegable de la parte superior del panel ofrece tres modos. En el modo Blocks (bloques) arrastras y encajas bloques de colores al estilo de Scratch, así que es imposible olvidar un punto y coma o cometer una errata. En el modo Blocks + Text los bloques quedan a la izquierda y a la derecha ves en directo el código C++ de Arduino que Tinkercad genera a partir de ellos; cambias un bloque y el texto cambia al instante. Este modo es el mejor puente entre los bloques y el código real. El modo Text (texto) es donde escribes C++ directamente, igual que en el Arduino IDE. Los bloques se agrupan por colores en Salida (Output), Entrada (Input), Notación (Notation), Control, Matemáticas (Math) y Variables.

Bloque (qué hace)Equivalente en modo Texto
Poner un pin en HIGH o LOWdigitalWrite(9, HIGH);
Esperar un tiempodelay(1000);
Leer un pin digitaldigitalRead(2)
Leer un pin analógicoanalogRead(A0)
Imprimir en el monitor serieSerial.println(valor);
Girar un servo a un ánguloservo.write(90); (con la librería Servo)
Repetir, si y si nobucle for, if y else
Crear y modificar una variableint contador = 0; contador = contador + 1;
Pasar de bloques a texto es un camino de ida: los cambios que hagas en el modo Text no se convierten de nuevo en bloques, y si vuelves a los bloques pierdes tu código de texto. Antes de cambiar, haz una copia del diseño (Duplicate); así la versión con bloques queda como respaldo y puedes comparar ambos enfoques uno al lado del otro.

Primer programa en código de texto: pulsador, LED y monitor serie

Arduino (C++)
1// Tinkercad ilk program: buton, LED ve Seri Monitör / First Tinkercad sketch: button, LED and Serial Monitor
2const int LED_PIN = 9;      // LED + 220 ohm direnç / LED + 220 ohm resistor
3const int BUTON_PIN = 2;    // butonun diğer ucu GND'de / other button leg goes to GND
4
5int basmaSayisi = 0;        // basma sayacı / press counter
6int oncekiDurum = HIGH;     // önceki buton durumu / previous button state
7bool ledAcik = false;       // LED durumu / LED state
8
9void setup() {
10  pinMode(LED_PIN, OUTPUT);
11  pinMode(BUTON_PIN, INPUT_PULLUP);   // basılınca LOW okunur / reads LOW when pressed
12  Serial.begin(9600);
13  Serial.println("Hazir / Ready");
14}
15
16void loop() {
17  int durum = digitalRead(BUTON_PIN);
18  if (durum != oncekiDurum) {                       // durum değişti / state changed
19    if (durum == LOW) {                             // yeni basış / new press
20      basmaSayisi++;
21      ledAcik = !ledAcik;                           // LED'i tersine çevir / toggle the LED
22      digitalWrite(LED_PIN, ledAcik ? HIGH : LOW);
23      Serial.print("Basma / Presses: ");
24      Serial.println(basmaSayisi);
25    }
26    delay(50);                                      // basma ve bırakmada debounce / debounce on press and release
27    oncekiDurum = durum;
28  }
29}

El pulsador se lee con INPUT_PULLUP: una resistencia interna de unos 20–50 kΩ mantiene el pin en HIGH y, al pulsar, el pin queda conectado a GND y se lee LOW, así que no necesitas otra resistencia. El programa solo reacciona al paso de HIGH a LOW, es decir, a una pulsación nueva, y cambia el estado del LED cada vez. Después de iniciar la simulación, haz clic en el botón Serial Monitor de la parte inferior del panel de código y luego pulsa el pulsador con el ratón: el contador sube uno con cada pulsación. Los detalles para montar el mismo circuito en una placa real están en Cómo conectar un pulsador a Arduino.

Monitor serie y gráfica: seguir los datos de un sensor

Lo mejor de los sensores en Tinkercad es que puedes cambiar sus valores con el ratón. Con la simulación en marcha, haz clic en el sensor de temperatura TMP36 y aparecerá un deslizador para fijar la temperatura entre −40 y 125 °C. Del mismo modo cambias la luz en la fotorresistencia y la humedad en el sensor de humedad del suelo; en el sensor de distancia por ultrasonidos y en el sensor de movimiento PIR arrastras el objetivo que aparece delante para imitar la distancia o el movimiento. El TMP36 da 0,5 V a 0 °C y sube 10 mV por grado, así que a 25 °C entrega 0,75 V. Conecta el pin central a A1 y los de los extremos a 5V y GND; el código siguiente lee esa tensión y la convierte en grados Celsius:

Arduino (C++)
1// TMP36 ile sıcaklık: Seri Monitör ve grafik / Temperature with TMP36: Serial Monitor and graph
2const int TMP36_PIN = A1;   // TMP36 orta ucu (Vout) / TMP36 middle pin (Vout)
3
4void setup() {
5  Serial.begin(9600);
6}
7
8void loop() {
9  int ham = analogRead(TMP36_PIN);         // 0-1023 arası ham değer / raw value 0-1023
10  float volt = ham * 5.0 / 1023.0;         // gerilime çevir / convert to volts
11  float sicaklik = (volt - 0.5) * 100.0;   // 0,5 V = 0 °C ve 10 mV/°C / 0.5 V = 0 °C and 10 mV/°C
12  Serial.println(sicaklik, 1);             // yalnız sayı: grafik için / number only: for the graph
13  delay(500);
14}

Con el monitor serie abierto, pulsa el botón de gráfica del panel para ver los números que llegan como una gráfica de líneas; mueve el deslizador del sensor y verás subir y bajar la curva. Para que la gráfica se dibuje bien, imprime solo el número en cada línea; si añades una etiqueta como "Temp: 24.5", la gráfica puede fallar o no dibujarse. También puedes escribir texto en la casilla inferior del monitor, enviarlo y leerlo en el código con Serial.read(); así podrías hacer un programa que encienda un LED desde el teclado. Todo sobre la comunicación serie está en Monitor serie de Arduino.

Medir tensión, corriente y resistencia con el multímetro virtual

La gran diferencia entre Tinkercad y el Arduino IDE es que Tinkercad calcula el circuito eléctricamente, así que puedes medir como con un multímetro de verdad. Arrastra un Multimeter desde el panel de componentes; de los dos bornes de abajo, el negro es COM (−) y el rojo es el de medida (+). Haz clic en el multímetro para elegir el modo de medida en el panel que se abre; el valor aparece en su pantalla mientras la simulación está en marcha:

  • Tensión (Voltage): Conecta las puntas en paralelo entre los dos puntos que quieres medir, por ejemplo la roja a la patilla central del potenciómetro y la negra a GND.
  • Corriente (Current): Abre el circuito en un punto e intercala el multímetro en serie, por ejemplo entre D9 y la resistencia. Conectar en paralelo un multímetro en modo corriente equivale a hacer un cortocircuito.
  • Resistencia (Resistance): Desconecta del circuito el componente que vas a medir, o déjalo sin alimentación, y conecta las puntas a sus dos patas. En Tinkercad las resistencias se dibujan con sus bandas de colores reales; puedes practicar su lectura con la herramienta código de colores de resistencias.
Arduino (C++)
1// Potansiyometre ile LED parlaklığı ve multimetre karşılaştırması
2// Potentiometer LED brightness and multimeter comparison
3const int POT_PIN = A0;   // potansiyometre orta ucu / potentiometer wiper
4const int LED_PIN = 9;    // PWM destekli pin / PWM-capable pin
5
6void setup() {
7  pinMode(LED_PIN, OUTPUT);
8  Serial.begin(9600);
9}
10
11void loop() {
12  int ham = analogRead(POT_PIN);                // 0-1023
13  float volt = ham * 5.0 / 1023.0;              // multimetreyle karşılaştır / compare with the multimeter
14  int parlaklik = map(ham, 0, 1023, 0, 255);    // PWM değeri / PWM value
15  analogWrite(LED_PIN, parlaklik);
16
17  Serial.print(ham);
18  Serial.print("  ");
19  Serial.print(volt, 2);
20  Serial.println(" V");
21  delay(300);
22}

Para este experimento, añade un potenciómetro al circuito: sus extremos a 5V y GND y la patilla central a A0. Con el mando justo en el centro, el multímetro marca 2,50 V y el monitor serie muestra un valor bruto de unos 511 y 2,50 V, porque 2,5 / 5 × 1023 ≈ 511. Ver que ambos valores coinciden es el mejor experimento para entender cómo analogRead convierte una tensión en un número. Ahora pon el multímetro en modo corriente, intercálalo en serie entre D9 y la resistencia y gira el potenciómetro al máximo: con un LED rojo y 220 Ω verás unos (5 − 2) / 220 ≈ 14 mA. Puedes hacer este cálculo tú mismo con la calculadora de la ley de Ohm. En posiciones intermedias, D9 entrega una señal PWM que se enciende y apaga sin parar; para verla, añade un osciloscopio y conecta su punta roja a D9 y la negra a GND. En el pin 9 del Uno la frecuencia PWM es de unos 490 Hz, y analogWrite(128) dibuja una onda cuadrada que está en alto la mitad del tiempo. La idea del PWM se explica en ¿Qué es PWM?.

Ejecutar el código paso a paso con el depurador

Si el código no compila, Tinkercad abre automáticamente la consola de errores bajo el panel de código y marca la línea problemática; los mensajes son parecidos a los del Arduino IDE. Si compila pero funciona mal, usa el depurador (debugger): en el modo Texto, haz clic en un número de línea para poner un punto de interrupción (breakpoint) e inicia la simulación. El programa se detiene al llegar a esa línea y, si pasas el ratón por encima de una variable, ves su valor en ese momento. Con los botones que aparecen sobre el panel de código avanzas a la línea siguiente o dejas que el programa continúe. Para descubrir por qué un pulsador cuenta dos veces o por qué nunca se entra en un if, es mucho más rápido que llenar el código de Serial.print. Hemos reunido el significado de los mensajes de compilación más comunes en errores de compilación de Arduino.

¿Qué componentes tiene Tinkercad y cuáles no?

GrupoDisponible en TinkercadNo disponible (qué usar en su lugar)
PlacasArduino Uno R3, ATtiny, BBC micro:bitArduino Nano y Mega, ESP32, ESP8266, Raspberry Pi Pico (prueba con el Uno o usa Wokwi)
SensoresTemperatura TMP36, fotorresistencia, distancia por ultrasonidos (3 y 4 pines), PIR, humedad del suelo, gas, inclinación, flexión y fuerza, receptor IRDHT11, DHT22 y MPU6050 (para temperatura usa el TMP36)
Pantallas y luzLED, LED RGB, LCD 16x2 (paralelo e I2C), display de 7 segmentos, tira y anillo NeoPixelPantallas OLED (SSD1306) y TFT (prueba con un LCD)
Motores y salidasMotor DC, motorreductor, microservo, motor de vibración, zumbador piezoeléctrico, relé, puente H L293DMódulo controlador de motores L298N (usa el L293D)
Elementos de entradaPulsador, interruptor deslizante y DIP, potenciómetro, teclado 4x4, mando IRLector RFID RC522 y sensor de huellas
Circuitos integrados y componentes básicosResistencia, condensador, bobina, diodo, Zener, transistores NPN y PNP, MOSFET, 555, 74HC595, puertas lógicas, amplificador operacional LM741, regulador 7805Están casi todos los componentes básicos
ComunicaciónConectar varios Uno por serie (TX/RX) e I2CMódulos Wi-Fi, Bluetooth (HC-05), nRF24L01 y GSM
Medida y alimentaciónMultímetro, osciloscopio, generador de funciones, fuente de alimentación, pilas de 9 V, AA y de botónLa descarga de las pilas con el tiempo y el calentamiento de los componentes
LDR
LDR
PIR
PIR
HC-SR04
HC-SR04
SG90
SG90

Para añadir una librería, pulsa el botón de librerías (el icono de una caja de archivos) del panel de código; al elegir una de las once o así que hay en la lista, la línea #include se añade al principio del código. Si escribes una librería que no está en la lista, como DHT.h, el compilador avisa de que no encuentra el archivo; en Tinkercad no se pueden subir librerías externas. Con librerías pequeñas puedes pegar el contenido de los archivos .h y .cpp directamente en tu código, pero la librería de un componente que no existe en Tinkercad no funcionará ni así. Otro detalle importante: en los ejemplos, el LCD I2C de Tinkercad se controla con la librería Adafruit_LiquidCrystal, mientras que los módulos con PCF8574 que se venden suelen usar LiquidCrystal_I2C y la dirección 0x27 o 0x3F. Al pasar a una placa real tendrás que cambiar esas líneas; los detalles están en pantalla LCD I2C.

Límites de la simulación: diferencias con un circuito real

  • Tiempos: La simulación se ejecuta en el navegador; con un circuito muy cargado o un ordenador lento puede ir más despacio que el tiempo real. En ese caso delay(1000) dura más de un segundo en pantalla, mientras que millis() cuenta el reloj propio de la simulación.
  • Componentes ideales: En Tinkercad los pulsadores no tienen rebotes, los cables no se sueltan y las lecturas analógicas tienen menos ruido que en un circuito real. En una placa real necesitas antirrebote y promediar varias lecturas.
  • Límites de alimentación: Un motor o muchos LED que funcionan sin problemas en la simulación pueden hacer que un Arduino real se reinicie o que su regulador se caliente. Toma como norma no pedir más de unos 20 mA a un pin y alimentar los motores con una fuente aparte.
  • Parecer conectado no es estar conectado: Si una pata no entra bien en un agujero de la protoboard, el cable parece conectado pero el circuito no funciona. Pasa el ratón por encima del agujero y comprueba que se resaltan los agujeros conectados de la misma fila.
  • Un solo archivo y pocas librerías: El código vive en una sola pestaña y no se pueden añadir librerías externas, lo que complica organizar proyectos grandes.
  • Caracteres especiales: El monitor serie no admite del todo UTF-8, así que la ñ o las tildes pueden verse mal. Lo más seguro es no usarlas en la salida serie.
  • Sin conexión inalámbrica: No se simulan Wi-Fi, Bluetooth ni internet, así que Tinkercad no sirve para proyectos de Internet de las cosas (IoT).

Tinkercad Classrooms para docentes

  1. Indica que tu rol es docente al registrarte o en la configuración del perfil; las funciones de clase están disponibles en las cuentas de docente.
  2. Ve a la página Classes del menú superior y crea una clase con Create new class, indicando su nombre, la edad o el curso y la asignatura.
  3. Con Add Students escribe los nombres de tus alumnos; Tinkercad genera para cada uno un apodo único dentro de la clase. En lugar de escribir listas largas una a una, puedes pegarlas; una clase admite hasta 250 alumnos.
  4. Muestra el código y el enlace de la clase con el botón Class Code. Los alumnos se unen abriendo el enlace y escribiendo su apodo, o introduciendo el código mediante Join Class en tinkercad.com; no necesitan correo ni contraseña.
  5. Sigue el trabajo de tus alumnos en la pestaña Designs de la página de la clase; haz clic en el nombre de un alumno para abrir y editar sus diseños.

Las clases se crean por defecto en modo seguro (Safe Mode): los alumnos no pueden hacer públicos sus diseños, buscar en la galería ni ver comentarios. Para preparar las clases puedes apoyarte en las lecciones interactivas de Arduino de la sección Learn de Tinkercad y en los circuitos Starters. Un método muy extendido es que el docente comparta un circuito de ejemplo y que los alumnos lo copien y lo modifiquen. Si en el aula hay kits físicos, montar primero el circuito en Tinkercad y repetirlo después con piezas reales reduce notablemente los LED al revés y las placas mal alimentadas.

De Tinkercad a un Arduino real

  1. Guarda el código en tu ordenador como archivo .ino con el botón de descarga del panel de código, o copia el texto.
  2. Abre el archivo en el Arduino IDE; si el IDE propone moverlo a una carpeta con el mismo nombre, acepta. Si aún no tienes el IDE instalado, consulta la guía instalar el Arduino IDE.
  3. Elige Arduino Uno en Herramientas > Placa y el puerto de tu placa en Puerto, y pulsa Subir. Si la subida falla, sigue los pasos de error al subir código a Arduino.
  4. Monta el circuito con los mismos pines siguiendo tu dibujo de Tinkercad; tener abierta la vista esquemática en otra pantalla te lo pondrá más fácil.
  5. Corrige las diferencias que la simulación no muestra: añade un antirrebote por software a los pulsadores, cambia la librería y la dirección del LCD I2C y, si usas otro sensor en lugar del TMP36, por ejemplo el DHT11, adapta el código.

ESP32 y Raspberry Pi Pico: ¿Tinkercad o Wokwi?

Tinkercad no tiene ESP32 ni Raspberry Pi Pico, y tampoco simula el Wi-Fi ni MicroPython. Para estas placas puedes usar Wokwi, otro simulador que también funciona en el navegador. Además del Arduino Uno, el Mega y el Nano, Wokwi admite la familia ESP32 y la Pico, conecta el ESP32 a una red Wi-Fi virtual y te deja usar la mayoría de las librerías del gestor de librerías de Arduino. A cambio, Wokwi no calcula el circuito eléctricamente: cambiar el valor de una resistencia no afecta a la corriente del LED y, en lugar de un multímetro que mida tensión y corriente, ofrece un analizador lógico para señales digitales. En resumen, lo más eficaz es aprender los fundamentos de electrónica en Tinkercad y probar el código del ESP32 y la Pico en Wokwi. Para una guía detallada, consulta simulador Wokwi.

CaracterísticaTinkercad CircuitsWokwi
PlacasArduino Uno R3, ATtiny, micro:bitUno, Mega, Nano, familia ESP32, Raspberry Pi Pico, STM32 y otras
Simulación eléctrica (corriente, tensión)Sí; multímetro y osciloscopioMuy limitada; tiene analizador lógico
Programación por bloquesSíNo
LibreríasUnas 11 librerías incluidasLa mayoría de las del gestor de librerías
Wi-Fi e internetNoSí, con el ESP32 y la Pico W
MicroPythonNoSí, en la Pico y el ESP32
CuentaObligatoriaNo hace falta para probar; inicia sesión para guardar
Ideal paraFundamentos de electrónica, clases en el aula, primeros pasos con ArduinoESP32, Pico, IoT y proyectos con muchas librerías

Abajo tienes la versión en MicroPython del programa del pulsador y el LED para la Raspberry Pi Pico. Con las conexiones GP14 y GP2 de la tabla de pines puedes ejecutarlo en Wokwi o en una Pico real con Thonny. En el ESP32 usas el código de Arduino tal cual y solo cambias LED_PIN a 18 y BUTON_PIN a 4. Para empezar con la Pico, lee ¿Qué es la Raspberry Pi Pico?, y para el ESP32, ¿Qué es el ESP32?.

MicroPython
1# Aynı program Raspberry Pi Pico'da (MicroPython) / The same program on Raspberry Pi Pico (MicroPython)
2from machine import Pin
3import time
4
5led = Pin(14, Pin.OUT)                  # LED + 220 ohm direnç / LED + 220 ohm resistor
6buton = Pin(2, Pin.IN, Pin.PULL_UP)     # butonun diğer ucu GND'de / other button leg goes to GND
7
8basma = 0                               # basma sayacı / press counter
9onceki = 1                              # önceki buton durumu / previous button state
10
11while True:
12    durum = buton.value()
13    if durum != onceki:                 # durum değişti / state changed
14        if durum == 0:                  # yeni basış / new press
15            basma += 1
16            led.toggle()                # LED'i tersine çevir / toggle the LED
17            print("Basma / Presses:", basma)
18        time.sleep_ms(50)               # basma ve bırakmada debounce / debounce on press and release
19        onceki = durum
20    time.sleep_ms(5)

Ideas de proyectos para probar en Tinkercad

  • Semáforo: Un cruce con tres LED y un pulsador para peatones; el montaje paso a paso está en semáforo con Arduino.
  • Luz nocturna: Un LED que se enciende cuando oscurece; el uso de la fotorresistencia en una placa real se explica en sensor de luz LDR.
  • Sensor de aparcamiento: Un sensor de ultrasonidos y un zumbador que pita más rápido al acercarte; el principio de medida está en sensor de distancia HC-SR04.
  • Control de un servo: Ajusta el ángulo de un servo con un potenciómetro; el código de servomotor también funciona en Tinkercad.
  • Cerradura con clave: Una cerradura con teclado 4x4, LCD y servo; la librería Keypad del artículo sobre el teclado matricial también está en Tinkercad.
  • Muchos LED con pocos pines: Controla 8 LED desde 3 pines con un registro de desplazamiento 74HC595; los detalles están en 74HC595.
  • Dos Arduino que se comunican: Cruza las líneas TX y RX de dos Uno y envía mensajes de uno a otro; Tinkercad simula varias placas a la vez.
  • Intermitente con 555: Monta un LED que parpadea sin microcontrolador y mide la frecuencia con el osciloscopio; el cálculo está en temporizador 555.

Errores frecuentes y cómo solucionarlos

SíntomaCausa probableSolución
El LED no se enciendeLED al revés o con las dos patas en la misma fila de la protoboardLa pata doblada (ánodo) va a la resistencia; coloca las patas en filas distintas
El LED brilla muy pocoResistencia de 220 kΩ en vez de 220 Ω, o con el valor por defecto de 1 kΩSelecciona la resistencia y revisa el valor y la unidad
Aviso o icono de explosión en el LEDFalta la resistencia y la corriente supera los 20 mAAñade una resistencia de 220–330 Ω en serie con el LED
El monitor serie está vacíoFalta Serial.begin() o el monitor no está abiertoAñade Serial.begin(9600) en setup() y abre el Serial Monitor con la simulación en marcha
La gráfica no muestra nadaSe imprime texto junto al númeroEnvía solo el número con Serial.println()
Error de compilación: no se encuentra la libreríaSe ha incluido una librería que Tinkercad no tiene (como DHT.h)Usa una librería de la lista o un componente equivalente
El pulsador funciona al revésCon INPUT_PULLUP se lee LOW mientras está pulsadoEscribe la condición para LOW o usa una resistencia pull-down externa
La simulación va muy lentaMuchos componentes, una tira NeoPixel larga o Serial.print muy frecuentesSimplifica el circuito, añade un delay corto al bucle y cierra otras pestañas
Para no estropear un circuito que funciona, haz una copia del diseño antes de añadir una función nueva y trabaja sobre la copia. Si algo sale mal, volver a la versión buena es cuestión de un clic, y además tendrás un archivo listo para enseñar en clase las etapas del circuito paso a paso.

Tinkercad es el mejor punto de partida para aprender Arduino gratis y sin riesgos: montas el circuito, lo mides, sigues el código paso a paso y, cuando estés listo, subes el mismo código a una placa real. Cada circuito que funciona en la simulación hace también más fácil tu primer intento sobre la mesa. En la app BlueGrays encontrarás muchos proyectos con esquemas y código paso a paso, desde encender un LED y el semáforo hasta los proyectos con pulsadores y LDR, la medida de distancia con el HC-SR04 y la comunicación entre dos Arduino, para repetir con piezas reales los circuitos que montaste en Tinkercad. Si quieres más ideas, echa un vistazo a nuestra lista de ideas de proyectos con Arduino.

Preguntas frecuentes

¿Tinkercad es gratis?

Sí. Todas las herramientas de Tinkercad, incluida Tinkercad Circuits, son gratuitas; solo necesitas una cuenta de Autodesk. Los alumnos también pueden entrar sin correo electrónico con el código de clase de su docente. No hay que instalar nada: basta con un navegador actualizado y conexión a internet.

¿Tinkercad tiene ESP32 o Raspberry Pi Pico?

No. Las únicas placas programables de Tinkercad son el Arduino Uno R3, el ATtiny y la BBC micro:bit. Para simular el ESP32, el ESP8266 o la Raspberry Pi Pico puedes usar Wokwi, que además admite el Wi-Fi del ESP32 y MicroPython en la Pico.

¿Se pueden añadir librerías en Tinkercad? ¿Puedo usar un DHT11?

En Tinkercad no se pueden subir librerías externas; solo puedes usar las unas once librerías de la lista del panel de código, como Servo, LiquidCrystal, Adafruit NeoPixel, IRremote y Keypad. Los sensores DHT11 y DHT22 tampoco están en la lista de componentes. Para medir temperatura, usa el sensor TMP36 con analogRead.

¿El código de Tinkercad funciona en un Arduino real?

Sí, porque Tinkercad compila código C++ de Arduino estándar. Descarga el archivo .ino desde el panel de código, ábrelo en el Arduino IDE y súbelo a tu placa. Quizá solo tengas que cambiar las librerías propias de Tinkercad (como Adafruit_LiquidCrystal para el LCD I2C) por la que corresponda a tu módulo real y añadir antirrebote a los pulsadores.

¿Qué es mejor, Tinkercad o Wokwi?

Cada uno destaca en cosas distintas. Tinkercad calcula el circuito eléctricamente y ofrece multímetro y programación por bloques, por lo que es mejor para los fundamentos de electrónica y las clases. Wokwi sobresale en proyectos avanzados e IoT gracias al ESP32, la Pico, el Wi-Fi y su amplio soporte de librerías.

¿Cómo entran los alumnos en Tinkercad?

Tu docente te da un enlace de clase, o un código de clase y un apodo. Abre el enlace y escribe tu apodo, o pulsa Join Class en tinkercad.com e introduce primero el código y después el apodo. Así no necesitas correo ni contraseña; si ya tienes tu propia cuenta, inicia sesión y únete a la clase desde tu panel.

Ver todos los proyectos
Parpadeo de LED
#1Principiante

Parpadeo de LED

Proyecto básico de entrada que enciende y apaga un único LED a determinados intervalos con Arduino. Enseña el uso de las funciones digitalWrite y delay.

4.6(172)
905
Semáforo
#3Principiante

Semáforo

Proyecto que simula un semáforo real con LED rojos, amarillos y verdes. Enseña temporización y lógica de control secuencial.

4.8(126)
337
Encender un LED con pulsador (Push)
#9Principiante

Encender un LED con pulsador (Push)

Proyecto de control instantáneo (push) que enciende el LED al pulsar el botón y lo apaga al soltarlo. Enseña el uso de la lectura de botones y la expresión condicional con digitalRead.

4.9(112)
190
Medir la intensidad de luz con LDR
#11Principiante

Medir la intensidad de luz con LDR

Proyecto que mide la intensidad de la luz ambiental con un sensor LDR y la muestra en un monitor serie. Enseña los fundamentos de la lectura de sensores analógicos y la comunicación serie.

4.6(78)
124
Uso del zumbador
#13Principiante

Uso del zumbador

Proyecto básico que utiliza el zumbador para emitir un sonido con una frecuencia e intervalos determinados. Enseña el uso de las funciones tone() y noTone().

4.7(88)
151
HC-SR04 Medición de distancia (pantalla en serie)
#27Principiante

HC-SR04 Medición de distancia (pantalla en serie)

Sensor ultrasónico HC-SR04 para medir distancias y mostrar el resultado en cm en el monitor serie. Enseña el principio del cálculo de distancias con ondas sonoras.

4.6(44)
66
Uso del servomotor
#35Principiante
Premium

Uso del servomotor

Proyecto de uso básico que posiciona el servomotor en ángulos de 0°, 90° y 180° en secuencia. Enseña la biblioteca de servomotores y la lógica de control de ángulos.

4.7(48)
66
Comunicación unidireccional entre 2 Arduino
#57Intermedio
Premium

Comunicación unidireccional entre 2 Arduino

Un proyecto para la transferencia unidireccional de datos entre dos Arduinos mediante comunicación serie. Detecta la pulsación del botón en el lado del transmisor y enseña a controlar el LED en el lad

4.4(37)
50