Ruleta de Led. simulación:
Dudas y aprendizajes:


a.       ¿Que es Arduino?

Arduino es una plataforma de prototipos electrónica de código abierto (open-source) basada en hardware y software flexibles y fáciles de usar. Está pensado para artistas, diseñadores, como hobby y para cualquiera interesado en crear objetos o entornos interactivos.

Arduino puede “sentir” el entorno mediante la recepción de entradas desde una variedad de sensores y puede afectar a su alrededor mediante el control de luces, motores y otros artefactos. El micro controlador de la placa se programa usando el “Arduino Programming Language” (basado en Wiring) y el “Arduino Development Environment” (basado en Processing). Los proyectos de Arduino pueden ser autónomos o se pueden comunicar con software en ejecución en un ordenador (por ejemplo con Flash, Processing, MaxMSP, etc.).

Las placas se pueden ensamblar a mano o encargarlas pre ensambladas; el software se puede descargar gratuitamente. Los diseños de referencia del hardware (archivos CAD) están disponibles bajo licencia open-source, por lo que eres libre de adaptarlas a tus necesidades.
Arduino recibió una mención honorífica en la sección Digital Communities del Ars Electronica Prix en 2006.

 ¿Por qué Arduino?


Hay muchos otros micro controladores y plataformas micro controladoras disponibles para computación física. Parallax Basic Stamp, Netmedia’s BX-24, Phidgets, MIT’s Handyboard, y muchas otras ofertas de funcionalidad similar. Todas estas herramientas toman los desordenados detalles de la programación de micro controlador y la encierran en un paquete fácil de usar. Arduino también simplifica el proceso de trabajo con micro controladores, pero ofrece algunas ventajas para profesores, estudiantes y a aficionados interesados sobre otros sistemas:

Barato: Las placas Arduino son relativamente baratas comparadas con otras plataformas micro controladoras. La versión menos cara del módulo Arduino puede ser ensamblada a mano, e incluso los módulos de Arduino pre ensamblados cuestan menos de 50$.

Multiplataforma: El software de Arduino se ejecuta en sistemas operativos Windows, Macintosh OSX y GNU/Linux. La mayoría de los sistemas micro controladores están limitados a Windows.
Entorno de programación simple y clara: El entorno de programación de Arduino es fácil de usar para principiantes, pero suficientemente flexible para que usuarios avanzados puedan aprovecharlo también. Para profesores, está convenientemente basado en el entorno de programación Processing, de manera que estudiantes aprendiendo a programar en ese entorno estarán familiarizados con el aspecto y la imagen de Arduino.

Código abierto y software extensible: El software Arduino está publicado como herramientas de código abierto, disponible para extensión por programadores experimentados. El lenguaje puede ser expandido mediante librerias C++, y la gente que quiera entender los detalles técnicos pueden hacer el salto desde Arduino a la programación en lenguaje AVR C en el cual está basado. De forma similar, puedes añadir código AVR-C directamente en tus programas Arduino si quieres.
Código abierto y hardware extensible: El Arduino está basado en micro controladores ATMEGA8 y ATMEGA168 de Atmel. Los planos para los módulos están publicados bajo licencia Creative Commons, por lo que diseñadores experimentados de circuitos pueden hacer su propia versión del módulo, extendiéndolo y mejorándolo. Incluso usuarios relativamente inexpertos pueden construir la versión de la placa del módulo para entender cómo funciona y ahorrar dinero.   

 ¿Que es una Entrada y salida Digital?

Una señal digital es un tipo de señal generada por algún tipo de fenómeno electromagnético en que cada signo que codifica el contenido de la misma puede ser analizado en término de algunas magnitudes que representan valores discretos, en lugar de valores dentro de un cierto rango. Por ejemplo, el interruptor de la luz sólo puede tomar dos valores o estados: abierto o cerrado, o la misma lámpara: encendida o apagada (véase circuito de conmutación).

 ¿Que es un Código?

Código es todo el conjunto de instrucciones que hace en un sistema operativo determinado la capacidad de Codificar y Descodificar el conjunto organizado de datos (Información) que es recibido y enviado, de forma de que pueda ser mostrado al usuario a través de una interfaz gráfica o dando una respuesta lógica y deseada entre el Origen (también denominado Fuente) y el Destino de la acción realizada.

Clasificación:
Código Abierto: Corresponden aquellos que tienen el acceso conocido como Código Fuente Liberado, en el cual el desarrollo de la aplicación se da por una comunidad determinada de programadores o bien en forma global, autorizando a su copia, análisis y modificación en forma completamente libre, sin que necesariamente sea el autor quien realice estas alteraciones al código original.
Código Cerrado: En este caso, el Código Fuente solo puede ser modificado por quien es su Autor registrado, o bien por aquellas personas a las que él mismo ha expresado su autorización.

 ¿Que es C++?

 Es un lenguaje de programación, creado a mediados de 1980 por Bjarne Strousstrup, como extensión del lenguaje C. Este lenguaje abarca tres paradigmas de la programación: 1. Programación Estructurada 2. Programación Genérica 3. Programación Orientada a Objetos En la actualidad, C++ es un lenguaje versátil, potente y general. Su éxito entre los programadores le ha llevado a ocupar el primer puesto como herramienta de desarrollo de aplicaciones, ya sea en Windows o GNU Linux.

¿Qué tan complejo puede ser el lenguaje C++?

 Se trata simplemente del sucesor de un lenguaje de programación hecho por programadores (de alto nivel) para programadores, lo que se traduce en un diseño pragmático al que se le han ido añadiendo todos los elementos que la práctica aconsejaba como necesarios, con independencia de su belleza o purismo conceptual.  De hecho, en el diseño de la Librería Estándar C++ (5.1) se ha usado ampliamente esta dualidad (ser mezcla de un lenguaje tradicional con elementos de POO), lo que ha permitido un modelo muy avanzado de programación extraordinariamente flexible (programación genérica).

¿Qué tipos de lenguajes hay?

Los lenguajes imperativos son aquellos en los que se especifica cómo conseguir los objetivos que se persiguen. C; C++; Javascript y Perl, entre otros muchos, pertenecen a esta categoría. Por otro lado están también los lenguajes declarativos  que son aquellos en los que se especifica que objetivo se persigue, sin preocuparse por el cómo. SQL y HTML son quizás los ejemplos más representativos de esta categoría.

¿Pueden combinarse los dos lenguajes?


Si se pueden combinar pero por razones de velocidad  (flujo) y costo la que se desarrollara con mayor aplicación es el lenguaje declarativo. Por un lado, nosotros no somos capaces de abarcar una visión global pero precisa simultáneamente del sistema y por otro, el compilador no puede ayudarnos a suplir este problema. Así, todo lo que nosotros no seamos capaces de resolver, la programación imperativa tampoco lo conseguirá.

Comentarios

Entradas populares