1
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

RasPI + Processingで構築する展示環境

Posted at

作品展示のための環境構築

メディアアートやインタラクティブな作品を展示会場で展示をする場合、面倒なのが朝の起動と夜のシャットダウンです。作者が会場に滞在できる場合は自分でできますが、他の人にお願いするのもアレなので自動化するのが確実です。

環境

Raspberry PiにUbuntuをインストールしてProcessingをインストールします。Export as Applicationで単独で動くアプリとして書き出しておきます。このアプリをRasPiの起動時に起動して一定時間経過後にshutdownするようにします。
起動は物理的なタイマーを使用します。例えば(https://www.monotaro.com/g/06053445/)
こんなタイマーでセットした時間に電源が入るようにします。

書き出したアプリは以下の場所にあるとします。

/home/USER/Document/Processing/displayProgram/linux-aarch64/displayProgram

起動から決められた時間後にshutdownするようにセットしアプリを起動するためのスクリプトを作成します。
~/にautoStart.shを作成します。

$ cd ~/
$ vi autoStart.sh

autoStart.shの中身は次のとおりです。

autoStart.sh
#!/bin/sh
shutdown -h 720
/home/USER/Document/Processing/displayProgram/linux-aarch64/displayProgram

これで720分後(12時間 x 60分=720分)後にshutdownするようにセットします。そしてProcessingで書き出したアプリを起動します。タイマーで朝8時に起動すると午後8時にshutdownされます。
権限を変更して実行権限を追加しておきます。

$ chmod 755 autoStart.sh

このシェルスクリプトを実行して起動するか確認してみます。

$ ./autoStart.sh

起動が確認できたら.bashrcを編集してこのスクリプトを追加します。

$ vi .bashrc

最後に以下の一行を追加します。

.bashrc
/home/USER/autoStart.sh

これでターミナルを起動するとautoStart.shが動きます。
次にUbuntuが起動した時にターミナルが起動するようにします。

$ vi .config/autostart/gnome_terminal.desktop

でファイルを作成して以下の内容を入れます。

[Desktop Entry]
Exec=gnome_terminal
Type=Application

以上で完了です。
RasPIを起動しUbuntuが起動した後にterminalが開きautoStart.shが実行されます。
指定された時間が経つとshutdownです。

ただ一つ問題、Processingのアプリで

Processing
setup(){
    fullScreen(P2D);
    noCursor();
    ...
}

としてマウスカーソルを非表示にしている場合でもマウスカーソル起動から全く動いてないとカーソルが表示されたままになってしまいます。マウスをterminalから動かす方法もあるようですがUbuntuの新しいバージョンでは対応してないらしいです。そこで「マウスジグラー」とか「マウスムーバー」とか呼ばれるものを使います。USBに差してマウスの振りをしてカーソルを動かすものらしいです。
例えばこんな商品があります。https://amzn.asia/d/0Bq5BHs

以上でした。

1
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?