電子ペーパーに作品を表示しよう!

きっかけ

電子ペーパーを使ってみようと思ったのは、このtweetに出会ったからでした。

これめっちゃよくないですか。AIで自動生成する画像の代わりに、自分のジェネラティブアートを定期的に実行して表示できたらとてもいいのでは??と思いました。

さっそくInky Impression 4″ (https://www.switch-science.com/products/8135) 

を購入し、試してみました。試したくてたまらなかったのだー。

サイズはカセットテープの箱ぐらい。

  • 97 x 69 mm
  • ディスプレイ:86 x 54 mm

とのことです。RaspberryPi本体より一回り大きいな、くらいでしょうか。

今回買ったこの電子ペーパーの説明、あまり記事がなかったので、自分の画像を表示できるようになるまでと、ハマったところなどを記録しておきます。

必要なもの

  • Inky impression 4”   https://www.switch-science.com/products/8135
  • Raspberry pi 3~ (Raspberry pi zero でもよさそう!でもzeroだとはんだ付けが必要そう!)
  • Raspberry pi のセットアップに、HDMI接続のディスプレイ、USB接続のマウスとキーボードが必要。後電源。

下準備

この電子ペーパーディスプレイは、ラズベリーパイにつなげて使います。

ラズベリーパイの初期設定をしておきます。

SSH接続する

SSH接続すると、ディスプレイやマウス、キーボードなどをラズパイにささなくても操作できてめっちゃ快適。わたしは今回始めて知りました。

もちろん、SSH接続せず、ディスプレイをさして、ディスプレイに表示させて操作してもできます。

ディスプレイをつないでいる状態でターミナルからconfig画面を開きます。

SSH接続をenableにする

sudo raspi-config

↓こんな画面が開きます。 

「3. Interface Options」を選んでEnter →「I2 SSH」を選んでENTER、

Enableにするのか聞かれるので<はい>を選択します。

※ターミナルからでなくても、スタート画面からでも設定できる

設定→Raspberry Piの設定 でも設定画面開く。インターフェイスのタブを選択、SSHの項目を有効にする。

SSH接続のためのアドレスを確認

RaspberryPiの画面右上のネットワークマークの上にマウスを重ねると表示が出てきます。

そこにIPアドレスが書いてるので、覚えておきます。あとユーザー名を設定した人はそれを思い出しておきます。

接続したいパソコンのターミナルから、次の文を打ち込みます。

ssh pi@000.000.0.00

pi の部分はさっき思い出したユーザー名、

そして000.000.0.00 の部分はさっき覚えておいたIPアドレスです。

パスワードを聞かれるので、打ちます。RaspberryPiを初期設定したときに、ユーザー名とともに設定したパスワードです。

うまくいきましたか?このコンソールからRaspberryPiを操作できるようになりました。やったね。

組み立て

Inky impression 4”内容物

  • 4.01インチ EPDディスプレイ(640 x 400 ピクセル)
  • 40ピンメスヘッダ
  • スタンドオフ – 支柱

組み立て

支柱をネジで固定するため、ネジ回しが必要です。

/ 組み立ては、ほぼさすだけ! \ 

ディスプレイにあまり圧力がかからないように、ちょっと慎重にさしていきます。

Inky impressionを使えるようにする

確認

  • 以前にRaspberry Pi にLDCモニタなどをつないで使っていた?
    → ある場合、Raspberry Pi を初期化したほうがいいかも 

[参考]:【たった10秒】ラズベリーパイを初期化する方法(SDカードOS再インストール)https://sozorablog.com/reinstall/

ライブラリインストール

製造元の販売ページ(https://shop.pimoroni.com/products/inky-impression-4?variant=39599238807635) にある、

curl https://get.pimoroni.com/inky | bash
をターミナルにコピペし、ライブラリをインストールする。
Do you width to continue?[y/N]が出たら、y押してエンター。(2回ぐらい聞かれる)

動作確認

ターミナルで、

ls

と打つと、その階層にどんなものが有るか確認できます。「Pimoroni」というフォルダがあると思います。この中に入っていきましょう。

 ※ あと「cd」で階層を移動できます。「cd ..」でいっこ前の階層に戻ります。

cd ~/Pimoroni/inky/examples/7color

Pimoroni フォルダの中にある、inkyフォルダの中に、examplesフォルダがあります。その中にさらにいろいろはいっているのですが、そのうちの 「7color」がこのinky impression用のexampleとのこと。

examples を試して、動作確認をしてみます。

ここでさっきの「ls」を打ってみると、いくつか.pyという拡張子のファイルが入っています。

advanced    clear.py           cycle.py  html      images 
buttons.py
  colour-palette.py  graph.py  image.py  stripes.py

例えばまず、stripes.pyを試してみましょう。python3 と頭に打ってからファイル名を打ち込みます。

python3 stripes.py

と打ってみます。ターミナルで見るとこんなかんじ。

ディスプレイが何度も瞬いて、しばらくして画が完成します。この7色がこのディスプレイの使える色です。わーい。

いろいろ試して動作不良がないか確認してください!わたしのはありました(後記)!

自分の絵を表示する

さっきのexamples/7colors のなかに、image.py というファイルがあります。これを使います!

しかしその前に、表示させたい絵を用意しましょう。

640x400pixelのサイズの絵を用意します。

createCanvas(640,400)で絵を作って保存したら完璧です。なるべくさっきのstripes.pyで出した7色に近い色で描かれていると、きれいに出力されるなあ、という印象です。

どうやってRaspberryPiの方に画像を送るの?

scpコマンドというのを使います!

それを使ってパソコンから、RaspberryPiの「image.py」があるのと同じ場所に画像をコピーします。scpコマンドの使い方はこんな感じです。

scp 画像ファイル名 RaspberryPiのユーザー名@IPアドレス:/home/ユーザー名/コピーを送りたい場所

ターミナルのウィンドウをもう一つ開きます。こちらはラズベリーパイにつながっていません。

送りたい画像を、デスクトップに作った適当な…「paper」フォルダにおいてあるとします。

cd Desktop/paper

「paper」フォルダの中に移動してから、さっきのscpコマンドを打ちます。

scp img02.png pi@000.000.0.00:/home/pi/Pimoroni/inky/examples/7color/

こんなかんじで!これで画像がコピーされたと思います。

ラズベリーパイの方のターミナルで確認してみてください。

pi/Pimoroni/inky/examples/7color/

で、「ls」 で確認です!ピンク色のところが、送った画像です。わーい、できた!(いっぱい送った)

そしたら「image.py」を実行して見ましょう。python3 image.py のあとに、表示させたい画像ファイルを指定します。

 python3 image.py 任意の画像.拡張子 //(img01.pngとか)

じゃーん、できたあー!

これでとりあえず、自分の画像を表示することに成功しました。


ハマったところ

わたしが最初に手にとった個体は、ディスプレイの右端5mmくらい範囲が、一向に更新できず、デフォルトで表示されていた画像が残ってしまっていました。

このディスプレイの解像度は640*400なのですが、600*448とプログラムでは表示されていました。直し方わからず…。

端的に言うと、おそらく初期不良でした。

購入したお店で交換していただき、新しいものをつなぎ直したところ、超スムーズに、快適に全画面うつりました。解決!

まとめ

定期的に画像を勝手に交換するとか、4つついているボタンの活用方法とかはまだわかりません!

とりいそぎ画像をうつすところまでやりました。

最初に電子ペーパーを見たtweetのように、写真用のフレームに入れても素敵ですよね。

3Dプリンターでケースを作っても良さそうです。夢は広がります。


参考:
7色対応電子ペーパーモジュールInky Impressionを買った
https://akkiesoft.hatenablog.jp/entry/20201123/1606122658

ラズベリーパイと電子ペーパーでカレンダーを作る feat Pimoroni Inky Impression
https://www.youtube.com/watch?v=Ai0bTBmrN50

Set Up a 7 Colour E-Ink Display For Raspberry Pi | Inky Impression 5.7″ HAT
https://www.youtube.com/watch?v=daO46JaVHOs

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

CAPTCHA