SCILABでの波形生成&送受信


1)SCILAB関連

S1) 1周期16点のCOS波形の生成

-->Fs=1/16

-->n=0:Fs:10

-->x=cos(2*%pi*n)

-->plot2d(n,x)  

Fsは計算する点のSTEP

nに0から10STEP=Fsの値を設定(横ベクトル)

%pi は円周率 nと同一サイズのxベクトルが計算される

横軸をn、縦軸をxで2次元プロット

 

S2) 位相を0、πの2種類で、位相変調PSK

-->Fs=1/16

-->n=0:Fs:8-Fs

-->zero=[0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0]

-->one=[1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1]

-->phi=%pi*[zero one zero one one one zero zero]

-->subplot(2,1,1)

-->plot2d(n,phi)

-->subplot(2,1,2) 

-->x=cos(2*2*%pi*n+phi)

-->plot2d(n,x)
 

 

1シンボル16点なので、16回コピー

 

8シンボル分の位相情報を生成

たて2個のプロットの上側1番に

phiを2次元プロットする。

たて2個のプロットの2番目を指定

1シンボル=1秒として、2Hzの波に対して位相変調している

結果をプロット

 

S3) S2)と同様の変調を複素振幅Xで実現する場合

-->Fs=1/16

-->n=0:Fs:8-Fs

-->zero=[0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0]

-->one=[1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1]

-->phi=%pi*[zero one zero one one one zero zero]

-->X=exp(%i*phi) 

-->x=X .* exp(%i*2*2*%pi*n)     

-->param3d(real(x), imag(x), n)
 

 

 

 

ここまでは S2)と同じ

複素振幅Xの計算、値としては’1’か’−1’である。

exp(%i*2*2*%pi*n) の各要素とXの各要素を乗算している。(ドット*演算)

3次元曲線の描画

-->scf();

-->subplot(2,1,1)

-->plot2d(n,real(x))

-->subplot(2,1,2)

-->plot2d(n,imag(x))
新グラフィックスウインドウ生成

上段

xのREAL成分の描画(実信号)

下段

xのIMAG成分の描画(参考に!)

 

S4) 複素振幅でQPSKを実現する場合   

-->zero=(1/sqrt(2))*(1 + %i)*ones(1,16)

-->one=(1/sqrt(2))*(-1 + %i)*ones(1,16)

-->two=(1/sqrt(2))*(-1 - %i)*ones(1,16)

-->three=(1/sqrt(2))*(1 - %i)*ones(1,16)

-->X=[zero one two three]

-->plot2d(real(X), imag(X), style=-1)

-->square(-1,-1,1,1)
 

 

 

コンスタレーションの4点の複素数を生成。1シンボル16点としている。

4シンボルを連結

コンスタレーションをプロット
style = 0 , -1, -2, -3, ...で点の形が変わる。

 

-->scf();

-->n=0:1/16:4-1/16;

-->x=X .* exp(%i*2*%pi*n)

-->param3d(real(x), imag(x),n)
 

 

複素振幅 X と回転を乗算する。乗算することで、変調できる。

回転を3次元で表示

--> scf();

-->subplot(3,1,1)

-->plot2d(n, real(X))

-->subplot(3,1,2)   

-->plot2d(n, imag(X))

-->subplot(3,1,3)   

-->plot2d(n, real(x))
新グラフィックスウインドウ生成

1段目

複素振幅XのREAL成分

2段目

複素振幅XのIMAG成分

3段目

複素変調信号のREAL部=実際の送信波形

 

●ファイルからの実行

--> scipad();

エディターを起動し、
以下のようにコマンドを作成できる。

Execute -> Load into SCILAB で実行できる。

 

3−3)簡単な無線伝送システム

周波数変換と送信 (教科書 P43)

図3−7

ということで、ミキサーの入力は13oMHz近辺にある(スペクトラム)

ミキサー出力は800MHz540MHzの混合した波となる。

 

○帯域通過フィルターで、必要な800MHzあたりの波だけを通す。

○増幅し、アンテナより電波RadioFrequency RF信号を放出する。

 

●受信アンテナでRF信号を受け取る。800MHzの必要な信号のみをフィルターでとりだし、増幅する。

 

ということで、ミキサー出力は800-670=130MHz800+670=1470MHzの混合した波となる。フィルターで130MHzあたりの信号を通して、復調を行う

 

3−4) 多ビットを同時に送る (教科書 P44あたりに対応)

○4つの異なる波形から一つを選んで送れば、ひとつの波形を送るごとに2ビットの情報を伝送することができる。

 

 

3−5 ASK と スペクトラム

●スペクトラムとは何か

波の信号x(t)は上記のように多数の周波数成分からなる複素指数関数(回転関数)の和と考えることができる。

その周波数とそれに対応する複素振幅の大きさを取ったものが、スペクトラムです。

以下のように正の周波数と負の周波数になりますが、実信号では大きさは左右対称になります。

要は、スペクトラムを見ることで、その信号の周波数成分

 

図3−11

図3−12

図3−13

 

sinc関数(周期Tsごとに0となる関数)

○実はこの関数がデジタルとアナログをつなぐ関数!!!!

 

3−6 FSK と スペクトラム

図3−17

図3−19

 

3−8 位相を変えるPSK 

図3−28

 

3章終了


宿題3

(1)例として、シンボルあたり2ビットを位相を変調して送るQPSKの例を説明した。ASKでシンボルあたり2ビットを送る場合の送信波形を、SCILABを用いて生成せよ。 ASKで使用する振幅は図3−8を参考にせよ。

(2)2種類の振幅1,0.5のASKとQPSKを組み合わせれば、1シンボルあたり何ビットの情報を送信することができるか?また、この時の全種類のシンボル波形(実波形)をSCILABを用いて生成せよ。

(3)各シンボルごとに、3ビットを送りたい場合のコンスタレーション図を自由に作成し、その全種類の実送信波形をSCILABにより生成せよ。上記(2)と同様な解答は避けること。

(4)以下のx(t)のスペクトラム図を示せ! サービスで式の変更も示しておきました!