I2Cロガーの製作 [PIC]
I2Cで接続される複数のセンサのデータを連続的に保存したいことからI2Cロガーを作ってみました。
パソコンにUSBケーブルで接続し、スクリプトで制御可能な市販されているI2Cインターフェースボックスがありますが、サンプリング周期を一定にして連続してデータを取得するのが困難であることから、このI2Cインターフェースボックスの中身をPIC24FJ64を使った簡単なボードに入れ替えます。
PIC24FJ上ではpicleコンパイラも動作するのでスクリプト感覚でデータ取得処理を記述できます。
ファイルへの保存はTeraTermのマクロで実現する予定です。
回路図は下図のとおりでUSBシリアル変換は安易に市販の変換基板(FT232RL)を使い必要最小限の信号をコネクタに出しています。
この程度の回路であれば片面基板で対応可能でCNCルーターでPCB基板を作成しました。ガラエポの両面基板と比べれば難易度はかなり低いですが、後述のように手抜きしてジャンパー接続することに ^^;
今回もいつものように DesignSparkPCB でパターンを作成しました。
次にDesingSparkPCBで出力したガーバーデータを FlatCAM に読ませて、CNC用のNCファイルを作成します。
PCB作成の最後の工程として作成したNCファイルを使ってCNCルーターで生基板を切削し、ホームメイドのプリント基板を作ります。
CNCで切削後の導通チェックではOKでしたが、ソルダーレジスト塗布後、グランドとショート状態のパターンがあったのでパターンカットし、ジャンパーで接続しました^^;
今回はベーク版の片面基板ということで手抜きしてCNCでの切削後のヤスリ掛け工程を省略してしまったため、レジスト塗布時に切削した溝に残っていた銅層の切りくずでショートしてしまったようです(今後気を付けねば)。
まぁ、これくらいの回路であれば、PCB製造業者に依頼して何週間か待つよりは、CNCでサクッと作れるので便利です。^^
(汎用基板で作った方が早いけどそれは言わない約束ということで・・・w)
★2019/11/17 追記
ソルダーレジスト塗布方法を記載した記事へのリンク追加
部品面は下の写真のとおりです。後述するようにケースがアルミ製なのでケースとの接触防止のためにUSBコネクタの上にマスキングテープを張っています。
また、OneBitLoaderはコンソール接続用のシリアル通信に対応させた2線式のものを入れています。
冒頭で書いたようにケースはI2Cインターフェースボックスのものを流用することにして、コネクタ部とUSB&LED部のキャップを3Dプリンタで作成しました。
ケースに収めた外観が下の写真です。
おまけとして、I2Cでアドレス出力しACK応答の有無で接続されているI2Cセンサのアドレスをスキャンした結果を付けておきます。
接続しているのは「I2C通信実験 照度センサー」の記事で書いた照度センサです。
I2Cスキャン実行例
★追記 2022/01/27
出力ピン数を多くしたもっと汎用性の高いPic24ジェネラルボックス制作関連の記事が下記になります。
[TOP] [ 前へ ] 連載記事 [ 次へ ]
パソコンにUSBケーブルで接続し、スクリプトで制御可能な市販されているI2Cインターフェースボックスがありますが、サンプリング周期を一定にして連続してデータを取得するのが困難であることから、このI2Cインターフェースボックスの中身をPIC24FJ64を使った簡単なボードに入れ替えます。
PIC24FJ上ではpicleコンパイラも動作するのでスクリプト感覚でデータ取得処理を記述できます。
ファイルへの保存はTeraTermのマクロで実現する予定です。
回路図は下図のとおりでUSBシリアル変換は安易に市販の変換基板(FT232RL)を使い必要最小限の信号をコネクタに出しています。
回路図 |
![]() |
この程度の回路であれば片面基板で対応可能でCNCルーターでPCB基板を作成しました。ガラエポの両面基板と比べれば難易度はかなり低いですが、後述のように手抜きしてジャンパー接続することに ^^;
今回もいつものように DesignSparkPCB でパターンを作成しました。
DesignSparkPCBでパターン作成 |
|
次にDesingSparkPCBで出力したガーバーデータを FlatCAM に読ませて、CNC用のNCファイルを作成します。
FlatCAMでのNCファイル作成 |
|
PCB作成の最後の工程として作成したNCファイルを使ってCNCルーターで生基板を切削し、ホームメイドのプリント基板を作ります。
CNCルーターでの生基板の切削 |
|
CNCで切削後の導通チェックではOKでしたが、ソルダーレジスト塗布後、グランドとショート状態のパターンがあったのでパターンカットし、ジャンパーで接続しました^^;
今回はベーク版の片面基板ということで手抜きしてCNCでの切削後のヤスリ掛け工程を省略してしまったため、レジスト塗布時に切削した溝に残っていた銅層の切りくずでショートしてしまったようです(今後気を付けねば)。
まぁ、これくらいの回路であれば、PCB製造業者に依頼して何週間か待つよりは、CNCでサクッと作れるので便利です。^^
(汎用基板で作った方が早いけどそれは言わない約束ということで・・・w)
★2019/11/17 追記
ソルダーレジスト塗布方法を記載した記事へのリンク追加
PCB半田面 |
|
部品面は下の写真のとおりです。後述するようにケースがアルミ製なのでケースとの接触防止のためにUSBコネクタの上にマスキングテープを張っています。
また、OneBitLoaderはコンソール接続用のシリアル通信に対応させた2線式のものを入れています。
PCB部品面 |
|
冒頭で書いたようにケースはI2Cインターフェースボックスのものを流用することにして、コネクタ部とUSB&LED部のキャップを3Dプリンタで作成しました。
コネクタ側のキャップ |
|
USB&LED側のキャップ |
|
ケースに収めた外観が下の写真です。
ケースに収納した写真 |
|
おまけとして、I2Cでアドレス出力しACK応答の有無で接続されているI2Cセンサのアドレスをスキャンした結果を付けておきます。
接続しているのは「I2C通信実験 照度センサー」の記事で書いた照度センサです。
|
★追記 2022/01/27
出力ピン数を多くしたもっと汎用性の高いPic24ジェネラルボックス制作関連の記事が下記になります。
[TOP] [ 前へ ] 連載記事 [ 次へ ]
コメント 0