How to Simulate AM Modulation in Simulink: Step-by-Step Guide
To simulate
AM modulation in Simulink, use a Sine Wave block as the carrier and another Sine Wave block as the message signal. Use a Sum block to add 1 to the message signal, then multiply the result with the carrier using a Product block to create the modulated output, then run the simulation to observe the AM waveform.Syntax
In Simulink, AM modulation is created by multiplying a carrier signal with a message signal offset by 1. The main blocks used are:
- Sine Wave: Generates carrier and message signals.
- Sum: Adds 1 to the message signal.
- Product: Multiplies the two signals to produce AM.
- Scope: Visualizes the modulated signal.
The basic formula is: AM Signal = (1 + Message) * Carrier.
matlab
Carrier = sin(2*pi*fc*t) Message = sin(2*pi*fm*t) AM_Signal = (1 + Message) * Carrier
Example
This example shows how to build a simple AM modulator in Simulink using blocks:
- Use two
Sine Waveblocks: one for carrier (e.g., 1000 Hz), one for message (e.g., 100 Hz). - Use a
Constantblock with value 1. - Use a
Sumblock to add the constant to the message signal. - Use a
Productblock to multiply the sum with the carrier. - Connect the output to a
Scopeblock to see the AM waveform.
plaintext
1. Open Simulink and create a new model. 2. Add two Sine Wave blocks. - Set Carrier frequency to 1000 Hz. - Set Message frequency to 100 Hz. 3. Add a Constant block with value 1. 4. Add a Sum block and set it to add inputs (+ +). 5. Connect Message and Constant to Sum block. 6. Add a Product block. 7. Connect Sum output and Carrier to Product block. 8. Connect Product output to Scope. 9. Run the simulation and open Scope to view AM signal.
Output
Scope shows a waveform with carrier frequency modulated in amplitude by the message signal.
Common Pitfalls
Common mistakes when simulating AM modulation in Simulink include:
- Not adding 1 to the message signal before multiplying, which causes the carrier to be suppressed instead of modulated.
- Using the same frequency for carrier and message signals, which makes modulation unclear.
- Incorrect block connections, such as missing the sum block or connecting blocks in the wrong order.
Always verify frequencies and signal amplitudes to get a clear AM waveform.
matlab
Wrong approach:
AM_Signal = Message * Carrier % No offset added, causes carrier suppression
Correct approach:
AM_Signal = (1 + Message) * Carrier % Adds offset to preserve carrierQuick Reference
| Step | Block | Purpose |
|---|---|---|
| 1 | Sine Wave (Message) | Generate low frequency message signal |
| 2 | Constant (Value=1) | Add offset to message signal |
| 3 | Sum (+ +) | Add constant and message signals |
| 4 | Sine Wave (Carrier) | Generate high frequency carrier signal |
| 5 | Product | Multiply carrier by modulated message |
| 6 | Scope | Visualize AM modulated signal |
Key Takeaways
Use a Sum block to add 1 to the message signal before multiplying with the carrier.
Set carrier frequency much higher than message frequency for clear AM modulation.
Multiply the offset message signal with the carrier using a Product block.
Visualize the output with a Scope block to confirm modulation.
Avoid suppressing the carrier by always adding the offset before multiplication.