ともの技術メモコンテンツへスキップともの技術メモ趣味の電子工作などの記録。時にLinuxへ行ったり、ガジェットに浮気したりするので、なかなかまとまらない。tomono温度ロガーを作成しました3Dプリンタ用保温ボックスを作って、ABSでの出力がうまく行くようになったのはいいのですが、ボックス内がかなり高温になっている(あたりまえですが・・・)のが気になります。実際どのくらいなのか、手持ちの部品で温度を測ってみることにしました。USBシリアル変換ケーブル(5V)を使いました。マイコンはPIC12F1822、温度センサーはLM35DZを使っています。最初はESP8266かESP32でAmbientに直接送信させようかとも思ったのですが、今回は測定気温が80°Cを超えているかもしれませんし、場合によっては100°Cを超えているかもしれません。自己発熱が少なく(=消費電力を抑えることができる)壊れてもすぐ交換可能なPICとデータシート上150°Cまで動作可能なLM35を使用することにしました。Configuratorで以下のように設定しました。タイマ割り込みを発生させます。FVRで1.024VのADC用の基準電圧を発生させます。ReferenceをFVRにして、基準電圧を1.024Vにします。これで10bit分解能なので、入力電圧換算で10mVの分解能となります。LM35DZは100mV/1°Cなので、0.1°C単位でAD変換できることになります。Alignmentはrightに変更して、読んだ値を1/10すれば温度直読になるようにします。ピンマネージャでADCはAN2を設定、EUSARTはRX/TXをRA5/RA4に割り付けます。Configuratorにソースを吐かせて、main.cを作成しました。}}ビルドして、PICkit3で書き込みます。書き込む際はICクリップを使うことで、基板上の書き込みに関する信号の配線作業を省略しています。DIPパッケージで20ピンまでの8bitのPICは電源/GNDを含めて1ピン側の8ピンに書き込みに必要な信号が共通で出ています。この8ピンのICクリップは20ピンまでの8ビットのPICで共通に使用することができます。(例外はあるかもしれませんが・・・)実行すると1秒単位に電源投入からの経過秒数と温度を出力します。Officeに読み込ませてグラフ化させるつもりです。コメントをキャンセルメールアドレスが公開されることはありません。date*日本語が含まれない投稿は無視されますのでご注意ください。