Edited at

Raspberry Pi3でキオスク端末(自動ログイン+ブラウザ起動)を作る。

More than 1 year has passed since last update.


はじめに

 余っているモニターと、持て余しているRaspberry Piを使って情報端末:キオスク端末を作ろうと思ったので、その作業メモ。


今回使用したもの


  • Raspberry Pi 3 model B

  • micro SDカード 8GB

  • USBキーボード & USBマウス

  • RASPBIAN STRETCH WITH DESKTOP




作業


Raspberry Pi のセットアップ


  1. RaspberryPi用イメージをダウンロード。


    • 30分くらいかかるので事前にダウンロードしておくほうが良い。



  2. ダウンロードしたイメージをmicro SDカードに書き込む。


    • WindowsならWin32 disk Imagerなどを使うと便利。

    • 10MB/sで書き込む場合、10分くらいかかります。



  3. Raspberr Piの電源を入れる

  4. Terminalを開いて、インストール済みパッケージのアップデートをおこなう。


    • sudo apt-get update

    • sudo apt-get upgrade




ブラウザの自動起動



  1. Performancesメニューの中にある、Raspberry Pi Configurationで自動ログイン設定する


    • Systemの変更&確認する場所は下記


      • Hostname を変更する

      • Boot が "To Desktop"である

      • Auto Login のチェックボックス「As current user」がONになっている
        image.png






  2. 起動時に~/.config/chromium/Singleton*を削除するようにcrontabに追記


    • @reboot rm -rf ~/.config/chromium/Singleton*


    • ~/.config/chromium/Singleton*、正常に終了できなかった場合に残る。

      残っていると起動時にメッセージが表示されてしまう。




  3. マウスがしばらく動いていないと、マウスカーソルの表示を消すツールunclutterを入れる


    • sudo apt-get install unclutter



  4. ~/.config/lxsession/LXDE-pi/autostartを編集する



~/.config/lxsession/LXDE-pi/autostart

@lxpanel --profile LXDE-pi

@pcmanfm --desktop --profile LXDE-pi
@xscreensaver -no-splash
-@point-rpi

+@xset s off
+@xset -dpms
+@xset s noblank
+@unclutter
+@chromium-browser --noerrdialogs --kiosk --incognito http://localhost/

@chromium-browserhttp://localhost/を表示させたいURLに書き換える


  • その他のオプションについて


    • --noerrdialogs : エラーを表示させない

    • --kiosk : 全画面モードで表示させる

    • --incognito : シークレットモードで起動させる




サービスを自動起動させる


/etc/systemd/system/myprogram.service

[Unit

Description= My maked program
After=syslog.target

[Service]
Type=simple
WorkingDirectory = /home/pi/myprogram
ExecStart = home/pi/myprogram/programrun
Restart = always
TimeoutStopSec=5

[Install]
WantedBy = multi-user.target



  1. 上記ファイルを/etc/systemd/system/に作る。

  2. あとはsystemctlを使って操作してみる


    • 実行する sudo systemctl start myprogram

    • 停止する sudo systemctl stop myprogram

    • 起動時に実行させる sudo systemctl enable myprogram

    • 起動時に実行させない sudo systemctl disable myprogram




完了後の確認事項


  • 再起動時、期待通りに自動起動するか確認。

  • 実際に再起動してみる

  • USB電源を強制切断してみる

  • 外部に公開する前に、ログインするユーザー(pi)のパスワードを変更すること。


最後に

 簡単にやりたいことができるのがRaspberry Piのいいところですよね。これからも、いろいろ作っていきたい。


参考