【Raspberry Pi】 ラズパイで卓上時計を作る!AIを使って簡単制作【自由研究/DIY】

Raspberry Piを使って卓上時計を作ってみました。
はんだ付けなしで作れるので気楽にできる電子工作です。
DIYや自由研究(工作系)にいかがでしょうか。

用意したもの
Raspberry Pi と電源関係品
まずRaspberry Pi本体と電源です。
えりるさんは余っていたRaspberry Pi 3 Model B+(メモリ1GB)を使いました。
今卓上時計用に買うならRaspberry Pi 4 model B (メモリ 1 GB) が安くておすすめです。

合わせて電源も用意する必要があります。PD対応のUSB-Cの充電器で15 W以上の出力があるものを選んでください。以下のエレコムの充電器は安くておすすめです。
おすすめのラズパイと対応充電器は以下の記事でまとめていますのでこちらもご覧ください。

Raspberry Piのケース
ラズパイは基盤むき出しなので何かしらのケースに入れて保護したほうが良いと思います。
ただ、今回使用するモニターは裏側が基盤むき出しなので金属ケースは避けたほうがいいです。
以下のケースはプラケースなので気にする部分がねじのみです。
7インチ タッチパネルモニター

時計を表示するための小型モニターです。USB-Cでラズパイから直接給電できます。
USB-A to Cケーブル、micro HDMI to HDMI変換コネクタは付属しています。
えりるさんはタッチスクリーン版にしましたが、7インチだとかなり小さいのでタッチ操作は結構厳しかったです。
一方で、キーボードなしで操作できるので時計の起動だけをする場合は便利でした。
非タッチ版のほうが少し安いのであとは好みですね。どちらでもよいと思います。
USB-A から Cのケーブル(モニター給電用)
モニター給電用のUSB-A から Cのケーブルです。
モニターにもケーブルは付属しているのですが、少し長くて取り回しが悪いので短いものを用意しました。
USB-C U字アダプタ (モニター給電用)
見栄えをよくするためのU字アダプタです。
コネクタが飛びだしているとかっこ悪いのでU字アダプタでできるだけ隠しました。
短いHDMI のケーブル
30 cmの長さで細いHDMIケーブルです。モニターにも付属してはいますが、長くて太くて取り回しが悪いのでこちらを調達。
モニターの真後ろにラズパイを置く想定なので短いケーブルが良いです。
Raspberry Pi の初期設定
まずはラズパイの初期設定をします。
最低限OSインストールだけは必要なので以下を参考にRaspberry Pi OSをSDカードにインストールをしてください。
無事Raspberry Piを起動できればOKです。

その他の設定(SSH接続の設定、セキュリティ設定など)は以下の記事で解説しています。
これはOSさえ入れれば卓上時計を作れるますが、常用するならやったほうがいいかなと思うのでこちらを参考に設定してみてください。

卓上時計アプリ作成
コーディング(Geminiを使って楽をする)
次は卓上時計アプリを作っていきます。
今回はPythonで作っていこうと思いますが、生成AIを使って楽をしちゃいましょう。
この方法だとあんまりPythonを知らない人でも作れちゃいそうです。
ちなみに、Raspberry Pi OSにはデフォルトでPythonが入っているので、何もせずともPythonが使えます。
この記事ではGoogleの提供するGemini(ジェミナイって呼ぶみたいです)を使います。
理由はなんとなくです。ChatGPTでもCopilotでも大丈夫ですね。
ではGeminiにどんな卓上時計にしたいかを伝えていきましょう。
指示はあいまいにせず明確に、実現したいことは全部書きましょう。
以下のように指示を与えてみました。
Pythonで卓上時計を作ります。以下をみたすようにPythonコードを書いてください。
- 右下に日付と曜日, デジタル時計を表示
- 背景画像を選択可能
- ウィンドウサイズはディスプレイと同じサイズ
出てきたコードを実行して、動かないところの修正と、初期背景画像をimage.pngにするように変更、その他細かな微調整をして完成。main.py という名前で保存します。
image.pngは背景にしたい画像を用意してください。
追加で必要なPythonライブラリはPillowだけです。
ソースコードはえりるさんのGitHub またはこちらからダウンロードできます。

Raspberry Pi側の設定
ファイルをRaspberry Piに移す
作ったアプリのファイル一式(main.pyとimage.png)をラズパイに移します。
移し方は直接移すか、scp
コマンドで移すのが良いです。scp
コマンドはパソコン間でファイルを移すときに使用するコマンドです。
直接移す場合は、まずUSBメモリをfat32という規格でフォーマットします。
フォーマットしたUSBメモリにファイル一式を移してラズパイにUSBメモリを指します。
するとファイルマネージャーを開くかどうか聞かれるので、指示通りに開きます。
USBメモリの中身が見れるのでファイル一式を/home/ユーザー名/elirclock
に移します。
ユーザー名は自分のユーザー名を入れていください。また、elirclock
のところは自由にフォルダ名を決めて大丈夫です。
scp
で移す場合は、SSH接続の設定ができている前提ですが、自分のパソコン側で以下のコマンドを実行すると移すことができます。
$ scp Path/to/File UserName@***.***.xx.yy:~/elirclock/
UserName
にはRaspberry Piのユーザ名を入れてください。***.***.xx.yy
にはRaspberry PiのIPアドレスが入ります。Path/to/File
には必要なファイルそれぞれのパスを入れてください。初心者は一つずつ移すのが無難ですね。
Pillowのインストール
卓上時計アプリに必要なPythonライブラリをインストールします。
今回はPillowだけなので以下のコマンドで入れてしまいましょう。
pip install Pillow
Raspberry Piとモニターをいい感じに接続
こんな感じで接続してみました。適宜ケーブルクリップを使っています。
一つ注意点ですが、モニターの裏側は基盤がむき出しなので、ラズパイの金属部分はセロハンテープなどで保護して絶縁しておく必要があります。
今回のケースはねじ部分が金属なので、モニターと接触しそうなところはセロハンテープを張り付けておきました。

実行
まず以下のコマンドでアプリのあるディレクトリに移動します。
cd ~/elirclock
その後、以下のコマンドでmain.pyを実行します。
python main.py
これで以下のように時計が全画面で表示されたらOKです。

終了するときは時計画面上でEscキーを押して全画面を解除します。
その後、ターミナル上でctrl+Cで終了できます。
おまけ: 背景画像の替え方
背景画像を変えるには実行する前にimage.pngを書き換えるか、時計画面上で右クリックをするとダイアログが表示されるので、そこから変更することができます。
まとめ
Raspberry Piを使って卓上時計を作ってみました。
はんだ付けなしで作れるので気楽にできる電子工作なので、DIYや自由研究(工作系)としてチャレンジしてみてください。