Before you accept the loan Payday loan Where does the money go

Wiring : Instalación del Ambiente de Desarrollo en Windows 7

Jun 07

El framework de desarrollo para microcontroladores Wiring permite el desarrollo rápido y sencillo de programas (sketches) para diferentes tipos de microcontroladores y tarjetas de desarrollo como Wiring y Arduino, el software trae todas las herramientas necesarias para la escritura, compilación y descarga de los programas a las tarjetas.

Requisitos : 

  • Conexión a Internet
  • Sistema Operativo Windows 7
  • Tarjeta Wiring S
  • Cable USB
Nota : 
  • La instalación de los drivers para la Wiring S es automática a través de Windows Update
  • La instalación de los drivers para Arduino se debe hacer de forma manual

Pasos : 

  • Descargar la versión mas reciente del ambiente de desarrollo Wiring de :
    http://wiring.org.co/download
    descargue la version mas adecuada para sus requerimientos :
    • Instalador EXE (mas común)
      Instalación automática, permite seleccionar la instalación de los diferentes componentes (Java, drivers), se instala en el directorio de Archivos de Programa, necesita permisos de administrador
    • Instalador ZIP
      Simplemente descomprimir el archivo en cualquier directorio y ejecutar el programa
    • Instalador Zip sin Java
      Para los que ya tienen instalado el ambiente de ejecución de Java en sus maquinas
  • Después de bajar e instalar o descomprimir el programa, conectar la tarjeta Wiring S a un puerto USB
    Si no se han instalado los drivers todavía, la maquina los buscara en Windows Update lo cual permite la instalación del driver conversor de USB a Serial y el driver para el puerto serial virtual (Se necesitan permisos de administrador)
  • Ejecutar el ambiente de desarrollo de Wiring a través del icono en el escritorio o ir al directorio de instalación y ejecutar el programa
  • Seleccionar el puerto donde se encuentra conectada la tarjeta para realizar una prueba
    Menú : Tools -> Serial Port -> COM# (el numero del puerto depende de cada maquina)
  • Verificar que este seleccionada la tarjeta Wiring S
    Menú : Tools -> Board -> Wiring -> Wiring S @ 16 MHz
  • Cargar el ejemplo de Blink
    Menu : File -> Open ... -> Ir al directorio de instalacion Wiring -> examples -> Basics -> 1.Getting Started -> Blink -> Blink
  • Descargar el programa a la tarjeta
    Pulsar el segundo icono de derecha a izquierda
  • Verificar que no existan mensajes de error
  • Ahora el led de la tarjeta Wiring S se enciende y se apaga
Enlaces : 

Read More

Wiring : Pronto llega a la version 1.0

Jun 24

El día de ayer recibí noticias de Hernando Barragan de la llegada del Release Candidate 1.0 de la versión del ambiente de desarrollo  de Wiring (La plataforma de hardware abierto para el desarrollo de prototipos) que ha venido madurando desde hace mucho tiempo y la cual comienza hacer mas abierta permitiendo el uso de otras plataformas de hardware, la nueva versión tendrá :

  • Soporte para tarjetas Wiring y otros  fabricantes/marcas, incluidos chips de atmel en formato DIP, Arduino, etc. que pueden ser programados directamente desde Wiring.
  • Una Nuueva arquitecura de Wiring permite hablar realmente de open hardware, mediante un sistema de núcleos (Cores).
  • Disponible el core AVR8 que permite usar todo tipo de chip Atmel AVR-8Bits,en proximas versiones se  tendra cores para AVRTiny, Microchip PIC y ARM.
  • Un sistema de librerías Core que están implementadas sobre cada core específico, un sistema de librerias multi-plataforma que pueden funcionar con cualquiera de los cores que estarán disponibles.
  • Referencia en Inglés y Español seleccionable mediante el Menu Preferences de la aplicación.
  • Librerías para Processing y Openframeworks usando el protocolo Firmata.
  • El API incluye nuevos comandos que estabilizan el lenguaje y permiten aprovechar el poder de cada plataforma, cosas como poder seleccionar la frecuencia y la resolución de un pin PWM. Tonos polifónicos, pullups, manejo avanzado de potencia.
  • Un sistema apropiado de instalación para los diferentes sistemas
  • Multi ventanas para abrir diferentes Sketchs.
  • Visualizacion de los esquematicos si el Sketch los contiene.
  • Nuevo hardware compuesto de varios modelos.
  • Definicion para la coinstruccion en casa de la tarjeta basada en los chips de Atmel atmega168, atmega328p y atmega644p.
  • Soporte para el hardware de Arduino directamente

Como se puede apreciar son muchos los cambios en esta nueva versión de Wiring que lo convierte no solo en una plataforma de hardware abierto, si no en un lenguaje de programación multiplataforma gracias a su nueva arquitectura basadas en núcleos, que permite su implementación para un sin numero de plataformas de hardware permitiendo escribir código Wiring para gran cantidad de dispositivos.

Estaremos haciendo las pruebas respectivas del Ambiente de Desarrollo de Wiring 1.0 RC3 el cual esta disponible actualmente para MacOSX y Windows, desafortunadamente en estos momento no se encuentra la version para Linux, pero pronto se publicara en el sitio de Wiring.

Enlaces :

 

Read More

Ques es Wiring

Jun 24


Tal vez muchos de los que están leyendo esta entrada no conozcan a Wiring, tal vez llegaron aquí buscando información sobre Arduino o el hardware abierto y no tengan la menor idea que un Colombiano es el creador de esta tarjeta que se convirtió en el antecesor de Arduino y que origino todo un movimiento de artistas de la era digital que utilizan estas plataformas para la creación de sus obras interactivas,  así que aquí esta un pedacito de la historia no oficial de Wiring, la cual tal vez no sea del todo cierta, pero es lo que me han contado por ahí y espero ir corrigiendo y adicionando  información gracias a los comentarios que aqui se haga, asi que estan cordialmente invitados a poner su granito de arena en esta gran historia.

Algo de Historia :

Antes del nacimiento de las plataformas de hardware libre, ya en algunas instituciones educativas se enseñaba la programación de micro controladores a los usuarios no técnicos con tecnicas de Computacion Fisica (termico acuñado por Tom Igoe) que requerían obtener información o actuar en el medio a través de montajes electrónicos simples, pero las herramientas disponibles estaban orientadas a Ingenieros y pocas eran amigables para enseñar la programación de estos dispositivos a usuarios no programadores.

Hernando Barragan

En el año 2003 en el instituto italiano Ivrea una escuela dedicada al campo de Diseño Interactivo, donde los estudiantes centraban sus estudios en como los usuarios interactuan con dispositivos, muchos de ellos basados en micro controladores, que permiten obtener información del medio y actuar en el a través de la programación, el docente Massimo Banzi (uno de los creadores de Arduino) desarrollo un ambiente de desarrollo en Mac para PICs utilizado para la enseñanza fácil de la programación a usuarios no técnicos. Ese mismo año el estudiante Colombiano Hernando Barragan crea un tarjeta de entrada y salida multi proposito basada en un micro controlador y un ambiente de desarrollo integrado basado en Processing (un lenguaje de programación y ambiente de desarrollo creado para la enseñanza de la programación a no programadores en un contexto visual) creando asi a Wiring una plataforma de hardware multiproposito con un ambiente de desarrollo para no programadores. Mas tarde Massimo Banzi acompañado por un equipo de trabajo desarrollan Arduino basado en el trabajo de Hernando Barragan.

Wiring Board

La Tarjeta Wiring I/O :

Con un tamaño de 9 cm x 6 cm esta tarjeta de entrada y salida multi proposito cuenta en su cerebro con el micro controlador Atmega 128 y con un corazón que late a 16 Mhz y la cual posee 43 pines digitales, 8 pines análogos, 6 salidas PWM, 8 interrupciones externas, dos puertos seriales, puerto USB, entrada regulada de voltaje que soporta entre 7 y 12 voltios, memoria de 128 KB, LEDs indicadores de potencia y transmisión, ademas del soporte de ISP y TWI. Todos los pines están expuestos a través de regletas, cuenta con un botón para reiniciar la tarjeta y un jumper para seleccionar la fuente de poder entre el puerto USB y una fuente externa. Esta tarjeta es una plataforma excelente para la programación de proyectos de mediana envergadura gracias a la gran cantidad de salidas y entradas, su gran capacidad de memoria que todavia la versiones oficiales de Arduino no llegan a tener.

El Ambiente de Desarrollo :

Wiring IDE

Wiring IDE

El ambiente de desarrollo de Wiring puede ejecutarse en plataformas como Linux, Windows y MacOS X gracias a que esta desarrollado en Java, este esta basado en el ambiente de desarrollo de Processing que permite la creación de sketchs (aplicativos) visuales y el cual tiene como objetivo brindar una plataforma amigable y fácil de usar lo cual hereda Wiring, permitiendo en un solo ambiente de programación, el desarrollo de programas en un lenguaje propio o utilizando C++, su compilación basada en el compilador de AVR y sus librerías, ademas de permitir la descarga directamente a la tarjeta a través de la conexión con el puerto USB.  Esto permite crear y probar rápidamente sketchs en la tarjeta sin utilizar herramientas adicionales, como también acceder fácilmente al hardware a través de funciones que encapsulan muchos detalles complejos del manejo del hardware en un lenguaje llamado Wiring.

El Lenguaje de Programación :

Uno de las características de la plataforma Wiring es el conjunto de funciones, variables y constantes que encapsulan el funcionamiento del hardware facilitando el uso del mismo, a este conjunto se le conoce como el lenguaje Wiring, esto también incluye la estructura de un sketch (programa), adicional mente se puede utilizar las características del lenguaje C++ dentro del ambiente de desarrollo lo que permite crear prototipos de funciones, punteros, clases y objetos e incluso utilizar lenguaje de maquina y otras características propias del compilador para micro controladores de AVR. Esto da una gran flexibilidad al momento de crear proyectos complejos y gracias al ambiente de desarrollo permite crear aplicaciones rápidamente. También es posible desarrollar librerías que pueden ser instaladas dentro del ambiente de desarrollo y existe un gran numero de ellas en el sitio oficial de Wiring y en Internet, que permiten el manejos de Servos, Comunicacion Serial, pantallas LCD, GPS y muchos otros componentes.

El lenguaje Wiring es tambien utilizado hoy por la plataforma Arduino.

Wiring Hoy :

Wiring sigue activo y Hernando Barragan sigue a la cabeza del proyecto ahora desde la Universidad de los Andes donde es muy utilizado por los estudiantes de Diseño, ademas es utilizado activamente en el desarrollo de proyectos interactivos en todo el mundo y en años recientes apareció la Wiring-Mini una versión mas compacta que permite su uso en proyectos mas pequeños y en días pasados se anuncio una nueva versión de la tarjeta con un nuevo micro controlador de mayor capacidad.

Actualmente la plataforma Wiring es Hardware y Software y en su pagina se pueden encontrar los diagramas de la tarjeta y el software para su descarga, ademas de su código fuente.

Enlaces :

Read More

Netbeans 6.7 Ergonomic IDE

Feb 26

netbeans-logo2El pasado 19 de febrero de 2009, el equipo de desarrollo de Netbeans anuncio el cambio de numero de la siguiente version al 6.7 y no al 7.0 como se tenia planeado, esto obedece a que los el salto de numero de version, por ejemplo de 6.x a 7.x indican grandes cambios internos que pueden incluir hasta incompatibilidades, mientras un cambio de version de 6.5 a 6.7 indican cambios menores en la plataforma. Asi que la proxima version de Netbeans sera un cambio menor dentro de la plataforma pero sera la mejor version que se puede esperar de esta serie 6.x que nos ha sorprendido a muchos con el mejoramiento sustancial de los tiempos de ejecucion y la posibilidad de crear aplicaciones de escritorio, moviles, web y empresariales y mas aun cuando el soporte para otros lenguajes de programacion ha venido trayendonos la posbilidad de desarrollar en C/C++, Ruby, PHP, Python y quien sabe que otros mas, lo que convierte a NetBeans en la opcion natural como IDE.

Mientras llega la version final del 6.7, podemos acceder a versiones preliminares como el Netbeas 6.7 Milestone 2 que provee algunas mejoras, pero que incluye la caracteristica que mas he esperado hasta el momento, la posibilidad de que el IDE cargue solo los modulos necesarios para el desarrollo por tipo de proyecto y no todos cuando se esta cargando. Esta nueva caracteristica es llamada Ergonomia que permite al IDE adaptarse a las necesidades del proyecto en el cual se esta trabajando, permitiendo solo cargar los modulos necesarios, lo que permitira al IDE mejorar su rendimiento y uso de memoria.

Ya estoy bajando los 208MB que pesa la version completa de Netbeans para comenzar a evaluarlo y comenzar a espera esta version 6.7 ultra mejorada.

Enlaces :

Read More

NetBeans, PHPUnit y Ubuntu

Jan 21

NetBeans 6.5Siguen y siguen apareciendo nuevas caracteristicas para la version de PHP de NetBeans, esta vez es el turno para las pruebas unitarias, que al igual que la version para Java permiten crear pruebas para cada clase creando una clase completa que sirve para automatizar las pruebas las cuales se pueden ejecutar en cualquier momento utilizando el mismo editor.

Requisitos :

  • Tener instalado el paquete phpunit
    Abrir una terminal, instalar el paquete
    sudo apt-get install phpunit

Pasos :

  • Abrir una terminal
  • Descarga una version de desarrollo de NetBeans para PHP,
    por ejemplo la version del 20 de Enero de 2008
    wget http://bits.netbeans.org/download/trunk/nightly/latest/zip/netbeans-trunk-nightly-200901201401-php.zip
  • Descomprimir
    unzip netbeans-trunk-nightly-200901201401-php.zip
  • Ejecutar, se puede utilizar la opcion --userdir para especificar un directorio diferente de opciones
    ./netbeans/bin/netbeans.sh --userdir /home/<usuario>/netbeans/php
  • Crear un proyecto llamado calculadora_php
    File -> New Project -> PHP -> PHP Application
    Pulsar el boton Next
    Colocar el nombre  : calculadora_php
  • Abrir las opciones del NetBeans
    Menu Tools -> Options
    Seleccionar la pestaña PHP
  • Adicionar la ruta del PHPUnit
    PHP Unit Script : /usr/bin/phpunit
  • Adicionar un directorio al Global Include Path
    Pulsar el boto Add Folder
    Seleccionar el directorio /usr/share/php
  • Crear la clase Calculadora.php con el siguiente codigo :
    <?php
    class Calculadora {
        function sumar($a, $b) {
            return $a+$b;
    }
    ?>
  • En la lista de archivos de proyecto, click derecho sobre Calculadora.php
    Tools -> Create PHP Unit tests
  • Crear el directorio donde se almacenaran las pruebas
    Abir una terminal y ejecutar
    mkdir /home/<usuario>/public_html/test_php/tests
  • Esto abre una caja de dialogo donde se nos pide la ruta completa de donde se almacenaran las prueba.
    Digitar : /home/<usuario>/public_html/test_php/tests
  • NetBeans genera una clase con los metodos necesarios para ser una prueba unitaria
    Abrir la clase y buscar el metodo testSumar, cambiar para que luzca asi :

        public function testAdd() {
            $a = 5;
            $b = 3;
            $r = $this->object->add($a, $b);
            $this->assertEquals($r,8);
        }
  • Ahora puede seleccionar la clase CalculadoraTest.php, click derecho y Run
  • Esto ejecuta la prueba unitaria

Actualmente esta version esta en desarrollo y los nombres para ejecutar las pruebas pueden cambiar por ejemplo a Run Test. A diferencia de la version Java en este momento al finalizar la prueba el resultado es visible en la consola, pero no de manera grafica.

Algo que me parecio raro, es que al momento de crear las pruebas me solicitara la ruta completa para almacenar las clases, pero leyendo mas acerca de esta nueva caracteristica, todavia esta en discusion donde se deben crear las pruebas unitarias, pues no deben ser parte del producto final, pero deben poderse publicar para realizar pruebas sobre los servidores en los cuales se esta trabajando y no solamente locales, de tal modo que por el momento se deberia escojer un directorio por fuera del proyecto, aunque en el ejemplo utilizamos un directorio tests dentro del proyecto para facilitar las cosas.

Desde los dias de Thunder he utilizado SimpleTest (otro framework para realizar pruebas para PHP), pero ahora que NetBeans tiene el soporte listo para PHPUnit creo que estare pensando en migrar muchas de las pruebas unitarias a esta herramienta, a no ser que de aqui a eso saquen una version para SimpleTest. Queda pendiente hacerle el seguimiento a esta nueva caracteristica y mirar que framework se esta pensando para las pruebas web.

Enlaces :

Read More
Page 1 of 3123