epelpad

Controla la intensidad de un led con Matlab y Arduino



control


Bienvenidos a mi post!


En esta entrega les dejo un "tutorial" de como usar matlab y arduino para realizar un control de un led por medio de un PWM generado via manual o por medio de un potenciometro. Si no entiendes de que hablo puedes visitar mis post anteriores de electrónica y electrónica digital básica que les dejare al final del post.



matlab.


simulink


Antes de comenzar.




  • Para realizar lo que verás a continuación, necesitas dos softwares. El primero es Arduino IDE el cual puedes conseguir de la página oficial y es totalmente gratuito. Matlab no es gratis, así que tienen que descargarlo de alguna página que fomente la piratería o comprarlo si no tienen opción.

  • Segundo, tienen que bajar la librería de ArduinoIO la cual es provista gracias a este video. En dicho video pueden observar como lo instala a detalle.









  • Este video esta enfocado a gente que estudia ingeniería o que quiera hacer proyectos o que le apasione.

  • Me acabo de recibir de ingeniería y quiero hacer este post p̶a̶r̶a̶ ̶g̶a̶n̶a̶r̶ ̶b̶i̶t̶c̶o̶i̶n̶s̶ ̶o̶ ̶d̶i̶n̶e̶r̶o̶ para ayudar a gente que tiene el interés de aprender más.

  • Si les gustan esta clase de post, al rato hago más, s̶o̶l̶o̶ ̶d̶e̶n̶m̶e̶ ̶d̶i̶n̶e̶r̶o̶ ̶y̶ ̶y̶a̶ y con gusto les compartiré las cosas que aprendí en la carrera.

arduino

Controla la intensidad de un led con Matlab y Arduino


Configurando la conexión de Arduino y Matlab.


Como se vio en el anterior video, después de instalar todo, debemos correr el programa adioes.pde que se encuentra en la carpeta en la cual extraímos el programa para instalar. :

control



simulink


Deben fijarse con atención en el puerto en el cual se conectó, en este caso fue el COM16. Posteriormente, abrimos Matlab y ejecutamos esta acción.

a= arduino('COM16')

arduino



control




Después, tecleamos en la misma línea simulink , abrimos un nuevo archivo y utilizaremos los bloques de ArduinoIO. Después agregaremos el primer bloque que nos ayudará a correr el arduino con simulino y su configuración correspondiente.


matlab





Controla la intensidad de un led con Matlab y Arduino




Posteriormente tomaremos otro bloque que nos servirá para correr la aplicación en tiempo real


control





arduino


Después tomaremos un bloque de escritura análoga para crear un PWM posteriormente.


Controla la intensidad de un led con Matlab y Arduino



simulink


Y por último, un bloque de lectura análoga el cual nos servira para controlar la intensidad del LED


arduino


matlab


simulink


Controlar la intensidad del LED vía Simulink.


En este caso se creo un bloque que controle del 0 al 100% la intensidad del LED, se utilizó un bloque de constante, otro de slide gain, otro de ganancia y displays para observar los cambios del ciclo de trabajo del PWM. Cabe destacar que el slide gain abarca de 0 a 100 y la ganancia que convierte el valor de la ganancia variable, se multiplico por 100 y se dividió por 1023 (la resolución del ADC es de 10 bits, es decir 1024 en decimal) para emular el potenciometro.




El bloque de voltaje a PWM, se efectuó una regla de 3 en donde se convierte la resolución del ADC con la del PWM que es de 8 bits.

matlab



arduino


Controla la intensidad de un led con Matlab y Arduino


Controlar la intensidad del LED por medio de un potenciometro.


Primero debemos armar el circuito básico. Solo requerimos de un potenciometro, un led y una resistencia de 220 ohms. Conectaremos todo tal y como se muestra en la siguiente figura.

control

matlab

simulink


En Simulink conectaremos de la siguiente manera:


arduino



control



Corremos la simulación y quedaría de la siguiente manera. Notese que solo comprimi lo demás para ahorrarme espacio, utilicé ctrl+g para hacer más pequeño el esquema.


matlab



arduino


A continuación les muestro una imagen y un video funcionando.


Controla la intensidad de un led con Matlab y Arduino



matlab



Controla la intensidad de un led con Matlab y Arduino


Si apenas entendiste de que hablo puedes pasar por mi post de electrónica:

http://www.taringa.net/posts/hazlo-tu-mismo/17877485/Aprende-algo-de-electronica-sin-salir-de-aqui.html

O por mi post de arduino y electrónica digital básica:

http://www.taringa.net/posts/hazlo-tu-mismo/17886610/Hice-un-piano-con-android-arduino-bluetooth.html


Si eres nuevo en esto, te recomiendo que compres un arduino, nunca sabes cuando lo puedes necesitar.

Si quieren más post de este estilo, me avisan.


control


Fin del post.


Saludos.


Gracias.

matlab

Comentarios Destacados

11 comentarios - Controla la intensidad de un led con Matlab y Arduino

ehfalla +2
No entiendo nada pero +10
Venom-Gtx
el coño de tu madre mamaguevo
Alchemist_ +1
Aguanten los potenciometros vieja! +10 reco y copado tu proyecto.
Quien_mejuna +2
Aguante matlab vieja, hace unas semanas fui a un seminario de mathworks en uno de los hoteles sheraton, que manera de comer medialunas loco
jackieu -4
El arduino es para los que no saben diseñar un circuito electrónico.
after909
igual uso el micro del arduino, el arduino es secundario para mi
LuxArts +3
El Arduino es solamente un micro programable que te saca de un apuro para probar cosas o pasar el rato. La mayoría que sabe usar Arduino bien también usa microcontroladores. No digas pelotudeces fiera...
Fercomando
@after909 Que groso que sos man según vos es una mierda.. solo los ingenieros pueden experimentar. Porque la persona promedio no podría ver un tutorial y hacer algo por si misma y a su medida cerebrito...
locoosi -1
control
tal vez con uno de estos también jajaja y no gastas una fortuna en el tarjeta y demás cosas XD
Patomuylogico +1
Muy bueno tu post. No sabía que había un toolbox de Arduino en Simulink. Con eso es una joda programar el Arduino!!!
No tenés que escribir ni una línea, solamente hacer el diagrama de bloques con Simulink y listo. Además en tiempo real!!!. Fantástico!!!
No sabés si funciona con las alternativas libres a Matlab, es decir Scilab u Octave??
Patomuylogico +1
@after909 Buen dato para tener en cuenta el de LabView, aunque el problema es que tanto Matlab/Simulink como LabView son programas muy caros.
after909
@Patomuylogico crack, idennnnnnnnnnn
Patomuylogico
@after909 Me olvidaba: +10.
aaeellxx +2
con un potenciometro directo al led ya controlas la intensidad del led, pero bueno el tuto para conectar arduino con matlab
Marco1114
No entiendo para qué usar el Arduino con el Matlab si dependés si o si de la PC. Para eso conectalo al puerto paralelo y te ahorrás el arduino.