Mostrando entradas con la etiqueta Hardware. Mostrar todas las entradas
Mostrando entradas con la etiqueta Hardware. Mostrar todas las entradas

miércoles, 25 de febrero de 2009

Consecuencias del Hardware y Software Abiertos IV: Pistola laser, parte final

Anteriormente escribí acerca de las partes I y II de este proyecto de pistola "láser" que está siendo publicada en la sección de proyectos abiertos que IBM pone a disposición de la comunidad.

Esta vez, les traigo la parte 3, la final de la serie, nos muestran como montar los componentes, un ejemplo de como ponerles un armazón apropiado para que parezca una pistola láser, y está incluido el resto de la programación, lo que permite terminar el proyecto.

Es destacable que durante todo el proyecto hay suficientes explicaciones como para que una persona que no sabe de electrónica o una persona que no sabe de programación pueda aprovechar esto no solo para usarlo, sino también para comenzar a interesarse en estas cosas.

Para mi, lo que hizo que todo este proyecto fuera tremendamente fantástico, fue una explicación de óptica donde nos muestran que, si bien esto no es realmente un láser, en cortas distancias tiene varias de sus propiedades mediante el apropiado uso de lentes.

Recuerden que deben poseer una cuenta gratuita en la página de IBM para poder ver los enlaces de descarga. Que lo disfruten.

martes, 10 de febrero de 2009

Consecuencias del Hardware y Software Abiertos parte III

Siguiendo esta saga de artículos, hoy traigo la continuación del proyecto de pistola lasers con arduino. El artículo anterior de este tema en el blog pueden encontrarlo acá.

Hoy, al ver la nueva entrega de IBM developer works sobre este tema, me di cuenta que faltaban datos, ya que hablaba de disparar el revolver pero en el texto no había nada que lo indicase.

Fue por eso que decidí crear una cuenta en la página de IBM y probar nuevamente. Tal como suponía, esto habilitó dos cosas: un indicador avisando que esta era la página 1 de 10, junto con enlaces para cambiar de página, más un par de opciones para descargar el documento en distintos formatos.

Procedí a descargar los pdfs de la primera y segunda entrega, y puedo decir ahora que me está gustando muchísimo como está encarado este desarrollo, ya que no solo se hace el desarrollo en si, sino que muestran ejemplos y variaciones, y van construyendo de a poco el programa final.

La parte electrónica es bastante sencilla, por lo que no creo que haya demasiado problema para nadie, es más difícil que comprendan la parte de programación, aunque siempre pueden bajar el programa terminado y usar el curso como guía acerca de como realizar las modificaciones necesarias para hacer que el juego se comporte como se desea.

Así que si no lo hicieron, accedan al sitio de ibm, a la segunda entrega del proyecto de pistolas laser con arduino, usen el enlace que dice "Register now or sign using your IBM ID and password", y una vez inscriptos y autenticados verán los enlaces que mencioné arriba.

martes, 13 de enero de 2009

Una evolución sobre el Wiimote

Me gusta el concepto de la Nintendo Wii, eso no es secreto para cualquiera que me haya preguntado que consola de última generación prefiero. Fue definitivamente una muy buena idea innovar en el campo de los controles en lugar de perseguir la carrera ilógica por más potencia (que se traduce en juegos más caros).

Hay, sin embargo, algo que he escuchado, y comprendo que es real. La tecnología del Wiimote (el control de la Nintendo Wii) está basado en dos sistemas de detección. Por un lado tiene una cámara infrarroja que detecta los emisores infrarrojos que se ubican sobre el televisor. De esta forma es posible detectar con exactitud a que punto de la pantalla se está apuntando.

El problema real existe en el otro sistema de detección: los acelerómetros que miden el movimiento relativo del control. Los acelerómetros tienen dos límites: 1) el límite de la aceleración máxima que pueden detectar, lo cual no es un problema porque está fuera de lo que los humanos normalmente producimos. y 2) el límite de aceleración mínima detectable, lo que determina cuanta precisión poseeremos al querer realizar control extra fino de un juego. Si el control no detecta movimientos mínimos, entonces el juego no responderá a ellos.

Existe una evolución sobre ese sistema de control, llamada Sixense. Sixense se basa en detectar la posición, orientación e inclinación del control dentro de un campo magnético. Esto permite detección ultra fina incluso cuando no estamos apuntando a la pantalla.

Existen unos cuantos videos que demuestran este tipo de control en acción, aunque son interesantes en cuanto a la parte técnica, no son la gran cosa en cuanto a lo que muestran. se podrían haber hecho cosas mucho mejores para demostrar el poder de un control de este tipo.

Igualmente, no se si esto tendrá realmente éxito. Existe un tema que es fundamental para este tipo de control. Al depender de un campo magnético, habría que ver a que distancia deberemos usarlo para no afectar a computadoras o consolas e incluso algunos modelos de monitor/televisor, todos sensibles a los campos magnéticos. Tal vez se incluya algún tipo de blindaje contra la emisión del campo magnético en alguna dirección, aunque sospecho que eso encarecería el producto y conspiraría contra su éxito.

jueves, 25 de diciembre de 2008

Consecuencias de Hardware y Software abierto parte II

Hace un tiempo escribí acerca de varios productos de hardware abierto, una nueva tendencia que va cobrando fuerza. Luego también comenté sobre dos proyectos muy interesantes basados en la plataforma arduino. Lo que no sabía en ese momento era que tendría que escribir nuevamente un artículo sobre un proyecto interesante de hardware y software abierto basado en arduino.

Esta vez es IBM, una empresa que asigna muchos recursos al movimiento de Software Libre, la que me ha sorprendido. Están comenzando un tutorial para armar un juego de pistolas láser (de esos que cada persona lleva una pistola y un blanco) basados en la plataforma arduino, llamado Duino TAG.

Hasta ahora solo han publicado la parte I, que habla sobre los conocimientos necesarios para encarar el proyecto y da una lista de requerimientos que precisaremos antes de comenzar a construir este proyecto. Lamentablemente para muchos, esta página está en ingles.

Solo son tres partes en total, por lo que no deberemos esperar mucho para conseguir la serie completa. Por lo que se dice, se precisan conocimientos básicos de electrónica (o sea, cosas como saber que tipo de componente es cada uno, no saber su funcionamiento interno), y conocimientos básicos de programación (entender el concepto de loops y variables). No es un proyecto ultra avanzado, y eso es bueno.

Los invito a seguirlo junto conmigo a medida que salga. Por cierto, no tienen excusas, el arduino, como buen proyecto abierto, es programable desde Windows, MAC OS X y Linux.

miércoles, 24 de diciembre de 2008

Las ventajas de liberar especificaciones de hardware

Hace bastante tiempo que esta PC desde la que escribo, solo tiene GNU/Linux. Sin embargo había algo que me molestaba. Sucede que mi tarjeta de video, una ATI 9600 XT, no tenía buen soporte.

Para hacer las cosas peor, ATI fabrica sus drivers con las tarjetas de video más modernas en mente. Así que hacía bastante tiempo que las mejoras que salían publicadas con cada edición de su driver no me servían.

Sin embargo recordé que unos meses (incluso puede que un año y meses) atrás ATI había liberado las especificaciones de Hardware y código fuente de drivers de varias tarjetas de video viejas. Entonces me puse a investigar y descubrí que hay dos drivers de código abierto en desarrollo constante. Uno, el que estoy usando, es el llamado Radeon, y es el que sirve para las tarjetas más viejas. El otro es el Radeon HD, y es el que sirve para tarjetas de video más modernas.

ATI no liberó todo completo, por lo que el driver que uso tiene secciones que tuvieron que ser desarrolladas a través de documentación e ingeniería inversa. Eso quiere decir que es un trabajo en proceso, de prueba y error. Pero a la vez también es un trabajo que avanza a la velocidad de desarrollo del código abierto, mucho más rápido que lo que lo pueden hacer la mayoría de las compañías.

Estoy muy contento con este nuevo Driver. Todavía no es perfecto, pero es más rápido y liviano y mucho menos intrusivo que el anterior driver de código cerrado que estaba usando antes. Y al ser de código abierto se que no me voy a quedar sin soporte.

Por otra parte, ATI ya no tiene que preocuparse por dar soporte a gran parte de la linea de tarjetas gráficas bajo Linux. Los programadores de código abierto lo hacen por ellos.

jueves, 18 de diciembre de 2008

Consejos para elegir una fuente de alimentación para PC

Ultimamente estoy viendo en diversos sitios web y escuchando en varias charlas preguntas sobre fuentes de alimentación para PC. La fuente es un componente que aparentemente no ha sufrido cambios durante el transcurso de la vida de la PC, más allá de entregar distintos voltajes con distinta potencia.

Sin embargo, hay varias consideraciones que hay que tener presentes al momento de comprar una fuente de alimentación, ya que pueden ser la diferencia entre comprar lo que necesitamos o comprar algo que no nos sirva y produzca inestabilidades en la PC

Comencemos por lo más simple y conocido: la diferencia entre los watts reales y los watts pico. Una fuente puede entregar una potencia determinada en forma estable. El máximo que puede entregar en forma estable y sostenida es lo que se conoce como los watts reales de la fuente. Los watts pico miden lo máximo que puede entregar la fuente durante cortísimos periodos de tiempo. 

Las fuentes sin marca suelen informar los watts pico, con lo que engañan a la gente. Una fuente de 300 watts de pico no puede alimentar a una computadora que consuma 300 watts en forma sostenida. Una fuente de 300 watts reales podrá alimentar a esta computadora y además entregar picos de poder cuando la computadora lo precise. 

Sigamos por la segunda consideración: eficiencia energética. Las fuentes normales tienen una eficiencia energética cercana al 60%. Esto quiere decir que si la computadora precisa 100 watts para funcionar, la fuente consumirá 167 watts de energía para entregar esos 100.

Hay en el mercado fuentes que adhieren a la norma 80 plus, lo que implica que poseen al menos 80% de eficiencia energética, con lo que requieren menos energía para alimentar la misma PC. Además existen la norma 80 plus bronce, 80 plus silver y 80 plus gold, cada una un paso más allá en eficiencia energética. Mantengan los ojos abiertos en la búsqueda de esto, de esta forma disminuirán su consumo eléctrico sin perder nada en su PC.

Continuando, hay un dato que se podría considerar trivial, pero que casi nunca es tenido en cuenta: tipos de fichas/adaptadores de la fuente de alimentación y cantidad de cada tipo. Básicamente tenemos que tener en cuenta los componentes actuales de nuestra PC y los que tengamos planeados en un futuro próximo. De esta forma, la inversión en la fuente de alimentación será correcta para las necesidades actuales y durará en vistas al futuro.

Por último, este es un dato muy poco conocido, pero que afecta a los que tienen placas de video de última generación. Las fuentes viejas tenían solo un punto desde el que distribuir un determinado voltaje. De ahí salían todos los cables con ese voltaje. Debido al alto amperaje presente, muchas fuentes modernas entregan los diferentes voltajes en múltiples salidas, con lo que tienen un amperaje alto, pero ese amperaje no está disponible en ninguno de los cables en su totalidad.

Esto es crítico en la linea de 12 volts para las tarjetas de video potentes, verifiquen si el amperaje está presente en todos los cables, en alguno, o en ninguno. Esto les dará una pista acerca de si la fuente servirá, por ejemplo, para instalar placas de video duales, o placas individuales de altos requerimientos energéticos. 

sábado, 13 de diciembre de 2008

Dos noticias y un ataque de risa.

Ayer en la oficina un compañero me mostró una noticia y repentinamente me puse a reír. Y no era una simple risa, eran carcajadas, de esas que no nos dejan respirar, de esas que me sacaron lágrimas de los ojos.

Pero vayamos por partes, primero una noticia vieja, sin la cual la noticia nueva no es graciosa. Hace ya un tiempo, Nvidia compró a la tecnología Ageia Physx, o sea la tecnología para procesar información de modelos físicos con facilidad. Usó esa tecnología para incorporarla en sus tarjetas de video.

Al hacerlo, también comenzó a desarrollar una serie de drivers, llamados Cuda, para usar esa tecnología y la inmensa capacidad de proceso masivamente paralelo de las placas de video para procesar información científica usando la placa de video, agregando mucha potencia a los sistemas de cálculo distribuido.

Ayer, mi compañero me mostró una noticia donde comentaban que estaban desarrollando tecnología para usar los procesadores extra de los procesadores de múltiples núcleos para ejecutar gráficos.

Piénsenlo. Tomensé su tiempo para hacerlo. ¿Para que puede el procesador tener la necesidad de procesar los gráficos? Porque la placa de video está ejecutando los procesos del procesador. Dioses, cuando leí la noticia y pensé eso, no podía parar de reirme.

Por supuesto, en realidad el motivo no es ese. Una charla con mis amigos y un poco de pensamiento posterior me hizo pensar en al menos dos motivos que demuestran la posible utilidad de esto.

Uno de ellos, placas de video de baja potencia, como las de una computadora portatil. En este caso, una alternativa a esa placa de usando un núcleo de los dos que traen algunas computadoras puede ser una alternativa interesante.

El segundo es más interesante aún. Windows XP no tiene DX10, pero si consiguen emular DX10 en uno de los procesadores y dejan a la placa de video usar ese DX10, puede que la diferencia de velocidad entre Vista y XP (en favor de XP, obvio) ayude a ejecutar juegos DX10 a velocidad aceptable alguna vez.

Por supuesto, una parte de mi se sigue riendo mientras escribo, y otra insiste en hacerme decir que este tipo de engaños no serían necesarios si DX10 fuera tecnología de código abierto, donde simplemente se podrían portar los paquetes de un tipo de Sistema operativo al otro.

miércoles, 3 de diciembre de 2008

Las consecuencias del hardware y software abiertos

Tal vez ustedes crean que soy un fanático ciego, no es cierto. Reconozco cuando un programa cerrado tiene características que me gustan (mis amigos me han visto alabando detalles menores que me gustan de Vista). Sin embargo, no dejo de ver junto con ellas las que no me gustan y no puedo cambiar. Esa falta de libertad es la razón principal por la que sigo escribiendo sobre cosas abiertas, que nos dan la libertad de modificarlas como queramos. Veo en eso el futuro.

Comencemos pues el artículo luego de la necesaria introducción. Hace muy poco escribí sobre el hardware abierto, recordarán que hubo una mención especial a los arduinos debido a la tremenda variedad que había, como para que no pensaran que era lo único que había.

Hoy me llevé una grata sorpresa referente a los mencionados arduinos. Encontré una página llamada diydrones (Do It Yourself Drones) básicamente trata sobre vehículos no piloteados que podemos construir nosotros mismos, obviamente a escala.

Hay muchos proyectos que incluyen hardware de diversos tipos, sin embargo hay dos que reciben un trato especial en el sitio: ArduPilot y BlimpDuino. Entenderán porque esos nombres me provocaron una emoción especial.

BlimDuino está en etapa de desarrollo, dentro de un tiempo tendrá el lanzamiento oficial, con venta de kits y liberación de la modificación a la circuitería arduino. ArduPilot ya se encuentra terminado, hay kits disponibles y la circuitería ha sido liberada a la comunidad.

¿Que hacen estos dos proyectos? ArduPilot es un piloto automático para aviones a escala (solo para navegación). En desarrollo hay una versión más potente llamada ArduPilot Pro que incluye control de alerones, cosa que el ArduPilot básico no hacía (solo controla timón para control de dirección y el acelerador para controlar la altitud).

Por su parte, el BlimpDuino es fabuloso. Es un controlador de dirigibles, hay un video de demostración en el que pueden ver un dirigible que es controlado en forma indirecta mediante marcadores infrarrojos en la habitación. Ahí podrán ver la forma en que inclina los motores para ganar o perder altitud, como los prende para un lado o para otro para acelerar, frenar o girar. Es maravilloso pensar con que poco se consigue que este dirigible vuele tomando sus propias decisiones en base a situaciones que le presentamos.

No se ustedes, pero luego de ver esto, tengo mucho más respeto por la plataforma arduino y sus posibilidades. Además, no puedo dejar de notar lo que puede hacerse con hardware y software abierto más inventiva. ¿ustedes no ven el futuro en pequeña escala aquí?

domingo, 30 de noviembre de 2008

Hardware Abierto

Desde siempre han habido circuitos electrónicos de libre acceso, basta recordar las revistas de electrónica que incluyen varios proyectos por edición. Pero en la actualidad la cosa ha avanzado más aun.

Internet ha dado la capacidad a gente de poner cosas a disposición de otros, y de esta forma no estamos más limitados a lo que podemos poner en una revista, o al nivel de conocimientos al que apuntamos.

Entonces se abren nuevas posibilidades, al publicarse de forma libre y con la libertad de usarlo para lo que queramos (con muchos incluso podemos hacer proyectos comerciales) montones de circuitos más o menos completados, más o menos complejos.

Así es como nace la categoría conocida como proyectos de Hardware Abierto. Es un paso más allá del concepto de Software Abierto, aquí se arman comunidades alrededor del uso, modificación, mejora y rediseño de circuitería de avanzada.

Hay de todo, realmente, desde circuitos de propósito general hasta ultra especializados, pasando por una inmensa mayoría de circuitos expuestos hasta un teléfono celular completo.

Yo soy programador, y admito que en electrónica solo he dado pasos muy pequeños, sin embargo por eso mismo no puedo dejar de maravillarme ante las maravillas que nos ofrecen, dado que nos dan la libertad de comprarlo o de comprar los componente y armarlo nosotros mismos. Incluso tenemos la libertad de desarrollar a partir de ellos, y si queremos, liberar nuestras modificaciones a la comunidad, para agrandar más la lista de dispositivos de hardware abierto y sus capacidades.

Lamentablemente para muchos, la página está en ingles, pero incluso en ese caso, pueden revisar para ver que es lo que hay. Una advertencia, están ordenados alfabéticamente, así que al principio aparecen muchos arduinos. No es lo único que hay.