Fuerza magnética → par
F = B·i·ℓ ⇒ τ = Kt·i
Un conductor con corriente dentro de un imán siente una fuerza. Sumando todos los del rotor, el par es proporcional a la corriente.
Universidad Mariano Gálvez de Guatemala
Facultad de Ingeniería en Sistemas de Información
Ingeniería en Sistemas de Información y Ciencias de la Computación · Portales
Física II · Inga. Diana Ruiz Cifuentes
Proyecto final: modelado, simulación y validación experimental de un motor DC de 12 V
Guatemala, octubre de 2026
Proyecto Final de Física II · Ingeniería en Sistemas · UMG 2026
Un circuito eléctrico acoplado a un eje que gira: modelado, simulado con integración numérica propia y comparado contra mediciones hechas con multímetro y osciloscopio.
i corriente, en azul petróleo en toda la página · ω velocidad angular, en cobre
¿Se puede predecir la corriente y la velocidad de un motor DC real con pocos parámetros físicos medidos con instrumentos básicos? ¿Y qué tan bien coincide la predicción con la realidad?
Los motorreductores de 12 V como este mueven puertas automáticas, bandas transportadoras y robots. Normalmente se les manda un PWM y ya. Pero para controlarlos bien (arranques suaves, detectar si se trabaron, dimensionar la fuente) hay que saber cómo responden en el tiempo: cuánta corriente piden al arrancar, cuánto tardan en llegar a su velocidad y cuánta velocidad pierden con carga. Para motores genéricos, el fabricante casi nunca publica esos datos.
Relación con Ingeniería en Sistemas. El proyecto es un pequeño “gemelo digital”, es decir, un programa que imita a un objeto físico. Integrar ecuaciones, ajustar parámetros por mínimos cuadrados y mostrarlo todo en una interfaz es trabajo de software. La física dice qué programar y cómo saber si el resultado es correcto.
| Elemento | Para qué sirve |
|---|---|
| Motorreductor de 12 V | El objeto de estudio. Por la reductora, la salida da una vuelta cada 10 a 30 s y tiene mucho par. |
| Encoder de 20 pulsos por vuelta | Unido a la salida con flexitubo (acople flexible, para no forzar los ejes). |
| Fuente de 12 V y protoboard | Alimentan el motor (a través del PWM) y el encoder. |
| Módulo PWM con perilla | Cambia el voltaje promedio y, con él, la velocidad. |
| Multímetro con función de osciloscopio | V, I, R y la corriente de arranque vista en pantalla. |
| Resistencia shunt de 0.5 Ω | Convierte la corriente en un voltaje visible: I = V/Rshunt. |
En el motor ocurren dos fenómenos a la vez: la corriente en el campo produce fuerza, y el movimiento en el campo induce voltaje. El resto lo dicen dos leyes de conservación.
F = B·i·ℓ ⇒ τ = Kt·i
Un conductor con corriente dentro de un imán siente una fuerza. Sumando todos los del rotor, el par es proporcional a la corriente.
ε = Ke·ω
Al girar, el bobinado corta el campo y se induce un voltaje que, por la ley de Lenz, se opone a la corriente. A más velocidad, menos corriente.
V = R·i + L·di/dt + K·ω
El bobinado es una resistencia y una bobina en serie con la fem. La bobina no deja que la corriente cambie de golpe.
J·dω/dt = K·i − b·ω − τc
El par del motor acelera el rotor. La fricción viscosa (b) y la seca de los engranes (τc) lo frenan.
¿Por qué Kt = Ke?
ε·i = τ·ω ⇒ Ke·ω·i = Kt·i·ω ⇒ Ke = Kt = K
La potencia eléctrica que absorbe la fem es la potencia mecánica que sale: conservación de la energía. Por eso basta una constante.
La fuerza sobre un conductor es F⃗ = i·ℓ⃗ × B⃗, que en magnitud da F = B·i·ℓ cuando ℓ ⟂ B. Cada conductor del rotor está a una distancia r del eje. Si se suman los n conductores que están bajo los polos, τ = n·B·ℓ·r·i = Kt·i. Los factores n, B, ℓ y r dependen solo de la construcción, así que Kt es constante en un motor de imanes permanentes.
Los conductores se mueven con v = ω·r dentro del campo. Por Faraday se induce ε = B·ℓ·v en cada uno, y en total ε = n·B·ℓ·r·ω = Ke·ω. Por Lenz se opone a la corriente. Por eso el motor pide mucha corriente al arrancar (ω = 0, sin fem) y poca cuando ya va rápido.
V·s/rad = (J/C)·s/rad = J/(A·rad) = N·m/A. Si un fabricante da Ke en V/krpm, se multiplica por 60/(2π·1000) ≈ 0.00955 para pasarla a SI.
Con ω = 0 queda un circuito RL clásico: i(t) = (V/R)·(1 − e−t/τe), con τe = L/R.
ωsalida = ω/N, τsalida = η·N·τ y Jvista desde el motor = Jrotor + Jcarga/N². Todo el modelo se escribe en el eje del motor, y la velocidad que mide el encoder en la salida se multiplica por N. La inercia de lo que esté en la salida casi no cuenta (se divide entre N²). La fricción de los engranes y el roce del eje del encoder sí cuentan, y aparecen como τc.
El módulo conecta y desconecta los 12 V muy rápido. Con ciclo de trabajo D, el promedio es Vprom = D·Vfuente. Si el periodo del PWM es mucho menor que L/R, la inductancia suaviza la corriente y el motor responde al promedio.
Si se multiplica la ecuación eléctrica por i y la mecánica por ω: V·i = R·i² + d/dt(½Li²) + d/dt(½Jω²) + (bω + τc)·ω + τL·ω. Es decir, la potencia de la fuente se va en calor, energía magnética, energía cinética, fricción y trabajo útil.
Si se despeja la derivada de cada ley, queda el sistema que resuelve el programa. Parte del reposo: i(0) = 0, ω(0) = 0.
Régimen permanente (exacto)
ωss = ( K·V − R·τc ) / ( K² + R·b )
Sirve para verificar el simulador y para medir K, b y τc con rectas.
Constante de tiempo mecánica
τm = J·R / ( K² + R·b )
Midiendo τm en el arranque se despeja J, que no se puede medir directo.
| Símbolo | Significado | Unidad | Origen |
|---|---|---|---|
| i | Corriente en el bobinado | A | estado |
| ω | Velocidad angular del eje del motor | rad/s | estado |
| V | Voltaje aplicado = D·Vfuente − Vesc | V | entrada |
| R | Resistencia del bobinado | Ω | medido |
| L | Inductancia | H | supuesto* |
| Vesc | Caída en escobillas | V | medido |
| K | Constante del motor (Ke = Kt) | V·s/rad = N·m/A | medido |
| J | Momento de inercia (visto desde el motor) | kg·m² | medido |
| b | Fricción viscosa | N·m·s/rad | medido |
| τc | Fricción seca | N·m | medido |
| τL | Carga externa, referida al motor | N·m | entrada |
| N | Relación de la reductora | — | medido |
* L requiere un medidor LCR; se usa un valor típico. Casi no afecta: cambia solo el primer milisegundo de la corriente.
La fricción seca real vale τc·sgn(ω), que salta de −τc a +τc, y ese salto hace oscilar a cualquier integrador. tanh(ω/ωs) con ωs = 0.5 rad/s hace el mismo cambio de forma continua, y por encima de unos pocos rad/s vale 1.
Con las derivadas en cero: V = R·i + K·ω y K·i = b·ω + τc + τL. Se despeja i de la primera y se sustituye: ωss = (K·V − R(τc + τL))/(K² + R·b) e iss = (V − Kωss)/R. Al arrancar (ω = 0), la corriente tiene como límite V/R.
Con la transformada de Laplace (sin fricción seca) sale el polinomio característico L·J·s² + (L·b + R·J)·s + (R·b + K²) = 0. Tiene dos raíces reales y muy separadas: la rápida (≈ −R/L) es la parte eléctrica y la lenta es la mecánica. Si L es pequeña, se sustituye i = (V − Kω)/R en la ecuación mecánica y queda J·dω/dt + (K²/R + b)ω = K·V/R − τc. Es de primer orden, con τm = J·R/(K² + R·b) y solución ω(t) = ωss(1 − e−t/τm). La fricción seca baja ωss, pero no cambia τm.
La corriente también sigue a la parte mecánica: después del pico baja hacia iss con la misma τm. Por eso el osciloscopio, que mide corriente, sirve para medir J.
Mueve cualquier parámetro y el arranque se recalcula al instante. Los valores iniciales son típicos; en Resultados puedes cargar los que mediste.
xn+1 = xn + (dt/6)(k1 + 2k2 + 2k3 + k4)
Runge-Kutta 4, programado desde cero: en cada paso mide la pendiente cuatro veces y las promedia. El paso dt se elige solo (20 pasos dentro de L/R, el cambio más rápido).
Verificación: la velocidad final simulada se compara con la fórmula exacta del régimen permanente; la diferencia aparece en el panel de resultados.
Solo con la fuente, el PWM, el multímetro, el osciloscopio y un cronómetro. Van en este orden porque cada uno usa el resultado del anterior.
A
Multímetro en Ω, motor desconectado
R = promedio de 6 lecturas
→ R
B
5–7 posiciones de la perilla del PWM
V − R·I = K·ω + Vesc
→ K, b, τc
Una segunda recta, K·I = b·ω + τc, da la fricción.
C
Shunt de 0.5 Ω en serie; foto de la pantalla
i(t) − iss ∝ e−t/τm
→ τm → J
La corriente es I = Vshunt/0.5 Ω. El programa usa R + Rshunt para esta prueba, porque el shunt queda en serie.
¿Por qué el encoder no mide el arranque?
Va en la salida y da unos 2 pulsos por segundo. El motor llega a su velocidad en menos de medio segundo, así que el encoder solo sirve para la velocidad estable. La dinámica del arranque se mide con el osciloscopio.
¿Y si no conozco N exacto?
No afecta la validación: con cualquier N supuesto, las predicciones de corriente y de velocidad de salida salen iguales. N solo decide en qué eje se reportan K, J y b. Si la etiqueta del motor dice “1:xxx”, úsalo.
herramientas/generar_ejemplo.js a partir de un motor ficticio con ruido agregado, para probar que el análisis recupera los parámetros. Carga tus datos para reemplazarlos.
Cargar mediciones. Las plantillas CSV llenas (puedes elegir varias a la vez) o un JSON.
Plantillas CSV para llenar: resistencia · velocidad a varios voltajes · corriente de arranque
Cada experimento se vuelve a simular con los parámetros estimados y se compara punto por punto. Error % = (simulado − medido)/medido × 100.
| Fuente | Afecta | Efecto |
|---|---|---|
| Contacto de escobillas | R | R cambia con la posición del eje; se promedian 6 lecturas. |
| Temperatura del cobre | R, K | R sube 0.39 % por cada °C: hay que medir R con el motor frío. |
| Multímetro con PWM | V, I | Un multímetro básico promedia mal la onda cuadrada del PWM. |
| Cronómetro | ω | ±0.3 s de reacción; por eso se cronometran 3 vueltas. |
| Lectura de la foto | J | ±½ división; usar muchos puntos en el ajuste reduce el efecto. |
| Encoder y flexitubo | τc | El roce del encoder es una carga real y queda medido dentro de τc. |
index.html. Funciona sin internet.Hay dos formas. Opción 1: editar datos/mediciones.js, cambiar "ejemplo": true por false y recargar la página. Opción 2: cargar los CSV de las plantillas; el programa reconoce el tipo por los encabezados y acepta punto y coma con coma decimal (Excel en español).
| Experimento | Encabezados |
|---|---|
| A · Resistencia | R_ohm |
| B · Velocidad a varios voltajes | V,I,s_por_vuelta (o V,I,f_hz si usaste el osciloscopio) |
| C · Arranque en el osciloscopio | t_ms,V_shunt_mV |
| Archivo | Qué hace |
|---|---|
js/modelo.js | Ecuaciones del motor, RK4 y régimen permanente. |
js/datos.js | Lee los CSV, ajusta rectas y exponenciales y calcula los errores. |
js/graficas.js | Gráficas dibujadas a mano en canvas. |
js/motor-animado.js | El motor de la portada, movido por la simulación. |
js/app.js | Controles, tablas y textos de la página. |
Para publicarlo, se copia la carpeta completa a public_html.