ATtiny85とPCF8574を用いたLEDバーサライターの構想
このプロジェクトは、マイコンとしてATtiny85を使用し、軽量なI/OエキスパンダであるPCF8574を搭載してLEDを8個齊組を駆動し、視覺残像効果を利用したバーサライターを実現します。この構想は、ワークショップや教育用キットとして定価されるよう設計されています。
1. アーキテクチャの構成
主要な部品
- ATtiny85: 小型な8ピンマイクロコントローラ。減裁されたスペースに最適。
- PCF8574: I2C通信に対応したI/Oエキスパンダー。最大8つのGPIOピンを搭載。
- LED: 視覺残像用に高效率型を設置。8個使用。
- 330Ω抵抗: LEDの電流制限用。
- 単三乾電池、2本: 3Vの電源を依存。
PCF8574を使用する理由
- GPIOピンの拡張: ATtiny85はGPIOピンが限られていますが、PCF8574を用いることでI2C経由で最大8つのGPIOを拡張できます。これにより、小型マイコンでも多くのLEDを制御可能になります。
- 低電流駆動: PCF8574はシンク電流が最大25mA/ピンまで対応しており、直接LEDを駆動することができます。回路のシンプル化に貢献します。
- I2C通信の効率性: I2Cを使用することで、2本の通信ライン(SDA/SCL)だけで複数のGPIOピンを制御でき、配線を最小限に抑えられます。
- 低コストで入手容易: PCF8574は低価格で入手しやすく、教育用キットやワークショップ向けのコストパフォーマンスが高いです。
主要なコミュニケーション
- ATtiny85からPCF8574の通信は、SDAピンとSCLピンを経由したI2Cバス上で実行。
- PCF8574のGPIOは、電源側に抵抗を付加したLEDと接続。GPIOをLOWに設定すると、LEDが点灯される。
電流制限の考慮
- PCF8574は1ピンで10mA前後の電流を駆動できるため、LED一緒に高效率型を使用して電力保存を最適化しる。
- 抵抗値は330Ωもしくは470Ωで設定し、LEDの電流を5〜10mAに制限。
2. バーサライターの動作概要
視覺残像の利用
- LEDを持って振る動作により、高速切り替えを利用したパターン表示を実現。
- ATtiny85に入力されたデータに基づき、PCF8574のピンをプログラムでコントロール。
LEDの点灯パターン
パターンの例として、文字表示を想定します。
- 「H」の表示パターン:
- B10101010
- B10101010
- B11111110
- B10101010
- B10101010
3. システム構成図
graph TD AA[単三乾電池 2本] -->|3V電源| AT[ATtiny85] AT -->|I2C SDA/SCL| PCF[PCF8574 I/Oエキスパンダー] PCF --> LED1[LED1 (GPIO0)] PCF --> LED2[LED2 (GPIO1)] PCF --> LED3[LED3 (GPIO2)] PCF --> LED4[LED4 (GPIO3)] PCF --> LED5[LED5 (GPIO4)] PCF --> LED6[LED6 (GPIO5)] PCF --> LED7[LED7 (GPIO6)] PCF --> LED8[LED8 (GPIO7)] LED1 --> R1[330Ω抵抗] LED2 --> R2[330Ω抵抗] LED3 --> R3[330Ω抵抗] LED4 --> R4[330Ω抵抗] LED5 --> R5[330Ω抵抗] LED6 --> R6[330Ω抵抗] LED7 --> R7[330Ω抵抗] LED8 --> R8[330Ω抵抗] R1 --> GND R2 --> GND R3 --> GND R4 --> GND R5 --> GND R6 --> GND R7 --> GND R8 --> GND
4. 注意点と改善案
注意点
- 電力依存: 単三乾電池を使用するため、充電池との交換や残量管理に備える必要があります。
- 同時点灯数: PCF8574はシンク電流の合計を100mAまでに限るので、点灯されるLEDは一時に5個以内に制限するのが安全です。
改善案
多色バーサライター RGB型LEDを搭載し、色情による表現の広がりを持たせる。
多行バーサライター LEDを縦に並べることで、文字や絵図の2D表示を可能にする。
EEPROM利用のパターン変更機能 ATtiny85のEEPROMにパターンを保存し、使用者が点灯順序を自由に変更できるようにする。
この構想は、ローコストで高性能な視覺表現を実現すると同時に、教育用や玩具としても身近な体験を提供できるよう設計されています。