60 votes

Est-il possible de "compiler" du code Python sur un Arduino (Uno)?

J'ai la robotique type de projet avec un Arduino Uno, et pour faire une longue histoire courte, je suis à expérimenter avec certains algorithmes d'IA. Cependant, j'ai besoin de mettre en œuvre de haut niveau de la matrice des algorithmes qui serait assez simple en utilisant NumPy/SciPy, mais ils sont un véritable cauchemar en C ou C++. Même avec les bibliothèques, c'est juste devient ridicule.

Est-il possible que je peux faire ce projet en Python? Je crois que j'ai entendu quelque chose à propos de la Méga avoir cette capacité, mais j'ai une Uno, et de le remplacer n'est pas une option à ce stade (qui permettrait de définir le projet de retour, un peu.) Aussi, j'ai entendu des choses sur l'utilisation de Python pour communiquer à l'Arduino via le port USB, mais je ne peux pas le câble USB pendant que la chose est en cours d'exécution. J'ai besoin d'être en mesure de télécharger le programme et être fait avec elle.

Existe-il des options là-bas, ou ai-je juste atteint une impasse?

22voto

Mark Streatfield Points 1643

Il y avait une conférence sur l'utilisation de Python dans la robotique cette année PyConAU appelé Ah! Je vois que vous avez la machine qui va 'BING'! par le Dr Graeme Croix.

La seule option qu'il a recommandé pour l'utilisation de Python sur un microcontrôleur conseil d'administration a été PyMite qui, je pense, va également par le nom de Python-Sur-Un-Puce.

Il a été porté sur un large éventail de cartes - en particulier, il mentionne l'Arduino Mega qui vous dit n'est pas une option pour vous, mais il est possible, il est pris en charge sur les autres cartes Arduino.

Cependant, parce qu'il est un "piles non fournies" version de Python, il est plus que probable que vous avez un réel problème pour faire numpy/scipy etc et en cours d'exécution.

Comme d'autres affiches ont suggéré, la mise en œuvre en C peut-être le chemin de moindre résistance.

Mise à jour: encore une fois, pas spécialement pour Arduino, mais pyMCU ressemble à fournir python sur une puce. L'auteur affirme qu'il peut envisager l'élaboration d'un Arduino version de pyMCU si il ya suffisamment d'intérêt.

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X