Programmation avec le matériel en python
Je commence à avoir un peu marre de la programmation de petits jouets que j'ai fait récemment, et j'aimerais commencer la programmation et de l'interaction avec le matériel.
Le seul problème est que je suis la plupart du temps un python mec qui n'a pas vraiment appris ou utilisés de toute autre langue. Puis-je toujours interagir avec le matériel avec python?
Aussi, quel matériel puis-je interagir avec? Je n'ai pas vraiment de trucs qui traînent que je peux utiliser, donc je dois acheter un kit ou quelque chose. Quelles sont certaines des options bon marché pour cela?
OriginalL'auteur Josh Hunt | 2009-05-28
Vous devez vous connecter pour publier un commentaire.
De l'interaction avec le port série d'un PC est assez banale et il n'y a Python Série de la bibliothèque disponibles. Le roomba robot est contrôlable via un port série. Il y a probablement d'autres robots, mais ce peut être un simple, petite étape pour y arriver.
Personnellement, j'ai beaucoup appris en achetant un programmateur de PIC et faire une simple des circuits pour faire clignoter des LEDs. J'ai déménagé sur le contrôle de ces Photos via un port série et, plus tard, en utilisant le port USB (via libusb). Il y a une grande courbe d'apprentissage là-bas que vous aurez à programmer les PICs en C ou en assembleur, mais vous pouvez obtenir une assez incroyables résultats une fois que vous avez ramassé les bases. Je vous préviens cependant, c'est une pente glissante une fois que vous vous rendez compte combien peu cool gadgets, vous pouvez construire 🙂
+1 pour le microcontrôleur idée. C'est une bonne façon de commencer bas niveau dans un environnement qui est encore overseeable.
Vous pouvez également utiliser la connexion USB de série de clés usb et même USB microcontrôleurs et de toujours garder à leur parler comme à un async serial (EIA232) port.
OriginalL'auteur Jon Cage
Certainement regarder Arduino.
Sur le côté PC, vous pouvez utiliser pySerial à communiquer avec le conseil d'administration via le port USB, comme mentionné ci-dessus
OriginalL'auteur pufferfish
La nouvelle Raspberry Pi appareils ont une bonne gamme d'e/S et Python semble être la plus couramment utilisée de la langue pour eux.
OriginalL'auteur Deanna
essayer BugLab ou OpenMoko
OriginalL'auteur oscarkuo
Vous pouvez utiliser ctypes pour l'interfaçage avec le matériel. Il va vous permettre de remettre en bibliothèques natives, de sorte que vous pouvez l'utiliser pour faire quelque chose qui C faire. C'est bien sûr en supposant que vous souhaitez interagir avec le matériel par l'intermédiaire de votre ordinateur hôte exécutant Python.
J'ai utilisé ctypes pour un couple de projets:
Je l'ai trouvé plutôt facile à utiliser, mais il a permis que je savais déjà, C/C++.
OriginalL'auteur John Montgomery
Acheter un Lego Mindstorm kit. Le langage de programmation facile à vivre, il n'est pas Python -- mais il est assez proche. Et ils sont de vrais robots avec de vrais acteurs et des capteurs.
OriginalL'auteur S.Lott
Beaucoup de pc ont encore des ports parallèles, et un module python existe pour l'interaction avec le port parallèle, bien que je ne l'ai pas utilisé.
Le port parallèle peut-être la façon la plus simple pour commencer à contrôler le matériel, que vous pouvez joindre la plus simple de l'électronique. Juste une led, vous obtiendrez quelque chose de visible tout de suite.
Puis, comme Jon Cage mentionne, vous pourriez obtenir un Programmateur de Pic
Je l'ai utilisé. Veillez à ne pas surcharger un port qui est difficile à remplacer. Aussi, USB ports parallèles ne sont souvent pas. Ils sont codés en dur pour le lecteur port parallèle de l'imprimante.
OriginalL'auteur David Sykes
Le composant logiciel ENFICHABLE noeuds sans fil à http://www.synapse-wireless.com exécuter un sous-ensemble de Python appelé SNAPpy. Vous pouvez utiliser le peek() et poke() built-ins dans le Vif de la langue afin de communiquer directement avec le matériel à l'intérieur de la puce (PWM par exemple). SNAPpy a également intégré-ins pour l'I2C, SPI, et de série, de sorte que vous pouvez contrôler des appareils externes. Il a également intégré-ins pour le bas-niveau I/O, comme readPin() writePin() et readAdc(). Quelque chose comme un EK2500 kit peut être bon de commencer avec. Voir aussi l'utilisateur en ligne forum au forums.synapse-wireless.com
OriginalL'auteur Kevin Banks
Je ne suis pas trop sûr que quelqu'un a mentionné le BASIC stamp. De nouveau, c'est très limité, mais c'est hyper simple de commencer à travailler avec. Il y a quelques autres processeurs jusqu'à là, ils font aussi, mais comme une introduction à l' - je pense que c'est un excellent appareil.
Arduino est trop bonne, et vous pouvez probablement obtenir plus de coup pour vous buck avec cet appareil.
Comme mentionné ci-dessus, j'ai commencé sur le PIC processeurs qui ne sont pas la chose la plus facile à travailler avec, à l'origine (ou jamais vraiment... haha - son debateable), mais j'ai une grande compréhension de la façon dont les choses fonctionnent dans le monde de la micro-contrôleur /matériel interaction.
Bonne chance & si vous avez des questions, n'hésitez pas à demander de suite!!!
OriginalL'auteur Robotman