更新2021年12月2012年から運用していた気象システムが今年8月雷害に遭い、完全に壊れたので再度構築した。日射計は手頃のものがなく、日射データの収集の必要性もないため温度・湿度のみ観測するものとした。ぶりの電子工作だったので思った以上手こずった。DHT22はamazonから安価で入手したものだったがラズパイからは簡単にアクセス出来た。AVRからのアクセスはI2CLCD温湿度計で使ったソースを流用したが思った応答が得られず、相当悩やみI/Oポートの入出力切替方法を見直して解決した。AVRソースDHT22から約3秒周期で、温湿度を読取りLCDに値を表示させると同時にXbeeにテキスト送信する。→Xbeeから送信されたデータをルータを介してPCで受信し、エクセルVBA処理して30分毎HPを更新する。windowsx86:x64版)XCTUの起動、xbeeの認識(USB接続ボードを利用してPCに接続)左上のxbee虫メガネマークをクリックして、Xbeeサーチするが以下の画面で見つけられない。(壊れている?)→接続ポート設定でXbeeボーレートを合わせていないといけなかった。デフォルトは9600と115200と思われる。昔、19200bpsに変更していたので、それも選択して再サーチしたら無事見つかった。それでも検出されない場合は、レスキュ—(メニューバーのスパナマークの中)を実施する。WF用が見つからなかった。Radioのデバイス用をインストールして解決した。scan(または左側xbee表示上の右中のアンテナマーク(4つのまる)をクリックして、接続wifiルータを選びそのパスワードを入力する。termと接続して動作を確認した。更新H24.3.4ある目的のために気温と日射を観測しそれを、インターネットを利用して遠方からの監視が出来ないかと考えていたところ、Webサーバー機能を持ったXPORTなるものがあることが分かったので、それとPC等を使った簡易(30分更新)な遠隔観測システムを作ることにした。日射計はずっと探していたがやっと比較的安価(それでも高い)で入手できたので、それを使用した。最初はXPORTだけで、インターネット経由の監視が簡単にできると早合点したが、イントラネット(ローカルLAN)内でしか見にいけないし、複数からのアクセスが出来ないので、XPORTはマイコン(シリアル信号)をLAN信号に変換しローカルLAN上でインターネットに常時接続したPCにデータを送り、そのPC上のVBAでサーバーにデータを定期的にFTP送信する構成とした。*インターネット側からXPORTへのアクセスは、私の理解不足かもしれないがグローバルIPアドレスの取得など結局自宅のPCをサーバー化することと同じことが必要なので、サーバー化しないで実現する方法をとった。XPORTを直接(無線)ルーターにケーブルで接続すれば不要。測定場所を自由に移動できるようにXPORTを無線LAN子局化するため使用。処理の流れ1秒間隔で温度・日射センサーを読みA/D変換して、気温0.2°Cステップ、日射2WステップでLCD表示させると共に、シリアルデータをXPORTに送ります。XPORTは、自動的にそれをLANデータ(ソケット通信)に変換します。LAN上のPCは、EXCELのVBAを利用しXPORTのIPアドレスとポート番号を指定してTELNET通信(仮想COMでも可)によりデータを受信します。それを、30分毎温度は最高・最低値を、日射は平均値を記録しグラフを画像化して、HPのサーバーにFTP送信します。1日分の記録がとれたら、グラフの日替処理およびデータをcsv保存します。basp21のコンポーネントを利用しています。AVRのソースおよびVBAともにそれほど難しいことはやっていない。basp21を使えば簡単にインターネットにデータ送信ができました。VBAのHPサーバーの設定やPCホルダーの設定を自分の環境に変えて下さい。''送信先フォルダAVRソース、EXCELVBAXPORT・ルーターの設定ルーターは、基本設定では自動的にローカルIPアドレスをXPORTに振ってしまいアドレスが固定されないのでPC側からアクセスがしやすいよう、IPアドレス固定するように設定した。今回:192.168.2.110XPORTの他の設定はデフォルトのまま。トリガーによるメール送信機能があるのでこれも試してみた。等の設定とトリガーは汎用I/Oポート出の設定はいろんな解説がすでにあるので、シリアルデータでかけてみた。温度が30°Cを超えたときに表示するよう、2バイトデータが’3’,’0’として確認したら、問題なく動作した。(10分毎自動リロードさせる)過去1週間を切替表示できるようにしてます。温度センサーは日射が直接当たらず風通しのよい場所、日射センサーは南向きの日当たりの良い場所と場所の選定に苦労した。無線コンバータと無線ルーターまでの距離は約30m程度あるが問題なく動作している。環境が変わったせいかエラー率が50%以上になるときもあるようになった。最初は接触不良やノイズの影響と思われ、接続確認やノイズ対策を施したが改善されなかった。温度の影響を減らすように、包装材で包んで保温をしたが効果がなかった。冷え込む夜間の発生率が多いので、校正付RC発振器周波数の温度変化により変動しその影響で、シリアル通信の速度が変化しエラーとなっていないか確認した。室温10度前後で問題なく通信できており気温が下がっても4MHzに近づく方向なので、影響しないと考えていた。今回気温0度程度で、エラーがある程度出ている状態で周波数を測定した。想定では、4MHzを下回っていると思っていたが以外にも4.18MHz程度で10度の時とほとんど変わっていなかった。いうことは、温度変化による影響はCPU側にはあまりなく(温度で自動補正?)、むしろXPORT側の通信速度の変動(低下)が大きくなっていると考え、CPUの速度をRC発振器周波数の校正により3.9MHz(-3%)程度にしてみた、するとエラーが全くでなくなった。(−数度〜+10度前後)真夏の気温でどうなるかわからないが、なんとなく良さそうだ。