| Author |
Message |
opamp
Guest
|
Posted:
Wed Nov 30, 2005 5:17 pm Post subject:
FSK modulation problem.... |
|
|
Hi,
I want to make fsk modulation. For example my baseband signal i
"1010001110". Ones are represent by 2200 hz and zeroes are by 1100 hz. No
I know that for generating a fsk signal, I have to generate a signal tha
shows ones(as callded s1) and another one that shows zeros(as called s0)
And when "1" comes, it has to be shown in s1; and when "0" comes, it ha
to be shown in s0; WHILE it is shown by space in s1 when "0" comes, and i
s0 when "1" comes...So after summing two signal I can generate a fs
modulated signal..
for example :
base band signal : 1010001110
s1= /\__/\______/\/\/\_ /\ shows "1" (2200 hz)
s2= __\/__\/\/\/______\/ \/ shows "0" (1100 hz)
when I sum these signals I will generate FSK modulated signal, IS'N IT?
My question is, how can I generate s1 or s0? When I try multiplying a bi
sequence(that is used for generating s1) by a 2200 hz signal or 1100 h
signal, Matlab DOESN'T DO that... What do I have to do for this...
PLEASE HELP ME...I beg you :'( I'm already going madddd !!!!
Ozgur Yalcin |
|
| Back to top |
|
 |
Jerry Avins
Guest
|
Posted:
Wed Nov 30, 2005 5:17 pm Post subject:
Re: FSK modulation problem.... |
|
|
opamp wrote:
| Quote: | Hi,
I want to make fsk modulation. For example my baseband signal is
"1010001110". Ones are represent by 2200 hz and zeroes are by 1100 hz. Now
I know that for generating a fsk signal, I have to generate a signal that
shows ones(as callded s1) and another one that shows zeros(as called s0).
And when "1" comes, it has to be shown in s1; and when "0" comes, it has
to be shown in s0; WHILE it is shown by space in s1 when "0" comes, and in
s0 when "1" comes...So after summing two signal I can generate a fsk
modulated signal..
for example :
base band signal : 1010001110
s1= /\__/\______/\/\/\_ /\ shows "1" (2200 hz)
s2= __\/__\/\/\/______\/ \/ shows "0" (1100 hz)
when I sum these signals I will generate FSK modulated signal, IS'N IT?
|
That's not how I would do it.
| Quote: | My question is, how can I generate s1 or s0? When I try multiplying a bit
sequence(that is used for generating s1) by a 2200 hz signal or 1100 hz
signal, Matlab DOESN'T DO that... What do I have to do for this...
|
I don't do Matlab.
Harmonically related FSK frequencies are a poor choice. In a practical
system, the second harmonic of 1100 will confuse the detector to at
least some degree.
Jerry
--
Engineering is the art of making what you want from things you can get.
ŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻ |
|
| Back to top |
|
 |
john
Guest
|
Posted:
Thu Dec 01, 2005 1:17 am Post subject:
Re: FSK modulation problem.... |
|
|
Jerry Avins wrote:
| Quote: | john wrote:
Hello Ozgur,
You generate 2200 Hz and 1100 Hz at a specified sample rate, correct?
Let's say its 8800 samples/sec to keep the math simple. Now you want to
transmit a certain number of bits per second, no? Let's say that is 275
bits/sec.
What you need to do is generate a vector with 8800/275 = 32 ones in a
row for every "1" and 32 zeros in a row for every "0". Call this vector
v1. Now generate another vector v0 = not(v1). Now compute L => > length(v0) == length(v1). Create a 2200 Hz sine wave of length L called
c0 and an 1100 Hz sine wave also of length L called c1 (both sine waves
are 8800 samples/sec). Your modulated signal is v0.*c0 + v1.*c1.
...
John,
One often keeps the bit time the same for ones and zeros. For the number
you give, 275 bits/sec, you send 4 cycles of 1100 Hz for a zero and 8
cycles of 2200 Hz for a one.
The simple way to do this is with a table of sine values that are
stepped through at a rate that will produce 1100 Hz when the entries are
taken in succession. To generate twice the frequency, send every second
entry at the same rate.
Jerry
--
Engineering is the art of making what you want from things you can get.
ŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻ
|
You are correct, Jerry, that's a viable way to do it, and there are
others. I got the distinct impression from the OP that a catalogue of
techniques would not be helpful.
John |
|
| Back to top |
|
 |
john
Guest
|
Posted:
Thu Dec 01, 2005 1:17 am Post subject:
Re: FSK modulation problem.... |
|
|
Hello Ozgur,
You generate 2200 Hz and 1100 Hz at a specified sample rate, correct?
Let's say its 8800 samples/sec to keep the math simple. Now you want to
transmit a certain number of bits per second, no? Let's say that is 275
bits/sec.
What you need to do is generate a vector with 8800/275 = 32 ones in a
row for every "1" and 32 zeros in a row for every "0". Call this vector
v1. Now generate another vector v0 = not(v1). Now compute L ==
length(v0) == length(v1). Create a 2200 Hz sine wave of length L called
c0 and an 1100 Hz sine wave also of length L called c1 (both sine waves
are 8800 samples/sec). Your modulated signal is v0.*c0 + v1.*c1.
Good luck,
John
opamp wrote:
| Quote: | Hi,
I want to make fsk modulation. For example my baseband signal is
"1010001110". Ones are represent by 2200 hz and zeroes are by 1100 hz. Now
I know that for generating a fsk signal, I have to generate a signal that
shows ones(as callded s1) and another one that shows zeros(as called s0).
And when "1" comes, it has to be shown in s1; and when "0" comes, it has
to be shown in s0; WHILE it is shown by space in s1 when "0" comes, and in
s0 when "1" comes...So after summing two signal I can generate a fsk
modulated signal..
for example :
base band signal : 1010001110
s1= /\__/\______/\/\/\_ /\ shows "1" (2200 hz)
s2= __\/__\/\/\/______\/ \/ shows "0" (1100 hz)
when I sum these signals I will generate FSK modulated signal, IS'N IT?
My question is, how can I generate s1 or s0? When I try multiplying a bit
sequence(that is used for generating s1) by a 2200 hz signal or 1100 hz
signal, Matlab DOESN'T DO that... What do I have to do for this...
PLEASE HELP ME...I beg you :'( I'm already going madddd !!!!
Ozgur Yalcin |
|
|
| Back to top |
|
 |
Mark
Guest
|
Posted:
Thu Dec 01, 2005 1:17 am Post subject:
Re: FSK modulation problem.... |
|
|
how long in time duration are the bits compared to 1 cycle of 2200Hz?
Mark |
|
| Back to top |
|
 |
Jerry Avins
Guest
|
Posted:
Thu Dec 01, 2005 1:17 am Post subject:
Re: FSK modulation problem.... |
|
|
john wrote:
| Quote: | Hello Ozgur,
You generate 2200 Hz and 1100 Hz at a specified sample rate, correct?
Let's say its 8800 samples/sec to keep the math simple. Now you want to
transmit a certain number of bits per second, no? Let's say that is 275
bits/sec.
What you need to do is generate a vector with 8800/275 = 32 ones in a
row for every "1" and 32 zeros in a row for every "0". Call this vector
v1. Now generate another vector v0 = not(v1). Now compute L ==
length(v0) == length(v1). Create a 2200 Hz sine wave of length L called
c0 and an 1100 Hz sine wave also of length L called c1 (both sine waves
are 8800 samples/sec). Your modulated signal is v0.*c0 + v1.*c1.
|
...
John,
One often keeps the bit time the same for ones and zeros. For the number
you give, 275 bits/sec, you send 4 cycles of 1100 Hz for a zero and 8
cycles of 2200 Hz for a one.
The simple way to do this is with a table of sine values that are
stepped through at a rate that will produce 1100 Hz when the entries are
taken in succession. To generate twice the frequency, send every second
entry at the same rate.
Jerry
--
Engineering is the art of making what you want from things you can get.
ŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻ |
|
| Back to top |
|
 |
|
|
|
|