Tenemos que desarrollar un software de control que funcione en un sistema integrado. El prototipo está hecho en Matlab (usando la caja de herramientas de redes neuronales), y queremos portar el software a C o C++. ¿Sabéis qué librerías o software podríamos utilizar para ello? Embedded matlab puede ser otra opción, pero, por su información en la página web, parece que neural network toolbox no está soportado. ¿Alguno de vosotros ha trabajado con ella antes?
Respuestas
¿Demasiados anuncios?Primero volcarlo a C/C++, instrucciones aquí Las redes neuronales pueden ser bastante intensivas en cálculo, por lo que es necesario conocer la potencia de procesamiento y el tipo de procesamiento que se necesita (¿entero? ¿punto fijo? ¿simd? etc.).
Si necesitas que la red sea entrenable mientras se ejecuta en tu dispositivo embebido, entonces estás atascado desarrollando tu propio sistema ya que el código exportado de MatLab no incluye las porciones de entrenamiento, quizás basado en algunas librerías externas de redes neuronales. Yo empezaría por hacer un perfil de lo que tienes para tener una idea de la clase de dispositivo que tienes delante.
Dicho esto, el beagleboard es probablemente una apuesta segura a menos que lo que estés haciendo sea muy intensivo en computación, también te permitiría usar la mayoría de las librerías linux. He utilizado la biblioteca de FANN para un proyecto hace unos 5 años y fue bueno trabajar con él. No sé si va a compilar para ARM fuera de la caja o si alguna otra biblioteca ha triunfado recientemente.
Si estás planeando portar el software a C/C++ de todos modos, podrías ejecutarlo en casi cualquier sistema embebido con un sistema operativo. Podrías empezar con una placa Linux embebida, ya que tiene compiladores C y C++ gratuitos.
En cuanto al hardware, hay muchas opciones. Echa un vistazo a las respuestas a esta pregunta para algunas sugerencias. También puede considerar la mbed que es barato, tiene un compilador de C gratuito y es fácil de usar si eres nuevo en el mundo de los sistemas embebidos.