つれづれなる備忘録

日々の発見をあるがままに綴る

TinkercadによるArduinoシミュレーション8 ~ ATtinyによるLチカ

1. ATtinyとは

 今までTinkercad上でArduino IDEのスケッチを用いてArduino Uno Rev3を動作・シミュレーションさせてきたが、これ以外でATtinyもシミュレーションすることができるので紹介したい。ArduinoはAtmel社のマイコンATMega328Pを搭載したマイコンボードだが、ATtinyはATMegaよりもサイズが小さいことが特徴となる。Tinkercad上ではコードを実行すればすぐに動作するが、実際には書き込み装置を使ってブートローダーやスケッチをマイコンに書き込む作業が必要になる。(例えばATtiny85を参照)なおArduino UnoではUSBを介してブートローダーやスケッチを書き込むので、書き込み装置を別途用意する必要はない。今回はTinkercadによるArduinoシミュレーションの初回に行ったLチカをやってみようと思う。

2. ATtinyへの接続

 ATtinyを動作させるためにはArduinoと違い電源の接続から行う必要がある。(Arduinoの場合はUSB経由で5Vが供給される)今回はLチカを行うので必要な配線は、VCC(電源入力),GND,D0(デジタル出力ピン)の3か所となる。それぞれのピンの位置を下図に示す。

ATtinyピン
ATtinyピン
その他のピンについては上に挙げたATtiny85などを参照。さらに電源やLED、保護抵抗(50Ω)を接続した図を示す。
ATtinyによるLチカ
ATtinyによるLチカ

D0の出力を用いてLEDを点滅させるので、スケッチは以下の通り。

void setup()
{
  pinMode(0, OUTPUT);
}

void loop()
{
  digitalWrite(0, HIGH);
  delay(1000); // Wait for 1000 millisecond(s)
  digitalWrite(0, LOW);
  delay(1000); // Wait for 1000 millisecond(s)
}

3. ATtinyによるLチカ実行

 シミュレーションを開始するとLEDが1秒おきに点灯と消灯を繰り返す。電源の出力電流に着目するとLEDのON/OFFに同期して電流値が変化している。 入力電圧は一定なので、電圧値と電流値をかけることで消費電力を計算することができる。 (Tinkercadのシミュレーションがどこまで再現しているのか不明だが)電源への入力電圧を2.8Vに設定した場合の実行結果は

VCC:2.8V 電流(mA) 消費電力(mW)
LED OFF 4.48 12.5
LED ON 12.8 35.8

また入力電圧を3.6Vに設定した場合の実行結果は

VCC:3.6V 電流(mA) 消費電力(mW)
LED OFF 5.76 20.7
LED ON 21.4 77.0

基本的にはマイコンの動作電圧の範囲内で電源電圧が低いほど消費電力は下がる。またLEDのON/OFFで消費電力が変わるということから、マイコン周辺回路の動作に依存するということが言える。

4. まとめ

 今回はATtinyを用いたLチカについて紹介した。Arduino Unoと違って電源を接続する必要があるが、電源の出力電流からマイコンと周辺回路の消費電力の傾向をみることができる。