Blog SOFIA2

En los últimos meses hemos dedicado más de un post a la Plataforma SOFIA2, hasta que llegó el momento en el que decidimos que SOFIA2 se merecía un espacio propio….

Queda presentado el Blog de SOFIA2: http://about.sofia2.com/ en el que intentaremos tratar diversos temas de la Plataforma SOFIA2 y que esperamos que os resulte de tanto interés como este :).

Un poco de Impresoras 3D RepRap

Una impresora 3D es un dispositivo capaz de generar un objeto sólido tridimensional mediante la adición de material a partir de un diseño hecho por ordenador.

Los materiales y técnicas que actualmente pueden utilizarse para ‘imprimir’ son variados y lo cierto es que influyen bastante en el coste de la impresora. Nos encontramos impresoras capaces de trabajar mediante laser o aglomerante, con metal, fotopolímeros o resina líquida, aunque resultan prohibitivas para entornos no industriales.

Las impresoras “caseras” que encontramos son las que funcionan con materiales termoplásticos que se calientan hasta la fusión. Después se proyectan como un filamento de plástico con el que se imprimen las piezas, esto es, modelan capa a capa un volumen con una determinada geometría. Para esta proyección se utiliza una “cabeza” caliente llamada extrusor, que es movido por tres ejes en el espacio.

Parte de las piezas de una impresora 3D pueden ser generadas por otra impresora 3D. Es la familia conocida como RepRap, Replicating Rapid Prototyper, esto es, prototipador replicante rápido. Las RepRap son una iniciativa Open Hardware para la creación de máquinas manufacturadas libres y que se pueden construir en casa. Cuenta con una comunidad muy activa en España, que podemos seguir desde el proyecto clone wars:

Al ser Open Hardware, los usuarios son libres de alterar los diseños de las reprap, incorporando modificaciones a conveniencia. Entre los numerosos diseños de la comunidad incorporados en repositorios libres, son frecuentes las modificaciones a los propios modelos de impresoras.

A la hora de buscar una utilidad a una impresora 3D, tenemos la suerte de encontrarnos en un campo incipiente donde podemos echarle imaginación. Desde piezas de instrumental médico, implantes, arquitectura, aplicaciones aeroespaciales, educación, simulación y prototipado, modelismo, educación, mecánica, robótica, moda, joyería, ocio y por supuesto uso doméstico y semi profesional que abre opciones ilimitadas.

 

Algunos Tipos de Impresora RepRap


 

Prusa Mendel

Son modificaciones sobre la impresora Mendel original llevadas a cabo por Joseph Prusa, cuyo objetivo era la generación de una impresora estable, barata y muy fácil de construir. Existen dos iteraciones (la Prusa Mendel original y la Prusa Mendel Iteración II) y acaba de desarrollarse una tercera (la Prusa Mendel Iteración III). Las dos primeras iteraciones tienen forma triangular. La tercera es un diseño más recto y sencillo que los anteriores.

PrintrBot

PrintrBot es una impresora que también sigue la filosofía RepRap, y diseñada por Brook Drumm y financiada con un proyecto en Kickstarter. Es una impresora cuadrada que es completamente escalable. Esto significa que si compras barras más grandes puedes hacer una impresora capaz de imprimir piezas más grandes.

Rostock (Delta Printer)

Es una impresora también de 3 ejes (más extrusor) creada por Johann, pero con la propiedad de que los 3 ejes son verticales y están separados 120 grados cada uno, dando un sistema de coordenadas distinto, pero un resultado muy interesante. Es una impresora muy alta (pero su espacio de impresión no llega a ser tan alto), y requiere tener el mecanismo del extrusor separado del HotEnd para evitar problemas con la inercia del soporte (el motor pesa algo menos de medio kilo, y desestabilizaría la impresión).

Modelos no RepRap (Generación 0)

Son modelos construidos con una carcasa de madera contrachapada cortada con láser y que los venden las empresas MakerBot, MakeGrear. Son modelos con piezas no imprimibles y por tanto no son replicables ni pertenecen a las RepRap, pero nos permiten empezar a construir las mismas ya que nos imprimen las piezas de estas.

 

Materiales de Impresión más Comunes


 

ABS (Acrilonitrilo Butadieno eStireno)

Es un tipo de plástico que funde a 215ºC más o menos. Es flexible (hasta cierto punto) y puede venir en diferentes colores. Se fabrica a partir del del petróleo y es seguro para la manipulación de alimentos (con ellos se hacen las piezas de LEGO). Se disuelve en acetona lo que permite composición y un acabado “pulido” posterior.

PLA (PolyLactic Acid, Ácido Poliláctico)

Es otro tipo de plástico usado en las RepRap que funde a 185ºC. Es menos flexible, pero desprende menos olores. Además, su origen no es el petróleo y es biodegradable.

 

Hardware de la Impresora


 

Piezas Replicadas

Se refiere a cualquier pieza necesaria que pueda fabricarse mediante una impresora RepRap.

Las piezas no imprimibles son llamadas “vitaminas”. Esto es los motores, varillas de metal… El objetivo de RepRap es reducir al máximo las vitaminas (aunque a veces conviene añadir alguna, como los rodamientos lineales en la Prusa).

Motor Paso a Paso (Bipolar)

Es un tipo de motor eléctrico en cuyo interior existen dos bobinas eléctricas que conectadas alternativamente producen el giro de un rotor (el movimiento del eje). Tienen la propiedad de que al activar una bobina el rotor sólo gira un ángulo muy pequeño llamado paso o step. Al activar la otra bobina (desactivando la anterior) se mueve otro paso, y así avanzan. Permiten controlar la posición ya que puedes controlar el número de pasos que quieres que avancen los motores. Estos motores son usados en aparatos que requieren control de la posición, como las impresoras de inyección de tinta, o nuestras RepRap.

Adicionalmente conectando las bobinas a la vez se consigue que el rotor se quede en una posición intermedia. Si variamos la intensidad de una bobina frente a la otra podemos conseguir más posiciones intermedias. A esto se le llama microsteping.

Heatbed (Cama o base caliente)

Significa placa (cama) caliente. En ella reposan las piezas al ser impresas. Tiene que estar caliente (100ºC para el plástico ABS, 60ºC para el plástico PLA) para evitar que la pieza tenga un gradiente de temperaturas muy elevado durante la impresión (parte de abajo fría parte de arriba caliente) que generaría deformaciones en la pieza. Es posible que no se necesite para imprimir PLA (porque es térmicamente estable, esto es, no varía mucho su dimensión con la temperatura), pero ayuda en cualquier caso.

El heatbed posee un sensor llamado termistor que indica al software de control acerca de la temperatura alcanzada por la cama.

EndStop (Final de carrera)

En español se llaman interruptor final de carrera. Hay dos tipos principales, los mecánicos que son un interruptor con una palanquita, y los ópticos que tienes que meter una banderilla (una tirita de metal) en una ranura para indicar que hay pieza. Existe un tercer tipo que es magnético. Se usan para indicar que una pieza ha llegado al final de su recorrido (y por tanto no debería avanzar más).

En la RepRap se ponen por lo general 3 finales de carrera (aunque se pueden poner 6) para marcar el origen de los ejes X, Y y Z.

Varillas lisas y Roscadas

Se utilizan en la mayoría de impresoras RepRap como sistema de guiado lineal en los ejes (de los llamados carros) en combinación con rodamientos lineales. Pueden ser de acero inoxidable o de aluminio, pero es importante que el diámetro sea el adecuado (por lo general de 8mm) y sea constante, y que la varilla esté bien recta.

Las varillas roscadas y los "husillos" se usan el desplazamiento del eje Z (vertical). Son varillas de acero inoxidable con una rosca métrica mecanizada en su cara exterior giradas mediante los motores del eje Z.

Rodamientos Radiales de Bolas (o bearings), Rodamientos Lineales y Poleas.

Son aparatos que permiten el acoplamiento de un eje movil (que gira) con una pieza fija (un soporte) tal que se minimice el rozamiento producido. Son rodamientos lineales y radiales, evitan la fricción sobre las barras y cintas de poleas.

Las poleas transmiten el movimiento de rotación a las correas, manifestándose en forma de traslación de los brazos en los ejes.

Extrusor

Mecanismo que se encarga de expulsar el filamento de plástico con el que se imprimen las piezas. El extrusor de una RepRap se compone de un motor que mueve el llamado “cuarto eje”. Mediante unos engranajes, fuerza al filamento de 3mm (o 1.75mm) a entrar a un fusor.

La pieza hacia abajo, en la punta del extrusor, es el hotend (fusor) que derrite el plástico y, por la propia presión que ejerce, es forzado a fluir por una abertura (nozzle, o aguja) que permite que salga esa "extrusión". El extrusor, al igual que la cama caliente, posee un termistor para indicar al software de control la temperatura alcanzada.

Fuente de Alimentación

Como las que se usan en un PC. Alimentación de 12v y al menos 15A.

 

Piezas Electrónicas de la Impresora


 

Arduino Mega

Arduino es una plataforma de hardware libre, basada en una placa con un microcontrolador y un entorno de desarrollo, diseñada para facilitar el uso de la electrónica en proyectos multidisciplinares.

http://unpocodejava.wordpress.com/2013/03/05/guia-de-compra-de-arduino-versiones-de-placas-arduino-parte-1-de-2/

Ramps

Literalmente RepRap Arduino Mega Pololu Shield. Es un shield de la Arduino Mega que permite poner hasta 5 controladores Pololu de los motores paso a paso. Adicionalmente tiene la ventaja de que, como la Arduino Mega tiene muchos pines, se le pueden hacer muchas expansiones (como por ejemplo, una pantalla LCD, un lector de tarjetas SD, un panel de control con botones…).

Se ha de comprender que la RAMPS ha de ir montada sobre una Arduino Mega, y requiere de esta placa para funcionar (por tanto esta alternativa se compone de 2 placas, el shield RAMPS y la Arduino Mega).

Controlador de Motores Pololu

Es un controlador (también llamado driver) en forma de chip pequeñito que controla el funcionamiento de los motores paso a paso. Utiliza un chip Allegro A4988, que permite controlar el paso de los motores (paso a paso) y también permite un microstepping de 1/2, 1/4, 1/8 o 1/16.

Sanguinololu

Es una electrónica basada en la Sanguino (un clon de Arduino) que proporciona una alternativa compuesta de una sola placa a diferencia de la RAMPS. En esta placa se incluyen los controladores de los motores sólo pudiéndose conectar 4. El precio de la Sanguinololu es más barato que el precio conjunto de una RAMPS con su correspondiente Arduino Mega.

Sav Mki

Esta placa se ha diseñado y desarrollado usando las contribuciones y comentarios del Grupo Clone Wars de RepRap España. Se han intentado eliminar los defectos de placas similares intentando mantener un precio asequible pero con muchas características. La mejor placa diseñada en España (hasta la fecha) y todo de la mano de la comunidad Clone Wars

 

Software y Proceso de Impresión


 

1 – Modelado 3D

Lo primero es diseñar un volumen con una herramienta de modelado 3d mediante un PC. Servirá cualquier software de modelado 3D que permita generar archivos .STL

Software libre:

Software Privativo:

  • Sketchup (Gratuito)
  • Catia
  • Solid Works
  • Tinkercad

Durante el diseño hay que tener en cuenta que no todas las figuras son “imprimibles” tal cual, y puede ser necesario partirlas en diversas piezas.

2 – Sliceing o Laminado

Por el momento es un paso previo a la impresión que todas las impresoras 3D siguen, que consiste en laminar la pieza las cuales, apiladas, formarán la pieza impresa final.

Para hacer el laminado hay dos programas: Skeinforge y Slic3r. Cortan el .STL rodajas (laminación) y para cada rodaja se calculan las trayectorias que deben seguir la aguja para depositar el plástico. Por último estas trayectorias se exportan a ficheros con los G-codes. Son comandos guardados en ficheros ASCII (que podemos abrir con cualquier editor de texto), con las trayectorias de los ejes para una máquina de control numérico.

3 – Carga del modelo en el firmware del Controlador

Cuando tenemos troceado el modelo, utilizamos un programa específico de impresión.

El pronterface es una aplicación opensource de PC que permite el calibrado de la impresora, envío de ordenes gcode, utilizar programas para el laminado (como el skeinforge) y comunicar los gcodes al firmware del arduino.

(En el arduino hay que haber instalado un programa controlador, por ejemplo, Sprinter o Marlin, que son firmwares opensource).

4 – Impresión

Si la impresora está bien calibrada empezará la impresión. Aquí debemos ser pacientes. Las primeras capas se realizan muy despacio para permitir la adherencia del objeto a la base, después irá más rápido.

La calidad del resultado dependerá de numerosos factores. Si todo va bien, entre los más visibles -en una impresora bien calibrada- están la velocidad de impresión (más lento, mas calidad) y la abertura del hotend (menor abertura, mayor “resolución”).

5 – Postprocesado

Dependiendo del material utilizado podemos componer, pegar o pulir los resultados.

Además de los tratamientos “físicos” como lijar o pegar, existen diversas técnicas, como el baño en vapor de acetona para el ABS que ofrece un aspecto final pulido.

 

Referencias


 
El mejor referente en impresoras 3D en español
http://www.reprap.org/wiki/Proyecto_Clone_Wars

Una buena colección de objetos para imprimir
http://www.thingiverse.com/

Usos futuros

Un poco de FI-WARE

A lo mejor habéis oído hablar de la Plataforma FI-WARE, y a lo mejor habéis llegado a su Wiki y os habéis visto abrumados por sus kilométricos HTMLs de presentación de la Plataforma.

Si es vuestro caso a lo mejor este post os ayuda!!

FI-WARE es una plataforma pensada para simplificar la creación de aplicaciones colaborativas.

La Plataforma FI-CORE comprende un conjunto de habilitadores tecnológicos genéricos (GE: Generic Enablers) de uso general y común a varias “áreas de uso” actuales y futuros. La Plataforma FI-CORE también proporciona interfaces abiertas para el desarrollo de aplicaciones.

Un GE FI-WARE es un elemento funcional de FI-WARE, cualquier implementación de un GE se forma con un conjunto de componentes que da una funcionalidad y provee unas APIs.

Puede haber múltiples implementaciones compatibles de un determinado GE

Por ejemplo el Sistema Data/Context Management comprende:

· Un conjunto de GEs que permiten el procesamiento y almacenamiento de datos de fuentes dispares, cada uno especializado en la recolección de datos de una fuente específica (por ejemplo, los datos de “cosas” conectadas, los datos facilitados por el usuario, los datos exportados por aplicaciones , etc)

· Una serie de GEs relacionados con el procesamiento de los datos almacenados, lo que permite la generación / inferencia de nuevos datos valiosos que las aplicaciones pueden estar interesados ​​en consumir.

· Un GE que soporta una API bien definida que permite el desarrollo de aplicaciones Future Internet Applications capaces de suscribirse a los datos que les interesa en tiempo real.

Por otro lado

· Un Producto compatible con la plataforma FI-WARE implementará totalmente o en parte un FI-WARE GE o una composición concreta de Ges FI-WARE

· Un Instancia FI-WARE es el resultado de la integración de una serie de productos FI-WARE-compliant y, por lo general una serie de productos complementarios (por ejemplo, los sistemas de apoyo de facturación).

Arquitectura FI-WARE:

La Arquitectura FI-WARE se organiza en un conjunto de sistemas (capítulos) que actúan como agrupadores de GEs:

§ Data/Context Management: soporte para el tratamiento y almacenamiento de datos y eventos

§ Internet of Things (IoT) Services Enablement: acceso al Internet de las cosas

§ Applications/Services Ecosystem and Delivery Framework: Framework para el despliegue

§ Security: Seguridad de la solución

§ Cloud Hosting: Despliegue en cloud

§ Interface to Networks and Devices (I2ND): Interfaces con la red

Data/Context Management System

Es un conjunto de GE que soportan:

o Acceso a la información de Contexto (incluído profile de usuario y preferencias) para simplificar el desarrollo de aplicaciones

o Almacenamiento de datos (grandes volúmenes)

o Procesamiento, correlación y distribución de (grandes volúmenes de) eventos

o Procesamiento de contenido multimedia

o Ofrecer APIs estándar para estas funcionalidades

https://forge.fi-ware.eu/plugins/mediawiki/wiki/fiware/index.php/Data/Context_Management

Los Enablers que componen este módulo son:

§ Publish/Subscribe Broker GE que permite a las aplicaciones intercambiar eventos siguiendo patron P-S

§ Complex Event Processing GE que permite el procesamiento de streams en tiempo real

§ BigData Analysis GE: quer permite realizer análisis Map-Reduce de grandes volúmenes de datos

§ Multimedia Analysis Generation GE, que es capaz de extraer meta-información (conocimiento) de forma automatic y semiautomática para el análisis de contenido multimedia

§ Unstructured data analysis GE, que permite la extracción de metadatos en el análisis de información sin estructurar

§ Meta-data pre-processing GE, que facilita la generación de objetos desde diversos formatos de metadata

§ Location GE, que prove información geolocalizada desde los dispositivos

§ Query Broker GE, que ofrece mecanisms de query uniformes en diferentes repositorios

§ Semantic Annotation GE,que permite enriquecer información con meta-data para ser explotada por aplicaciones

§ Semantic ApplicationSupport GE, que prove soporte para trabajar con aplicaciones semánticas:

Internet of Things (IoT) Services Enablement System

https://forge.fi-ware.eu/plugins/mediawiki/wiki/fiware/index.php/Internet_of_Things_(IoT)_Services_Enablement

Ofrece:

· Acceso uniforme al “Internet of Things”:

• Identificación única de las “cosas”

• Modelo estándar de información

• APIs estándar de gestión

• APIs estándar para recuperar datos

· Implementado como una capa común que media con los diferentes tipos de sensor y de redes de dispositivos

Este módulo se divide en 4 componentes, cada uno con sus GEs como se ve en la figura:

· IoT Communications: con 3 GEs

· IoT Resources Management: con 2 GEs

· IoT Data handling: con 4 GEs

· IoT Process Automation con 3 GEs:

Applications/Services Ecosystem and Delivery Framework

https://forge.fi-ware.eu/plugins/mediawiki/wiki/fiware/index.php/Applications/Services_Ecosystem_and_Delivery_Framework

· Permite a las aplicaciones linkar con “cosas” y sus contenidos para ser accesibles por usuarios finales desde cualquier dispositivos

· Permite crear aplicaciones Mash-Up

· Incorpora capacidades de Services MarketPlace y de publicación por diferentes canales (Facebook, AppStores,…)

Se organiza en components, cada uno con sus GEs:

· Business Framework con los GEs:

• Repositoy

• Registry

• MarketPalce and Store

• Business Elements and Models Provisioning System

• Revenue Settlement and Sharing System

• SLA Management

· Composición y Mashup: con estos GEs:

• Mashup execution engine

• Service orchestration engine

• Service composition engine

• Application mashup editor

• Dataflow-oriented service composition editor

• Event- and constraint-based composition editor

· Mediación:

• Data Mediation

• Protocol Mediation

• Process Mediation

· Acceso Multi-canal y Multi-dispositivos

• Acceso Multi-canal y Multi-dispositivos

Security System

· Confianza y Seguridad:

• Abarca desde la infraestructura hasta la capa de aplicación

• GE para identidad, autenticación y autorización

• Gestión de la privacidad del usuario

· Operaciones

• Apoyo a la Gestión del Ciclo de Vida

• Fin de contabilidad uso del usuario

• Contabilidad de uso de la plataforma

• Compatibilidad con Analytics

Los GEs que lo componen son:

· Identity Management GE:

· Privacy GE

· Data Handling GE

Cloud hosting

https://forge.fi-ware.eu/plugins/mediawiki/wiki/fiware/index.php/Cloud_Hosting

Permite a proveedores almacenar sus aplicaciones en una infraestructura Cloud consiguiendo:

· Que los recursos se asignen dinámicamente conforme a la demanda para cumplir requisitos de negocio y SLAs.

Soporta:

· Provisionamiento IaaS y PaaS

· La infraestructura Cloud linkada puede ser federada con otra instancia o nubes tenernas.

· Support both IaaS-oriented and PaaS-oriented provisioning of resources

Este Sistema se compone de estos GEs:

§ IaaS Data Center Resource Management: este GE prove capacidades de hosting VM y controla todo lo necesario para cada VM individual incluyendo memoria, red, almacenamiento, provisionamiento,…

§ IaaS Cloud-Edge Resource Management : este GE permite al desarrollador diseñar y desplegar las aplicaciones

§ IaaS Service Management este GE ofrece hosting de servicios compuestos, usa el GE IaaS Resource Management GE para gestionar VMs individuales. Permite comunicar con otras nubes.

§ PaaS Management este GE prove hosting de contenedores de aplicaciones como Web Container, instancias de base de datos,…

§ Object Storage este GE prove capacidades de almacenamiento y recuperación de objetos con metadatos

§ Monitoring este GE es el responsible de recolectar métricas y el uso de datos de varios recursos en la nbe.

§ CMDB este GE es responsible de almacenar la configuración operacional del entorno Cloug

§ Data Warehouse este GE almacenar los datos históricos de las diferentes métricas

§ Metering & Accounting este GE es responsible de colectar y procesar los datos de uso y monetización del Cloud (vía una Billing System externo)

 

Interface to Networks and Devices (I2ND)

https://forge.fi-ware.eu/plugins/mediawiki/wiki/fiware/index.php/Interface_to_Networks_and_Devices_(I2ND)

Contiene:

· Interfaces que envuelven el acceso a los facilitadores de red que se publican a los programadores de aplicaciones (materializando iniciativas como JIL, BONDI, GSMA OneAPI)

· Interfaces necesarias para el desarrollo de los componentes de la plataforma:

• Interfaces para el control de calidad de servicio (QoS) y la asignación de los recursos de red

• Gateway de comunicaciones

· Connected Device Interfacing (CDI): es el GE que permite explotar las características y capacidades de los dispositivos conectados .

· Cloud Edge (CE): es el GE encargado de interconectar los Proxies Cloud con FI-WARE.

· Network Information & Control (NetIC): es el GE que prove acceso homogéneo a dispositivos heterogéneos.

· Service, Capability, Connectivity and Control (S3C): es el GE que da acceso a características legacy de dispositivos y de redes.

Java en un Raspberry PI, desde cero

Resumimos cómo configurar un Raspberri PI para poder trabajar con java desde el momento en el que lo sacamos de la caja.
Contamos con un Raspberry Pi B 512K de memoria, ya nos hemos aproximado varias veces a micro placas:

http://unpocodejava.wordpress.com/?s=raspberry+pi

Y tenemos un avance de los esfuerzos por tener una distribución de Java en un Pi:

http://unpocodejava.wordpress.com/2012/05/30/java-corriendo-intentando-correr-sobre-raspberry-pi/
http://unpocodejava.wordpress.com/2012/08/14/corriendo-tomcat-7-en-un-raspberry-pi/

El objetivo es dar un “paso a paso” sencillo de opciones probadas, que nos permitan empezar a trabajar cuanto antes.

 

Escribir última versión del SO en la Targeta SD


Primero hay que elegir una imagen de sistema operativo que descargaremos de internet. En la web encontramos dos sistemas recomendados:

Descomprimimos la imagen del zip descargado (por ejemplo la imagen de Raspbian llamada 2013-05-25-wheezy-raspbian.img) y pasamos al siguiente paso.

Necesitamos un Lector de tarjetas

Una tarjeta SD(o microSD con adaptador) de 4 GB o mas.

Y utilizamos un software gratuito que permita escribir la imagen descargada anteriormente sobre la tarjeta. Uno que da buen resultados testeado en Windows7:

http://sourceforge.net/projects/win32diskimager/


 

Arranque y Configuración


Insertamos la tarjeta en la bahía correspondiente, enchufamos el cable HDMI a un monitor (o televisor), el adaptador mini-usb a la toma de corriente (5V), un cable Ethernet a la red, ratón y teclado usb2.0

Cuando lo conectamos a la corriente el Pi arranca e interactúa con los los dispositivos de entrada y salida muy satisfactoriamente. La primera vez mostrará automáticamente el menú de configuración:

Podemos volver al mismo menú más adelante cuando queramos mediante la orden >sudo raspi-config

  • expand_rootfs: Expande el espacio de la tarjeta SD
  • overscan: Para evitar que el Pi solo use una parte de la televisión.
  • configure_keyboard: Elegir compatible de una Lista de teclados.
  • change_pass: para cambiar la password del Usuario de sistema. La password por defecto es

    usuario: pi
    password: raspberry

  • change_locale: locale por defecto del sistema operativo.
  • change_timezone: franja horaria.
  • memory_split: balancea la memoria entre graficos y procesador.
  • Si planeamos instalar Java con opciones graficas (JavaFx) es recommendable aunmentar la memoria grafica a 128K.
  • ssh: Permite la comunicacion con un servidor ssh.
  • boot_behaviour: Si queremos arrancar por defecto en un escritorio con ventanas o en una consola.
  • update: intenta descargar la ultima version del raspi-config, necesario estar conectado a internet (como se comenta mas adelante)

Si todo ha ido bien, al reiniciar y tras logarnos encontraremos una pantalla semejante a esta:

En el escritorio contamos con el LXTerminal, una consola de comandos:

>sudo raspi-config

>sudo reboot

>sudo halt

Menu de configuraciones

Reiniciar el PI

Apagar el sistema

 

Configurar una red con router DHCP


Si hemos conectado el cable de red correctamente al router y al PI, los LEDs de la red deberían parpadear.

Si el router ofrece un servicio DHCP, no es necesario realizar más configuraciones. El Pi habrá recibido una ip que podemos consultar con:

>ifconfig

 

Configuracion WIFI

Es necesario un adaptador WIFI que soporte el chipset RTL8192cu. Ambas distribuciones Raspbian y Occidentalis son compatibles.

Lo conectamos a un puerto usb (y nos quedamos con un solo puerto, ahora seria recomendable tener un hub usb para ampliarlos). Si tenemos un SO Raspbian, para la configuracion podemos optar por una aplicación grafica:

Doble click en el icono del escritorio para lanzar el menu:

Hacemos click en el botón “scan” y aparecerán las redes al alcance.

Seleccionamos nuestra red local y se abre el menu:

Introducimos la clave wifi en el campo PSK y pulsamos “add”. La red y la ip apareceran configuradas en la pantalla principal.

Alternativamente se puede configurar el fichero:

>sudo nano /etc/network/interfaces

Busca las líneas de abajo y reemplaza el nombre ssid y password de la wifi (manteniendo las comillas):

wpa-ssid “ssid”
wpa-psk “password”

Despues reiniciar el sistema.

>sudo reboot

 

Usar SSH


Si tenemos el servicio ssh activado (en raspi-config) acceder desde un PC mediante ssh con putty es tan sencillo como escribir la IP:

Si al conectarnos encontramos un error connection reset by peer, podria haber un problema con las claves SSH. Se pueden resetear las claves mediante los siguientes comandos:

>sudo rm /etc/ssh/ssh_host_*

>sudo dpkg-reconfigure openssh-server

Borrar las viejas claves

Regenerarlas

 

Escritorio Remoto VNC


Instalaremos una versión ligera del famoso escritorio remoto tightvncserver. Trabajando en modo “terminal remota” ahorraremos la necesidad de los interfaces (teclado, raton, monitor) en el pi.

Para instalar el servidor escribimos en la consola:

>sudo apt-get update
>sudo apt-get install tightvncserver

Para arrancar el servidor escribir el comando:

>vncserver :puerto

en “puerto” escribimos el numero de puerto libre que nos apetezca. Por ejemplo:

>vncserver :1 -geometry 1440×900
(el parámetro geometry define el tamaño en pixels de la pantalla)

La primera vez nos pedirá una password (máximo 8 caracteres):

>raspberry

Aqui vemos el servicio en accion:

 

Configuracion Cliente VNC

Primero descargaremos en nuestro PC una versión de cliente VNC desdehttp://www.realvnc.com/

La pantalla de conexión no es como la siguiente:

Escribimos la ip:puerto del servicio vnc del Pi y pulsamos “connect”. La primera vez dara un aviso (por no tener el certificado) y pasara a la ventana de autenticación:

Y sin más problemas accederemos al escritorio.

 

Configurar el Servicio al arrancar el PI

Acceder al directorio

>cd /home/pi/.config

y crear un nuevo directorio

>mkdir autostart
>cd autostart

crear un nuevo fichero:

>nano tightvnc.desktopt

con el contenido:

[Desktop Entry]
Type=Application
Name=TightVNC
Exec=vncserver :1
StartupNotify=false

 

Transferir Ficheros sftp


Para transferir ficheros entre nuestro PC y el Pi valdrá cualquier aplicación que haga transferencias sftp. La aplicación winscp es gratuita y funciona correctamente http://winscp.net/download/winscp515setup.exe

La transferencia es sencilla e intuitiva, con ventanas tipo total comander:

 

El Conector GPIO


Aunque no es el propósito de este tutorial “primeros pasos”, conviene recordar por su importancia del conector GPIO (General Pourpose Input Output) que conecta el PI a dispositivos externos.


Podemos encontrar un buen tutorial de introducción al conector:
http://learn.adafruit.com/adafruits-raspberry-pi-lesson-4-gpio-setup?view=all

Tutoriales GPIO phyton
http://learn.adafruit.com/adafruits-raspberry-pi-lesson-4-gpio-setup?view=all

Como escribir en los puertos GPIO desde Java
https://blogs.oracle.com/hinkmond/entry/rpi_and_java_embedded_gpio3

 

JDK 8 (con JavaFX) para ARM


No es imprescindible, pero para poder hacer descargas http cómodamente recomendamos el chromium:

>sudo apt-get install chromium-browser

 

Recordar que desde el raspi-config balanceamos la memoria video-cpu a 128 para los graficos. Menos memoria causará fallos de memoria VRAM en JavaFX.

Es recomendable elegir en el raspi-config no arrancar el desktop, para ganar recursos adicionales.

Del fichero de configuración:

>sudo vi /boot/config.txt

Descomentar las lineas:

framebuffer_width=1280
framebuffer_height=720

Llegó el momento de descargar la distribucion de Java8 para procesador ARM desde http://jdk8.java.net/fxarmpreview

Descomprimimos la descarga en el direcotrio opt:

>sudo tar zxvf /home/pi/Downloads/jdk-8-ea-b36e-linux-arm-hflt-29_nov_2012.tar.gz -C /opt

Borramos el descargado

>rm /home/pi/Downloads/jdk-8-ea-b36e-linux-arm-hflt-29_nov_2012.tar.gz

Y listo. Aseguramos que java se ejecuta correctamente.

>sudo /opt/jdj1.8.0/bin/java –versión

 

Ejecutar un ejemplo Java


Podemos probar que la maquina virtual esta correctamente instalada con un ejemplo mínimo

>cd /home/pi

Editamos un fichero de código fuente:

>nano HelloPi.java

Compilamos a un class

>/opt/jdk1.8.0/bin/javac *.java

Y ejecutamos

>/opt/jdk1.8.0/bin/java HelloPi

 

Referencias


Tutorials de Adafruit:
http://learn.adafruit.com/category/learn-raspberry-pi

Impresionante herramienta para la corrección de imágenes desenfocadas o movidas

SmartDeblur es una aplicación que permite hacer una corrección casi mágica de imágenes desenfocadas o movidas.

SmartDeblur es capaz de corregir desenfoques y distorsión por movimiento a la hora de tomar una foto.

Los ejemplos que muestran son impresionantes, alguien se cree que de aquí:

Se puede llegar a aquí?

SmartDeblur es software libre (GPL v3), está implementada en C++ usando varias técnicas (Wiener, Tikhonov, Total Variation prior) y soluciona estos defectos: Out of Focus blur (with kernel deep tuning), Motion blur y Gaussian blur.

Existen versiones para Windows y para Mac.

Encuesta sobre uso de Open Source en organizaciones

es una subsidiaria de Progress Software. La component unacomunidad de expertos en opensource que proven software, soporte, formación y consultoría sobre proyectos Apache como ServiceMix, ActiveMQ, Camel y CXF.

En 2011 realizaron una encuesta entre su comunidad y las organizaciones con las que colaboran (que incluyen industrias de todo tipo) sobre el uso de software Open Source en las organizaciones.

Un resumen de la encuesta:

Qué ha motivado la decisión de desplegar open source:

En qué se ha beneficiado la organización del despliegue de Open Source:

Cuál es el porcentaje de proyectos en el que planea usar Open Source:

Las conclusiones principales que salen de la encuesta son:

· La mayoría de las empresas están considerando el software Open Source para sus proyectos IT

· La flexibilidad es el beneficio principal al adaptar open source

· El despliegue conlleva ahorros de costes como ventajas tecnológicas.

Podéis descargaros la encuesta completa aquí.

RedHat: la primera empresa Open Source en conseguir 1 billón de dólares de ingresos para 2012

Seguir

Recibe cada nueva publicación en tu buzón de correo electrónico.

Únete a otros 512 seguidores

A %d blogueros les gusta esto: