PWM Signals are used in a wide area of applications. Examples are a servos used for positioning in electromechanical control design (mechatronic). Here is a simple function that allows to create a pwm signal with a standard soundcard. Parameters are: pulsewidth and time between pulse-starts.
One restriction is that the approach allows duty cycles up to 50% only.
All you need is to add at the output of the soundcard is a resistor as load (1k) and a diode (1N4001). The image enclosed shows the output I got for:
i analsysis matlab sinmklif
You can obtain different duty cicles by adding this line after the "dat" definition: