Posts Tagged ‘マイコン’

Frisk mega88 five

Tuesday, July 14th, 2009

久しぶりに電子工作三昧な日を過ごすことができ、一気にFrisk ATmega88モジュールを仕上げた。

まずは、FRISKのケースに合わせてユニバーサルボードをカットする。
board
Friskのケースにユニバーサルボードを合わせると10×25のサイズになり、秋月のボードからは3枚取れるらしい。
カットは、切り口とサイズが奇麗なピラニア ノコできっていたんだけど、かったるくなったので鉄パイプを切るノコギリに換えた。
こちらの方が、ノコギリの歯の幅と穴のサイズが同じ位で意外と調子が良かった。

穴の位置で切ると少し大きめなので、後はひたすら紙ヤスリで削る!
sanding

というわけで、サイズを合ったら部品を載せて、これもひたすらハンダ付け。
atmega88_fives
で、前に一つ作っていたので、合計5個のFrisk mega88モジュールができた。

上手い具合に秋月のWebに載っているシングルピンソケットが高さも丁度良くはまりプログラミング用のコネクタも付けることが出来た。

最終的な実体配線図チックな回路はこうなった。青の破線は、部品面でジャンパーしている。
基板の外側を回っているのは、ワイヤーでジャンパーのイメージ。
動いているので大丈夫だと思うけど、参考にするならYour Own Riskでよろしく。
frisk_rev22

課題としては、
ADCのノイズ対策をしていないこと。
ADCのリファレンス電源。
USB供給の電源のノイズ具合はどうなんだろう?
というところかなぁ。

これで、実機に組み込んでというところで大問題が!
温度を測ろうと思っていたのは、ATOM兄弟。OSはFreeBSD7.2がのっているのだが、FreeBSDでは、libusbがちょっと違うらしくデバイスは認識されるんだけど、コマンドに応答してくれない。:-(

う〜ん、困ったなぁ。
まっハードは出来たってことで良しとするか。
まだまだ道のりは遠いですな。

FRISK -AVR- WRITER

Friday, June 12th, 2009

frisk_writer

というわけで、早速FRISKのケースに入れたライターを作ってみた。
前例もあるので大丈夫だとは思っていたけど、あっさり出来た。

ちょっと不安だったのは、FRISKケースに入れた例はどれもパターンをプリントした物で、汎用基板では作っていないこと。
逆に作ってから判ったのは、

  • ICソケットが使えない。(高さが足りない)
  • 2列ピンヘッダは使えない。(これも高さが足りなさそう。無理すれば大丈夫かも
  • 直径3mmのLEDでもふたに干渉する。(穴をあけなくても良いかと思っていたけど、ふたがきっちり閉まらない)
  • FRISKケースの加工はとても簡単。(ドリルの歯で簡単に穴があけられる。手回しでね)その後、カッターで微調整

最初は、ICソケットが使えると思っていただけけにAVRを直接ハンダ付けしなければならなかった。ハンダ付けはそれほど上手くないのでドキドキだった。

回路は QRP-HomeBrewersさんのものを参考にというか、ほぼそのまま使わせて頂きました。ISPの端子もそのまま。

回路図だけではイメージできないので水魚堂さんの回路図エディタを使って実体配線図チックに絵を描いてみた。
frisk_rev2

下側のが今回作ったHIDaspxのライター。上は、温度測定モジュールのつもり。本当は、8pinのattiny45あたりでも十分なんだけど、秋月で入手できるatmega88の方がコストパフォーマンスがいいんだよな。

あっ、2列のピンヘッダは並ばなさそうなので直さなくっちゃ。

FRISKのケースに入るかな

Thursday, June 11th, 2009

frisk_board

AVR温度測定プロジェクトは、なんとかAVRで温度を測り、USBでデータを取得することが出来そうになって来た。

AVRで定期的に温度を測定して、定期的にUSBやシリアルでデータを吐き出すようにしても良かったんだけど、何となくHOSTであるPCからデータ要求し、AVRで温度情報を応答する方式にしたかった。

FRISKのケースに合わせて基板をカットしてみた。FRISKのケースに合わせると2.54mmピッチで10×25の大きさとなる。

秋月の片面紙エポキシ・ユニバーサル基板 Bタイプからだと3つ基板を切り出せる。

ライターは、USBミニBタイプのコネクタを付けようと思っている。

温度測定モジュールは、pinヘッダーでUSB接続しようと考えているところ。

AVRというマイコン

Monday, May 25th, 2009

cimg62141

ここの所、AVRというマイコンと闘っていました。といってもまだ、ハードウェアを組み立てただけなんだけど。

AVRを使ったきっかけは、「サーバの温度を取得したい」だった。今時のマザーボードは、BIOSでダイの温度を測ることが可能であるが、GA-GC230やGCLF2でFreeBSDだとうまく測れていないっぽい。Core-tempだと13とか31という数字が表示されるだけだった。まだ実際に測った訳ではないのだけど、BIOSの表示は43℃とか47℃とかなので、やはり、Core-tempがおかしいのかも。

というわけで、温度を計測する方法を探っていたらPICというマイコンと温度を計測するICを組み合わせる方法が出て来た。もう少し調べていくとPICがメジャーなわけだけど、後発のAVRがMac OSXのXCodeでも開発できるということでこちらを選択した。

AVRに限らずマイコンの開発では、マイコン自体にプログラムを書き込む仕組みが必要なわけだが、AVR用のライターは簡単に組むことが出来るということでチャレンジしてみた。
千秋ゼミ

しかしここからが荊の道の始まりだった。
AVRのライターはAVRで制御しており、ライターを作るためにライターが必要になるという鶏と卵の問題があるのだけど、既に先達の方々が解決しているのである。
自分も千秋先生の卵ライターでAVRファームを書き込んだんだけど、一度成功したに見えたが上手く動作せず。

COMポートやパラレルポートがあれば別なライターでプログラムの書き込みができそうだと言うことで、そちらも試したけど、うまく行かず。(今思えば、FUSEによって外部クロックを設定してしまっていたらしい。そのときは、気がつかなかった)

ここまで来て引き返すのもなんなので、AVRの開発元の純正ライターを買って来た。(最初から買えって話しもあるが)

これで、HIDaspxのファームを書き込んだところ、自作ライターが使えるようになった。(まだWindows環境)

OSXでライターを使うためにHIDaspxをダウンロードし、使ってみたが、起動せず。どうやら、libusbというライブラリが必要らしい。

libusbをインストールでインストールし再度MakeしたらOSXでもHIDaspxを使えるようになったのであった。

感覚的にはここまで1週間くらいかかっているんだけど、さっき、いつからだっけとタイムラインを見ていたらどうやらAVRとLM35が頭の中をぐるぐる回り始めたのは、5月9日だったらしい。ってことは2週間くらいハマっているのね。

さて、ライターも出来たことだし、サンプルも動いたし。
温度はかるぞー