Tkinter (Python)でサーボモータの操作パネルを作る

NO IMAGE

以前、Qt4でサーボモータ用の操作パネルを作ったことがありますが、環境を変えるたびにQt4をインストールするのも面倒なので、
Pythonに標準で入っているTkinterというのもを使った同様の物を作ってみました。

https://oki-lab.net/entry/2017-08-26-204410

操作自体はUbuntuで行って、モータはArduinoで動かします。PCとArduinoはシリアル通信としています。

PC側プログラム

PC側のプログラムはスライダをモータの数だけ準備して、モータの角度をスライダで指定するようになっています。
コンポーネントはPanelItemというクラスにして、for文で追加できるようにしました。なお、今回のプログラムはpython2では動きますが、python3だと色々変える必要があるようです。

Arduino側プログラム

Arduino側はシリアル通信でモータ番号と角度を受信してそのとおりに動かすようになっています。受信した文字列の最初の一桁がモータの番号でそれ以降が角度になっています。

動作

実際の動作は下記のとおりです。Tkinterというものの存在を初めて知って、ググりながら見様見真似で作った割にちゃんと動いてくれたので満足です。