2024年5月6日月曜日

夜中に異音が・・・

 ゴールデンウィーク中のとある3AM頃、カチャ・・・、カチャ・・・、カチャ・・・という間欠音で目が覚めた。

 音の出所を探ると、どうやらTVらしい。2秒程の間隔でカチャ・・・、カチャ・・・とリレー音がしている。電源の赤いLEDは点灯しているがリモコンで電源を入れようとしても反応がない。このTV は15年くらい前に買ったPanasonicのTH-L20R1という機種だ。録画しただけでまだ見ていない番組が多くあるので復活させたい。とりあえず主電源を切って夜が明けてから調べてみる事にした。

裏蓋を開けると15年分の埃が堆積していたので先ずこれを掃除した。電源基板は独立していたが、そこには操作スイッチやB-CASカードのコネクタも同居している。本体基板にはチューナやコネクタ類などが所狭しと押し込められている。前から気になっていたHDDは本体基板の2階にあり、日立製の2.5インチHDD、250GBのものが付いていてファンで冷却されている。15年も持ったのは凄い。

HDDのSATAケーブルが劣化していて触ると被覆がポロポロと剥がれ落ちた。ケーブルの長さは10cm程度だが、こんな短いSATAケーブル売ってるかな?


電源基板はAC100V、およびそれを全波整流したDC141V、それをスイッチングするMOS-FET等より構成される一次側(高圧部、HOT)と、トランスを介してTVの内部動作に必要な電圧を作る二次側(低圧部、COLD)に分かれ、その間は分離されている。


高圧部と低圧部の間はトランス、リレー、フォトカプラーで絶縁接続されている。カチャ音はこのリレーから出ているようだ。このリレーの役目は後述する。

基板全体を見ても脹らんだり液漏れしている電解コンデンサは無い。電源基板を取り出して電解コンデンサとダイオードのショートをチェックしてみるが、1個のダイオードを除いて異常は見られない。このダイオード(基板上の表記はツエナーダイオード)の両端をテスターで測ると方向性が無く抵抗値も0Ωに近く短絡しているように見える。そこでこのダイオードを基板から取り外し、単体で電圧をかけてみると正常であった(こういう場合電流制限付きの電源装置は便利だ。10mAに電流制限して電圧をかけるとツエナー電圧が分かる。このダイオードは10Vのツェナーダイオードのようだ。この手法はLEDの順方向電圧降下を調べるのにも使える)。

基板を見ると多くのテストポイントの印字があるが具体的な電圧の記載は全くないのでチェックの仕様がない。基板上にチェック用の電圧が記載されているメーカーは多いがPanasonicは相変わらず排他的である。

一次側ではDC141Vを制御する放熱板付きのパワーFET(2SK3869)も怪しいので取り外し、低い電圧をかけてテストしてみたが特に問題はないようだ。

全体的な回路の動作状況をチェックするため基板単独で電源を入れた状態で各電解コンデンサの電圧を測ってみると一次側のDC141Vはもちろん、二次側には24V、18V、8Vなどが出ており、一次側は機能しているようだ。ただし二次側で1個だけ0Vの物がある。こういった電源回路は保護回路が効いている場合は0Vになる事もあり、他のボードと切り離されている状態なので 保護回路が働いていることも考えられ、一概にこれが故障発見といえない事は残念である。デジタル回路に必要な5Vが無いがこれが0V落ちてるのか?或いは5Vは別の電圧からメインボードで作っているのか?

しかしこの0Vの電解コンデンサが繫がっているIC(SI-8105QL=降圧型のスイッチングレギュレータ)付近の基板が少し濃く変色している。

このICはかなり発熱しているようだ。入力に24Vが加印されているのに出力電圧が0V・・・怪しい。このICを取り外した後、スイッチング出力に2.0Vを加えてみて帰還電圧を測ると0.081V位あり、帰還率は1/24.6程度、これがICの基準電圧の0.5Vに相当するはずだから、即ち本来の出力は12Vに設定されている模様。とりあえずこのICを交換してみる事とした。値段は1個300円程度だがそれ以上の送料がかかるのは痛い。

なおこの電源回路は、たとえ主電源SWをOFFにした状態でも電源コンセントを差し込めば常にDC141Vを含め各電圧が出ている。このときAC100Vラインには120Ωのセメント抵抗が挿入されているので電源回路から大きな電力は取り出せないだろう。主電源をONにしてリモコンでTVをONにすると例のリレーによってこの120Ωの抵抗が短絡され電源がフルに稼働するようになっている。フォトカプラーは二次側から一次側への帰還に使われていて、負荷の変動に伴って一次側のスイッチングを制御しているようだ。

コンセントを抜いても電解コンデンサには暫く電荷が残っているので触って感電したり誤って回路をショートさせて壊さないよう取り扱いには細心の注意が必要である。とくに今回のように基板を取り出した状態では負荷が切り離されているので電圧が落ちるまで10分くらいかかる。急ぐ場合は100Ω程度の抵抗でを使って1個ずつ短絡させれば数秒で放電させることができる。

=====

ここで例のICが到着し、交換したが状況は変わらない。

こうなったら少し回路を追いかけてみる必要があろう。という事で SI-8105QLのイネーブル端子(7:EN)から手を付けてみた。直接細かいパターンを追いかけるのは老眼には辛いし、シルクスクリーン印刷に邪魔されて捗らない。こういう場合、私は次の様に写真を撮り
色調変換したパターンを印刷して追いかけている。

そうして雑紙の裏にこんな回路図を描いて検討する。

回路図を元に実際に電圧をかけたりして回路の動作を検証したが、単体では特に問題なく動いているようである。問題は本体基板側からの起動信号が来ていない事が分かった。そこで本体側の配線をトレースしたいが両面基板が物凄い密度(1mm幅に3~4本の配線を通してある)で配線されており電源部の比ではないし部品も両面実装、また部品名の印刷もない事から手が出せない。一応電解コンデンサやダイオードはチェックしたが特に問題はないようだ。

ここでギブアップとなった。ジ・エンド。


2024年4月22日月曜日

出入り検知器をPCB化する(その3)

  出入り検知器のソフトウェアであるが、最初はシリアルインターフェイスを通じてPCと対話する小さなモニターを作って、それを使ってPICの各ペリフェラルの機能を確認しながら次第に拡張していった。

 このやり方をこれからも続けるつもりである。昔、Intelの8ビットCPU(8080)のOS(Kernel)をアセンブラで書いたことがあり、PICでもOSを作った方が開発は楽だが、今更PICのアセンブラに手を出すつもりは無いのでKernelを作るのは無理だろう。

  現在のコンソール(モニター)コマンドは次の様になっている。


  そうこうしている内に次のバージョンのPCBの設計が終りに近づいている。それに合わせたソフトの設計も始めた。現バージョンで使っているSPIインターフェイスは設計がデバッグがやり易い反面PICの足(PIN)を多く使うのでPINが足りなくなる。新バージョンではそこをI2CやUARTに変えることで拡張性を担保するつもりである。またDMAやベクター割り込みを組み込めれば良いなと考えている。

 という事でソフトの説明はもう少し先送りする。

(続く)


2024年2月1日木曜日

出入り検知器をPCB化する(その2)

 その1で説明したPCBであるが、必要な部品を搭載して次の様になった。

次はソフトウェアの番である。

1号機の場合、PICに16F15325を使い、メモリー容量やピン数の関係でモニターを搭載することが出来なかったが、今回の18F27Q43ではモニターを作って、動作を監視しながらプログラムを組み上げていくことができる。18F27Q43のブロック図を次に示す。使用したモジュールは赤で示した。18F27Q43はDMAを内蔵しているが、これを使いこなすところまでは行っていない。

18F27Q43ブロック図
 

 ソフトウェアといっても2023年末の段階でソースファイルが44個に分かれており(うち約半分はヘッダーファイル)簡単に説明できる内容ではないので、開発の概略を述べる。 なおソフトウェアの開発に伴ってハードウェアを修正した部分もあるので、その都度言及する。

プログラム開発の最初の段階では割り込みを使わないで、使う予定の個々のモジュールの設定と動作を確認した。18Fシリーズは機能が豊富で、16Fシリーズと同じモジュールよりも作りは複雑である。例えばPIC16F15325のSPI1とPIC18F27Q43のSPI1の制御レジスタは次の様に違っている。

PIC16F15325のSPI/I2C制御レジスタ構成

 PIC18F27Q43のSPI1制御レジスタ構成

16FシリーズではSPIモジュールはI2Cモジュールと共用になっていて、そのためのレジスタを含んでいる。16Fシリーズが1バイト毎に処理する必要があるが、18Fにはカウンタがあり、纏まった単位で転送できるようになっているようだ。ただし、この場合はDMAと併せて使う必要があろう。何が言いたいのかというと16Fシリーズのプログラムが18Fシリーズでは使えず、18Fシリーズの機能を調べて作り直す必要があるという事である。

信号に関わるプログラムを書くとき、その変更によって結果がどう変わるかを知りたい場合があるが、PIC内部にプローブを突っ込んで直接観測する手段はなく、PPSを使っていずれかのピンに取り出す必要がある。多くのデジタル信号はPPSでいずれかのピンに取り出すことが出来るが、PPSでのピンへのマッピングに制約がある。そこで全ての信号を扱うことが出来るCLCモジュールを使う事で任意の信号を1つのピンに選択的に取り出すことが出来るので、それをオシロスコープ等を使って観測する事ができ、このほ方法は初期のデバッグに役に立った。

 ・・・そうこうしているうちに、ソフトの開発に伴っていくつか変更点が生じたので次のバージョンの基板を発注した。この基板を最低要件の5枚発注して送料込みで3ドル以下である(基板は50%ディスカウント)。これなら毎週新バージョンを発注してもよいくらいである。

1週間ほど経って基板が届いたので早速部品を実装し動作を確認した。特に問題も無く、上手く出来たようである。


ソフトの話は次回以降に回す。

(続く)