Siguiente: La programación de los Superior: Programación de LEGO MindStorms Anterior: Programación de LEGO MindStorms |
Antes de comenzar a analizar las herramientas de programación para los LEGO Mindstorms conviene hacer una pequeña recapitulación sobre el estado de la robótica a nivel comercial de forma que se puedan comprender las razones del éxito que ha supuesto este ``juguete''. Se puede afirmar que el LEGO Mindstorms constituye uno de los primeros intentos de difundir los robots a gran escala. De hecho se pueden considerar equivalentes en cuanto a difusión, a lo que fue la familia de los ZX de Sinclair en su día en el mundo de los ordenadores. Al igual que ocurrió entonces, donde habían existido computadores que se vendían en forma de kit, como por ejemplo el MIT Altair 8800 (basado en el intel 8080) [5], han existido otros robots que han tenido difusión comercial, como por ejemplo el RugWarrior[2], quizá el más conocido. Este robot, que todavía se comercializa, está basado en el chip 68HC11 de Motorola, uno de los más extendidos en el mundo de la electrónica aplicada al control y de la robótica. Otro ejemplo también basada en el chip 68HC11 es la tarjeta Handyboard, diseñada específicamente para la construcción de robots, o la tarjeta española de Mibrobótica que usa el mismo chip. De igual forma, han existido y siguen apareciendo, muchos otros robots ``en kit'' basados en este y en otros chips.
Todos estos robots comparten con los primeros ordenadores el ``espíritu de garaje'', es decir, el programador tiene que montar su hardware y luego hacer sus programas. Este espíritu es atractivo para muchos de nosotros, pero a la vez hace que muchos potenciales usuarios queden fuera del mundo de robótica por la complejidad y dedicación que implica. En general tener que usar un soldador, un polímetro, etc. son condiciones inaceptables para el gran público.
Por supuesto, existen robots que se venden como productos comerciales finales. Estos robots generalmente están destinados a la investigación y su precio es tan elevado (casi siempre por encima de los 6.000 Euros) que los hacen inaceptables para el gran público. Ejemplos típicos de estos robots son los de Real World Interface con robots como el B21, Magellan o la familia ATRV; o los de ActiveMedia Robotics con productos como el Pioneer, Peoplebot, o Amigobot. En esta categoría de robots para centros de investigación también hay algunos más pequeños y asequibles como los suizos de K-Team (Khepera y Koala) o el australiano Eye-Bot, pero con el coste de ser productos menos profesionales.
El siguiente estadio tras los garajes en la evolución del mercado de los robots dirigido al gran público es el paso del kit de auto-montaje, al producto final, el equivalente al del ZX en el mundo de los ordenadores. En este paso el caso de los LEGO Mindstorms puede resultar engañoso, de hecho es un producto comercial que precisamente está pensado para que los usuarios ``construyan'' sus modelos. Sin embargo, el aspecto electrónico del producto es el de producto final, es decir, no hay que soldar ningún elemento, simplemente comprar unas pilas y encenderlo. De la misma forma la parte de programación del robot es un producto final, se entrega un entorno de programación completamente visual muy orientado a los niños, que hace que cualquier usuario, sin ninguna formación informática pueda programar fácilmente el robot.
A la vez que los LEGO Mindstorms han aparecido otros robots destinados al consumo. Por ejemplo, el RL-500 diseñado para cortar el césped, Cye capaz de pasar la aspiradora o de llevar una bandeja de una habitación a otra, la mascota de Sony, el famoso perrito AIBO, etc. Sin embargo, ninguno de ellos ha alcanzado los miles de unidades vendidos por LEGO, ni ha conseguido la enorme atención de la comunidad del software libre que ha conseguido el MindStorms.
Una vez analizada brevemente la situación de la robótica en el aspecto comercial, la siguiente sección analizará las alternativas de programación de los Lego Mindstorms bajo GNU/Linux, que es el objetivo de este artículo.