martes, 2 de julio de 2019

ARDUINO


Arduino es una plataforma abierta que facilita la programación de un microcontrolador. Los microcontroladores nos rodean en nuestra vida diaria, usan los sensores para escuchar el mundo físico y los actuadores para interactuar con el mundo físico. Los microcontroladores leen de los sensores y escriben sobre los actuadores.
El hardware de Arduino consiste en una placa con un microcontrolador generalmente Atmel AVR con puertos de comunicación y puertos de entrada/salida. Los microcontroladores más usados en las plataformas Arduino son el Atmega168Atmega328Atmega1280ATmega8 por su sencillez, pero se está ampliando a microcontroladores Atmel con arquitectura ARM de 32 bits y también a microcontroladores de Intel.
Por otro lado Arduino nos proporciona un  software consistente en un entorno de desarrollo (IDE) que implementa el lenguaje de programación de arduino, las herramientas para transferir el firmware al microcontrolador y el bootloader ejecutado en la placa. La principal característica del software y del lenguaje de programación es su sencillez y facilidad de uso.
Arduino promete ser una forma sencilla de realizar proyectos interactivos para cualquier persona. Para alguien que quiere hacer un proyecto, el proceso pasa por descargarnos e instalar el IDE buscar un poco por internet y simplemente hacer “corta y pega” del código que nos interese y cargarlo en nuestro HW. Luego hacer los cableados correspondientes con los periféricos y ya tenemos interaccionando el software con el Hardware. Todo ello con una inversión económica mínima: el coste del Arduino y los periféricos.
¿Para qué sirve Arduino?:
 Arduino se puede utilizar para crear elementos autónomos, conectándose a dispositivos e interactuar tanto con el hardware como con el software. Nos sirve tanto para controlar un elemento, pongamos por ejemplo un motor que nos suba o baje una persiana basada en la luz existente es una habitación, gracias a un sensor de luz conectado al Arduino, o bien para leer la información de una fuente, como puede ser un teclado o una página web, y convertir la información en una acción como puede ser encender una luz y escribir por un display lo tecleado.
arduino316


Importancia de Arduino en el mundo Hardware:


Arduino y por extensión el hardware libre se ha convertido en un elemento importante no solo en el mundo maker sino también el la industria de fabricación de hardware.
En este enlace se hace un estudio del estado de la industria del hardware en 2016. Más empresas están desarrollando productos innovadores y tenemos disponibles mejores herramientas para el prototipado y fabricación. El acceso a esas herramientas y el conocimiento alrededor de ellas es cada vez más universal. De estas herramientas destaca Arduino, Raspberry Pi y las impresoras 3D.Cabe destacar de este estudio que el 56% de las empresas usan Arduino como herramienta eléctrica de prototipado y el 91% de las empresas usan impresoras 3D como herramienta mecanica de prototipado.
5701f09b71ffe15922d6a66c_stateofhardware-27
Lenguaje de programación de Arduino, estructura de un programa. Para programar un Arduino, el lenguaje estándar es C++, aunque es posible programarlo en otroslenguajes. ... Cabe destacar scratch como un lenguaje visual que hace innecesario saber programación o Atmel Studio que es la herramienta que proporciona Atmel.
¿QUE ES UNA PLACA ARDUINO UNO?
Arduino Uno es una placa electrónica basada en el microcontrolador ATmega328. Cuenta con 14 entradas/salidas digitales, de las cuales 6 se pueden utilizar comosalidas PWM (Modulación por ancho de pulsos) y otras 6 son entradas analógicas.

Ventajas de utilizar Arduino:

¿Quieres conocer cuáles son los principales beneficios de utilizar esta plataforma para cualquier proyecto que quieras realizar en el campo de la educación o cualquier otro sector?
  • Un bajo coste. Por poco dinero puedes hacerte con algún kit de Arduino con los componentes necesarios para iniciarte en él.
  • Fácil de utilizar. Cualquiera puede usarla, aun teniendo pocos conocimientos de programación, electrónica y estos entornos. A cualquier edad, incluso niños.
  • Plataforma abierta. Es de código abierto, por lo que se pueden construir gran cantidad de proyectos y posibilidades de desarrollo. Con menos límites, ya que se puede combinar con otras plataformas o diferentes funcione como crear drones y más.
  • Alta flexibilidad. Se puede trabajar en todas las plataformas informáticas, o casi todas. Es de código abierto y cuenta con muchas herramientas para facilitar su uso y crear grandes cosas con ello.
  • Gran variedad de placas, no hay sola una placa sino una gran familia que tienen ciertas similitudes y diferencias en función del proyecto que quieras realizar con ella.
  • Es la forma ideal de introducirse en la programación, con sistemas visuales como es el caso de Scratch. Es mucho más fácil aprender a programar de cero, y sin escribir código.
  • Para aprender electrónica, mejor empezar con Arduino. Así podrás crear y personalizar sistemas de iluminación, robots y mucho más. Conocerás los componentes electrónicos y sus fundamentos, entre muchas otras cosas.
  • El hardware y software es ampliable y de código abierto, tienes grandes posibilidades de crear proyectos de todo tipo.
  • Tiene muchas aplicaciones y usos, puedes crear con Arduino prácticamente lo que desees, incluso proyectos profesionales.
Hoy en día, los lenguajes de programación y las nuevas tecnologías forman una parte muy importante dentro del ámbito educativo. Cada vez son más los niños que comienzan antes a practicar con robótica y juegos de programación, algo que en la sociedad actual es cada vez más fundamental.

Lenguaje de programación


Captura de la microcomputadora Commodore PET-32 mostrando un programa en el lenguaje de programación de alto nivel BASIC, bajo el emuladorVICE, en una distribución GNU/Linux.

Un ejemplo de código fuente escrito en el lenguaje de programación Java, que imprimirá el mensaje "Hello World!" a la salida estándar cuando es compilado y ejecutado
Un lenguaje de programación es un lenguaje formal que proporciona una serie de instrucciones que permiten a un programador escribir secuencias de órdenes y algoritmos a modo de controlar el comportamiento físico y lógico de una computadora con el objetivo de que produzca diversas clases de datos. A todo este conjunto de órdenes y datos escritos mediante un lenguaje de programación se le conoce como programa.
Algunos de estos lenguajes están formados por un conjunto de símbolos (llamado alfabeto), reglas gramaticales (léxico/morfológicas y sintácticas) y reglas semánticas, que en conjunto definen las estructuras válidas en el lenguaje y su significado. Al proceso por el cual se escribe, se pruebase depurase compila (de ser necesario) y se mantiene el código fuente de un programa informático se le llama programación, que es la que define la creación de software mediante la aplicación de procedimientos lógicos a través de los siguientes pasos:
  • El desarrollo lógico del programa para resolver un problema en particular.
  • Escritura de la lógica del programa empleando un lenguaje de programación específico (codificación del programa).
  • Ensamblaje o compilación del programa hasta convertirlo en lenguaje de máquina.
  • Prueba y depuración del programa.
  • Desarrollo de la documentación.
Existe un error común que trata por sinónimos los términos 'lenguaje de programación' y 'lenguaje informático'. Los lenguajes informáticos engloban a los lenguajes de programación y a otros más, como por ejemplo HTML (lenguaje para el marcado de páginas web que no es propiamente un lenguaje de programación, sino un conjunto de instrucciones que permiten estructurar el contenido de los documentos).
El lenguaje de programación permite especificar de manera precisa sobre qué datos debe operar un software específico, cómo deben ser almacenados o transmitidos dichos datos, y qué acciones debe dicho software tomar bajo una variada gama de circunstancias. Todo esto, a través de un lenguaje que intenta estar relativamente próximo al lenguaje humano o natural. Una característica relevante de los lenguajes de programación es precisamente que más de un programador pueda usar un conjunto común de instrucciones que sean comprendidas entre ellos para realizar la construcción de un programa de forma colaborativa.

Resultado de imagen para gif de lenguaje de programacion


DIFERENCIAS ENTRE LENGUAJE NATURAL Y LENGUAJE DE PROGRAMACIÓN:


El lenguaje natural es el que hablan las personas, mientras que el lenguaje de programación se destina a las máquinas. Ambos lenguajes presentan importantes similitudes, como la diferenciación que hacen entre sintaxis y semántica, su propósito de comunicar y la existencia de una composición base en los dos.
De forma general se observan varias semejanzas y puntos en común, pues los dos tipos fueron creados para comunicar ideas, expresiones e instrucciones, por ejemplo. Sin embargo, también es posible identificar algunas diferencias.

PRINCIPALES CARACTERÍSTICAS DE LOS LENGUAJES DE PROGRAMACIÓN:


La popularidad de un lenguaje de programación depende de las funcionalidades y utilidades que proporcione a los programadores. Las características que debe tener un lenguaje de programación para destacar son las siguientes:
    Resultado de imagen para caracteristicas del lenguaje de programacion
  • Simplicidad: el lenguaje debe ofrecer conceptos claros y simples que faciliten su aprendizaje y aplicación, de manera que sea sencillo de comprender y mantener. La simplicidad no significa que se le pueda restar el poder óptimo de funcionamiento.
  • Naturalidad: se refiere a que su aplicación en el área para la que fue diseñado debe hacerse de forma natural, proporcionando operadores, estructuras y sintaxis para que los operadores trabajen eficientemente.
  • Abstracción: consiste en la capacidad de definir y utilizar estructuras u operaciones complicadas ignorando algunos detalles. Esto influye en la capacidad de escritura.
  • Eficiencia: los lenguajes de programación deben traducirse y ejecutarse eficientemente para no ocupar demasiado espacio en la memoria ni gastar mucho tiempo.
  • Estructuración: permite que los programadores escriban sus códigos de acuerdo con los conceptos de programación estructurada, para evitar la creación de errores.
  • Compacidad: con esta característica es posible expresar las operaciones con concisión, sin tener que escribir demasiados detalles.
  • Localidad: se refiere a que los códigos se concentran en la parte del programa con la cual se está trabajando en un momento determinado.
  • ¿CUÁL ES EL MEJOR LENGUAJE DE PROGRAMACIÓN WEB?

    El desarrollo web puede hacerse a través de diferentes lenguajes de programación que permiten construir un sitio o diseñar una aplicación. Definir cuál es el mejor lenguaje de programación web es complicado porque depende de varios factores. No obstante, destacan las siguientes opciones:
    • Java: lenguaje multiuso que se ajusta eficientemente al desarrollo web.
    • Go: es de propósito general y ofrece un lenguaje flexible que facilita la creación de aplicaciones.
    • Ruby on Rails: permite diseñar aplicaciones web rápidamente.
    • Python: funciona en una amplia variedad de contextos y en la web tiene ventajas técnicas.
    • JavaScript: se ubica del lado del cliente y se puede extender al servidor para distintas funciones.
    ¡Espera! Antes de terminar, debemos hablar sobre una de las mejores soluciones que hoy en día existen (y no, no es exageración) para tu compañía, con el fin de alcanzar la integración empresarial y conectividad: WSO2. Con esta herramienta tan efectiva, conseguirás alcanzar en una posición muy ventajosa y competitiva en el mercado. ¡No dejes pasar la oportunidad de conocerlo!
  • Imagen relacionada

LENGUAJES DE PROGRAMACIÓN PARA CLOUD COMPUTING

Cloud computing (computación en la nube) es la entrega de servicios informáticos, como servidores, almacenamiento, bases de datos, redes, software, análisis, inteligencia y más, a través de internet para ofrecer una innovación más rápida, recursos flexibles y economías de escala.
Imagen relacionada
Consiste en varias tecnologías que en la actualidad tienen gran impacto en la empleabilidad de los desarrolladores de software. La nube se puede aprovechar en innumerables formas: software como servicio, plataforma como servicio o infraestructura como servicio, entre otros.






Diferencias entre TI y TO:


Los mundos de TI (Tecnologías de la Información) y TO (Tecnologías de la Operación) han sido tradicionalmente independientes, pero este hecho no debería ser así ya que hoy en día las necesidades de ambos entornos están cada vez más cerca. Las necesidades y problemas que presentan se hacen más comunes entre ellos, y la experiencia que posee cada uno debería extenderse al otro.
imagen TI vs TO
- Sistemas TI Corporativos vs. Sistemas de Control Industrial -
A continuación se enumeran gran parte de esas diferencias para poder entender a una mayor profundidad los problemas que separan a ambos:

Tecnología:

Una de las principales diferencias es la tecnología predominante en cada entorno. Mientras que en el entorno industrial hablamos de sensores, controladores, actuadores, etc.; en el corporativo hablamos de bases de datos, gestor documental, etc. Por ello, el conocimiento tecnológico que poseen los perfiles de cada entorno es totalmente diferente y supone un gran distanciamiento entre ellos.
Del mismo modo, no son comparables las necesidades que tienen unos con respecto a los otros, en el sector TI nos encontramos con un entorno de oficina donde el número de activos es similar al número de personas; sin embargo, si hablamos del entorno TO, contamos con multitud de dispositivos repartidos por un espacio amplio en la mayoría de las ocasiones y bastantes menos personas en proporción. Además, el entorno TO posee unas condiciones de funcionamiento bastante duras (temperatura, humedad,…), no comparables a las que podríamos encontrarnos en unas oficinas de TI.
Asociada a la tecnología también encontramos la jerga utilizada. Dentro de los sistemas de control Industrial existe un lenguaje enriquecido por la variedad de dispositivos y procesos que se ejecutan; detectándose incluso diferencias entre trabajadores de diferentes sectores, ya que pueden manejar tecnologías distintas dentro de sus respectivos ámbitos. Por el contrario, en TI encontramos una cara más amable, pero no por ello menos importante, con conocimientos generales y, aunque a veces sean algo concretos, gran parte de los profesionales que trabajan en este sector o incluso de sectores diferentes podrían entenderlos.

 Enfoque de seguridad:

 Siendo TO un entorno de trabajo donde prima el trabajo con máquinas y dispositivos, la importancia de la seguridad, desde el punto de vista de seguridad física y del proceso (safety), es clave. Cuando nos referimos a safety, estamos hablando de la protección del medio ambiente, personas e infraestructuras ante posibles fallos en el proceso. En sistemas TI, al no poner vidas en riesgo, hablamos de una seguridad desde el punto de vista lógico (security), es decir, proteger la información con respecto a cualquier tipo de riesgo que pueda acecharla, ya sean personas, desastres naturales, deterioro, etc.
Ambos tipos de seguridad buscan proteger la Confidencialidad, Integridad y Disponibilidad de la información de los sistemas en sus entornos. Pero ambos entornos entienden la seguridad desde puntos diferentes, y también persiguen sus objetivos de seguridad de forma diferente.
Mientras que en los entornos TI la confidencialidad de la información es el aspecto más importante a proteger, en los entornos TO la disponibilidad es el aspecto con mayor importancia, ya que las empresas pueden perder mucho dinero por culpa de una parada de servicio en sus sistemas o plantas.



No hay comentarios.:

Publicar un comentario

SOLUCIONES DE IDT RFID ¿QUE ES? RFID  o  identificación por radiofrecuencia  (del inglés  Radio Frequency Identification ) es un ...