Piは、主にPython用の教育用デバイスとして宣伝されています。これに沿って、PythonからGPIOにアクセスする人々のオンラインでの素晴らしい例がすでにいくつかあります。
ただし、ほとんどの市販の(自作ではなく)周辺機器にはUSBインターフェイスがあります。標準のDebian / Pythonカードを使用してこれらにアクセスするにはどうすればよいですか?Pythonライブラリはありますか?良いチュートリアルはありますか?
Piは、主にPython用の教育用デバイスとして宣伝されています。これに沿って、PythonからGPIOにアクセスする人々のオンラインでの素晴らしい例がすでにいくつかあります。
ただし、ほとんどの市販の(自作ではなく)周辺機器にはUSBインターフェイスがあります。標準のDebian / Pythonカードを使用してこれらにアクセスするにはどうすればよいですか?Pythonライブラリはありますか?良いチュートリアルはありますか?
回答:
USBは本質的には単なるシリアル通信デバイスです。データの通信方法は標準ですが、そのデータの構成はデバイスに依存します。コントローラーの製造元は、「do this」または「this is happening」という形式のコマンドとメッセージで構成されるAPIを発明しました。
このAPIを知っていれば、通信できるはずです。2つの役立つリンクがあります
https://walac.github.io/pyusb/
貴重な情報源はUSB Completeです
私が今日(2014年10月5日)に行ったバニートレイルの誰かにこれを貼り付けます。注:これは非常に経験の浅いPoVからのものであるため、多くの人にとってこれは明らかかもしれませんが、私にとってはそうではなく、理解するのに時間がかかりました。
単純なレーザーバーコードスキャナーをUSB経由でRaspberryPi B +に接続しようとしていますが、文字通りLinux / RBPiなどの経験はありません。最終的にGoogle検索でこのページに移動しました。
2012年6月15日にPyUSBのリファレンスを使ってDavid Sykesが提供した答えに到達し、そこから見つけました Microsoft Kinectのハッキングの一環としてADAFruitのInstalling Python&PyUSB。
私のPCにあれば、すぐにそれを理解できたと思います。しかし、RaspberryPiを介してこれを行うと、本当にループが発生しました。このガイドを読むと、ダウンロードできないものや、ファイルなしで彼らが言うことを単純にマッシュできない場所で、私がやったのと同じ障害にぶつかるでしょう。それでは、ダウンロードできない場合、どのようにしてファイルを取得しますか?[これらのファイルをダウンロードする方法があるかもしれませんが、私のPiではソースフォージでエラー400が表示され続け、MidoriはTarまたはZipファイルをダウンロードしませんでした。]
WalacのPyUSBを参照するすると、最初にLXTerminalに入ってlibusbを取得できますが、次のコマンドでは、PyUSBのファイルがあり、ディレクトリからそれらを見つけることができると想定しています。
だから、ここにRaspberryPiにLibUSBとPyUSBをインストールするための私の変更された手順があります:
LXTerminalに入力したコマンドの順序:
sudo apt-get install python libusb-1.0
Yで確認
sudo apt-get install python-pip
それから
sudo pip install --upgrade pyusb
注:これの一部は、これまでに行ったことに応じてRBPiに既に存在する場合がありますが、コマンドを再度実行しても問題はありません。ファイルが最新であることがわかりました。
最後のコマンド「--upgrade pyusb」により、次のことがわかりました。
Downloading/unpacking pyusb
Downloading pyusb-1.0.0b1.tar.gz (44Kb): 44Kb downloaded
Running setup.py egg_info for package pyusb
Installing collected packages: pyusb
Running setup.py install for pyusb
Successfully installed pyusb
Cleaning up...
それで、私はそれがすべて良いと思うと私は私のチュートリアルに戻ることができます。
繰り返しますが、標準のNOOBSインストールであるRaspberryPi B +を使用しています。ほとんどがモデルBで作成されたADAFRUITのLEARNシステムなどのソースをほとんど参照しましたが、これまでに行ったことはすべてB +で動作しています。
うまくいけば、その情報がその同じ時点で立ち往生している他の誰にも役立つことを願っています。