天気も良く、少し日が傾いてから同軸ケーブルの交換作業を始めた。5d2Vから8DFBへの交換と共に埋設の検めである。
既設ケーブルは、埋設部で漏水冠水していた、埋設していた中継コネクタがやられていた様だった。接続部分の接着を再確認して今回は中継無しでということでもあるが防水に越したことはない。
エルボーのパイプを買ってきたので明日朝から遣り替える予定
スペック割れの嫌疑をかけられていた中華市場のDS18B20ですが、問題解決いたしました。
結論は、使い方のスペック割れで1Wireのスペックを満たしていないソフトウェアで利用していたことが判明しました。オリジナルのソフトウェアではリセットパルスが333uSで480uSの規格を割っていました。この問題は、おそらくシステムクロックの動作速度変更を行った段階で、1Wireのタイミング修正を行わなかったことに起因していると思われます。システムクロックの周波数からソフトウェアタイミングが自動的に算定されるようなdefineを指定することで解決されるはずですが、組み込み案件では、こうした問題で実機確認で終わりがちなので注意が必要ですね。
あいにくと8952(8051)のコンパイラでフリーで使えるものにはコードサイズの生成制限などがあり、とりあえず逆アセンブルしてHEXファイルからパッチすることにしました。
当該の1WireのバスラインはAT89S52のPort1のビット0を使っているので書かれているMCUかからイメージファイルをHEX形式で吸い出して、それからD52.EXEでリバースアセンブルして二箇所の修正ポイントを割り出して、リセットパルスとタイミングパルスのコードをバイナリで修正しました。結果は解決となりました。ただしくロジアナも解釈メッセージをつけて、デバイスが応答しているのも確認とれるようになりました。
MAXIMのDS1302です。最近扱いの時計キットなどに入っているのでパーツとして在庫しました。単価50円
バーチカルアンテナの復旧工事の過程で、同軸ケーブルの断線が判明した。8DFBへの移行を考えて調べたところ割安なお店を見つけた。取り急ぎ所要サイズの30mを手配したのだが、m辺り286円だった。送料込みでも、9445円と破格だ。同様に10DFBもあるらしい。
不良と思われるDS18B20群を並列給電したままの形でマルチドロップしての動作確認をしています。
検査に供したのは、DallasSemiconのライブラリーにあるTesterスケッチを用いて行いました。出力フォーマットのみ変更しています。
使い方として、NGになる要因追求はするのですが、精度観点でいかがなものかという問い合わせがありますので、16本(時計アプリではEor2となる不良品)を用いて行いました。
22度から23.5度という測定結果が得られました。精度が±0.5度ということですので達成されているのかも知れませんね。
こうやってみると、一通り動作しているようにも見えるので、不良条件の特定がなかなか決めてがなくなってきました。
アンテナベース部品は、出来上がっていたので天候もよく、アマチュア無線をされている知人の来訪もあり手伝ってもらいながらアンテナ再設定を行った。
再構築完了後、中華無線機に接続するも思ったように受信ができない。アンテナの不具合のようだ。
バーチカルの給電点はマウントで絶縁されていて内部で同軸のM座コネクターに配線されているのだが、内部のはんだ付けが外れていると考えて再度倒して確認したところはんだ付けが外れていた。ガス半田ごてを用いて苦労しつつも再建をしてコイルで外部終端していることからM座コネクターの点で導通があることも確認できたので、内部問題なしと判断した。
ところが、解決改善をみないのである。給電点で導通確認をしたので、ケーブル端でも確認できるはずなのだが、こちらでは導通が取れない。同軸が断線しているようだ。
5DFBを20mほど引き回しているので、ベクトルネットワークアナライザーを用いてケーブル長確認を用いて断線個所の判断をすることにした。
やはり、ケーブルが途中で断線しているようだ、およそ16mの点とのこと。地中埋設部分からの立ち上がり部分での問題のようだ。