電子インクは、一般にE Ink (商標登録された用語) またはe-paper (電子ペーパー) と呼ばれ、1990年代にMITの学部生のチームによって初めて開発されました。この技術はKindle電子書籍リーダーのように商業的にいくつかの成功を収めていますが、E Inkの使用は常に興味深い提案でした。一方、このクラスのデバイスは電力効率が非常に高く、画像を維持するために充電を必要としません。一方、発光ディスプレイ方式と比較するとリフレッシュ レートが非常に遅く、高価になる傾向があり、通常は白黒に限定されます。
顕微鏡で見るEインクディスプレイ
しかし、これらのトレードオフの一部は変化しており、 Seeed Technology 2.7インチE Inkディスプレイがその証拠です。このデバイスは30ドル程度で販売されており、白黒ピクセルだけでなく赤色ピクセルも備えています。ただし、赤色の画像を生成すると、更新に 非常に 長い時間がかかります。したがって、時計の表示や電子書籍リーダーとして使用することはお勧めできません。天気、カレンダー、交通機関のスケジュールなど、非常に断続的に変更する必要がある情報の場合、これは完璧なソリューションになる可能性があります。
Raspberry Pi E Inkのインストール
3 A+ではネジで取り付け、3 B+ではネジなしで取り付けます
E Inkディスプレイはさまざまなデバイスで使用できますが、このディスプレイはRaspberry PiにHAT (上部に取り付けられたハードウェア) として取り付けられるように特別に設計されています。ヘッドレス モードで使用するため、 Raspberry Pi A+ にインストールすることにしました。これは安価なだけでなく、アイドル時の消費電力が Raspberry Pi 4B の半分以下なので、低電力で更新が遅いデバイスに最適です。
ディスプレイは、メス接続を使用して3 A+ のオス ヘッダー ピンに差し込むだけです。必要に応じて、付属のネジとスタンドオフで固定することもできます。
関連商品を見る
E Inkソフトウェアのインストール
E Inkディスプレイ用のPiソフトウェアのセットアップも、プラグアンドプレイほどではありませんが簡単です。まず、「Raspberry Pi OS (32ビット) デスクトップ版」イメージを選択して、Raspberry Pi OS (旧称Raspbian) をダウンロードします。ここでのGUI実装は、インターフェースのためではなく、ソフトウェアの依存関係を処理するために使用されます。balenaEtcherを使用してイメージをSDカードに書き込み、適切なsshおよびwpa_supplicantファイルをブート パーティションにロードしてシステムをヘッドレスとして設定します。これは、後でキーボード/マウス/モニターをPiに一時的に接続することで実現することもできます。
カードをPiに挿入し、電源を入れ、Wireless Network Watcherなどのプログラムを使用してネットワークをスキャンし、IPアドレスを見つけます。ユーザー名でログオン 円周率 パスワード ラズベリー。走る sudo apt-getアップデート、それから sudo apt-getアップグレード すべてが最新であることを確認します。入力 sudo raspi-config、ユーザーパスワードをデフォルトから少し離れたものに変更します。同じインターフェースで、「Interfacing Options」に移動し、SPIを有効にしてPiがE Ink画面を制御できるようにします。最後に、システムを再起動して、これらの変更が有効になっていることを確認します。
ホームディレクトリに戻ります( cd ~ 必要に応じて入力してください mkdir eink E Inkスクリーン用の新しいディレクトリを作成するには、そのディレクトリに移動します。 CDインクと入力し、 gitクローンhttps://github.com/soonuse/epd-library-python そのリポジトリを再現します。それが終わったら、2.7インチディスプレイのコードに移動します。 cd epd-library-python/2.7inch_e-paper_b/raspberrypi/python。最後に、デモを実行します Pythonメイン.pyすると、ディスプレイ上で複数の画像が順番に表示されます。
Raspberry Pi E Inkディスプレイ プロジェクト
黒い島 + 赤い太陽 = 穏やかな電子インク画像
画面が更新される様子を見るのは楽しいですが (また、更新にどのくらい時間がかかるかがわかると勉強になります)、独自のデータを表示したい場合もあるでしょう。このデバイスのハッキングを始める簡単な方法は、サンプルを開くことです。ls と入力してディレクトリの内容を確認し (2つの .bmpファイルが存在することに注意してください)、 sudo nano main.py と入力してスクリプトの内容を確認します。
このデモ コードは、PIL (Python Imaging Library) からのライブラリを含む、いくつかのライブラリをインポートします。また、線、円、四角形、テキストの描画を説明する、簡単に認識できるいくつかの機能も表示されます。「# display images」セクションでは、「frame_black」と「frame_red」を「black.bmp」と「red.bmp」イメージとして定義し、コードと同じディレクトリに保存します。
上記のコード (ここから全文をダウンロード可能) は、main.pyの例の簡略版です。black.bmpを黒で、red.bmpを赤で表示し、5秒後に消去するだけです。
これらのBMPファイルは、GIMP、Photoshop、あるいはおそらくペイントなどの画像ソフトウェアで編集できます。同じアスペクト比を維持するだけで済みます。赤と黒の画像はE Ink画面ではそのように表示されますが、コンピューターでは単純に白黒として表示されることに注意してください。画面の表示を変更するには、WinSCPなどのプログラムを使用してPiから画像をダウンロードし、編集して名前を変更し、必要に応じてコードを変更して同じディレクトリに戻します。
E Inkフォトディスプレイなど
哲学者でありエンジニアでもある私が長年抱いてきた疑問: E Inkスクリーンのみを搭載したRaspberry Piはヘッドレスでしょうか?
もちろん、E Ink画面に表示できるのは手描きの絵だけではありません。リアルタイムデータに基づいて図やグラフを作成したり、ディザリングを使用して実際の写真からリアルなモノクロ画像を作成したりできます。私は複数のプログラムを組み合わせて、上記の黒と赤の「自画像」を作成しました。プロセスは編集ソフトウェアによって異なりますが、GIMPを使用している場合は、 [イメージ] - [モード] - [インデックス]… を選択すると、少なくとも画像のディザリングの正しい方向に進むことができます。
ここで説明した内容以外にも、実験に適したインターフェース ボタンが4つあります。より複雑な実験をしたい場合は、GitHubのミニカレンダービルドもチェックしてみてください。たとえそれが例であっても、あるいは完全に複製したものであっても、そのコードは、電子インク実験を進める上で確かに調べる価値があります。