Que serait une bonne langage de programmation (ou un ensemble de bibliothèques C ++) pour l'interface avec des composants électroniques (moteurs pas à pas, etc.)?

StackOverflow https://stackoverflow.com/questions/700025

Question

Je ne suis pas un gars de l'électronique, donc je ne pourrais pas être en mesure d'expliquer précisément ce que je dois. Ceci est une question d'un ami me pose.

Ce que mon ami recherche est un langage de programmation qui lui permettrait de:

  1. Interface avec le matériel (via les ports série et USB).
  2. Ecrire du code multithread.
  3. Jeter ensemble UIs très rapidement.
  4. Port son code à Linux et OS X aussi facilement que possible (d'accord, voici ce I voulez).

Il est construit un outil pour un groupe local qui enseigne la robotique très de base pour les étudiants. En ce moment, il utilise C ++, mais écrire le code de l'interface utilisateur en C ++ est pas exactement une tâche amusante. Il utilise aussi des bibliothèques spécifiques à Windows pour (1), ce qui signifie que je ne peux ni essayer son code, ni l'aider à corriger les bugs (j'utiliser un Mac).

EDIT:. Les bibliothèques pour Python / Ruby sont les bienvenus

Était-ce utile?

La solution

Vous pouvez jeter un oeil à la Traitement et outils noreferrer de câblage. Le traitement est un environnement pour la construction d'interfaces utilisateur et câblage est un environnement pour la programmation des cartes E / S comme la carte de câblage du même nom, sa cousine plus simple Arduino et périphériques connexes. Les panneaux de câblage communiquent généralement avec un ordinateur de bureau via une liaison série ou USB avec émulation série.

Autres conseils

Java peut être une bonne option ici. Il a des bibliothèques disponibles pour le filetage de bas niveau et les API de communication, et il doit effectuer assez bien pour une boucle de contrôle. Je sais qu'il a une bibliothèque Communcations port série, et je crois qu'il ya quelques bibliothèques USB open-source. Pour l'interface utilisateur, vous pouvez utiliser l'API graphique Java 2D, ou pour une interface utilisateur plus avancé, vous pouvez essayer le peu négligé Java3D ou de nouvelles bibliothèques JOGL. Swing a ses défauts, mais il est en fait assez facile à utiliser pour la fabrication de formes de base UIs.

Si vous voulez facile et beaucoup de matériel pris en charge, je pense que le mieux est Labview. Il est toute la programmation graphique (blocs de glissement, des connexions) et de nombreux périphériques USB (DIO par exemple) ont un soutien Labview. support série est intégré. Il peut faire UIs assez facilement (il est principalement destiné à un contrôle GUI).

Ruby et chaussures (GUI) travailleraient bien, particulièrement bien adapté à un environnement d'apprentissage / multi-plateforme

Modifier - Je l'ai trouvé (son un peu difficile à trouver):

http://shoooes.net/

ACE ( http://www.cs.wustl.edu/~schmidt /ACE.html ) est une plate-forme indépendante de bibliothèque C ++ (pas d'UI), QT ( http: / /www.qtsoftware.com/products/ ) est une bibliothèque d'interface utilisateur multi-plateforme pour C ++. L'accès au matériel est malheureusement quelque chose qui est toujours dépendant de la plateforme)

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top