(K3)PIC16F819 抵抗負荷mW計 

UP dated 2011.7.21

●PIC16F819 デジタル3Digits 抵抗負荷mW計=プログラム呼称mVmW

表示部分の回路、基板はマイコンチップPIC16F819電圧計と同じで PIC16F819のプログラムのみを mVmWとすることにより、50Ω抵抗負荷へのRF電力をmWで表示します。 DIP-SWの切り替えにより、dBm表示もできます。

測定範囲は、mW表示で 0.01〜999mW。外部に-20dBアッテネータを付けた時用に、+20dB加算した表示が可能。 

DIP-SWの切り替えは、回路図の表を参照ください。


・写真は、SW-1=OFF SW-2=OFF 、測定端に +0dBm=1mW(と思われる)RF電力を入力している状態です。
・その状態で SW-1=ON とすると 0dBm の表示に変わります。ケースはタカチYM80(W80×H30×D50mm)に組み立てました。 

・PIC16F819プログラム済みのものをご入用の方は、以下ページをご覧ください。 ◇PICの頒布基板付


・写真は、50Ω負荷〜LM358 OPアンプ部を蛇の目に組み込んだ外観です。上のケースの中に組み込まれています。



・下の写真は AD8307dBm計(下)と このmW計(上)に 2分割した同じ入力を加えた状態です。
・左側は、-15.2dBm=0.03mWが正しい電力=AD8307(下)に対して、mW計(上)では0.01mWを表示しています。
・右側は、-10.0dBm=0.10mWが正しい電力=AD8307(下)に対して、mW計(上)では0.09mWを表示しています。
・0.1mW以上では誤差10%以内ですが、それ以下になると誤差が増えます。0.01mWを中心に誤差を小さくするためには、LM358のpin2の抵抗4.7kΩを もう少し小さい値、1kΩ程度に調整する必要があります。

●回路

・PICデジタル3Digits電圧計部分は、基本的に回路は同じですが、電力計とするために、Ref+電圧を+5Vに合わせます。
・RF検波用ダイオードは、順方向降下電圧の小さいショットキーバリアダイオード(SBD)を使います。本回路では、1SS108を使いましたが、それ以外の場合は、LM358-Pin2の4.7kΩの値を調整する必要があります。



・単独の測定器として DCプラグジャックで ACアダプターからB+電源を供給する場合は、正負の極性(芯側が正か負か)に注意します。
・ACアダプターによって、芯側が正か負かは、ばらばらです。誤接続をするとICが破損します。


・左図のように電源供給部にブリッジを配置して、いちいち極性を確認しなくても良いようにするのが安全です。

・少なくとも右図のように、逆接保護ダイオードを付けるようにします。

●LM358 増幅部について

・RFサインカーブの 最大値をEmとすると その実効値Eaは、Ea =Emx √2/2。Emの0.707倍となる。

抵抗R(Ω)で消費するとき、そのRF電力は、実効値を使い
P(W)=(Ea)^2 /R =(Emx √2 /2)^2 /R =(Em)^2 x 1/2R  --(1) と表せる。Rは通常50Ω。
負荷抵抗50ΩのRF電圧を SBD 1SS108で整流し、その電圧VinをLM358で 1倍増幅して出力Pin、Voutに RF最大値Em が出力される。その電圧を16F819で測り、プログラムにより 上記(1)式の計算をさせる。

と書くと、何も課題(問題)がないことになりますが、
この時に、RF最大値 Emの読み値は、Vin または Voutですが、整流ダイオード 1SS108の 順方向電圧ドロップ分、ΔVだけ誤差が発生します。

 Vin < Em となり、ダイオードの型番、RF電力値により誤差 ΔVの値はさまざまです。Siダイオードを使うとΔV≒0.7V、ゲルマダイオードあるいはSBDでΔV≒0.3V となり、かつ流れる電流により 誤差ΔV=0.1〜0.5Vというように変化します。

・1mWのときのEm=317mVに対し、誤差ΔV=0.1〜0.5Vということになると 一体何を測っているのかわからなくなります。
・この 誤差を補正するのが、LM358のPin1〜Pin2間の 1SS108 の役目です。50Ωの整流用と 同型番、同ロット品を使う。

・LM358の増幅率は、Pin2に接続しているR2=4.7kΩと 1SS108のそのときにかかる電圧と電流できまる抵抗値 で決まる。

・1mW(と思われる電力)を入力したときに、Pin3(Vin)=268mVであった。ダイオードの順方向抵抗が理想的に0であったとすると、 Pin1(Vout)=317mVでなければならない。 なのでLM358の増幅率は、317/268=1.18倍。そのとき、1SS108には、左図の特性の○点位置の電圧ドロップ=317-268=49mV, 電流=268mV/4.7kΩ=0.057mAとなっている。

すると 1SS108の抵抗値R3=49mV/0.057mA=0.86kΩ。LM358の増幅率 Av=(R2+R3)/R2=(4.7+0.86)/4.7=1.18倍。すなわちPin3=268mV がPin1出力で317mVとなる。 (ダイオード型番が異なるとこのような その都度ゴールシーク計算をしなければならない)
・この 誤差補正は、P=1mW付近での補正であるので、Pがこれからずれると補正値を変えなければならない。P=0.05mW程度までは、自作計測器としては許容できる範囲であろう。


● プログラムソース

プログラムソースは、マウス右クリックで「対象をファイルに保存」を選んで、ダウンロード。
 ◇ダウンロード mVmW.hex

・ここで プログラムのアルゴリズムについて 概略の説明をします。
・+Refと同じ5.0Vの電圧(LM358の出力Pin=10V)が RA0ピンの入力されたときに PIC内部のADコンバータは、1023(10bit)の値をADRESとして読み込みます。
・その ADRESを 下式の vとして計算するプログラムとしています。

===========================================================================================
mWから dBmへの換算は、次のようにしている。

  ・プログラムの始めに、log変換参照表(下表;logの値は、255までの数値を有効に使うため250倍している)を埋め込んでいます。
   ・例えば、176mWのとき、上位2桁17-10=7 をWorkingレジスタに入れて、tab_logをcallします。するとpoi=7(log17)の 58[250x(log17-1)]の値を持って帰ります。
  ・そして 上位2桁17-10=7の一つ上の値 64(log18)も持ち帰ります。
  ・その後、176mWの最小桁 6の補間挿入をします。(58x4 + 64x6)/250=2.464 ∴DBM2=2, DBM3=4
  ・また +20dBm<176mW<+30dBm であるので dBmを3桁 DBM1+DBM2+DBM3 で表すとき DBM1=2 ∵(+20dBmの2)となり、換算結果は+22.4dBm。



"ひとつ前に戻る"には、ブラウザの「戻る」で戻ってください。
◇ホームページ インデックスへ戻る