Вы находитесь на странице: 1из 14

NDICE DE CONTENIDO

NDICE DE CONTENIDO......................................................................................1
COMPUTACIN FSICA.......................................................................................2
Modulacin por ancho de pulsos......................................................................2
Comunicacin serial..........................................................................................2
Arduino..............................................................................................................2
Programacin....................................................................................................3
LENGUAJE DE PROGRAMACIN......................................................................5
Cuerpo de un programa en Arduino..................................................................5
Estructuras........................................................................................................5
Variables............................................................................................................5
Operadores booleanos......................................................................................6
Operadores matemticos..................................................................................6
Estructuras de control.......................................................................................6
Condicionales....................................................................................................6
Funciones..........................................................................................................7
Funciones digital...............................................................................................7
Funciones anloga............................................................................................7
ARDUINO..............................................................................................................7
Expandir Arduino con los shields......................................................................8
Entradas y salidas:............................................................................................9
Pines especiales de entrada y salida:...............................................................9
Alimentacin de un Arduino..............................................................................9
Terminales Digitales........................................................................................10
Pines Analgicos.............................................................................................11
Pines de alimentacin.....................................................................................11
INSTALANDO DRIVERS....................................................................................12
Pasos...............................................................................................................12
Conociendo el software Arduino.....................................................................13

COMPUTACIN FSICA
La Computacin fsica, significa la construccin de sistemas interactivos fsicos
mediante el uso de software y hardware que pueden sentir y responder al mundo
analgico. Si bien esta definicin es suficientemente amplia para abarcar aspectos como
los sistemas inteligentes de control de trfico de automviles o los procesos de
automatizacin de fbricas, en un sentido ms amplio, la computacin fsica es un
marco creativo para la comprensin de la relacin de los seres humanos en el mundo
digital. En la prctica, a menudo el trmino describe el arte hecho a mano, diseo de
proyectos DIY o pasatiempos que utilizan sensores y microcontroladores para traducir
entradas analgicas a sistemas basados en software, y/o controlar dispositivos
electromecnicos como motores, servos, iluminacin u otro hardware.
El prototipado (crear montajes rpidos con ayuda de una protoboard y componentes
bsicos de electrnica) juega un papel importante en la computacin fsica.
Herramientas como Arduino y Fritzing son tiles para diseadores, artistas, estudiantes
y entusiastas porque ayudan a elaborar prototipos rpidamente.
Modulacin por ancho de pulsos
La modulacin por ancho de pulsos (tambin conocida como PWM, siglas en ingls de
pulse-width modulation) de una seal o fuente de energa es una tcnica en la que se
modifica el ciclo de trabajo de una seal peridica (una senoidal o una cuadrada, por
ejemplo), ya sea para transmitir informacin a travs de un canal de comunicaciones o
para controlar la cantidad de energa que se enva a una carga.
Por ejemplo si le aplicamos PWM a un LED podemos variar su intensidad de brillo y
sile aplicamos un PWM a un motor DC logramos variar la velocidad del mismo con la
caracterstica de mantener su par (fuerza) constante.
Comunicacin serial
Es una interfaz de comunicaciones de datos digitales, frecuentemente utilizada por
computadores y perifricos, donde la informacin es transmitida bit a bit enviando un
solo bit a la vez. Uno de sus usos es monitorear a travs de la pantalla del computador el
estado del perifrico conectado, por ejemplo al pulsar la letra A en el teclado se debe
encender un LED conectado de manera remota al computador.
Arduino
Arduino es una placa con un microcontrolador de la marca Atmel y con toda la
circuitera de soporte, que incluye, reguladores de tensin, un puerto USB (En los
ltimos modelos, aunque el original utilizaba un puerto serie) conectado a un mdulo
adaptador USB-Serie que permite programar el microcontrolador desde cualquier PC de
manera cmoda y tambin hacer pruebas de comunicacin con el propio chip. La tarjeta
Arduino, contiene para interaccin con el usuario trece entradas/salidas digitales, seis
entradas analgicas y un puerto serial que permite realizar comunicacin con perifrico,
2

adems de un puerto serial una conexin USB, en la figura podemos observar la


localizacin de las entradas analgicas y digitales como los pines de alimentacin.
Tambin tiene un pulsador para resetear cualquier fallo que exista en los procesos que se
vayan a realiza con la tarjeta
Un arduino dispone de 14 pines que pueden configurarse como entrada o salida y a los
que puede conectarse cualquier dispositivo que sea capaz de transmitir o recibir seales
digitales de 0 y 5 V.
Tambin dispone de entradas y salidas analgicas. Mediante las entradas analgicas
podemos obtener datos de sensores en forma de variaciones continuas de un voltaje. Las
salidas analgicas suelen utilizarse para enviar seales de control en forma de seales
PWM.
Arduino es una plataforma de electrnica abierta para la creacin de prototipos basada
en software y hardware libre, flexible y fcil de usar. Se cre para artistas, diseadores,
aficionados y cualquier interesado en crear entornos u objetos interactivos.
Arduino puede tomar informacin del entorno a travs de sus pines de entrada, para esto
toda una gama de sensores puede ser usada 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
programacin Arduino (basado en Wiring) y el entorno de desarrollo Arduino (basado
en Processing). Los proyectos hechos con Arduino pueden ejecutarse sin necesidad de
conectarlo a un ordenador, si bien tienen la posibilidad de hacerlo y comunicar con
diferentes tipos de software (p.ej. Flash, Processing, MaxMSP). Las placas pueden ser
hechas a mano o comprarse montadas de fbrica; el software puede ser descargado de
forma gratuita. Los ficheros de diseo de referencia (CAD) estn disponibles bajo una
licencia abierta, as pues eres libre de adaptarlos a tus necesidades.
Programacin
La programacin es un gran recurso que nos permite crear diversas secuencias de pasos
lgicos que van a satisfacer nuestras necesidades y las de nuestros sistemas. Programar
es todo un arte que requiere de una gran habilidad lgica y concentracin por parte del
programador.
Es el proceso de disear, escribir, probar, depurar y mantener el cdigo fuente de
programas computacionales. El cdigo fuente es escrito en un lenguaje de
programacin. El propsito de la programacin es crear programas que exhiban un
comportamiento deseado.
El proceso de escribir cdigo requiere frecuentemente conocimientos en varias reas
distintas, adems del dominio del lenguaje a utilizar, algoritmos especializados y lgica
formal. Programar involucra reas como el anlisis y diseo de la aplicacin.

Para crear un programa que el computador interprete y ejecute las instrucciones escritas
en l, debe usarse un Lenguaje de programacin. En sus inicios los computadores
interpretaban slo instrucciones en un lenguaje especfico, del ms bajo nivel conocido
como cdigo mquina, siendo ste excesivamente complicado para programar. De
hecho slo consiste en cadenas de nmeros 1 y 0 (Sistema binario).
Para facilitar el trabajo de programacin, los primeros cientficos que trabajaban en el
rea decidieron reemplazar las instrucciones, secuencias de unos y ceros, por palabras o
letras provenientes del ingls, codificndolas as y creando un lenguaje de mayor nivel,
que se conoce como Assembly o lenguaje ensamblador. Por ejemplo, para sumar se usa
la letra A de la palabra inglesa add (sumar). En realidad escribir en lenguaje
ensamblador es bsicamente lo mismo que hacerlo en lenguaje mquina, pero las letras
y palabras son bastante ms fciles de recordar y entender que secuencias de nmeros
binarios.
A medida que la complejidad de las tareas que realizaban las computadoras aumentaba,
se hizo necesario disponer de un mtodo sencillo para programar. Entonces, se crearon
los lenguajes de alto nivel. Mientras que una tarea tan trivial como multiplicar dos
nmeros puede necesitar un conjunto de instrucciones en lenguaje ensamblador, en un
lenguaje de alto nivel bastar con slo una.

LENGUAJE DE PROGRAMACIN
Un lenguaje de programacin es un idioma artificial diseado para expresar operaciones
que pueden ser llevadas a cabo por mquinas como los computadores.
Pueden usarse para crear programas que controlen el comportamiento fsico y lgico de
una mquina, para expresar algoritmos con precisin, o como modo de comunicacin
humana.
Est formado por un conjunto de smbolos y reglas sintcticas y semnticas que definen
su estructura y el significado de sus elementos y expresiones. Al proceso por el cual se
escribe, se prueba, se depura, se compila y se mantiene el cdigo fuente de un programa
informtico se le llama programacin.
Cuerpo de un programa en Arduino
Arduino se programa en el lenguaje de alto nivel C/C++ y generalmente tiene los
siguientes componentes para elaborar el algoritmo:

Estructuras

Variables

Operadores matemticos, lgicos y booleanos

Estructuras de control (Condicionales y ciclos)

Funcione

Estructuras
Son dos funciones principales que debe tener todo programa en Arduino:
setup(){ }
Cdigo de configuracin inicial, solo se ejecuta una vez.
loop(){
.

Esta funcin se ejecuta luego del setup( ), se mantiene ejecutndose hasta que se
desenergice o desconecte el Arduino.
Variables

Es un dato o
conjunto de
datos
que
cambia su valor con la ejecucin del programa.

Operadores booleanos
Usados generalmente dentro del condicional If y sobre el For y While
== (igual a)

!= (diferente de)

< (menor que)

(mayor que)

<= (menor o igual)

>= (mayor o igual)

Operadores matemticos
Se aplican al manejo de variables, condicionales y ciclos

= (asignar)

% (mdulo)

+ (suma)

- (resta)

* (multiplicacin)

/ (divisin)

Estructuras de control
Son instrucciones que nos permiten tomar decisiones y hacer diversas repeticiones de
acuerdo a unos parmetros, dentro de las ms importantes podemos destacar:
If
6

Switch/case

For

While

Condicionales
Ideales para tomar decisiones luego de evaluar las condiciones lgicas:

Funciones
Una funcin es un conjunto de lneas de cdigo que realizan una tarea especfica y
puede retornar un valor. Las funciones pueden tomar par- metros que modifiquen su
funcionamiento. Las funciones son utilizadas para descomponer grandes problemas en
tareas simples y para implementar operaciones que son comnmente utilizadas durante
un programa y de esta manera reducir la cantidad de cdigo.
Cuando una funcin es invocada se le pasa el control a la misma, una vez que sta
finaliz con su tarea el control es devuelto al punto desde el cual la funcin fue llamada.
Funciones digital
Orientas a revisar el estado y la configuracin de las entradas y salidas digitales

Funciones anloga
Ideales para la lectura y escritura de valores anlogos
7

ARDUINO
Con las capacidades de Arduino solo debemos tener nociones bsicas de electrnica y
programacin, eso es suficiente para comenzar a desarrollar nuestros proyectos.
Arduino cuenta con una gran comunidad donde se comparte todo lo desarrollado y es
una gran ventana para que puedas ver todo lo que es posible desarrollar.
El proyecto comenz en Ivrea, Italia (el sitio de la compaa de computadoras Olivetti),
en el ao 2005 con el fin de crear un dispositivo para estudiantes para el control
integrado de proyectos de diseo e interaccin, con la finalidad de que fuera ms barato
que los sistemas de creacin de prototipos disponibles en ese entonces. A partir de mayo
de 2011, ms de 300.000 unidades de Arduino han sido distribuidas. Los fundadores
Massimo Banzi y David Cuartielles nombraron el proyecto como Arduino de Ivrea, un
protagonista histrico de la ciudad. En primer lugar "Arduino" es un termino masculino
italiano, que significa "gran amigo".
El proyecto Arduino es un fork (en la ingeniera de software, un fork es un proyecto que
sucede cuando los desarrolladores tienen una copia legal del cdigo fuente y empiezan
el desarrollo independiente de ella, creando una obra distinta de software) de la
plataforma Wiring de cdigo abierto. Wiring fue creado por el artista colombiano y
programador Hernando Barragn como una tesis de maestra en el Instituto de diseo e
interaccin Ivrea, bajo la supervisin de Massimo Banzi y Casey Reas. Por otra parte,
Wiring se basa en Processing y su entorno de desarrollo integrado creado por Casey
Reas y Ben Fry. "Arduino fue construido en torno al proyecto Wiring de Hernando
Barragn. Wiring fue el proyecto de tesis de Hernando en el Instituto de diseo e
interaccin Ivrea. Fue pensado para ser una versin electrnica de Processing que
utiliza nuestro entorno de programacin y fue modelado para la sintaxis de Processing.
Fue supervisado por m mismo y Massimo Banzi, un fundador de Arduino.
Expandir Arduino con los shields
Un Shield o escudo es una placa que permite expandir funcionalidades a tu Arduino,
con lo cual puedes conectar motores, o a la red celular, a una red WiFi, a una red
Ethernet o tener un MP3 en el Arduino, entre muchos ms .
Placa Arduino Uno y sus partes
8

1. Conector USB para el cable Tipo AB


2. Pulsador de Reset
3. Pines de E/S digitales y PWM
4. LED verde de placa encendida
5. LED naranja conectado al pin13
6. ATmega 16U2 encargado de la comunicacin con el PC
7. LED TX (Transmisor) y RX (Receptor) de la comunicacin serial
8. Puerto ICSP para programacin serial
9. Microcontrolador ATmega 328, cerebro del Arduino
10. Cristal de cuarzo de 16Mhz
11. Regulador de voltaje
12. Conector hembra 2.1mm con centro positivo
13. Pines de voltaje y tierra
14. Entradas anlogas
Entradas y salidas:
Cada uno de los 14 pines digitales se puede usar como entrada o como salida.
Funcionan a 5V, cada pin puede suministrar hasta 40 mA. La intensidad mxima de
entrada tambin es de 40 mA.
Cada uno de los pines digitales dispone de una resistencia de pull-up interna de entre
20K y 50 K que est desconectada, salvo que nosotros indiquemos lo contrario.
9

Arduino tambin dispone de 6 pines de entrada analgicos que trasladan las seales a un
conversor analgico/digital de 10 bits.
Pines especiales de entrada y salida:

RX y TX: Se usan para transmisiones serie de seales TTL.

Interrupciones externas: Los pines 2 y 3 estn configurados para generar una


interrupcin en el atmega. Las interrupciones pueden dispararse cuando se
encuentra un valor bajo en estas entradas y con flancos de subida o bajada de la
entrada.

PWM: Arduino dispone de 6 salidas destinadas a la generacin de seales PWM


de hasta 8 bits.

SPI: Los pines 10, 11, 12 y 13 pueden utilizarse para llevar a cabo
comunicaciones SPI, que permiten trasladar informacin full dplex en un
entorno Maestro/Esclavo.

I2 C

Permite establecer comunicaciones a travs de un bus. El bus

I2 C

es un producto de Phillips para interconexin de sistemas embebidos.


Actualmente se puede encontrar una gran diversidad de dispositivos que utilizan
esta interfaz, desde pantallas LCD, memorias EEPROM, sensores...

Alimentacin de un Arduino

Puede alimentarse directamente a travs del propio cable USB o mediante una
fuente de alimentacin externa, como puede ser un pequeo transformador o,
por ejemplo una pila de 9V.

Los lmites estn entre los 6 y los 12 V. Como nica restriccin hay que saber
que si la placa se alimenta con menos de 7V, la salida del regulador de tensin a
5V puede dar menos que este voltaje y si sobrepasamos los 12V, probablemente
daaremos la placa.

La alimentacin puede conectarse mediante un conector de 2,1mm con el


positivo en el centro o directamente a los pines Vin y GND marcados sobre la
placa.

Hay que tener en cuenta que podemos medir el voltaje presente en el jack
directamente desde Vin. En el caso de que el Arduino est siendo alimentado
mediante el cable USB, ese voltaje no podr monitorizarse desde aqu.

10

Terminales Digitales
Las terminales digitales de una placa Arduino pueden ser utilizadas para entradas o
salidas de propsito general a travs de los comandos de programacin pinMode(),
digitalRead(), y digitalWrite(). Cada terminal tiene una resistencia pull-up que puede
activarse o desactivarse utilizando DigitalWrite() (con un valor de HIGH o LOW,
respectivamente) cuando el pin esta configurado como entrada. La corriente mxima
por salida es 40 mA.

Serial: 0 (RX) y 1 (TX). Utilizado para recibir (RX) y transmitir (TX) datos serie
TTL. En el Arduino Diacemila, estas terminales estn conectadas a las
correspondientes patas del circuito integrado conversor FTDI USB a TTL serie.
En el Arduino BT, estn conectados al las terminales correspondientes del
modulo Bluetooth WT11. En el Arduino Mini y el Arduino LilyPad, estn
destinados para el uso de un mdulo serie TTL externo (por ejemplo el
adaptador Mini-USB).

Interruptores externos: 2 y 3. Estas terminales pueden ser configuradas para


disparar una interrupcin con un valor bajo, un pulso de subida o bajada, o un
cambio de valor. Mira la funcin attachInterrupt() para mas detalles.

PWM: 3, 5, 6, 9, 10, y 11. Proporcionan salidas PWM de 8 bit con la funcin


analogWrite(). En placas con ATmega8, las salidas PWM solo estn disponibles
en los pines 9, 10, y 11.

Reset BT: 7. (solo en Arduino BT) Conectado a la lnea de reset del mdulo
bluetooth.

SPI: 10 (SS), 11 (MOSI), 12 (MISO), 13 (SCK). Estas terminales soportan


comunicacin SPI. Aunque esta funcionalidad esta proporcionada por el
hardware, no est incluida actualmente el el lenguaje Arduino.

LED: 13. En el Diacemila y el LilyPad hay un led en placa conectado al pin


digital 13. cuando el pin tiene valor HIGH, el LED est encendido, cuando el pin
est en LOW, est apagado

Pines Analgicos
Las Entradas analgicas son de 10 bits, por lo que entregan valores entre 0 y 1023. El
rango de voltaje est dado entre 0 y 5 volts, pero utilizando el pin AREF, este rango se
puede variar a algn otro deseado.
o Los pines de entrada analgicos soportan conversiones analgico-digital
(ADC) de 10 bit utilizando la funcin analogRead(). Las entradas
analgicas pueden ser tambin usadas como pines digitales: entrada
11

analgica 0 como pin digital 14 hasta la entrada analgica 5 como pin


digital 19. Las entradas analgicas 6 y 7 (presentes en el Mini y el BT)
no pueden ser utilizadas como pines digitales.
o I2C: 4 (SDA) y 5 (SCL). Soportan comunicaciones I2C (TWI) utilizando
la librera Wire (documentacin en la pgina web de Wiring).

Pines de alimentacin
o VIN (a veces marcada como "9V"). Es el voltaje de entrada a la placa Arduino
cuando se est utilizando una fuente de alimentacin externa (En comparacin
con los 5 voltios de la conexin USB o de otra fuente de alimentacin regulada).
Puedes proporcionar voltaje a travs de este pin. Date cuenta que diferentes
placas aceptan distintos rangos de voltaje de entrada, por favor, mira la
documentacin de tu placa. Tambin date cuenta que el LilyPad no tiene pin
VIN y acepta solo una entrada regulada.
o 5V. La alimentacin regulada utilizada para alimentar el microcontrolador y
otros componentes de la placa. Esta puede venir de VIN a travs de un regulador
en placa o ser proporcionada por USB u otra fuente regulada de 5V.
o 3V3. (solo en el Diacemila) Una fuente de 3.3 voltios generada por el chip FTDI
de la placa.
o GND. Pines de tierra.

INSTALANDO DRIVERS

En WINDOWS 7, Vista y XP

12

Pasos

Descargar el software de arduino.cc/en/Main/Software para Windows


Descomprimir la carpeta de Arduino en una ubicacin de fcil acceso
Conectar la placa Arduino Uno al PC y ver este aviso. No nos debemos
preocupar
Visitar Panel de control y luego Administrador de dispositivos, all buscar la
siguiente opcin

Click derecho sobre Dispositivo desconocido y luego sobre la opcin Actualizar


software del controlador.

Ingresar a la opcin Buscar software de controlador en el equipo

Examinar y buscar la carpeta de Arduino previamente descomprimida en el paso


2. Dentro de esa carpeta acceder a la carpeta Drivers y dar Aceptar
Una vez buscamos la carpeta de Drivers le damos Siguiente
Recibimos la confirmacin del Puerto COM asignado, este nmero de Puerto
COM es muy importante tenerlo en cuenta a la hora de programar.

Conociendo el software Arduino

Para ejecutar el programa Arduino, ingresamos a la carpeta de Arduino y all


buscamos el icono ce Arduino y le damos doble click
Puerto COM

13

Seleccionar la placa a trabajar

En el Administrador de dispositivos de Windows 7 nos mostrar el nuevo controlador


instalado, en "Puertos (COM y LPT)". Es importante que anotemos el nombre asignado
al puerto COM para Arduino, en nuestro caso COM3, pues lo necesitaremos seleccionar
en el IDE de Arduino

14

Вам также может понравиться