19
10 FACULTAD DE INGENIERIA DE COMPUTACION Y SISTEMAS Programación de Microcontroladores Arduino - Matlab PROGRAMACION DE MICROCONTROLADORES ARDUINO & MATLAB - UPA

Programacion Microcontroladores Arduino y Matlab

Embed Size (px)

DESCRIPTION

Ciencia

Citation preview

Page 1: Programacion Microcontroladores Arduino y Matlab

FACULTAD DE INGENIERIA DE COMPUTACION Y SISTEMAS

Programación de Microcontroladores

Arduino  - Matlab

ALUMNO: PIER ANTONY HORNA TREJO

PROGRAMACION DE MICROCONTROLADORES ARDUINO & MATLAB - UPA

Page 2: Programacion Microcontroladores Arduino y Matlab

Arduino

Arduino es una plataforma de electrónica abierta para la

creación de prototipos basada en software y hardware flexibles

y fáciles de usar. Se creó para artistas, diseñadores, aficionados

y cualquiera interesado en crear entornos u objetos interactivos.

Arduino puede tomar información del entorno a través de sus

pines de entrada de toda una gama de sensores y puede afectar

aquello que le rodea controlando luces, motores y otros

actuadores. El microcontrolador en la placa Arduino se

programa mediante el lenguaje de programación

Arduino(basasdo en Wiring) y el entorno de desarrollo Arduino

(basado en Processing). Los proyectos hechos con Arduino

pueden ejecutarse sin necesidad de conectar a un ordenador, si

bien tienen la posibilidad de hacerlo y comunicar con diferentes

tipos de software (p.ej. Flash, Processing, MaxMSP).

PROGRAMACION DE MICROCONTROLADORES ARDUINO & MATLAB - UPA

Page 3: Programacion Microcontroladores Arduino y Matlab

Arduino

Las placas pueden ser hechas a mano o compradasmontadas de

fábrica; el software puede ser descargado de forma gratuita. Los

ficheros de diseño de referencia (CAD) están disponibles bajo

una licencia abierta, así pues eres libre de adaptarlos a tus

necesidades

Cuando se habla de Arduino, es necesario tener en cuenta que

este se halla constituido por tres elementos fundamentales y

que todos ellos se denominan bajo el mismo nombre (Arduino),

estos componentes son:

El hardware o placas de Arduino

El entorno de programación o IDE

El lenguaje de programación.

En general  estos componentes fueron creados con la finalidad

de tener una plataforma de electrónica abierta para la creación

de prototipos basada en software y hardware flexibles y fáciles

de usar.

Lenguaje de Programación

PROGRAMACION DE MICROCONTROLADORES ARDUINO & MATLAB - UPA

Page 4: Programacion Microcontroladores Arduino y Matlab

con Arduino

La plataforma Arduino se programa mediante el uso de un leng

uaje propio basado en el popular lenguaje de programación

de alto nivel Processing. 

Arduino está basado en C y soporta todas las funciones del

estándar C y algunas de C++.

Processing es un lenguaje de programación y entorno de

desarrollo integrado de código abierto basado en Java, de fácil

utilización, y que sirve como medio para la enseñanza y

producción de proyectos multimedia e interactivos de diseño

digital.

Figura 1. Aspecto de la placa Arduino Duemilanove.

Lenguaje de Programación

con Arduino

PROGRAMACION DE MICROCONTROLADORES ARDUINO & MATLAB - UPA

Page 5: Programacion Microcontroladores Arduino y Matlab

El programa se implementará haciendo uso del entorno de progr

amación propio de Arduino y se transferirá empleando un cable

USB.

Si  bien  en  el  caso  de  la  placa  USB  no  es  preciso  utilizar

una   fuente  de alimentación externa, ya que el propio cable USB

la proporciona, para la realización de algunos de los

experimentos prácticos así que será necesario disponer  de  una

fuente de alimentación externa ya que la alimentación

proporcionada por el USB puede no ser suficiente

El voltaje de la fuente puede estar entre 6 y 25 Voltios.

Figura 2. Entorno de desarrollo. 

Estructura Básica de un Programa

PROGRAMACION DE MICROCONTROLADORES ARDUINO & MATLAB - UPA

Page 6: Programacion Microcontroladores Arduino y Matlab

Figura 3.

a) Compilar programa.

b) Botón de reset. 

c) Transferir programa a la placa.

La  estructura  básica  de  programación  de Arduino  es  bastante

simple  y  divide  la  ejecución  en dos partes: setup y loop. 

Setup() constituye la preparación del programa y loop() es la

ejecución.

En la función Setup() se incluye la declaración de variables y se 

trata de la primera función que se ejecuta en el programa. 

Lenguaje de Programación Arduino

Esta función se ejecuta una única vez y es empleada para configurar el   pinMode.

(Ejm.   Si   un   determinado   pin   digital   es   de   entrada   o  

PROGRAMACION DE MICROCONTROLADORES ARDUINO & MATLAB - UPA

Page 7: Programacion Microcontroladores Arduino y Matlab

 salida)   e   inicializar   la comunicación serie. 

La función loop() incluye el código a ser ejecutado continua.

(Leyendo las entradas de la placa, salidas, etc.).

Como  se  observa  en  este  bloque  de  código  cada  instrucción acaba  con  ;  y  los  comentarios  se indican con //. Al igual que en C se pueden introducir bloques de comentarios con /* … */.

FUNCIONES

Lenguaje de Programación Arduino

VARIABLES

Una variable puede ser declarada en el inicio del programa antes de Setup (), localmente a una determinada función e incluso dentro de un bloque como pueda ser un bucle.

El sitio en el que la variable es declarada determina el ámbito de la misma. Una variable global es aquella que puede ser empleada en cualquier función del programa.

PROGRAMACION DE MICROCONTROLADORES ARDUINO & MATLAB - UPA

Page 8: Programacion Microcontroladores Arduino y Matlab

Estas variables deben ser declaradas al inicio del programa (Antes de la función setup ()).

MATLAB

MATLAB  es un lenguaje de alto nivel y un entorno interactivo

para el cálculo numérico, visualización y programación. Usando

MATLAB, se puede analizar los datos, desarrollar algoritmos y

crear modelos y aplicaciones. El lenguaje, las herramientas y las

funciones integradas de matemáticas permiten explorar

múltiples enfoques y llegar a una solución más rápida que con las

hojas de cálculo o lenguajes de programación tradicionales, como

C / C + + o Java.

PROGRAMACION DE MICROCONTROLADORES ARDUINO & MATLAB - UPA

Page 9: Programacion Microcontroladores Arduino y Matlab

Entre sus prestaciones básicas se hallan: la manipulación

de matrices, la representación de datos y funciones, la

implementación de algoritmos, la creación de interfaces de

usuario (GUI) y la comunicación con programas en

otros lenguajes y con otros dispositivos hardware. El paquete

MATLAB dispone de dos herramientas adicionales que expanden

sus prestaciones, a saber, Simulink (plataforma de simulación

multidominio) y GUIDE (editor de interfaces de usuario - GUI).

Además, se pueden ampliar las capacidades de MATLAB con

las cajas de herramientas (toolboxes); y las de Simulink con

los paquetes de bloques (blocksets).

Programación con Matlab

GUIDE es un entorno de programación visual disponible en

MATLAB para realizar y ejecutar programas que necesiten

ingreso continuo de datos. Tiene las características básicas de

todos los programas visuales como Visual Basic o Visual C++.

PARTES DE MPLAB

Editor

Project Manager

Simulador

PROGRAMACION DE MICROCONTROLADORES ARDUINO & MATLAB - UPA

Page 10: Programacion Microcontroladores Arduino y Matlab

Ensamblador

Linker

Programador

CAMPO DE ETIQUETAS

Las etiquetas son nombres de subrutinas o secciones de código

fuente. Dando nombres a partes del programa, se posibilita que

las instrucciones puedan saltar o hacer referencia a esas partes

sin necesidad de recordar las direcciones físicas donde están

ubicadas.

Programación con Matlab

El ensamblador MPASM permite etiquetas de hasta 32

caracteres. Una etiqueta puede ir seguida de dos puntos (:),

espacios, tabuladores o RETURN. Deben empezar por un

carácter alfanumérico o de subrayado (_) y pueden contener

cualquier combinación de caracteres alfanuméricos

CAMPO DE INSTRUCCIONES

La segunda columna corresponde al campo de instrucciones.

Puede ser una instrucción del microcontrolador o una

instrucción para el ensamblador, llamada directiva

PROGRAMACION DE MICROCONTROLADORES ARDUINO & MATLAB - UPA

Page 11: Programacion Microcontroladores Arduino y Matlab

Figura 1. Listado del programa

Programación con Matlab

Convenciones en la escritura del código fuente

Para hacer la tarea del programador más grata, se usan algunas

convenciones. Con ellas, se facilita la revisión y comprensión de

un programa. Algunas de las convenciones más utilizadas son:

· Los ficheros de código fuente llevarán la extensión *.ASM o

*.SRC

· Los ficheros de listado llevarán la extensión *.LST

· Los ficheros de código objeto llevarán la extensión *.OBJ

· Los ficheros ejecutables llevarán la extensión *.HEX

PROGRAMACION DE MICROCONTROLADORES ARDUINO & MATLAB - UPA

Page 12: Programacion Microcontroladores Arduino y Matlab

Programación con Matlab

Creando el fichero fuente.

PROGRAMACION DE MICROCONTROLADORES ARDUINO & MATLAB - UPA

Page 13: Programacion Microcontroladores Arduino y Matlab

Creando el fichero fuente

Programación con Matlab

El siguiente paso para desarrollar una aplicación desde

MPLAB-IDE es creando un proyecto, la forma más sencilla es

utilizar la herramienta MPLAB Project Wizard.

1. Abrir la herramienta MPLAB Project Wizard seleccionando

Project>Project Wizard.

2. Elegir el modelo de microcontrolador PIC16F84.

3. Confirmar la localización de Microchip Toolsuite, y

seleccionad MPASM Assembler. Ingeniería de Sistemas y

Automática Prácticas de Microcontroladores PIC

PROGRAMACION DE MICROCONTROLADORES ARDUINO & MATLAB - UPA

Page 14: Programacion Microcontroladores Arduino y Matlab

4. Introducir un nombre para denominar el proyecto

(Proyecto1) y seleccionar el directorio donde se desea guardar.

5. Añadir el fichero fuente creado anteriormente

(ejemplo1.asm) al proyecto.

6. Pulsar el botón de Finalizar para salir del asistente.

PROGRAMACION DE MICROCONTROLADORES ARDUINO & MATLAB - UPA