SyntaxHigh

Sunday, March 23, 2014

Making a simple GUI for debugging Arduino programming

Blender で python を編集しているとエラーが出るたびに落ちまくってデバッグがやりにくい。PyQt5 を使ってデバッグ、テスト用のGUIを作ることにしました。
  • シリアルポートをリストし、選択してそのポートを mydevice として initialize.
  • リセットをボタン一つでする。
  • モジュールのユニットテスト
  • 隣同士のモジュールの干渉テスト
これだけあればとりあえずユニットテストはできます。。やってしまえば簡単なことなのでもっと早くやればよかった。



PyQt5 の導入はそれなりに面倒だったけど、Qt の signal/slot や独自のスレッディングは割と使いやすいので気に入っています。

python と qt を同時に動かすのですが、パッケージ自体は python を認識してインストールしてくれるので、PYTHONPATH 等の変数だけ気を付けてやればうまく動きます。
  • 64bit, pythn 3.3 で揃える。
  • 環境変数等設定、windows では PYTHONPATHにPyQTのPathを設定する
    • これをやらないと pyscripter に適用されない。
  • それに合わせて Blender も 2.7 (python3.3) にアップグレード
シリアルの信号で、MOSFET のスイッチを入れるには、それ専用のプロトコルを定義しないといけない。コマンドを定義するのは嫌だったが、なんらかのコマンド+Argument という風にした方がいいだろう。

Qtは以前仕事で使ったことがあるのだが、pyqt は初めて。qt designer でデザインするほどでもないので、ui の定義はコードでかく。