Pulse Width Modulation and switching techniques