Page 1 of 1

Generate amplitude modulated signal

Posted: Wed Oct 30, 2019 12:54 pm
by ranib
Hi,

I want to be able to generate a sine wave in the range of 40Khz-100Khz which is amplitude modulated such that at 5hz-40hz the sine wave will go from 0 to 1V.
Any instruction on how and where to begin?

Thank you

Re: Generate amplitude modulated signal

Posted: Wed Oct 30, 2019 1:03 pm
by pavel
I think it could be done using GNU Radio and the SDR transceiver application. The SDR transceiver application can be installed via the application marketplace. In GNU Radio, the center frequency of the Red Pitaya Sink block should be set to a frequency in the range of 40Khz-100Khz and the modulating signal should be connected to the input of the Red Pitaya Sink block.

Re: Generate amplitude modulated signal

Posted: Wed Oct 30, 2019 1:19 pm
by ranib
Thank you Pavel for your prompt reply. I am uncomfortable with the amount of work on this - I have no clue what most of this means, regarding the transciever and GNU radio.

Anything with programming the signals in python and sending them to the redpitaya?

As I only need to program the signal once and upload it to the board.

I opened the jupyter notebook exampels - but I can't find how to install the redpitaya package.

"from redpitaya.overlay.mercury import mercury as overlay"

tried pip install redpitaya without success

Re: Generate amplitude modulated signal

Posted: Wed Oct 30, 2019 1:26 pm
by pavel
ranib wrote:
Wed Oct 30, 2019 1:19 pm
Anything with programming the signals in python and sending them to the redpitaya?
I don't think it's possible. As far as I know, in the default FPGA configuration, the signal generator memory can only store 16384 samples. For a 5 Hz signal with a sampling rate of 125 MSPS, one period consists of 25 million samples. So, the signal generator doesn't have enough memory for a 5 Hz signal.

However, I could be mistaken and maybe someone from Red Pitaya could help you.

Re: Generate amplitude modulated signal

Posted: Wed Oct 30, 2019 1:57 pm
by ranib
I see so this is a problem with the "uploading" the signal to the board. and this problem is not found in the way you suggested. Then I will have to give it a try. conversely, if I want to drive it "online" without storing anything on it is this possible?

I found this one tempting to use and easily understood - unfortunately, it doesn't work many libraries missing: //github.com/RedPitaya/jupyter/blob/9f3cfd3e20c2b4ddae8bdc1762ed6154f917f3ff/examples/gen_arbitrary_signal.ipynb

Thank you again

Re: Generate amplitude modulated signal

Posted: Wed Oct 30, 2019 2:17 pm
by pavel
ranib wrote:
Wed Oct 30, 2019 1:57 pm
I found this one tempting to use and easily understood - unfortunately, it doesn't work many libraries missing: //github.com/RedPitaya/jupyter/blob/9f3cfd3e20c2b4ddae8bdc1762ed6154f917f3ff/examples/gen_arbitrary_signal.ipynb
Are you running this example in the Jupyter running on the Red Pitaya board? Normally, Jupyter installed on the Red Pitaya board should have all the libraries already pre-installed.

Re: Generate amplitude modulated signal

Posted: Wed Oct 30, 2019 2:45 pm
by ranib
you are correct my friend I didn't understand that correctly. I am running now the jupyter notebook session on the board and it seems to work fine. now need to figure out if this matches my needs.

Much appreciated,

Re: Generate amplitude modulated signal

Posted: Sun Nov 03, 2019 1:01 pm
by ranib
Hi again,

can I use this to do what I need; generate a 100khz signal amplitude modulated at 5hz :
https://redpitaya.readthedocs.io/en/lat ... -exm4.html
Or is also here the problem raised by Pavel (i.e., memory limitation) is still valid?

Re: Generate amplitude modulated signal

Posted: Sun Nov 03, 2019 2:11 pm
by ranib
After experimenting a bit, I think the first suggestion by Pavel is the way to go.

However, I need some more elaboration over the SDR transceiver -
As I understand now, I need the GNU radio software to produce the carrier frequency (i.e. 100Khz), and I need to give the red pitaya a 5hz input from another source. and then modulate the output (carrier frequency) with the input?

Is this right?

Can you please give me more instructions on how to program this?

Thank you