josé manuel ruiz gutiérrez - programacion grafica de arduino (2011) [es].pdf

Upload: fers-ram

Post on 14-Oct-2015

124 views

Category:

Documents


7 download

TRANSCRIPT

  • Entornos Grficos para la ProgramacinPlataforma Open Hardware Arduino

    Jos Manuel Ruiz GutirrezNoviembre 2011 Ver1.0

  • Entornos Grficos de Programacin para la Plataforma Arduino.Jos Manuel Ruiz Gutirrez Ver1.0

    2

    ndice

    1. Entornos de monitorizacin esclavos.

    1.1. Etoys (Squeak)1.2. S4A (Scratch)1.3. Labview1.4. Firefly1.5. MyOpenLab

    2. Entornos de programacin autnomos

    2.1. Minibloq2.2. Ardublock2.3. Amici2.4. ModKit2.5. VirtualBreadBoard

    3. Otros entornos

    3.1. Fritzing

    4. Apndice5 de Noviembre de 2011 Versin de Documento: V1.0

    Jos Manuel Ruiz Gutirrez [email protected] de referencia: http://josemanuelruizgutierrez.blogspot.com/

  • Entornos Grficos de Programacin para la Plataforma Arduino.Jos Manuel Ruiz Gutirrez Ver1.0

    3

    1.- Entornos de monitorizacin esclavos.1.1 ARDUINO + EtoysEtoys (Squeak)http://tecnodacta.com.ar/gira/projects/physical-etoysPhysical Etoys: Control de Arduino desde Etoys (Squeak)

    Descripcin.Physical Etoys es una herramienta de programacin visual que une el mundo virtual delas computadoras con el mundo fsico, con el programa se puede programar fcilmentelos objetos del mundo real (por ejemplo, robots) para realizar tareas de inters, o sepueden mover objetos grficos en la pantalla a travs de variables recogidas del mundofsico.Todo es tan sencillo como coger algunos objetos de la paleta que representan losdistintos elementos tanto de control de la tarjeta Arduino como otros auxiliares paradibujar o representar valores en la pantalla y unirlos en un puzle2 que finalmentepermitir la realizacin de una aplicacin de visualizacin y/o control. Cada uno delos objetos dispone de una serie de parmetros a los que se designara unos valores deacuerdo con nuestras preferencias y los requerimientos de la aplicacin. No haynecesidad de tener conocimientos de programacin, slo tiene que utilizar el ratn yexplorar el sistema y sus posibilidades.

    Physical Etoys es en realidad una "extensin" de Etoys: un entorno de autor para lacreacin de aplicaciones multimedia y de simulacin mediante la representacin visualrealizado por las mismas personas que crearon Smalltalk. Etoys es un estupendo

  • Entornos Grficos de Programacin para la Plataforma Arduino.Jos Manuel Ruiz Gutirrez Ver1.0

    4

    software que ayuda a los nios a explorar su propia creatividad de manera divertida yeducativa, por lo que hemos querido dar Etoys la posibilidad de interactuar con objetosdel mundo real, tales como kits de robtica y joysticks innovadoras. Etoys, est abierto,es gratis, y es muy divertido.Se trata de una herramienta realizada en el Grupo de Investigacin en RobticaAutnoma delo CAETI GIRA que permite el dilogo con la tarjeta Arduino en el modolectura y escritura de datos. Este proyecto es muy importante dado que incorporaArduino a una herramienta de muy amplia difusin y gran reputacin en el mundo delsoftware acadmico tal como es Squeak

    En la direccin siguiente se puede encontrar el software y los manuales bsicos de uso.http://tecnodacta.com.ar/gira/projects/physical-etoys/El entorno Physical Etoys permite trabajar con distintos modelos de Robots y tarjetas decontrol:

    1. Arduino.2. Nintendo Wiimote.3. Puerto paralelo.4. RoboSapien v2.5. Roboquad.6. I-Sobot.7. Lego Mindstorms Nxt.

  • Entornos Grficos de Programacin para la Plataforma Arduino.Jos Manuel Ruiz Gutirrez Ver1.0

    5

  • Entornos Grficos de Programacin para la Plataforma Arduino.Jos Manuel Ruiz Gutirrez Ver1.0

    6

    1.2 Scratch + ArduinoS4A (Scratch)http://seaside.citilab.eu/scratch?_s=hvXNe4iKvwhZ3YaO&_k=6rrYXWDBfmL1NRUy

    Citilab

    IntroduccinCitilab pone a disposicin de la comunidad Arduino una aplicacin basada en Scratchpara programar de manera grfica Arduino. La aplicacin se llama s4a (ficheros paradescargar S4A y Firmware)

    S4A es una modificacin de Scratch que proporciona una programacin sencilla de laplataforma abierta de hardware Arduino. Incluye nuevos bloques para controlar

  • Entornos Grficos de Programacin para la Plataforma Arduino.Jos Manuel Ruiz Gutirrez Ver1.0

    7

    sensores y actuadores conectados a Arduino. Tambin hay una tabla que informa delestado de los sensores similar a la PicoBoard.Ha sido desarrollada para atraer a la gente al mundo de la programacin. Su objetivo estambin proporcionar una interfaz de nivel alto para programadores de Arduino confuncionalidades como la interaccin de varias placas a travs de eventos de usuario.Caractersticas

    Los objetos de la librera Arduino ofrecen bloques para funcionalidades bsicasdel microcontrolador, escrituras y lecturas tanto analgicas como digitales,adems de alguna de ms nivel. Puedes encontrar bloques para controlarservomotores de rotacin continua Parallax.

    Se pueden crear objetos Arduino a travs de 3 maneras distintas en el entorno deScratch. Puedes elegir entre crear una nueva conexin o usar una ya existente.Esta caracterstica permite a los objetos virtuales Arduino funcionar de formacolaborativa usando la misma conexin (el objeto fsico). El objeto Arduinoencontrar l mismo el puerto USB donde la placa est conectada.

    S4A interacta con Arduino enviando el estado de los actuadores y recibiendo elde los sensores cada 75 ms, por lo tanto el ancho de pulso ha de ser mayor queeste perodo. Este intercambio de informacin se efecta usando el protocolo dela PicoBoard, el cual ya est implementado en un programa especfico (llamadofirmware) en la placa. Encontrareis instrucciones de cmo cargarlo a travs delentorno Arduino.

    Funciona con las versiones Duemilanove/Diecimila y Uno, quizs tambin conotras pero no las hemos testeado an. Tambin se puede controlar una placa demanera inalmbrica si se aade un mdulo RF como por ejemplo XBee. Una

  • Entornos Grficos de Programacin para la Plataforma Arduino.Jos Manuel Ruiz Gutirrez Ver1.0

    8

    caracterstica importante es que se puede crear un proyecto utilizando tantasplacas como puertos USB haya disponibles.

    S4A es compatible con Scratch, se puede trabajar con proyectos Scratch ytambin con la PicoBoard. Sin embargo, no se pueden compartir proyectos yaque va en contra de los trminos de uso de Scratch.

    Por otra parte, la configuracin de entrada/salida an est siendo desarrollada,as que por ahora los componentes tienen que conectarse de una forma concreta.Dicha configuracin ofrece 6 entradas analgicas (pines analgicos), 2 entradasdigitales (pines digitales 2 y 3), 3 salidas analgicas (pines digitales 5, 6 y 9), 3salidas digitales (pines 10, 11 y 13) y 4 salidas especiales para conectarservomotores de rotacin continua Parallax (pines digitales 4, 7, 8 y 12).

    Creadores: S4A ha sido desarrollado por Marina Conde, Vctor Casado, Joan Gell,Jos Garca y Jordi Delgado con la ayuda del Grupo de Programacin Smalltalk delCitilab. Para informar de errores o simplemente darnos sugerencias podis escribir a:[email protected].

    Futuras versionesEstamos desarrollando un applet de java para cargar el firmware de una forma fcil,adems de seguir trabajando en la configuracin de las entradas y salidas. Tambinqueremos ofrecer la posibilidad de enviar el cdigo principal del proyecto a la placapara no depender del entorno Arduino.Para las descargas visitad la seccin de descargas para obtener la ltima versin de S4Ay del firmware adems de ver algunos vdeos de demostracin.Modo de instalacin.

    1. Para instalar S4A +Arduino se debern seguir los siguientes pasos.2. Primero instalar el software S4A una vez que se haya descargado del su lugar de

    origen.3. Se deber instalar en la tarjeta Arduino el Firmware correspondiente que facilita

    la comunicacin con S4A. Esto se realiza cargando el fichero firmware en elIDE de Arduino y despus descargndolo sobre la tarjeta.

    4. Finalmente se ejecuta S4A y de realiza el diseo haciendo uso de las libreras debloques correspondientes una parte de las cuales se encarga de la lectura yescritura de datos en la tarjeta de acuerdo siempre con la configuracin que

  • Entornos Grficos de Programacin para la Plataforma Arduino.Jos Manuel Ruiz Gutirrez Ver1.0

    9

    establezca el firmware. A continuacin se detallan estas configuraciones de E/Sque no olvidemos que no se pueden modificar desde S4A.

    ENTRADAS/SALIDAS salidas digitales (pines digitales 10,11 y 13) salidas analgicas (pines digitales 5, 6 y 9) entradas analgicas (todos los pines analgicos de entrada) entradas digitales (pines digitales 2 y 3) servomotores RC (pines digitales 4, 7, 8 y 12)

  • Entornos Grficos de Programacin para la Plataforma Arduino.Jos Manuel Ruiz Gutirrez Ver1.0

    10

    1.3 Arduino + Labviewhttps://decibel.ni.com/content/groups/labview-interface-for-arduino

    Introduccin.Arduino ya tiene conexin con Labview lo cual le confiere una gran potencialidad dadoque estamos hablando de una herramienta de gran capacidad y muy extendida tanto enel mundo acadmico como en el industrial y de laboratorio.La conexin que actualmente ofrece Labview es en modo esclavo. Solo es posiblevisualizar y realizar control de las E/S de arduino den modo esclavo.Esta forma de trabajo, por tratarse de Labview, es interesante para usarla en elprototipado de aplicaciones de instrumentacin en as que la tarjeta Arduino juega elpapel de un sencillo y verstil equipo de adquisicin de datos a un costo muy bajo.

    Instalacin de la interfaz de LabVIEW con ArduinoLa configuracin de la interfaz de LabVIEW para Arduino es un proceso de seis pasosque slo tendr que completar una sola vez. Por favor, siga las siguientes instruccionespara comenzar a crear aplicaciones con la interfaz de LabVIEW para Arduino.(Para una breve descripcin de la interfaz de LabVIEW para Arduino ver post Michaelsaqu).

    1. Instalar LabVIEWSi usted compr el paquete de LabVIEW y Arduino de Sparkfun.compuede instalar LabVIEW desde el DVD incluido.Si usted no posee una copia de LabVIEW se puede descargar e instalar laversin de evaluacin de 30 das aqu.

    2. Instalar los controladores VISA NIWindows Download.Linux Download.Mac Download.

    3. Instale JKI VI Package Manager (VIPM) Community Edition (gratuita).All Operating Systems..

    4. Instalar la interfaz de LabVIEW para Arduino como se describe en KB5L38JQYG

    5. Conecta tu Arduino a su PC como se describe en KB 5INA7UYG

  • Entornos Grficos de Programacin para la Plataforma Arduino.Jos Manuel Ruiz Gutirrez Ver1.0

    11

    6. Carga la interfaz de LabVIEW para Firmware Arduino en su Arduino como sedescribe en KB 5LPAQIYGAhora est listo para utilizar la interfaz de LabVIEW para Arduino. Haga clicaqu para ver algunos ejemplos para ayudarle a empezar.

    Ejemplo: Leer una entrada AnalgicaDescripcin:Este ejemplo muestra cmo leer una entrada analgica en el Arduino usando la interfaz deLabVIEW para Arduino.Tutorial:

    1. Asegrese de que tiene instalada la interfaz de LabVIEW para Arduino.2. Abra la lectura analgica Pin Ejemplo VI (bsqueda de "Arduino" en el

    buscador de ejemplo una vez que la herramienta est instalada).3. En el panel frontal, seleccione el pin de Arduino analgico que desea leer.4. Construir el esquema del circuito se muestra en el diagrama de bloques.5. Conecta tu Arduino a su PC con un cable USB. Opcionalmente se puede

    especificar el puerto COM asociado con la placa Arduino a la terminal derecursos VISA de la Init.vi para disminuir el tiempo necesario para LabVIEWpara conectarse a la placa Arduino.

    6. Haga clic en Ejecutar.7. Gire el potencimetro y observe el medidor y pantalla digital en la actualizacin

    del panel frontal.

  • Entornos Grficos de Programacin para la Plataforma Arduino.Jos Manuel Ruiz Gutirrez Ver1.0

    12

  • Entornos Grficos de Programacin para la Plataforma Arduino.Jos Manuel Ruiz Gutirrez Ver1.0

    13

    1.4 Conexin de Arduino a RhinoIntroduccinYa es posible conectar Arduino al poderoso entorno grafico Rinho a travs del conocidoplugin Grasshopper que es un entorno grfico muy verstil y fcil de utilizar que seutiliza para la programacin de eventos y gobierno de imgenes de Rinho.

    La herramienta en cuestin se trata de una librera llamada Firefly que incorpora unconjunto de bloques de funcin que se conenctan con Arduino.

    Hay dos tutoriales muy interesantes realizados por Juanma Sarri que se puedendescargar en:

  • Entornos Grficos de Programacin para la Plataforma Arduino.Jos Manuel Ruiz Gutirrez Ver1.0

    14

    Tutorial de conexin con Grasshopper + Arduino Sketechs del tutorialFirefly for Grasshopper / Arduino from Jason K Johnson on Vimeo.

    Rhino+Grasshoper+Firefly+Arduino

    Grasshoper es un pugin de Rhino que aada a esta herramienta la posibilidad de realizarscripts de forma grafica para ejecutarlos en Rhino. Una de las libreras de Grasshoperse llama Firefly y esta pensada para interactuar con Arduino en el gobierno de las E/Stanto analgicas como digitales d ela plataforma Arduino.A continuacin se muestra una imagen de la plantilla de componentesdisponibles en la actualidad en la barra de herramientas de Firefly.

    Descripcin bsica de los componentes de FireflyComponentes relacionados con Arduino

    Los puertos disponiblesComprueba los puertos de comunicacin disponibles en el momento actual. Siusted tiene una o ms placas Arduino conectado a su ordenador, se devolver elentero asociado a cada puerto. Se puede verificar el nmero de COM haciendo clicen Herramientas> puerto serie en el interior del IDE Arduino (placa debe estarconectado a la computadora).

    Abrir / cerrar el puertoAbrir o cerrar la conexin del puerto serie. Se utiliza en conjunto con los bloquesde lectura y escritura para establecer la conexin entre el Grasshopper y Arduino.

    Uno Leer

  • Entornos Grficos de Programacin para la Plataforma Arduino.Jos Manuel Ruiz Gutirrez Ver1.0

    15

    Este componente va a leer los valores de todos los pines correspondientes digitalesy analgicos en las tarjetas Arduino del tipo el Uno Arduino, Duemilanove,Diecimilla, o Lillypad. Nota: Este componente est destinado a ser usado en unincon el FireFly Sketch Uno Firmata.

    Uno EscribirEste componente escribe los valores en todos los pines correspondientes a unArduino Uno Arduino, Duemilanove, Diecimilla, o la junta Lillypad. Nota: Estecomponente est destinado a ser usado en unin con el FireFly Sketch UnoFirmata.

    Mega LeerEste componente va a leer los valores de todos los pines correspondientes digitalesy analgicos en las tarjetas Arduino Mega. Nota: Este componente est destinado aser usado en unin con el FireFly Sketch Uno Firmata.

    Escribir MegaEste componente escribe los valores en todos los pines correspondientes a unArduino Mega. Nota: Este componente est destinado a ser usado en unin con elFireFly Sketch Uno Firmata.

    Lea serie (Genrico)Devuelve cualquier valor de cadena que viene a travs del puerto serie. Estecomponente no tiene ningn tipo de Arduino especficos asociados con el, lo quesignifica que usted puede crear su propio cdigo para enviar un valor de cadena dela Arduino con el comando Serial.println.

    Escribir serie (Genrico)Escribir cualquier valor de cadena al puerto serie. Usted tendr que proporcionartambin un cdigo de Arduino para procesar el valor de cadena que viene a travsdel puerto serie (normalmente manejados por el dibujo Firmata).

    Arduino Code GeneratorEste componente intentar convertir cualquier definicin de Grasshopper en elcdigo de Arduino compatible (C + +) sobre la marcha. Basta con conectar lacadena de salida desde cualquiera de los componentes Arduino Uno / Mega a la

  • Entornos Grficos de Programacin para la Plataforma Arduino.Jos Manuel Ruiz Gutirrez Ver1.0

    16

    entrada del generador de cdigo y ver el cdigo de construccin al crear sudefinicin de Grasshopper. Funciona mediante la deteccin de 'upstream'cualquiera de los componentes de la componente Arduino Uno / Mega. Cuando sedetecta un componente, comprueba si tiene o no tiene una funcin de esecomponente. Si lo hace, se aade la funcin de la parte superior del cdigo, y llamaa la funcin adecuada dentro de la configuracin de main () o loop () funciones. Sila biblioteca de funciones no contiene una definicin de un determinadocomponente de Grasshopper, que proporcionar una advertencia. Este cdigopuede ser al mismo tiempo guardado como un archivo. PDE que se abre en el IDEArduino.

    Subir a la I / OEste componente se intenta cargar cualquier croquis de Arduino a su E / S de laJunta. Si el boceto Arduino ruta del archivo es vlido (puede ser desde el generadorde cdigo), puede hacer clic en el icono de la flecha para subir el dibujo a la placa.Un montn de cosas que sucede detrs de las escenas, pero se debe crear unMakefile dinmico y convertir el archivo. PDE en un archivo. Cpp (C + +) y luegoen el archivo. Hex (cdigo legible por mquina para el microcontrolador). NOTA:WinAVR es necesario instalar para que la carga de E / S componente Junta paraque funcione correctamente. WinAVR (pronunciado "siempre") es un conjuntogratuito de ejecutables, herramientas de cdigo abierto de desarrollo de softwareque incluye avr-gcc (compilador), avrdude (programador), entre otras cosas. Puededescargar la ltima versin de WinAVR enhttp://sourceforge.net/projects/winavr/files/WinAVR/

    Canales

    reacTIVision ListenerListener Reactivision seala a la posicin y rotacin de cada marcador Reactivisionfiduciales. Este componente est destinado a ser usado en conjunto con el softwareReactivision, disponible de forma gratuita desdehttp://www.reactivision.com/downloads . Marcadores fiduciales conjuntodisponible de http://reactivision.sourceforge.net/ archivos # . Nota: Usted debetener el software Reactivision y funcionamiento de la cmara activada para utilizareste componente.

    Wii Nunchuck LeerEste componente le permite leer todos los valores de los sensores (acelermetro de3 ejes, joystick, botones C y Z) de la Wii Nunchuck. Nota: Este componente estdestinado a ser usado en conjunto con el Wii Nunchuck Sketch Arduino.

  • Entornos Grficos de Programacin para la Plataforma Arduino.Jos Manuel Ruiz Gutirrez Ver1.0

    17

    Kinect Skeleton RastreadorEste componente permite realizar un seguimiento de hasta dos personas(esqueletos) con el sensor de Xbox Kinect. Nota: Este componente slo seejecutar si tienes Windows 7, Rhino 5.0 beta versin de 32 bits. Este componenteest siendo lanzado como descarga por separado, por ahora, y hay instruccionesespeciales para trabajar con este componente incluye en esta descarga.

    La creacin de redes

    OSC ListenerAbierto de control de sonido (OSC) son esencialmente los mensajes con unformato especial Protocolos de datagramas de usuario (UDP) transmisiones. Elcomponente de escucha OSC obras de apertura de un puerto UDP y la escucha delos mensajes OSC en la red. Se recibe un mensaje que crea una estructura de rbolde datos que contiene el nombre de la OSC y el valor (puede ser flotantes, enteros,cadenas, etc.) Si un nuevo mensaje con un nombre diferente, una nueva rama secrea para ese mensaje. Sin embargo, si se recibe un mensaje y una rama yacontiene ese nombre, entonces el valor ser actualizado. Use el elemento oelemento de rbol para recuperar el ltimo valor de cada mensaje en el rbol dedatos. Un restablecimiento de seleccin puede ser utilizado para borrar los valoresrbol de datos.

    OSC del remitenteComo se mencion anteriormente, los mensajes OSC tienen un formato especialmensajes que puedan difundirse a travs de una red. Con el fin de enviar unmensaje de OSC, es necesario conocer la direccin IP del dispositivo que esttratando de enviar el mensaje. Tambin debe especificar un nico puerto UDP. Unavez que haya especificado la direccin IP y el puerto, se puede conectar cualquiertipo de datos (deslizadores, conmutadores, paneles, etc) y automticamente elformato de los datos en un mensaje de OSC y de difusin que a la direccinespecificada.

    UDP ListenerUser Datagram Protocol (UDP) es un modelo de transporte para enviar / recibirmensajes a travs de una red. El componente de escucha UDP simplemente abre unpuerto UDP y la escucha de los mensajes entrantes. Una direccin IP no esnecesario para escuchar los mensajes (slo para el envo de mensajes). El valor deretorno es una cadena.

  • Entornos Grficos de Programacin para la Plataforma Arduino.Jos Manuel Ruiz Gutirrez Ver1.0

    18

    UDP del remitenteEl componente del remitente UDP enva ningn mensaje de cadena a una direccinIP especificada en la red a travs de un puerto determinado. Esto puede ser til enel envo de mensajes a otros programas que se ejecutan en otro equipo (como elprocesamiento) u otros dispositivos mviles.

    Pachube LeerLeer un archivo de cualquier elemento Pachube en lnea. Requerir de una URL enInternet y su Pachube clave de la API. Visita www.pachube.com para msinformacin.

    XML BuscarEste componente le permite buscar a travs de un archivo XML (ya sea desde laweb o desde un directorio local) para una etiqueta de elemento especfico, quedevuelve el valor de esa etiqueta en una lista.

    Componentes de servicios pblicos

    Y Flip FlopY el flip-flop se diferencia de la NI flip-flop en el sentido de que la puerta de salidaest determinado por su estado de salida actual, as los estados de sus dos entradas.As, en un flip-flop y, la salida no va a cambiar si ambos S y R son falsas, perocambiar a su complemento, si ambas entradas se establecen en true.

    ExplosinEl componente de explosin registra las condiciones de borde para una entradabooleana. El T-salida se registrar un valor verdadero momentnea cuando laentrada cambia a un verdadero estado. El F-salida se registrar un valor verdaderomomentnea cuando la entrada cambia de nuevo a un estado falso. Estecomponente es el equivalente a un componente de Bang en otros programas comoPd, Max / MSP, y VVVV. Nota: Este componente se requiere el uso de uncomponente temporizador (Parmetros / especiales / Timer).

    Blink binarioOscila 0 y 1 est basado en un modelo de entrada de nmeros enteros. Se puede

  • Entornos Grficos de Programacin para la Plataforma Arduino.Jos Manuel Ruiz Gutirrez Ver1.0

    19

    utilizar para crear intrincadas (alto / bajo) parpadeando patrones que se enviar alos componentes Escribir serie de LED de control, etc

    BufferAlmacenar un conjunto de valores en la memoria intermedia basado en un tamaode array dado. Por ejemplo, un array del 0 al 10 se almacenarn los ltimos 10valores. Sin embargo, si utiliza un dominio de buffer de 5 a 15 continuacin, elbfer se almacenan los valores 10, pero slo las que se produjeron cinco posicionesantes de que el valor de entrada actual.

    ConstreirRestringe un nmero a un rango especfico numrico (de dominio).

    ContadorCuenta hacia arriba y hacia abajo. Se puede establecer la direccin para contar, eltamao de paso, y los lmites de restriccin para el contador. Nota: Estecomponente se requiere el uso del componente GH_Timer (Params / Special /Temporizador).

    Los datos de registroEl componente de registro de datos permite almacenar un conjunto de valores enuna lista. Si la longitud de la lista se ajusta a "0", entonces el registro se almacenanlos valores indefinidamente (o hasta que se detenga la grabacin o restablecer elregistro). De lo contrario, la longitud de la lista se determinar cmo muchosvalores para almacenar en el registro. Si la entrada Activacin se establece en 1True, los valores comenzarn a re-grabacin de los valores de registro anteriordespus de haber llegado al final de la longitud de la lista.

    Fader One WayDesaparecer de un valor a otro basado en un solo intervalo de tiempo (ms).

    Fader de dos vasDesaparecer entre un valor mnimo y mximo basado en la fade in y fade outintervalo (ms).

    Velocidad de cuadros

  • Entornos Grficos de Programacin para la Plataforma Arduino.Jos Manuel Ruiz Gutirrez Ver1.0

    20

    Devuelve el tiempo en milisegundos ya que los datos han sido actualizado, ascomo un marco estimado por intervalos de un segundo.

    Es la clave prensadaEste componente detecta si una tecla en el teclado ha sido presionado. Slo tieneque especificar un valor de cadena que le gustara poner a prueba, y conecta uncomponente Timer para este componente. La salida devolver True si la tecla fuepulsada justo. Este componente reconoce todas las entradas de alfa numrico,teclas de funcin, y teclas especiales (como arriba, abajo, izquierda, derecha,control, desplazamiento, espacio, etc)

    NOR Flip FlopLa NI flip-flop tiene dos entradas, es decir, una entrada de set (S) y una entrada dereset (R). Una simple representacin de un flip-flop es un par de acoplamientocruzado NOR, es decir, la salida de una compuerta est ligado a una de las dosentradas de la puerta del otro y viceversa. Por lo tanto, el establecimiento de lapuerta de salida en falso requiere R = S = verdadero y falso, si bien establece lapuerta de salida a la verdad requiere S = R = verdadero y falso.

    ReproduccinEl componente de reproduccin recuperar valores de un archivo de texto(tipos aceptables de archivo:... Txt, csv, y dat) y los devuelveindividualmente a una velocidad determinada (s). Puede introducir una tasade fotogramas mltiples para mantener al mismo tiempo un seguimiento devarias salidas a diferentes intervalos.

    LisoSuave (o promedio) un valor de entrada sobre la base de un nivel demuestreo (nmero de valores).

    Deteccin de estadoEl componente de deteccin de Estado se utiliza cuando se quiere haceralgn tipo de accin basado en las veces que se oprime un botn. Secomprueba el nmero de veces que el valor de la corriente ha pasado de (oviceversa) alto a bajo y si el modulo de que el valor del contador es igual acero. Si es as, se despliega la salida de deteccin de estado. Por lo tanto, si elvalor del mdulo es de 2, entonces cada vez que otros que se pulsa el botn,

  • Entornos Grficos de Programacin para la Plataforma Arduino.Jos Manuel Ruiz Gutirrez Ver1.0

    21

    el valor del estado cambiar. O si el valor del mdulo es de 4, y luego cadacuarto de empujar el botn de disparo el valor del estado de cambio.

    CronmetroEl componente intenta ser la rplica de la funcionalidad de un verdaderocronmetro. Cuando se establece la entrada de inicio toggle en true, eltemporizador comenzar a contar, y cuando lo vuelva a falso, entonces sedevolver el tiempo en milisegundos para ese intervalo. Puede repetir estapauta, agregando ms tiempo cada vez que el cronmetro est en marcha y sedetuvo. Usted puede configurar el intervalo de cronmetro por alternar laentrada de reset.

    Primeros pasos para comenzar a trabajar con FireflyRequisitos previosCon el fin de comenzar a trabajar con Firefly, usted querr asegurarse de tener instaladoel siguiente software en su ordenador:

    1. Descargar Firefly2. Rhinoceros 4.0 (o 5.0 beta WIP )3. Service Release 9 (de Rhino)4. Grasshopper (versin 0.8.0050 o superior)5. Arduino IDE (Integrated Development Environment)

    Paso 1(Instalar la barra de herramientas de Firefly - slo se har una vez)

    Lo primero que deber hacer es copiar y pegar los archivos Firefly.gha y Firefly_X.gha (quese encuentra dentro del archivo zip arriba) y el archivo libTUIO.dll en el propio Directoriode Grasshopper.

    Haga clic en Archivo> Carpetas especiales> Carpeta de componentes. Eliminar las versiones anteriores de Firefly (ya sea mayor. Gha archivos o la

    libTUIO.dll) si ya se han instalado en su ordenador. A continuacin, abra la carpeta de instalacin Firefly (en el archivo zip. Que acaba

    de descargar) y copiar los tres archivos (Firefly.gha, Firefly_X.gha, ylibTUIO.dll) en la carpeta de componentes que se abri desde dentro de Rhino.

    Nota: Los tres de estos archivos tienen que ser copiar / pegar en el directorio de Fireflypara funcionar correctamente. Este proceso slo se tiene que hacer una vez! Asegresede eliminar cualquier archivos antes de Firefly de instalacin.

  • Entornos Grficos de Programacin para la Plataforma Arduino.Jos Manuel Ruiz Gutirrez Ver1.0

    22

    A continuacin se lanzara la aplicacin Rhino y el la herramienta Grasshopper,escribiendo "Grasshopper" en la lnea de comandos. Esto abrir el editor deGrasshopper.Si ha instalado una versin anterior de Firefly y que haban colocado los archivos decreacin en el directorio C: \ Archivos de programa (x86) \ Rhinoceros 4.0 \ Plug-ins \Grasshopper directorio \ Componentes de ... por favor, elimnelos!

    Ahora, Lanzar Rhino y GrasshopperEsta vez, al iniciar Grasshopper, debera ver una nueva pestaa de Firefly en la partesuperior de la pantalla junto al resto de libreras de Grasshopper.Editor. Felicitaciones! Usted ha instalado la barra de herramientas Firefly.Nota: Si ubiese algn problema para ejecutra Firefly y se ha cargado correctamente enRhino beta 5.0, realice los siguientes pasos:

    Abra la carpeta Componentes Especiales (en la que acaba de copiar los 3 archivos) yhaga clic en cada archivo y seleccionar "Propiedades". En la ficha General, marque lacasilla para "desbloquear" el archivo. Haga esto para cada uno de los tres archivos.

    Ahora, Reiniciar Rhino y Grasshopper

  • Entornos Grficos de Programacin para la Plataforma Arduino.Jos Manuel Ruiz Gutirrez Ver1.0

    23

    Paso 2(Cargar el Firware de Comunicacin con Firefly - slo se necesita una vez)Vamos a suponer que est instalado el IDE de Arduino (el software necesario paracargar programas a la placa Arduino) y se han descargado los controladores adecuados.Con el fin de comenzar a trabajar con Firefly, lo primero que tendr que programar elArduino para crear la conexin de entrada y salida con Grasshopper. Afortunadamente,ya hemos realizado el trabajo ms complicado, por lo que no tiene que preocuparse denada. En primer lugar, copiar / pegar la carpeta llamada "Firefly_Uno_Firmata" (quecontiene un fichero en formato pde para Arduino llamado Firefly_Uno_Firmata.pde) enla carpeta de Sketchbook Arduino que normalmente se encuentra en uno de dos lugares:

    Mis documentos \ Arduino Nombre de usuario \ Documents \ Arduino

    Ahora, ejecutar Arduino 0022 aplicacin y abrir el fcihero Firefly Firmata: File>Sketchbook> "Firefly_Uno_Firmata.pde". Haga clic en Tools> Board y asegrese deque tiene asignada la tarjeta Arduino adecuada. Ahora, haga clic en Tools> Serial port yasegrese de que est conectada la tarjeta en el COM adecuado # (estos se asignanautomticamente al conectar la tarjeta al ordenador).Nota: Es conveniente tomar nota del nmero del puerto serie, le vendr bien. Estapuerto ser el que luego utilizaremos cuando controlemos Arduino desde Grasshopper.Lo nico que queda es cargar el sketch a la tarjeta. Seleccione la opcin "Upload" botn(en la parte superior). Esperar unos segundos se vern parpadear los leds RX y TX dela tarjeta. Si la carga es correcta, el mensaje "Done uploading." Aparecer en la barra deestado. Se deber mantener el USB conectado al Arduino - as se podr comunicarFirefly con los sensores, motores y LED conectado a la placa.Enhorabuena! La tarjeta Arduino est listo para "dialogar" con Grasshoper.

  • Entornos Grficos de Programacin para la Plataforma Arduino.Jos Manuel Ruiz Gutirrez Ver1.0

    24

    Paso 3(Instalar WinAVR - Necesario para subir sketchs desde Grasshopper)WinAVR ahora es necesario instalarlo para poder utilizar la nueva carga de E / Scomponente desde Firefly. WinAVR es una suite de herramientas de cdigo abierto dedesarrollo de software que incluye avr-gcc (compilador) y avrdude (programador), entreotras cosas. Para instalar la ltima versin de WinAVR:

    Ir a: http://sourceforge.net/projects/winavr/files/WinAVR/ Haga clic en la carpeta llamada "20100110" y descargue el archivo WinAVR-

    20100110-install.exe Ejecute el archivo ejecutable y siga las instrucciones.

    Paso 4(Trabajar con Firefly de manera ordinaria - cada vez que sea necesario)Siempre que quiera trabajar con Arduino y Rhino deber ejecutar Firefly. LanzadoRhino escribir la palabra "Grasshopper" en la lnea de comandos para iniciar el Editorde Grasshopper. Abrir uno de los archivos de ejemplo en la carpeta "Ejemplos deGrasshopper" (dentro del archivo zip) y comenzar a explorar la conexin entre losmundos fsico y virtual!

    Varios ejemplos

  • Entornos Grficos de Programacin para la Plataforma Arduino.Jos Manuel Ruiz Gutirrez Ver1.0

    25

    Ejemplo en el que se gobierna la salida 13 de Arduino

  • Entornos Grficos de Programacin para la Plataforma Arduino.Jos Manuel Ruiz Gutirrez Ver1.0

    26

    Ejemplo en donde se leen los datos de la tarjeta Arduino

  • Entornos Grficos de Programacin para la Plataforma Arduino.Jos Manuel Ruiz Gutirrez Ver1.0

    27

    1.5 MyOpenLabUna herramienta para la modelizacin y simulacin orientada a la educacin.Descripcin.MyOpenlab es un entorno orientado a la simulacin y modelado de sistemas fsicos,electrnicos y de control con un amplio campo de aplicaciones.La aplicacin esta desarrollada en el lenguaje JAVA y por ello resulta portable adistintas plataformas. En el campo del modelado y simulacin es muy interesante contarcon una herramienta flexible que a partir de una amplia biblioteca de bloquesfuncionales permita realizar modelos a base de conectar bloques funcionales.MyOpenLab es capaz de conectarse al mundo fsico mediante una interface de ampliadifusin en el mercado K8055 de Valleman y tambin a la tarjeta ArduinoLa presentacin de los resultados y/o el control de las simulaciones se hace mediante unpotente conjunto de bloques de funcin de visualizacin y/o interaccin capaz demanejar todo tipo de datos (analgicos, digitales, matrices, vectores, imgenes, sonidos,etc.)Mediante MyOpenLab es posible disear instrumentos virtuales (VI) a travs de loscuales se puede realizar una aproximacin a los sistemas de medida y control de unamanera mas realista.La realizacin de una simulacin se hace mediante dos pantallas o reas de trabajo:Panel Circuito y Panel Visualizacin. En el primero se disea el algoritmo desimulacin mediante "bloques" o "elementos de funcin" y el segundo se muestran losdatos o se generan los estmulos cuando se esta en el modo de 2simulacin"

    El programa puede funcionar en plataformas Linux y sus requerimientos de sistema sonmuy poco restrictivos, lo cual lo hace ideal para usar en casi cualquier equipo. bastarque se instale el runtime de JAVA JRE o JDK.Esta herramienta est recomendada para estudiantes de prcticamente todos los niveles:ESO, Bachillerato, Formacin Profesional y Primeros Cursos de las Carreras TcnicasUniversitarias.Para conseguir el programa os podis dirigir a : http://es.myopenlab.de

    Gua de usuario Versin 3.010Objetos CANVAS.pdfTratamiento de Datos.pdf

  • Entornos Grficos de Programacin para la Plataforma Arduino.Jos Manuel Ruiz Gutirrez Ver1.0

    28

    Diagramas deFlujo V2.4.9.9.pdfSimulacion de Modelos Matemticos y Temporales.pdfManejo de Datos en Matrices y Tablas.pdfRobotica MyOpenLab.pdf

    CARACTERSTICAS

    Facilidad de uso Amplia biblioteca de funciones tanto para manejo de seales analgicas como

    digitales. Posee una potente biblioteca de objetos grficos tipo "canvas" mediante la que

    se puede dotar de movimiento cualquier objeto o imagen asocindola avariables de los modelos a simular.

    Tratamiento de los tipos de datos y operaciones con estos. Realizacin de las aplicaciones mediante el uso de bloques de funcin con la

    posibilidad de encapsularlos en "macros". Facilidad para crear pantallas de visualizacin que recojan el estado de las

    variables y eventos de las simulaciones. Posibilidad de ampliacin de su librera de componentes, editndolos en cdigo

    JAVA Posibilidad de creacin de "submodelos de panel" y "submodelos de circuito"

    encapsulados. Algunas libreras que incorpora MyOpenlab:

    Librera de elementos de Visualizacin y Control (Panel Frontal)

    Elementos de DecoracinElementos de visualizacinnumricaElementos de activacin digitalElementos de Entrada y salida decadenas de caracteres

    Elementos de entrada y salida tipovectores y matrices de datosElementos de visualizacin graficaen ejes coordenados IElementos de visualizacin graficaen ejes coordenados II

  • Entornos Grficos de Programacin para la Plataforma Arduino.Jos Manuel Ruiz Gutirrez Ver1.0

    29

    Librera de ExtrasElementos de Automatizacin

    Elementos de librera de usuarioRobot 2D

    Libreras de Elementos Funcionales (Panel Lgico)

    Elementos de DecoracinOperadores DigitalesOperadores NumricosTratamiento de CaracteresElementos AnalgicosUtilidadesFicheros de Entrada/SalidaComparatorsTratamiento de ImgenesTratamiento de SonidosColorPines de E/SVectores y matricesAgrupacin de ElementosObjetos Grficos canvasLibrera de FsicaLibrera de Diagramas de FlujoLibrera de ExtrasLibrera de Conexiones entreaplicacionesLibrera definida por el UsuarioAutomation+ibrera deAutomatizacin Interfaces

  • Forma de conexionado con Arduino.Para conseguir la comunicacin entte Arduino y Myopenlab se seguirn los siguientespasos:

    1. Cargar el Firmware en la tarjeta Arduino con la ayuda del IDE Arduino. Elfichero se encuentra en la carpetaD:\distribution3032\MyOpenLab_and_Arduino V\arduino y el fichero se llama:arduino.pde

    2. Realizar el diseo dentro del entorno de Myopenlab utilizando la libreraArduino IO Interface 1.1 que es la que se encargara de la comunicacin con latarjeta Arduino.

    3. Consignar los elementos de entrada y salida de acuerdo con la configuracin queel firmware coloca en la tarjeta y que se muestra en la figura.

    4. No olvidar que hay que dejar previsto un elemento de entrada de valor numerocopara consignar el numero del puerto por el que se realizara la comunicacin yuna entrada digital (tipo pulsador) para que se active el dilogo entte Arduino yMypenlab

    5. En el panel de visualizacin se podrn colocar elementos graficos para mostrarlos valores de entrada y salida que le darn a la aplicacin un aspecto visual muyinteresante.

    6. Finalmente una vez realozado el diseo se activara el modo Run de Myopenlaby veremos la aplicacin funcionar.

    Componente de librera para conexin con Arduino

  • 31

  • 32

    Designacin de E/S para la conexin de Arduino con MyopenlabEjemplo de conexionado operacin manejando todas las E/S de la tarjeta Arduino

  • 33

    Ejemplo de salida intermitente en el PIN 13 de Arduino salida 0

  • 34

    2 Entornos de programacin autnomos

    2.1. MinibloqDescripcin GeneralMinibloq es un entorno de programacin grfica para Arduino , Multiplo,dispositivos fsicos informticos y robots. Una de sus principales objetivos es llevar lacomputacin ms fsico y plataformas robticas a la escuela primaria, los nios yprincipiantes. Si desea ver una breve introduccin, se puede echar un vistazo al videoutilizado para la campaa de pedal de arranque.

    CaractersticasMinibloq est en desarrollo. Estas son las caractersticas implementadas en la ltimaversin de trabajo:

    Fcil: Slo unos pocos clics y su primer programa se est ejecutando.

    En tiempo real generador de cdigo: Se crea el cdigo, mientras que usted estagregando bloques o modificar los valores de parmetros, que muestra el cdigo en unaventana de sintaxis de colores. De esta manera, Minibloq facilita la transicin a laprogramacin basada en texto.Tiempo real, la comprobacin de errores.Drag & drop bsico con giro automtico.Interfaz avanzada: zoom, cortar y pegar, ventanas acoplables, y el teclado denavegacin son slo algunas de las caractersticas de la interfaz grfica de usuario deMinibloq. Y hay ms ...Terminal incorporado: Hay una terminal integrado que le permite enviar y recibirdatos a la junta a travs de puertos serie / USB.Todo-en-uno-listo-para-uso-solucin: Se trata de "bateras incluidas software". Elpaquete incluye todo lo posible para empezar a trabajar.Portable: No requiere la instalacin (a excepcin de los controladores necesarios paratarjetas especficas, como Arduino ). Se puede ejecutar desde un pen drive tambin.Ah, y se ejecuta por completo fuera de lnea, todos ellos en su propio ordenador. Msinformacin: Usted puede tener copias paralelas de Minibloq, incluso con laconfiguracin de diferentes que se ejecutan en el mismo equipo.

  • 35

    Rpido: I'ts una aplicacin nativa, compilado con C + + (GCC), con wxWidgets. Poresta razn, Minibloq es adecuado para ordenadores de gama baja y netbooks. Y,tambin incluye los ncleos precompilados, se construye y se descargan los programasmuy rpido. Prubelo!Modular y ampliable: El usuario puede crear nuevos bloques es propia.Aqu est un pequeo video que muestra algunas de estas caractersticas:Prximamente caractersticasLibre y con las fuentes: El programa estar disponible de forma gratuita, en su versincompleta. Sin cargos para funciones avanzadas o similares. Slo tienes que descargar yempezar a usarlo. Adems, el cdigo fuente completo tambin estar disponible. Lalicencia? Algo que se llama RMPL (RobotGroup-Multiplo-pacifista-License). Estalicencia es bsicamente una licencia MIT, pero con una restriccin que prohbe losproyectos militares. Ms sobre esto ms adelante. Por ahora, se puede ver la versin enespaol de esta licencia aquFcil integracin con hardware nuevo: Aadido soporte para nuevas plataformas yplacas ser sencillo. Esto puede no ser una caracterstica para los principiantes, pero noser tan difcil de todos modos. Compiladores y lenguajes diferentes, incluso se podraaadir.Internacionalizacin: La primera versin estar disponible en Ingls y Espaol, pero elusuario y la comunidad pueden contribuir con nuevas traducciones, ya que esto sloimplica editar un archivo de texto.

    Como utilizarlo:Descargar la herramienta en http://blog.minibloq.org/Una vez instalado el software bastar con iniciar el programa y aparecer el entorno:Proceso a seguir:

    1. Seleccionamos la tarjeta de entre el grupo de tarjetas con las que secomunica Minibloq.

  • 36

    2. Se conecta la tarjeta al puerto USB y dejando unos segundos para que la detecteel software se selecciona el puerto en el que se ha conectado en el lugarcorrespondiente del entorno.

    3. Ya estamos en disposicin de empezar a programar arrastrando bloques ycolocndolos en el rea correspondiente. Cada bloque deber programarse consus parmetros correspondientes.

  • 37

    4. Si lo deseamos podemos abrir la ventana de cdigo y ver cmo se vaescribiendo el cdigo a media que colocamos bloques en nuestra aplicacin.

    5. Una vez escrito el programa se Ejecuta envindose a la tarjetacorrespondiente.

    Cada componente tiene unos parmetros que son configurablesPor ejemplo en la figura se muestran el men de configuracin de un bloque detemporizacin

  • 38

    Los bloques disponibles para programar Arduino son:

  • 39

    2.2. Ardublock(ArduBlock)

    Descripcin generalEsta herramienta est basada en la tecnologa de programacin mediante bloques funcionalestan extendida en la actualidad. Realmente se distribuye como un applet de java que se aade alas herramientas del IDE Arduino.Realmente Ardublock es una utilidad grafica cuya misin es generar cdigo compatible con elentorno IDE Arduino. Sus ventajas son:

    Es una herramienta gratuita Facilita la creacin de sketch para Arduino. Genera cdigo directamente Ofrece una coleccin de bloques funcionales muy bsicos que facilitan la comprensin

    de la programacin. Esta muy indicado para aplicarlo en niveles educativos bsicos en donde el usuario no

    necesita tener conocimientos de programacin. Es una aplicacin muy sencilla de instalar Es muy sencillo de utilizar

    Procedimiento e instalacin1. Descarguar ardublock-all.jar ArduBlock2. En la carpeta en donde este instalado el IDE Arduino debemos incluir el fichero

    ardublock-all.jar ./arduino-022/tools/ArduBlockTool/tool/ardublock-all.jarModo de trabajoUna vez instalado el fichero ardublock-all.jar en la correspondiente carpeta se arranca el IDE deArduino y para invocar Ardublock basta que seleccionemos Tools-> Ardublock Tool

  • 40

    Despus de seleccionar la herramienta aparece la pantalla de programacin grfica de lafigura.

    Se realiza la programacin grfica con la ayuda del entorno seleccionando los bloquescorrespondientes y una vez termina se activa sobre el botn Generate y aparece en elel IDE de Arduino el cdigo escrito de la aplicacin listo para ser transferido a la tarjetaArduino.

  • 41

    Libreras de Ardublock.A continuacin se muestran las libreras de bloques con las que se cuenta en el entorno.

    Control Pin

  • 42

    Numeros/Constanets Operadores

    Utilidades Bloques de Hardware

  • 43

    2.3.Amici(http://dimeb.informatik.uni-bremen.de/eduwear/about/)

    IntroduccinAmici es un Lenguaje de Programacin Visual para Arduino que permite programar alos novatos la placa Arduino sin tener que dominar el lenguaje textual de programacinde Arduino. Es de cdigo abierto (el cdigo fuente bajo peticin), publicado bajo lalicencia GPL.Amici ha sido desarrollado por investigadores de DIMEB (Digitale los medios decomunicacin en la Educacin) de la Universidad de Bremen, como parte de laEduWear proyecto europeo. El software ha utilizado en ms de 25 talleres por nios yjvenes.

    El entorno se suministra unido a una versin completa del IDE de programacin deArduino, lo cual permite sin tener quecargar ningn firmware ni aplicacin alguna,realizar el programa en un entorno grafico y directamente se genera le cdigo a la vezque se abre la aplicacin IDE Arduino y desde ella se descarga la aplicacin en la tarjetaArduino.En la figura vemos un aspecto del entorno Amici.

    La aplicacin permite arrastra los bloques uno debajo del otro en el rea de trabajo y ala vez dando valores a los parmetros de cada uno de ellos.

  • 44

    La forma de trabajar es muy sencilla, una vez realizado el diagrama de bloques se pulsaen botn Arduino code y se genera el cdigo compatible con el lenguaje deprogramacin de la tarjeta Arduino y desde esa pantalla , una vez asignado el puerto deconexin de la tarjeta y el tipo de tarjeta se descarga la aplicacin.Lo que no permite la herramienta es realizar la operacin inversa, es decir, pasar decdigo a organigrama. Si pulsamos el botn Amici volveremos al entorno graficoAmici y podremos realizar en el las modificaciones oportunas.Bloques disponibles en Amici:

    Existen los siguientes tipos de bloques agrupados. Actuadores Sensores e interruptores Estructuras de programacin

    Ejemplo realizado con el entorno.En la figura vemos un sencillo ejemplo realizado en el modo grfico con el entornoAmici y a su lado el cdigo generado.

    Se ha programado la salida 13 que se activar y desactivar cada 1000 ms.

  • 45

    Designacin de parmetros en cada bloque.La mayora de los bloque al pulsar dos veces sobre ellos despliegan una ventana paraasignarles parmetros. En la figura vemos la ventana de parmetros del bloqueAtuador Este mecanimso es muy interesante de utilizar.

    Opinin de la herramienta.Este entorno es muy interesante como hemos dicho al principio para la iniciacin en laprogramacin, pero no es vlido para niveles de aplicacin medios y superiores de laplataforma Open Hardware Arduino, dado que se encuentra muy limitado en lapotencialidad de sus bloque de funcin, aunque es importante decir que bien usadosestos bloques permiten muchas y variadas formas de programacin.Al estar disponible el cdigo bajo peticin la herramienta es susceptible de ser mejorady ampliada.

  • 46

    2.4.MODKITModKit: Entorno de programacin grfica para arduino!

    IntroduccinModkit es una herramienta completa para el diseo de aplicaciones con Arduino y otrastarjetas haciendo uso de un lenguaje de programacin grfica a base de bloques basadosen el modelo creado por el MIT en el entorno Squeak.

    Tiene las siguientes caractersticas a resaltar:1. Drag & Drop

    Enlazado de bloques grficos de cdigo para crear programas, evitandoerrores de sintaxis.

    2. Basada en la WebModkit se ejecuta en los navegadores modernos y permite trabajar conproyectos en cualquier lugar.

    3. Compatible ArduinoModkit trabaja con el popular Arduino

    4. Usarlo de forma gratuitaQueremos que nuestras herramientas sean accesibles a todo el mundo.Empezar a trabajar con nuestra versin gratuita hoy.

  • 47

    Caractersticas de la versin librePermite seleccioanr el hardware que vamos a utilizar

    La proyectos deben empezar configurando el hardware y los programas.Pantalla de edicin del programa con bloques grficos

    Despus de configurar el hardware de grficos, Modkit hace que la programacin seatan simple como arrastrar y soltar los bloques de cdigo grfico para crear programasinteractivos.

  • 48

    Widget de escritorio

    Editor revolucionario Modkit est basada en tecnologas web estndar y se ejecuta en tunavegador. Slo tienes que descargar e instalar nuestro widget de escritorio libre paraprogramar sus tablas.Ver cdigo

    Los principiantes pueden comenzar con los bloques y pasar a la programacin de textotradicional. Los programadores experimentados pueden pasar por alto los bloques sindejar de tomar ventaja de medio ambiente rico en caractersticas de Modkit. Obteneracceso temprano a la vista de cdigo como un miembro del Club Alpha.

  • 49

    Ir ms all de configuracin de pines de arrastrar y soltar los componentes de hardware,lo que le permite usar los bloques de programacin adicionales para controlar loscomponentes.Una nueva herramienta de programacin grfica de Arduino que est a punto determinarse y que facilitar mucho la programacin de la tarjeta.

  • 50

  • 51

    2.5 Virtual BreadBoard

    http://www.virtualbreadboard.com/Introduccin.VirtualBreadboard es un entorno de simulacin y desarrollo de aplicaciones integradasque utilizan los microcontroladores. Es fcil de usar y puede sustituir a un protoboardpara experimentar con nuevos diseos.VBB simula muchos de los PIC16 y dispositivos PIC18 y el microcontrolador Arduino.Adems de una amplia variedad de componentes de simulacin tales como LCD,Servos, la lgica y otros dispositivos IO que se pueden utilizar para modelar y simularcircuitos de alto nivel.

    Creacin de un proyecto para Arduino

  • 52

    Digamos que tienes una fuente de Arduino archivo de cdigo que desea simular. Hay unmontn de ejemplo Arduino integrado en VBB, pero este tutorial te muestra cmohacerlo desde cero?

    1. Partamos de que tenemos una aplicacin de Arduino llamada Blink.pde en elescritorio.

    2. Iniciamos VBB y crear un nuevo proyecto.3. Arrastramos y soltamos una placa Arduino en el rea de diseo y luego

    arrastramos y soltar un LED unindolo al pin 13

    4. Guardar el proyecto: Tngase en cuenta la importancia para guardar el proyectoantes de agregar proyectos de cdigo. Llamamos al proyecto a grabar MyBlink

    5. Copiamos la aplicacin Arduino Blink.pde en la carpeta del proyecto MyBlinkVBB

    6. Aadimos un proyecto de Cdigo Arduino a la carpeta haciendo clic derechosobre el proyecto y seleccionar de la lista.

    7. Agregamos el archivo de cdigo fuente para Arduino Blink.pde al proyecto decdigo Arduino haciendo clic derecho sobre el proyecto de Cdigo Arduino.

    8. Puede seleccionar Blink.pde de la lista porque est en la carpeta del proyecto ya.9. NOTA: Para ver el proyecto de cdigo que necesita para arrastrar y soltar en un

    panel de vista.

  • 53

    10. Ahora necesidad de vincular el proyecto de cdigo fuente para el procesadorArduino para que haga clic en la placa Arduino y luego seleccione la aplicacinde la propiedad el nombre de la fuente del proyecto.

    11. Ya est listo para ejecutar la simulacin para haga clic en Ejecutar y ver elparpadeo del LED

    12. Usted puede in-situ editar el cdigo de arduino pero hay que guardarlo antes decompilar. Si usted comete errores de sintaxis que se vea en la lista de los errores.

    Sistemas operativos compatiblesVBB3 es una aplicacin Windows desarrollada con Visual Studio 2005 y deberafuncionar bien en una PC moderna corriendo Windows XP y Vista o Windows 7Linux no es compatible en este momento sin embargo, el objetivo a largo plazo se va aejecutar en la plataforma VBB Mono.Net que es soportado por Linux. Sin embargoMono todava no es compatible con DirectX y otras bibliotecas por lo que sigue siendoun trabajo considerable que queda antes de portar Linux es compatible.Instrucciones de instalacinVirtualBreadboard es una caja de arena ejecutable autocontenido Xenocode que norequiere instalacin. Usted puede descargar a su lugar preferido y haga doble clic paralanzar.Dependencias.Las siguientes dependencias deben instalarse por separado.

    . Net 2.0 Redistributable. Disponible de Microsoft aqu . J # 2.0 Redistributable. Disponible de Microsoft aqu .

  • 54

  • 55

    3. Otros entornos3.1.Fritzing.http://fritzing.org/

    DescripcinFritzing es una iniciativa de cdigo abierto para apoyar a los diseadores, artistas,investigadores y aficionados para facilitar la elaboracin de los prototipos fsicos alproducto real. La herramienta permite documentar las aplicaciones desde el prototipohasta el diseo de la tarjeta PCB que se podra fabricar. La herramienta Fritzin estcolocada en un sitio web que facilita a los usuarios compartir diseos de acuerdo a lafilosofa del Open hardware y poder discutir e intercambiar las experiencias as comopoder reducir los costes de fabricacin.

    Fritzing es esencialmente un software de automatizacin de diseo electrnico con unnivel de de exigencia en el manejo muy bajo, lo que permite cubrir necesidades yexpectativas de los diseadores y artistas. Se utiliza la idea de protoboard (placa demontajes sin soldaduras) que es ideal en el laboratorio de prototipado.. El softwareluego se encarga de sacar el alambrado (esquema elctrico) y despus el esquema depistas de la tarjeta de circuito impreso a partir de ah es posible crear diseos de PCBpara convertirlo en un producto susceptible de ser fabricado.

  • 56

    Forma de uso de FritzingLas herramientas de creacin de prototipos fsicos han recorrido un largo camino y yapermiten que los ingenieros puedan convertir rpidamente sus ideas en prototiposfuncionales interactivas.Se trata de una herramienta para disear a nivel de protoboard o circuito impreso unaaplicacin con Arduino. Tiene un gran inters didctico porque permite la identificacinde los componentes electrnicos que forman parte del prototipo, suDistribucin y su conexionado. En la pgina existen nmeros proyectos ya realizados.La herramienta se puede descargar aqu: http://fritzing.org/download/

    Elaboracin de un diseo.El entorno posee una librera de componentes electrnicos que incluye naturalmente latarjeta Arduino. La idea es ir colocando cada elemento unido mediante un sistema decableado convencional los componentes tal y como se supone que se deberan conectaren la realidad haciendo uso de una tarjeta protoboard.Las fases en el desarrollo de un proyecto son tres:

    1. Elaboracin del circuito con la ayuda de la Protoboard2. Generacin automtica y edicin, si procede, del esquema elctrico3. Generacin y edicin , si procede, de la PCB

    Elaboracin del prototipo haciendo uso de la Protoboard y todos los componentes de lalibrera.

  • 57

    Elaboracin del esquema elctrico del diseo.

    Elaboracin de la PCB final.

  • 58

    Opinin sobre la herramientaLa utilizacin de Fritzing en el laboratorio de prototipado es realmente muy vlida.Podemos enumerar las ventajas:

    Facilidad de utilizacin de la herramienta Compendio lgico de la secuencia de trabajo en el diseo de prototipos. Posibilidades de exportacin del diseo en formatos compatibles con las

    mquinas de elaboracin de tarjetas de circuito impreso. Posibilidad de aadir nuevos elementos en la librera de componentes

  • 59

    4.Apndice.Donde encontrar las herramientas comentadas en este artculo:

    Etoys (Squeak)http://tecnodacta.com.ar/gira/projects/physical-etoys/

    S4A (Scratch)http://seaside.citilab.eu/scratch?_s=hvXNe4iKvwhZ3YaO&_k=6rrYXWDBfmL1NRUy

    Labviewhttps://decibel.ni.com/content/groups/labview-interface-for-arduino

    Fireflyhttp://www.fireflyexperiments.com/

    MyOpenLabhttp://es.myopenlab.de/

    Minibloqhttp://blog.minibloq.org/

    Ardublockhttp://ardublock.com/

    Amicihttp://dimeb.informatik.uni-bremen.de/eduwear/about/

    ModKithttp://www.modk.it/

    VirtualBreadBoardhttp://www.virtualbreadboard.net/

    Fritzinghttp://fritzing.org/

    5 de Noviembre de 2011 Versin de Documento: V1.0Jos Manuel Ruiz Gutirrez [email protected]

    Blog de referencia: http://josemanuelruizgutierrez.blogspot.com/