STD Nyokki's Lab Ⅴ

STD Nyokki's Lab Ⅴ

電子工作、バイク、パソコンを中心に記事を掲載しています。youtube一応やってます。www.youtube.com/user/tatsushi100

Arduino 内臓EEPROM R/W耐久試験結果

1.目的
機器には必ず寿命が存在する。無論、EEPROMにも読み込み/書き込みに寿命が存在する。そこで今回はArduino内臓EEPROMのR/W耐久試験を行う。

2.方法
※プログラムは最下部にあります。
Arduinoのanarogポートとライブラリを用いて乱数を発生させる。
値は読み/書き上、上限を250とした。(絶対値)

次に、EEPROMに発生した乱数を書き込む。
EEPROM参照番地は、0から512を用いた。

その後、EEPROMより値を読み込み、書き込んだ乱数と比較する。
同じ場合、count1に+1を行う。
違う場合、count2に1を代入後、プログラムのループは終了し、count1,count2の結果を表示するというシンプルなものである。

試行回数は1000回を下限とし、250万回を上限とした。

Arduinoの読み書きの動作上、それぞれに10msの遅延時間を設置した。

 3.結果
表.1に、試行回数、実行時間、R/W成功回数を示す。

表.1 EEPROMの耐久試験結果
試行回数(回) 実行時間(H:M:S) R/W成功回数(回)
1000 00:00:20 1000
5000 00:01:42 5000
10000 00:03:24 10000
50000 00:17:02 50000
10万 00:34:02 10万
15万 00:51:07 15万
25万 01:25:16 25万
100万 05:41:29 100万
250万 14:15:05 250万

上記の結果から、ArduinoのEEPROMには信頼性が十分あることがわかった。
今回は、R/Wに10msの遅延時間を設置したが、高速化は可能である。
ただ、EEPROMのデータを介してのステッピングモーターの制御なので、速度はすでに十分である。

ただ、高速化を目指す場合は、試行回数によってはR/Wの失敗が見られる恐れがある。
公式スペックではWrite時に3.3msの遅延をおくことを推奨している、のでこれを超える高速化は寿命だけでなく、制度的に問題が出る恐れがある。

 
実行中のスクリーンショット
キャプチャ



プログラムver 2.3

プログラム修正履歴
ver 2.3 プログラム実行時間を時刻化
ver 2.0 現在の試行回数を表示、およびバグ修正
ver 1.6 プログラム実行時間を表示
ver 1.5 試行回数を100万回以上に対応
ver 1.0 EEPROMに乱数の書き込みテスト




参考文献
Arduino 日本語リファレンス  http://www.musashinodenpa.com/arduino/ref/