Unipolar Encoding Technique:
import numpy as np
import [Link] as plt Example 1:
arr=input("Enter all bits with space in one line: ")
f=list(map(int,[Link](' ')))
print("Unpipolar output for input: ")
unipolar=[0]
if f[0]==1:
unipolar = [1]
else:
unipolar = [0]
for i in range(0,len(f)):
[Link](f[i]) Example 2:
time = [Link](0, len(unipolar))
[Link](321)
[Link]("Unipolar Encoding")
[Link]("Time")
[Link]("Bit")
[Link](time,unipolar)
plt.tight_layout()
[Link](time)
[Link]([0,1])
[Link](0,len(f))
[Link](True)
[Link]()
Polar NRZ-L technique:
from copy import copy
import [Link] as plt
import numpy as np Example 1:
[Link]()
f = [0, 1, 0, 0, 1, 1]
[Link](321)
nrz_f=[1 if f[0]==0 else -1]
for i in range(0, len(f)):
k = f[int(i)]
if k == 0:
nrz_f.append(1)
Example 2:
else:
nrz_f.append(-1)
t = [Link](0, len(nrz_f))
nrz_t = t
[Link]("NRZ-L Encoding")
[Link]("Time")
[Link]("Bit")
[Link](nrz_t, nrz_f)
[Link](nrz_t)
[Link](y=0, color="r")
[Link](0, len(nrz_f))
plt.tight_layout()
[Link]()
Polar NRZ-I Technique :
from copy import copy Example 1:
import numpy as np
import [Link] as plt
f = [0,1,0,0,1]
bit= 1
nrz_i=[1]
for i in range(0,len(f)):
if f[i]==1:
Example 2:
if bit==1:
bit=-1
else:
bit=1
nrz_i.append(bit)
nrz_t=[Link](0,len(nrz_i))
[Link](311)
[Link](True)
[Link](y=0,color="r")
[Link]("NRZ-I Encoding")
[Link]("Time")
[Link]("Bit level")
[Link](nrz_t,nrz_i)
[Link](nrz_t)
[Link](0,len(nrz_i))
[Link]()
Polar RZ Technique: [Link](True)
import [Link] as plt [Link]()
import numpy as np
from copy import copy
Example 1:
[Link]()
f = [0,1,0,0,1,1]
t = [Link](0, len(f))
[Link](321)
[Link]("RZ encoding")
rz_bit=[-1 if f[0]==0 else 1]
for i in range(0,len(f)):
k=f[int(i)]
Example 2:
if k == 0:
rz_bit.append(-1)
rz_bit.append(0)
else:
rz_bit.append(1)
rz_bit.append(0)
rz_time=[Link](0,len(rz_bit))
[Link](rz_time,rz_bit)
label=[Link](0,len(rz_time))
label_name=["" if a%2==1 else int(a*0.5) for a in label]
[Link](ticks=label,labels=label_name)
[Link]("Bit level")
[Link]("Time")
[Link](0,len(rz_bit))
Polar Biphase-Manchester: Example 1:
import [Link] as plt
import numpy as np
from copy import copy
f = [0,1,0,0]
t = [Link](0, len(f))
[Link](321)
[Link]("Manchester encoding")
Example 2:
rz_bit=[1 if f[0]==0 else 0]
for i in range(0,len(f)):
k=f[int(i)]
if k == 0:
rz_bit.append(1)
rz_bit.append(-1)
else:
rz_bit.append(-1)
rz_bit.append(1)
rz_time=[Link](0,len(rz_bit))
[Link](rz_time,rz_bit)
label=[Link](0,len(rz_time))
label_name=["" if a%2==1 else int(a*0.5) for a in label]
[Link](ticks=label,labels=label_name)
[Link]("Bit level")
[Link]("Time")
[Link](0,len(rz_bit))
[Link](True)
[Link]()
Differential Manchester Encoding: Example 1:
import [Link] as plt
import numpy as np
from copy import copy
data = input("Input the binary stream: ");
data_temp = [ord(x) - 48 for x in data]
data = [1]
for d in data_temp:
Example 2:
if (d == 1 and data[len(data) - 1] == 1) or (d == 0 and
data[len(data) - 1] == -1):
[Link]([1, -1])
else:
[Link]([-1, 1])
time = [Link](0,len(data))
[Link](time,data)
label=[Link](0,len(data))
[Link](321)
label_name=["" if a%2==1 else int(a*0.5) for a in label]
[Link](ticks=label,labels=label_name)
[Link]("Differential Manchester : ")
[Link]("Bit level")
[Link]("Time")
[Link](True)
[Link]()
ASK Modulation:
import [Link] as plt Example 1:
import numpy as np
from copy import copy
low_amp=1
high_amp=2
f=2
time=[Link](0,1,0.01)
b1=2*[Link](2*[Link]*f*time)
b0=1*[Link](2*[Link]*f*time)
or_data=input("Enter digital data bits: ")
or_data=[ord(x) -48 for x in or_data]
Example 2:
data=[]
for x in or_data:
if x==1:
[Link](b1)
else:
[Link](b0)
time=[Link](0,len(data))
[Link](time,data)
[Link]('Time')
[Link]('Amplitude')
[Link]()
[Link]()
FSK Modulation:
import [Link] as plt Example 1:
import numpy as np
from copy import copy
phase=0
f=2
time=[Link](0,1,0.01)
b1=2*[Link](2*[Link]*4*time)
b0=1*[Link](2*[Link]*2*time)
or_data=input("Enter digital data bits: ")
Example 2:
or_data=[ord(x) -48 for x in or_data]
data=[]
for x in or_data:
if x==1:
[Link](b1)
else:
[Link](b0)
time=[Link](0,len(data))
[Link](time,data)
[Link]()
[Link]()
PSK Modulation: Example 1:
import [Link] as plt
import numpy as np
from copy import copy
phase=0
f=2
p0=[Link]
time=[Link](0,1,0.01)
b1=1*[Link](2*[Link]*f*time) Example 2:
b0=1*[Link](2*[Link]*f*time+p0)
or_data=input("Enter digital data bits: ")
print_data=copy(or_data)
or_data=[ord(x) -48 for x in or_data]
data=[]
for x in or_data:
if x==1:
[Link](b1)
else:
[Link](b0)
time=[Link](0,len(data))
[Link]('PSK for '+print_data)
[Link](time,data)
[Link]()
[Link]()
AM Modulation: plt.tight_layout()
import numpy as np [Link]()
import [Link] as plt Example 1:
print('Amplitude Modulation')
time= [Link](0,10,0.01)
fc=2
ac=2
[Link](3,1,1)
carrier_signal=ac*[Link](2*[Link]*fc*time)
[Link]('Carrier')
[Link]('Time')
[Link]('Amplitude')
[Link](carrier_signal)
Example 2:
message_amplitude=.2
message_frequency=.2
[Link](3,1,2)
[Link]('Message Signal')
message_signal=message_amplitude*[Link](2*[Link]*m
essage_frequency*time)
[Link]('Time')
[Link]('Amplitude')
[Link](message_signal)
[Link](3,1,3)
[Link]('Amplitude Modulated Signal')
modulated_s=carrier_signal*message_signal
[Link]('Time')
[Link]('Amplitude')
[Link](modulated_s)
FM Modulation: [Link]('Time')
import numpy as np plt.tight_layout()
import [Link] as plt [Link]()
modulator_frequency =4.0 Example 1:
carrier_frequency = 40.0
time = [Link](441.0) / 441.0
modulator = [Link](2 * [Link] * modulator_frequency *
time)
carrier = [Link](2 * [Link] * carrier_frequency * time)
product = np.zeros_like(modulator)
for i, t in enumerate(time):
product[i] = [Link](2* [Link] * (carrier_frequency * t +
modulator[i])) Example 2:
[Link](3, 1, 1)
[Link]('Modulator')
[Link](modulator)
[Link]('Amplitude')
[Link]('Time')
[Link](3, 1, 2)
[Link]('Carrier')
[Link](carrier)
[Link]('Amplitude')
[Link]('Time')
[Link](3, 1, 3)
[Link]("Frequency Modulated signal")
[Link](product)
[Link]('Amplitude')
PM Modulation : [Link]()
import numpy as np
import [Link] as plt Example 1:
carrier = 220.0
modulator = 440.0
beta = 1.0
x1 = [Link](0.0, 0.03, num=2000)
carrierWave = [Link]
modulatorWave = [Link]
y1 = [Link](carrier * [Link] * x1)
y2 = [Link](modulator * [Link] * x1)
y3 = [Link](carrier * [Link] * x1 + beta * y2)
plt.subplots_adjust(left = 0.1, bottom = 0.25)
[Link](3, 1, 1)
carrierObj, = [Link](x1, y1, '-')
[Link]([0, 0.03, -1.1, 1.1])
[Link]('Phase Modulation')
[Link]('Carrier')
[Link](3, 1, 2)
modulatorObj, = [Link](x1, y2, '-')
[Link]([0, 0.03, -1.1, 1.1])
[Link]('Modulator')
[Link](3, 1, 3)
modulatedObj, = [Link](x1, y3, '-')
[Link]([0, 0.03, -1.1, 1.1])
[Link]('time (s)')
[Link]('Modulated Carrier')
plt.tight_layout()