仕事柄、自室に有線を引いていない。
メイン回線は旧FREETELの使った分だけプラン。
他方、Visual Studioは以下の通り途方もないデータを要求する。
こんなのを落とした月には、帯域制限間違いなし。
これを回避するため、有線の通信環境で予めインストールデータを保存することに。
1. MSのサイトからインストーラを取得する
vs_community_***.exeという感じの名前になる。
2017/11/27時点だと、vs_community__434634640.1511793803.exeだった。
末尾はバージョンNoっぽいので無視してOK。
2. コマンドプロンプトでオフラインインストールを起動
>> vs_community_***.exe --layout <ディレクトリ>
最後のディレクトリで、保存場所を指定。
20GB以上食うので要注意。
以上。
2017年11月27日月曜日
Arduinoのクロック精度を試す
秋月のI2C接続8x2LCDを使ってみた。
変換基板付きで\600、なしだともっと安い。
写真はLCDのみだが、後でRTCも繋いでみた。
LCDとRTCの制御自体はI2Cの作例がいくつもあるので割愛。
コマンド通りに叩くだけ。
検証したいのは、水晶とセラロックや、基板ごとの周波数精度の違い。
1ヵ月くらいのロギングをやるのに、ATmega+セラロックでOKか、水晶が必要かを見極めたい。
使用予定はLeonardoとUno 3(ATmega単体動作も)とArduino Nanoクローン。
温度ログなのでそこまでずれても痛くないけど、せめて1ヵ月で数分くらいの誤差に収めたいところ。
時間はFlexiTimer2でカウント。
LCD表示器に時計を表示して、電波時計を基準にずれを測定。
目視なので、1秒未満の誤差は防げない。
キッチリやるならRTCを正として差分を蓄積していくべき?
↓↓至ってシンプルなコード。
void setup() {
Wire.begin();
init_LCD();
FlexiTimer2::set(1000, timer);
FlexiTimer2::start();
pinMode(13, OUTPUT);
}
■結果
何と、正規品のArduino Uno 3が一番ずれずれ。
次いで、Ceralock動作のATmega。
Leonardoが最良なのは不思議ではないけど、Maid in Chinaのコピー品のNanoが大健闘。
たった400円なのに凄い。
MsTimer2にすると、Uno 3もいい結果なのかもしれない。
また、Nano以外はばらつきが小さいのでuSleepを適当に入れれば十分な精度になりそう。
■温度ロガー(Arduino Nano + microSD + RTC)
小さいし安いので、本番はArduino Nanoでロガー作成した。
結局、安いRTCが手に入ったのでArduinoのクロック評価は実は意味なし。
タッパーに入れて、サーバの温度データを外部で保存してみた。
会社だとN/W経由で情報を取れないので、ArduinoでMicroSDに貯めると非常に便利。
## 実験は'17/4~5月にやったが、まとめが延び延びになっていた。
ブログって、気を抜くとすぐに間が空いてしまいますね。
登録:
投稿 (Atom)