IQ直交変調器を使っても良いが、その(乗算と加算等の)演算をCPU内の演算として実装すれば、AD変換器とCPU/DSPによる複素数の数値演算とDA変換器により、USB波、LSB波 それぞれの電波・電圧がダイレクトに生成できることがわかった。
https://www.youtube.com/watch?v=Z0VQ_QQp5TA
I'm studying the design method for the future. 現代のラジオとエレクトロニクス設計法を開発・研究してます。
IQ直交変調器を使っても良いが、その(乗算と加算等の)演算をCPU内の演算として実装すれば、AD変換器とCPU/DSPによる複素数の数値演算とDA変換器により、USB波、LSB波 それぞれの電波・電圧がダイレクトに生成できることがわかった。
https://www.youtube.com/watch?v=Z0VQ_QQp5TA
Noboru, Ji1NZL
目的:
任意のサイン波(正弦波)による交流電圧または高周波電圧式は、複素数形式の電圧式で表現できることを明らかにする。
解決しようとする課題:
文献[1]より、
sin(ωt)={exp(jωt)-exp(-jωt)}/(2j) …(1)
一方、オイラーの公式より、式(2),(3)が成り立つ。
j=exp(jπ/2) …(2)
-1=exp(jπ) …(3)
式(2)を式(1)へ代入すると、
sin(ωt)={exp(jωt)-exp(-jωt)}/(2exp(jπ/2))
={exp(jωt-jπ/2)-exp(-jωt-jπ/2)}/2
={exp(j(ωt-π/2))-exp(-j(ωt+π/2))}/2 …(1)’
式(1)’ に、式(3)を代入すると、
sin(ωt)={exp(j(ωt-π/2))+exp(jπ)exp(-j(ωt+π/2))}/2
={exp(j(ωt-π/2))+exp(jπ-j(ωt+π/2))}/2
={exp(j(ωt-π/2))+exp(j(-ωt-π/2+π))}/2
={exp(j(ωt-π/2))+exp(j(-ωt+π/2))}/2
=(1 / 2){exp(j(-π/2+ωt))+exp(j(+π/2-ωt))} …(4)
式(4)は、交流電圧V(t)=sin(ωt) は,複素数座標(Re, Im) 上で、半径1 /2 の円周上を、
一個の複素ベクトル電圧が、初期座標点(0, j / 2 )として半時計方向に、角速度 +ω[rad/s] で回転し、
もう一個の複素ベクトル電圧が、初期座標点(0, - j / 2 )として時計方向に、角速度 -ω[rad/s] で回転する。
それら、2つの複素ベクトル電圧を図示 (動画)すると、それぞれが複素共役の関係にあり、加算した複素電圧は、実数軸上の単振動 -1 ≦ Re = sin(ωt) ≦ +1 となっていることを意味する。
式(4)の複素数単位電圧を一般化すると、
V(t)=Eosin(ωt)=(Eo / 2){exp(j(-π/2+ωt))+exp(j(+π/2-ωt))} … (5)
{Eo: E0 ∈R , R は実数の集合}
式(5)は、任意のサイン波(正弦波)によるペアの複素交流電圧ベクトルまたは複素高周波電圧ベクトルが、それぞれが複素共役の関係となり、それらを加算した複素電圧が、
実数軸上の単振動 -Eo[V] ≦ ( Re = Eosin(ωt) ) ≦ +Eo[V] となることを意味する。
一方、
exp(j θ)を式(4)の両辺に乗算すると、
exp(jθ)sin(ωt)=exp(jθ){exp(j(-π/2+ωt))+exp(j(+π/2-ωt))}/2
= (1 / 2)){exp(j(-π/2+ωt+θ))+exp(j(+π/2-ωt+θ))} …(6)
複素数座標≡(Re, Im)にて、式(6)は実数軸上の単振動 -1 ≦ Re = sin(ωt) ≦ +1
が、複素数座標上で時計方向に+θ[rad] 傾けた複素数座標上の直線軸上を単振動することを意味する。
参考文献:
[1]トランジスタ技術2002年4月号,CQ出版社p61,(45)式
[2]京都大学OCW “波動論”,複素数領域での単振動微分方程式の解法
[3]東京工業大学 松澤研究室「なぜ複素数で電気信号を表すのか」2017
「AM/FM信号は数値演算で復調可能である」:変調式と復調式
[4]アナログ電子回路, 筑波大学
初版;2022/06/06
Rev.0.1: 文章推敲、内容変更なし 2022/06/08
「QR コード」は、「リード・ソロモン符号」による符号化と、リトライ(データ再送)を必要としない前方エラー訂正手順(FEC)を含むプロトコルが使われているとのことです。
従来のシリアル・パケット・データ通信では、データエラーが発生した場合、パケット・フレーム単位のデータ送信をしなおすリトライ手順が使われてきましたが、「QR コード」では、こうした再送が不要となる革新的進歩がありました。
今回は、「リード・ソロモン符号」の入門として、トランプを使ったリード・ソロモン符号の復号化とエラー訂正法入門について、小学校3年生でもわかる簡単なデモ、という紹介の文献[1]を読み、読みにくかった部分をとりだして説明を再構成し、同文献に記述漏れのあった「剰余計算表」を新規考案して提示し、
(1)4枚のカードに、2枚の冗長データ・カードを加える符号化方法
(2)それら6枚のカード中に1枚のカードの数字データが伝送路で化けた場合に、それを訂正する復号化手順
とするデモ実例を以下に要点だけを要約してまとめました。
(1)符号化方法(エンコード方法)
ここでは、次の4個(4バイト)のカード表現のデータに、2個(2バイト)の冗長データを追加した符号を送信するものとする。
[1]誤り訂正技術のしくみのデモンストレーション例
―小学校の剰余計算の学習のみを前提とするリード・ソロモン符号の変形例―
A Demonstration Example of Mechanism of Error Correction ―A Modification of Reed-Solomon Code Assuming Only Learning of Remainder Calculation at Elementary School―
中村博文先生, Hirofumi NAKAMURA (平成 29 年 10 月 2 日)
(Respective Copyright Reserved)
[2]QR code 概説メモ
https://www.youtube.com/watch?v=x2bqa5yv9KI
[3] オープンソースのQRコードライブラリ開発プロジェクト
履歴:
汎用小型トランジスタ2N3904 (東芝 2SC1815とほぼ互換で、より高性能) 2石と、オーディオアンプIC LM386 1個だけで、100mWの7MHz トランシーバができる、と話題と人気をよんだ米国製PIXIEの送信動作と、実機動作で初めてわかったAM放送810KHzの混信(通り抜け)現象が、LTspiceでそっくりに計算で再現できることがわかりました。
ベッセル関数(第一種)の正体の謎を探ることと、FM復調理論の数学的基礎のレビュー結果
目的:
FM変調の技術解説に頻繁に登場する「ベッセル関数(第一種)」とは何者なのか、その正体について、数学的性質と電気的な定性的・本質的な意味を明らかにする。
解決しようとする課題:
(1)FM変調の技術的解説に現れる「ベッセル関数(第一種)」の数式を明示すること。
(2) #(1)に関する「ベッセル関数(第一種)」の持つ数学的性質と電気的意味とを明示すること。
(3) 各種の文献に見られる同関数の未定義状態や意味のわかりにくさに伴って発生するモヤモヤの正体を明らかにする。
(4)FM変調を数式で表現し、そこから「ベッセル関数(第一種)」を導出を試みる。
結論:
(1)入力する低周波信号を βsin(ωt) と、角周波数ωと振幅βのsin波と特殊化する時、
FM変調波は、位相変化量を βsin(ωt)[rad]とする位相変調の式として、
Vfm(t)=Acos(Ωt+βsin(ωt)) , ここで加法定理より
=A{cos(Ωt)*cos(βsin(ωt)) - sin(Ωt)*sin(βsin(ωt)) }
と書ける。
この式の意味は、「互いに直交関係にある高周波キャリア信号 Acos(Ωt), Asin(Ωt) に、三角関数の入れ子構造になったところの、互いに直交関係にある 低周波FM変調信号 cos(βsin(ωt)), sin(βsin(ωt))のそれぞれを、三角関数に三角関数を入れ子にした関数とし、アナログ乗算して、電波電圧信号Vfm(t)を送信すること」、の意味と解釈できる。
ここにおいて、直交関係にある低周波 FM変調信号 cos(βsin(ωt)), sin(βsin(ωt))のそれぞれは、前者が、変調用基本波 βsin(ωt) に対して、偶数倍の高調波信号の無限級数となり、後者が、奇数倍の高調波信号の無限級数となって、FM変調波として周波数帯域が広がる特性を持つ。
それらの直交関係にある低周波 FM変調信号 cos(βsin(ωt)), sin(βsin(ωt))のそれぞれが、FM変調信号の振幅電圧最大値(係数)について、後述する第一種ベッセル関数(第一種) Jn(β) と呼ばれる関数値で表現できる、と考えられる。
もともとマイク等から入力する低周信号は、特殊化した一つの理想的sin波として、
x(t) = βsin(ωt)
と書ける。 {一般式は,x(t)=Σ(αi・sin ωit +βi・cos ωit) }
これを高周波キャリア信号波 Acos(Ωt) の位相 Ωt に加算して(位相変調として)載せると、
高周波のFM変調波は、次式で書け、
Vfm=Acos(Ωt+βsin(ωt)) 、加法定理により、
=A{cos(Ωt)*cos(βsin(ωt)) - sin(Ωt)*sin(βsin(ωt)) } ・・・式(1)
と書ける。
この式(1)による高周波のFM変調波電圧式について、
sin関数の入れ子の式が現れている。
cos(βsin(ωt)) 、sin(βsin(ωt))
この2つの三角関数を入れ子構造にする式の演算値は、
低周波基本波 βsin(ωt) に対して、
sin(βsin(ωt)) が、低周波基本波とその奇数倍の高調波成分の無限級数式、
cos(βsin(ωt)) が、低周波基本波の偶数倍の高調波成分の無限級数式となる。
そして、それら振幅電圧値が、以下に示すベッセル関数( 第一種)Jn(β)の値となる。
上の計算式の3行目の式 Jn(β)が、ベッセル関数( 第一種)の式、
その下の式、
cos(βsin(ωt)) の右辺が、低周波基本波の第二高調波以降の偶数次高調波の無限級数式。
さらにその下の式、
sin(βsin(ωt)) の右辺が、低周波基本波と、第三第高調波以降の奇数次高調波の無限級数式である。
(2) 「ベッセル関数(第一種)」の持つ電気的意味と数学的性質
前述の式のように、ベッセル関数Jn(β)の2Jn(β)が、FM変調波帯域内に存在する高調波成分の角周波数 2nω、または、(2n+1)ω に対する、振幅電圧最大値を意味する。
cos(βsin(ωt)) の右辺が、低周波基本波の第二高調波以上の偶数次高調波の無限級数式で、
さらにその下の式、sin(βsin(ωt)) の右辺が、低周波基本波と、第三第高調波以上の奇数次高調波の無限級数式を表現する。
よって、角周波数ωを横軸にとり、角周波数 2nω、または、(2n+1)ω に対する、振幅電圧最大値 2Jn(β) を縦軸にとりグラフを描くと、FM変調波に対するそれら高調波成分の分布状態とFM変調波の帯域幅を知ることができる。
(3) 各種の文献に見られる同関数の未定義状態、意味不明の記述、わかりにくさに伴って発生するモヤモヤの正体
おそらく、各種文献に、説明の論理や理解度にばらつきがあり、過去文献のコピペのような切り貼り編集方法で書いているので、読んだ側では意味不明の混乱した理解状態に陥り、何かがわからないが、何がわからないのかもわからない気分、と、モヤモヤと感じるのではないか(?)と思われる。
ここに、文献から読み取れないか、わかりにくいFM変調の性質を、次に列挙し明示する。
ベッセル関数(第一種)が、突然、天下り的に文献に現れるが、ベッセル関数が持つFM変調電圧に関わる電気的意味が説明されていないので、文字通り、説明そのものが無いゆえに、その関数の意味と、使用する目的が全くわからない。
(理解するための説明が無い、結果だけが示される説明法になっている。)
=> ベッセル関数Jn(β)を用いた演算値である、 2Jn(β)の値が、角周波数 2nω、または、(2n+1)ω の正弦波に対する、振幅電圧である。
FM変調波は、計算可能な周波数帯域幅を持つ。
その周波数帯域は、FM変調のために入力する低周波信号 βsinωt の奇数倍の高調波成分と、偶数倍の高調波成分により構成されている。
このFM変調電波の高調波成分の存在と、その周波数帯域の性質の説明がうまく伝わっていなかった。
なぜ三角関数 sinx, cosx で、位相の変数 x が時刻 t の線形の式(直線の式 ωt+θ)の場合{ sin(ωt+θ), cos(ωt+θ) }は、単一角周波数ωのsin波またはcos波になるのに、三角関数sinを入れ子構造にすると、整数倍の高調波信号である歪み電圧成分が出てくるのか?
この理由は、数学的に三角関数 six, cosx が、マクローリン展開[5]できて、その式が、一次、二次、三次・・・の級数式が非線形となっている性質と、x:=sinωt として、非線形の性質を持ち、さらに、その マクローリン展開式によるべき乗の非線形演算の必然的な演算結果に従っていることが、FM変調に内在する原理的な本質的原因である。
例えば、マクローリン展開式のx^2 の二次の項は、
x^2=(βsin(ωt))^2 =β^2{sin(ωt))}^2 =β^2{(1/2){1-cos(2ωt)}}
・・・このように2倍高調波成分と直流電圧成分となる。
同様にx^n=(βsin(ωt))^n ・・・これは、第n高調波以下の多重の周波数成分を含む。
この計算規則が、三角関数を入れ子構造にすると、無限の整数倍の高調波成分が現れる性質を、言葉による数学的な説明の曖昧さを完全に除去し、数式とその演算値で、明示的に説明できる。
#(c)で書かれた低周波の高調波成分が実在するので、FM変調波をFMラジオで復調したら、高調波歪み成分が現れ、音質が悪くなるのではないか? というFM復調方式への心配の気持ちが起こる。
=>
FM変調波の復調方式は、入れ子構造の低周波信号sin(βsinωt)とcos(βsinωt)のどちらかの信号から、sin関数の逆関数 arcsin関数、またはcos関数の逆関数 arccos関数を用い、arcsin(sin(βsinωt))=βsinωt の演算か、arccos(cos(βsinωt))=βsinωt の演算を行えば、復調時の高調波歪みが数学的に完全に無い演算結果が βsinωt となる。
これは、もともと歪みの無い低周波信号そのものを数値演算でデジタル値の信号処理できることを意味する。
現代のマイコンやDSPを使った数値演算復調では、この歪みのないFM復調が実現可能になっていると推測できる。(現代のIC化されたFM/AMラジオ回路やソフトウェアはブラックボックスのため、内部論理/設計内容は全く見えなくなっている。)
一方、従来のアナログ式FM復調では、x ≒ sinx , x ≒ arcsinx のアナログ回路で近似演算する性質[1]を使っているため、x が0から大きく離れる振幅の大きな低周波信号を入力されたFM変調波の復調電圧には、マクローリン展開の一次式近似計算誤差による歪みが存在しているが、これまでは、暗黙の曖昧な理解度において、実用上微小な電圧歪みとして無視され、二次式以降の計算誤差は切り捨てられ、説明されてこなかった経緯があるようである。
(音質が良いと言われてきた従来のアナログ式FM復調ラジオは、復調音に、理論的に必ず二次以上の高調波歪み成分が残留している。)
ここにきてFM変調におけるベッセル関数の周辺で感じる、モヤモヤの霧が晴れて、目も前の視界がクリアに見えるようになった。
(4)FM変調を数式で表現し、そこから「ベッセル関数(第一種)」を導出を試みる。
調査した範囲では、この数学的導出を行っている計算例は、現在見つかっていない。
不完全ながら、ここでは前述のようにsin(x)関数、cos(x)関数をマクローリン展開してから、x=βsin(ωt) を代入すると、文献[1]にあるベッセル関数式(第一種)と非常に良く似た級数展開式が得られることが、以下の計算過程により判った。
関数 f(x)=sinx のマクローリン展開を行うと、
sinx=x -1/(3!)・x^3 +(1/(5!))・x^5+ … +(-1)^n/(2n+1)! ・x^(2n+1)+ …
= Σ(n=0 to ∞) (-1)^n/(2n+1)! ・x^(2n+1) ・・・式(2) を得る。
式(2) で、 x := βsinωt を代入すると、
sin(βsin(ωt))=Σ(n=0 to ∞) (-1)^n/(2n+1)! ・(βsinωt)^(2n+1)
=Σ(n=0 to ∞) (-1)^n・β^(2n+1)/(2n+1)! ・(sinωt)^(2n+1) ・・・式(3) を得る。
同様に 関数 g(x)=cosx のマクローリン展開を行うと、
cosx=1 -1/2! ・x^2 + 1/4!・x^4+ … +(-1)^n / (2n)! ・x^(2n)+ …
= Σ(n=0 to ∞) (-1)^n / (2n)! ・x^(2n) ・・・式(4) を得る。
式(4) で、 x := βsinωt を代入すると、
cos(βsin(ωt))=Σ(n=0 to ∞) (-1)^n/(2n)! ・(βsinωt)^(2n)
=Σ(n=0 to ∞) (-1)^n・β^(2n)/(2n)! ・(sinωt)^(2n) ・・・式(5) を得る。
式(3)は、低周波基本波 sinωt の角周波数ωの奇数倍の高調波を含む電圧を加算した無限級数、式(5)は、低周波基本波 sinωt の角周波数ωの偶数倍の高調波を含む電圧を加算した無限級数となる。
ここに、ベッセル関数( 第一種)[1]と完全に同型ではないが、 それと大変よく似た電圧係数と、βsinωt を基本波として、その奇数倍の高調波の無限級数と、偶数倍の高調波の無限級数が求まった。
残された課題:
1 式(3)、式(5)が、ベッセル関数(第一種)を係数とするβsinωt を低周波基本波として、その奇数倍高調波の無限級数と、偶数倍高調波の無限級数であることの数学的正しさを証明を要すること。
{式(3)(5)をベッセル関数(第一種)に変形する計算法が現在不明である。
このため文献[1]に記載されたベッセル関数が本当に正しい計算式になっているのか確証がとれていない。
ただし、ベッセル関数と式の形は異なるが、実用計算上は、式(3)、式(5)を使って、この式で、高調波成分と周波数帯域を数値計算可能である。}
2 Vfm(t) の式中、位相内の∫ x(t)dt は、なぜ、低周波入力信号x(t)を時間積分する必要があるのか明らかにする。
付録;
参考文献/参考資料:
[1]アナログ回路 電子教科書 analog_sys.pdf 新原盛太郎様
[2]NI社様 FM変調資料
[3]FM変調解説資料 高知大学殿
[4]MIT OCW 6.003 Signals and Systems, “Modulation 2”
[5]高校数学教科書 数Ⅰ/ 数Ⅱ / ⅡB /Ⅲ (文科省認定済)
三角関数,二項定理,三角関数の倍角の公式、テイラー展開、マクローリン展開 等
2020/09/05 ドラフトの暫定版投稿
以前、このブログに公開したクワドラチュアFM復調回路について、復調されるベースバンド信号の特性が、ごく簡単な方法でできることが判りました。
改良方式:
455KHz IFT の同調周波数を、キャリア信号のセンター周波数455KHzから約3KHz 下げる。このことにより、F/V変換回路の傾斜(スロープ)が線形特性に近似できるようになり、音質が大きく改善できます。
モトローラ社IC MC3357 で採用され、通信機にも広く普及した回路ですが、その動作原理が、長年、何も説明されないまま、時代が経過していたと思います。
以下、改良したクワドラチュアFM復調回路の、過渡解析(図1)とAC解析結果(図2)を示します。
図1 クアドラチュアFM復調回路の過渡解析結果
説明:
中心周波数455KHz キャリア波の正弦波に、変調周波数1KHz (ベースバンド信号)のFM変調波を発生させ、10KΩの抵抗を通過した信号V1 と、コンデンサ10pFを通過して451KHz同調周波数とするLC共振回路に接続する信号V2 を乗算回路に入力。乗算されたアナログ電圧を、RC構成のローパスフィルタを通過した低周波信号V(OUT)を出力させます。
結果として、V(OUT)端子に、綺麗な形の1KHzの正弦波に近い復調信号が得られています。FFT解析結果は、復調信号に2次、3次・・・以上の高調波歪み信号が含まれていることを意味します。
図2 クアドラチュアFM復調回路のAC解析結果
説明:
端子V1, V2, V(OUT)の利得と位相ずれの量を、周波数軸400KHz〜500KHz帯域で見ています。
注目すべき点は、V2端子の利得の傾斜が455KHz中心にほぼ直線近似できる右肩上がりの傾斜(スロープ)特性を持っていることです。この直線近似される利得の傾斜特性から、入力されたFM変調波の周波数変化が、電圧の振幅変化に変換されることです。
このAC解析結果から、従来のクワドラチュアFM検波の説明では、クワドラチュア(quadrature)=直交の意味について、90度位相のずれた信号と、もともとのFM変調波を乗算させる、とされてきましたが、説明と命名に誤りがあったことがわかります。
参考文献
[1]モトローラ社 MC3357 FM復調IC データシート
[2]SANYO社 LA1800 AM/FM radio IC データシート
[3]SANYO社 LA1845 FM STEREO/ AM Radio IC データシート
[4]JRC社 NJM2550 データシート
https://www.njr.co.jp/products/semicon/communication_ic/fm_if?cat=4050
[5]JRC社 NJM2590/97 データシート
[6]東芝 TA7792F AM/FM radio IC データシート
[7]東芝 TA8164P AM/FM radio IC データシート
[8]TRIO/Kenwood社 TS-670回路図
[9]インターネット上のquadrature FM decoder 資料、位相変化を利用した復調器
[10]OP Ampを使った位相シフト回路{本ブログ内記事中}
[11]Si4734/4735 データシート
[12]NS-73 データシート
[13]MIT OCW 6.003 “Modulation 2”
[14]FM変調講座資料 高知大学