Primero, tengo una buena noticia para usted: la robótica es tanto sobre software como sobre hardware. No necesita hacer el robot: algunas personas con un buen historial en EE o ME lo harán mejor que usted, pero para hacer que este hardware sea lo suficientemente bueno para sus necesidades, necesita un software complejo que se ocupe de todo el sensor y el actuador, fusione su información para dar sentido a la información a un nivel semántico y luego convertirla de nuevo en comandos para los actuadores. Y créanme, ya sea que lo vean en la decisión de bajo nivel o en la toma de decisiones de alto nivel, esta es una tarea difícil.
Mi experiencia también está en CS: Verificación y validación, Representación del conocimiento e Inferencia fueron los temas que estudié más a fondo hasta que me moví en arquitecturas robóticas para mi doctorado.
El software robótico es un gran dominio que se reúne desde diferentes campos relacionados con CS.
La más natural y, a menudo, directamente aplicable es la teoría de control: en este dominio intenta implementar una Ley de control que cerrará el bucle de bajo nivel entre la información que tienes (posición de 6 DOF y velocidad de un drone) en los comandos que Lo mejor es permitir seguir un camino. Hay una gran cantidad de optimización lineal involucrada aquí y es necesario tener una buena formación en matemáticas. Cualquier robot que se mueva, ya sea un vehículo o un brazo, tendrá en su nivel más bajo un circuito de control que se basa en este campo.
- Cómo aprender durante al menos 4 horas seguidas
- Cómo dominar la teoría de la probabilidad.
- ¿Qué aprendemos del comercio electrónico?
- ¿Cuáles son algunas de las lecciones más importantes que quiere que sus hijos aprendan de usted y de su vida hasta ahora?
- ¿Cuáles son las cosas más importantes que deben considerar las personas que aprenden inglés?
El procesamiento estocástico y el razonamiento están ahí también. Como los datos de detección a menudo son ruidosos y el resultado de los comandos es incierto, usar una representación estocástica en el nivel intermedio, ya sea para anclar la percepción ruidosa en conceptos fundamentados o decidir la acción más arriesgada / más prometedora para evitar el fracaso / alcanzar un objetivo local es una necesidad. Inteligencia Artificial: Programando un Coche Robótico, el curso de S. Thrun en su propio sitio web es todo sobre esto: todas las técnicas que presenta están relacionadas de una manera u otra con el proceso gaussiano y la inferencia estocástica. Este curso también está dirigido a personas con un buen historial en CS, por lo que debe sentirse cómodo con él.
Tener cualquiera de estos 2 te hace bien equipado en la forma en que la industria percibe un robot automatizado / “autónomo” en la actualidad. Ir más allá requerirá que explore los problemas de toma de decisiones de alto nivel o la arquitectura de software para sistemas robóticos. La toma de decisiones de nivel superior implica generalmente algunos conceptos presentados en el curso de Thrun a un concepto más abstracto. Por ejemplo, la planificación del camino que presenta es bastante simple, ya que un automóvil tiene relativamente pocos grados de libertad. Si intentas hacer una planificación de la trayectoria en un sistema más complejo, como un brazo robótico o incluso un robot humanoide, necesitas explorar una técnica más avanzada. El libro de Steve Lavalle es un buen material para él (Planning Algorithms / Motion Planning que está disponible gratuitamente en el enlace). sin embargo, tenga en cuenta que este es un material avanzado frágil y no trata el problema de la integración de dichas técnicas en un circuito de control.
Mi preferencia personal se dirige a la planificación y ejecución de tareas de nivel superior, ya que es mi propio campo include Esto incluye la planificación clásica, preferiblemente con representación de tiempo y recursos o planificación probabilística que se ocupa de representaciones similares a la proporcionada por Thrun. La mayor parte del trabajo allí está relacionado con los algoritmos de búsqueda, tal vez un poco de teoría de juegos y mucha arquitectura de software. Sin embargo, esto todavía está bastante lejos para ser realmente útil junto con la experimentación a nivel de doctorado.
Espero que esto ayude.
EDITAR: Necesito mencionar que el campo que di está relacionado con mis propios intereses con un nivel de abstracción creciente desde el bucle de control de bajo nivel hasta la toma de decisiones de alto nivel con un fuerte énfasis en la toma de decisiones. Hay otros campos más relacionados con la percepción que son relevantes para el robótico: procesamiento de señales, aprendizaje automático, fusión de información (estocástica o de otro tipo) que puede relacionarse con SLAM y la lista podría seguir y seguir mientras los conozco en el nivel alto I Prefiero dejar que otros den consejos más precisos.