166円 アルディーノ基板あちゃんでいいのを12Mhz@3.3Vで動作させようとしてブートローダーを変える必要があったのでメモ。
モデルロケットの飛行データを
”あちゃんでいいの”は、基板が166円+チップが230円で500円以下(送料入れて1000円)で出来るArduino互換基板です。
モデルロケットが木に引っかかって回収不能、行方不明でロスト、池や革に落ちたりなどを考えると1000円超えのボードを搭載するのは厳しいよね。(センサー1つ600円もしますから)
あちゃんでいいの+センサー
あちゃんでいいのに気圧センサーやジャイロ・加速度センサーを付けて、モデルロケットに搭載します。
8MHz@3.3Vで動作させるのであれば、基板もなくてセンサー直結、マイクロSDカード基板も配線つなぐだけにすると軽くできてデータも保存できるから良いかなと。
通常は16MHz@5V
DIPパッケージのATmega328P-PUを載せて使う”あちゃんでいいの”はフツーはUNOコンパチとして動作させることを想定しているようで、16MHzクリスタルが付いています。
8MHz@3.3Vのブートローダ書き込み済みデバイスが売っているんですがデータシートを見るとデバイスは8MHz@3Vなんですね。
ATmega328Pのデータシートには、3.3Vでの動作周波数は12MHzでした。 そこでクリスタルを交換して12MHz@3.3Vで動作するかどうかをチェックしてみました。
電源は LiPo100mAhもあれば数十秒のデータを記録するには十分たりてますから測定インターバルを短くして書き込みしようかなと。
書き込みでエラーになるんです
ところが、クリスタル交換だけではArduino ideで書き込みが出来ません・・・ヒューズビットを変えれば良いのかと思ってましたが相応な設定値が見当たりませんし設定を変えても動かない。
プログラムを書き込みを16MHz@5.0Vで行って、載せ替えすると動作するんで単純にブートローダーかヒューズが合ってないと思うんです。
書き込みできた!
ネット上をぼちぼち探していると・・・12MHz@3.3Vブートローダが見つかりまして、それをテストしました。
ATmega328P 12Mhz 3.3V
optifxではこのような設定(そのまま利用):
* EXTENDED = 0x05
* HIGH = 0xDE
* LOW = 0xFF
* LOCKBIT 0x3F
optiboot_atmega328_12.hexをダウンロードしてきて入れ替えました。出処:ceptimus
ロケットに搭載を検討
テストは、Alpha IIIロケットに搭載してデータを取得しようと思ったのですけれど・・・AlphaIIIモデルロケットはロケット本体直径が2.54cmしかありませんし、ノーズコーンに搭載するにもスペースが狭く:
* あちゃんでいいの
* 加速度センサーか気圧センサー
* LiPoバッテリー
これだけ押しこむにもかなり厳しくて、データ保存用のmicroSDカードを入れる場所が無い。
0 件のコメント:
コメントを投稿