Cómo construir mi propio sistema integrado para un quad-copter y cuál es el mejor lenguaje de programación para usar

C es el estándar de oro para cualquier cosa en tiempo real y / o incrustada (aunque las restricciones de hardware del pasado se han relajado considerablemente, por lo que es posible incluso usar lenguajes con grandes tiempos de ejecución y un GC para algunos proyectos en estos días). Aún así, escribir 40-100 KSLOC (al menos) en C es increíblemente doloroso, por lo que le recomiendo que explore algunas de las DSL que existen.

Tales como Ivory [1].

Ivory fue diseñado para brindarle enormes garantías de seguridad al tiempo que conserva el alto grado de control de C, y debido a que es un eDSL de Haskell, tiene muchas de las ventajas de Haskell.

Lo mejor de todo es que fue creado específicamente para construir software de drones [2], por lo que tiene una gran demostración de lo que se puede hacer con Ivory en el dominio exacto de su problema.

[1] http://ivorylang.org/tower-overv…

[2] http://smaccmpilot.org/

More Interesting

Cómo practicar la programación C y C incrustada

¿Dónde puedo encontrar un mini proyecto de sistema integrado con código fuente?

¿Cómo debo prepararme para comenzar una maestría en sistemas embebidos? ¿Cuál es el conocimiento básico que debo tener antes de comenzar?

¿En qué escenarios se puede preferir C ++ sobre C en el desarrollo de sistemas integrados?

¿Qué es Embedded Computer Vision y en qué se diferencia de los sistemas embebidos?

¿Puedo legalmente aplicar ingeniería inversa a un controlador de dispositivo propietario y lanzar un reemplazo de software de código abierto gratuito?

¿Existe una variante incorporada de Lisp / Scheme que pueda usarse en robótica en tiempo real?

¿Qué microcontrolador sugeriría para un principiante en sistemas integrados, siempre que conozca la codificación básica de ensamblaje en el procesador ARM7TDMI?

¿Qué examen es necesario para hacer un doctorado en sistemas integrados en Alemania?

¿Cuáles son los pros y los contras de little-endian versus big-endian?

He completado una capacitación integrada en la que aprendí a programar controladores 8051, AVR y ARM. ¿Es este conocimiento suficiente para conseguir un trabajo en la industria principal? Si no, ¿qué más debo aprender?

¿Cuál es la relación o el uso de procesadores multinúcleo en sistemas embebidos?

¿Cuáles son algunos de los temas de proyectos principales del año final fáciles e impresionantes en sistemas embebidos?

¿Cuál tiene mejor alcance? ¿Pruebas o desarrollo?

¿Qué es "más que Moore"?