SIN@SAPPOROWORKSの覚書

C#を中心に、夜な夜な試行錯誤したコードの記録です。

擬似交換機の作成(その4)

1 独立したループの形成

一応完成を見た擬似交換機ですが、接続する電話機の種類によって両方の回線の電流値が変化してしまいます。 これは、2回線が1つの電流ループになっているため、一方の電話機の負荷によって、もう一方の電流も影響するのが問題でした。
今回は、回線ごとに電圧を印加して、トランスで交流的に結合することにしてみました。


図中の(その1)が前回の擬似交換機です。そして、(その2)が電流ループを分けた場合の考え方。
そして、(その3)は(その2)の両回線を交流的に接続したものです。
例として、電源が12Vでトランスの抵抗値が600Ωだとすると、回線には最大20mAになることになります。

2 電流値の測定と動作確認

電流値の測定を実施してみました。電源は安定化されたスイッチング電源です。
トランスは、モデムカードから外したものを使用しましたが、抵抗値が160Ωだったので、電流制限のために各回線にR1(0〜440Ω)を追加しました。
なお、測定に使用した電話機AとBは前回と同じものです。

測定のようすと結果は次のとおり。

予想通り、他方の回線に影響しない状況が確認できます。
前回と同様に20mA程度と考えると、抵抗100Ωぐらいになるのでしょうか。
電話回線の電圧は、オンフック時12.2V オフフックで5.4V程度となっています。

3 呼出信号の確認

呼出信号発生に使用するトランス及びFETですが、前回と同じ部品が揃わなかったので、若干、置き換えています。
調整の結果の波形の確認です。前回よりVp-pは大きくなっているようです。

198Vp-p +150V〜-48V
20Hz

4 回路図の修正


前回のものから大きく変化したのは、「2回線をトランス結合に変更」と「電源をスイッチング電源に変更」だけです。 しかし、前回と同じにしたはずなのですが、若干問題が発生し、一部回路に修正を加えています。

問題1 着信信号をしばらく使用しているとCPUが異常に発熱を始め暴走する。
対処として、信号発生回路のFETをPICから叩く部分にカップリングコンデンサを入れました。

無信号状態のFETを安定してオフにするため100KΩのプルダウン抵抗を置きましたので、ここでコンデンサと共にハイパスフィルタを形成することになります。
カットオフ周波数(1/2πRC)は1Hzになっています。

問題2 リレーをオンオフするとタイミングによってCPUがリセットする
こちらの対処としては、リレーを叩くCPUの出力ポートに整流ダイオードを追加しました。

どちらの問題も原因は良く分かっていないのですが・・・・予想されるのは、12Vと5Vの電源が共通アースになった事ぐらいでしょうか?

なお、交換機の動作にはまったく関係ありませんが、CPUが動作中であることを示すため点滅するLEDも追加されています。

5 実装


実装が完了した状況です。底に固定されているのが5/12Vのスイッチング電源【COSEL_LB(LB10) COSEL】以前に部品取りで取得したものです。 蓋側に固定されているのが、今回作成した基盤。デジタルな部分は、全面的にチップ部品で作成しました。
LEDがチップ部品になったため、基盤の裏面がケースの上から見えるようになっています。