java - sencillos - robot lego mindstorms ev3
¿Dónde comenzar con la programación de robótica? (10)
Agregaré un voto para los robots LEGO solo para comenzar, pero ¿cómo estás como programador? Si quieres salir por tu cuenta, puedes cargar LeJOS en el "ladrillo" LEGO (sabrás que eso significa cuando lo mires) y ejecutar tus propios programas Java en tu computadora que interactúen / controlen el LEGO robot directamente.
Además, si usted es un programador, puede consultar el Proyecto de código abierto de High Level Logic (HLL). El código aún no alcanzó la versión 1.0, pero había una demostración de robótica en el prototipo y un LEGO con LeJOS esperando en las alas.
LEGO Mindstorms NXT Robots (leJOS) - (El gráfico dinámico en el artículo solo funciona correctamente en Firefox). http://highlevellogic.blogspot.com/2010/10/lego-mindstorms-nxt-robots-lejos.html
Ok, me interesó la robótica por un tiempo y tenía un proyecto en mente. Construir un pequeño vehículo a control remoto-robot / vehículo-robot no tripulado. Con suerte, con la capacidad de leer datos de dispositivos sensoriales (gps, termómetros, etc.) y escribir los datos en algún tipo de dispositivo. La (s) idea (s) había estado (n) en un segundo plano hasta que acabo de leer el siguiente article .
Así que mi pregunta es esta. ¿Dónde debería comenzar? No tengo absolutamente ninguna experiencia en esto aparte de algunas búsquedas en Google y mi idea de proyecto. Me gustaría jugar con la programación de las placas de microcontroladores. Conozco algunos lenguajes Java .net y algunos C.
¿Alguna ayuda sobre dónde comenzar?
¿Cómo se diseña el robot? ¿Qué pasos se siguen de principio a fin?
Gracias.
Dado que quiere un vehículo controlado a distancia capaz de moverse, obviamente necesitará algún tipo de motor. Asumiré que tendrá una locomoción diferencial, ya que es la más simple de construir y muy fácil de controlar.
La opción más simple es obtener un par de servos de pasatiempo continuo. Son baratos ($ 10 y más) y sencillos de conducir a través de PWM (el ciclo de trabajo controla la velocidad). Si desea aumentar un poco el nivel, puede obtener un par de motores y codificadores de CC. Necesitará un circuito adicional para conducirlos, pero puede comprarlos listos.
Si no quieres que esté atada, necesitarás también baterías y algún tipo de radio a bordo. Si estás de acuerdo con no hacer todo desde cero, WiFi es la solución más simple en mi opinión, ya que no necesitas ningún equipo adicional en la computadora que estás usando; sin embargo, tiende a limitar su "computadora" y las opciones de software (querrá ejecutar, por ejemplo, Linux).
Querrá una MCU / placa que tenga:
- PWM, para conducir sus servos / motores
- A / D si tienes sensores analógicos
- Un montón de E / S digitales para otras cosas
- WiFi incorporado o una forma de conectar su tarjeta WiFi (USB, mini-PCI)
- SPI / I2C y UART para varios periféricos
Tener señales de host USB tiene la ventaja adicional de que es fácil conectar cámaras baratas.
Algo como el Roboard encaja perfectamente (también venden una mini tarjeta wifi PCI). Contiene mucha potencia informática (y a diferencia de muchas de las tarjetas más simples, ¡tiene una FPU!), Tiene muchas opciones de conectividad, incluido USB, y viene con una biblioteca de espacio de usuario para controlar los periféricos. (Descargo de responsabilidad: no lo he probado yo mismo)
No es el hardware más barato que puede obtener, pero debería tener espacio para crecer si desea probar partes de robótica más intensivas en informática (como SLAM, visión artificial y planificación del movimiento). En el lado positivo, no tienes que construir un programador / depurador para ello.
Si prefiere comenzar de manera simple, obtener una placa más económica como Arduino que alguien ya mencionó podría ser una mejor opción. Usar un simulador también es bueno para probar los aspectos del software antes de invertir en hardware.
Dónde comenzar en el lado del software depende de lo que le interesa.
El Arduino es una plataforma muy popular entre los aficionados. Básicamente es una placa programable con varias entradas y salidas. Recomiendo comenzar por su facilidad de uso y una gran comunidad de soporte .
Arduino es una plataforma de creación de prototipos de electrónica de código abierto basada en hardware y software flexible y fácil de usar. Está dirigido a artistas, diseñadores, aficionados y cualquier persona interesada en crear objetos o entornos interactivos
Varias personas han hecho tutoriales sobre la construcción de robots con un Arduino como controlador. Este es muy bueno.
Lego Mindstorms es un sistema sorprendentemente robusto, y le permite enfocarse más en lo que realmente le gustaría lograr. Hay sistemas que te permitirán programar en algo más que el lenguaje visual que viene con el kit, que yo preferí.
O puede obtener un kit de inicio de VEX , que incluirá un microcontrolador PIC o Cortex, junto con un sistema de programación. El kit VEX es como un Erector con cerebros y motores. :-)
Microsoft tiene Robotocs Developer Studio .
Obtuve este libro y fue muy útil. Bastante barato también.
Poca configuración para instalar, pero esto debería ofrecerle una gran cantidad de información sobre lo que desea aprender, y ofrecer una práctica genuina para leer los sensores robóticos, interactuar con sus entornos, etc.
http://playerstage.sourceforge.net/
Ofrecen un Marco de Java (separado del Marco oficial compatible), que tiene su propia documentación de Sun Java.
Si está interesado en la programación, puede comenzar con algo como Lego MINDSTORMS . Si está más interesado en el lado de la electrónica, es posible que desee verificar algunos de los kits en Parallax y The Robot Store .
Encontrarás una combinación de idiomas y plataformas para elegir tus idiomas favoritos y encontrar algo en tu rango de precios. La robótica puede ser muy divertida (y consume mucho tiempo).
Por cierto, puedes hacer un robot genial con solo un auto RC y un BASIC Stamp . Y si tiene un puerto paralelo en su computadora, puede conectar su computadora al auto RC para obtener aún más potencia.
Si quieres hacerlo bien y desarrollar habilidades que te sirvan en la industria de la robótica en el futuro, recomiendo probar ROS. ROS, el "Robot Operating System" no es realmente un sistema operativo en absoluto (de hecho, comúnmente se ejecuta en Ubuntu). Es un sistema de comunicación entre procesos, un conjunto de herramientas de creación y depuración, y una biblioteca increíblemente grande de controladores y algoritmos excelentes.
Para comenzar sin un robot físico, puede comenzar con cualquiera de varios robots simulados en el simulador Gazebo. Esto le permitirá comenzar con el desarrollo de algoritmos y tal sin una gran inversión de tiempo o dinero. Tutoriales y guías de inicio se pueden encontrar en ros.org.
¡Buena suerte!
Robocode es un juego de simulación de robótica, pero es un buen lugar para que comience un desarrollador de Java.
También puedo recomendar los libros Linux Robotics: Programming Smarter Robots y Robot Builder''s Bonanza para obtener excelentes guías de inicio y finalización para construir y programar robots.
Myke Predko también tiene un buen libro llamado Programming Robot Controllers .