Điều Chế Độ Rộng Xung Pwm

PWM là gì mà sao nó được ứng dụng nhiều trong điều khiển. Lấy điển hình nổi bật nhất mà chúng ta thường hay chạm mặt là điều khiển và tinh chỉnh động cơ và các bộ băm xung áp, điều áp… sử dụng PWM điều khiển nhanh đủng đỉnh của hộp động cơ hay cao hơn thế nữa nó còn được dùng để điều khiển ổn định tốc độ động cơ.

Bạn đang xem: Điều chế độ rộng xung pwm

Ngoài nghành nghề điều khiển hay bình ổn tải thì PWM nó còn tham gia với điều chế những mạch nguồn như là : boot, buck, nghịch lưu lại 1 pha và 3 pha…PWM chúng ta còn gặp mặt nhiều trong thực tiễn và các mạch điện điều khiển. Điều đặc biệt là PWM chuyên dùng để điều khiển các bộ phận điện tử công suất có đường đặc tính là đường tính khi tất cả sẵn 1 nguồn 1 chiều cố định và thắt chặt . Bởi vậy PWM nó được ứng dụng không ít trong những thiết bị điện điện tử. Điều nhưng mà dân điện điện tử dễ dàng nhận ra là PWM chính nhân tố mà các đội Robocon thực hiện để điều khiển và tinh chỉnh động cơ giỏi ổn định vận tốc động cơ. Trong bài viết này bọn họ sẽ tìm kiếm hiểu phương thức dùng 8051 để chế tạo ra xung có độ rộng mong muốn trong tinh chỉnh động cơ điện.

Giải thuật như sau:

- tạo ra một tần số chuẩn chỉnh từ 0,1 ms đến 10ms dùng những bộ timer của vi điều khiển.

Xem thêm: Cung Cấp Linh Kiện Máy Lọc Nước Giá Cực Tốt, Linh Kiện Máy Lọc Nước

- đổi khác độ rộng xung bằng cách thay thay đổi tỷ số xung nút 1 cùng mức 0 của tần số chuẩn chỉnh đó hiệu quả cho xung như yêu mong .

Các các bạn xem hình mẫu vẽ sau :

*

Với độ rộng xung nỗ lực đổi bạn có thể thay đổi khả năng chiếu sáng tối của đèn led chiếu sáng , tốc độ động cơ ..

Dưới đây là một ứng dụng của PWM trong việc tinh chỉnh động cơ năng lượng điện 1 chiều

*

Trên mạch gồm 2 phím tăng bớt để kiểm soát và điều chỉnh độ rộng lớn xung. Xung áp ra output được khuếch đại qua tran TIP41 điều khiển và tinh chỉnh động cơ.

Code thiết kế :

#include

sbit PWM = P2^3;sbit TANG = P1^2;sbit GIAM = P1^5;unsigned char dem=0,tocdo=50;

bit TANG1=1,TANG0=1,GIAM0=1,GIAM1=1;

void timer0(void) interrupt 1TR0 = 0;TF0 = 0;dem++;if(dem > 100)dem = 0;if(demPWM = 1;elsePWM = 0;TR0 = 1;

void phimnhan()//////////////////////////TANG0=TANG1;TANG1=TANG;if((TANG0==1)&&(TANG1==0))tocdo=tocdo+10;if(tocdo==110)tocdo=100;

/////////////////////////////////GIAM0=GIAM1;GIAM1=GIAM;if((GIAM0==1)&&(GIAM1==0))tocdo=tocdo-10;if(tocdo==-10)tocdo=0;

void main(void)TMOD = 0×02;IE = 0×82;TH0=TL0=-100; // tao chảy so 0.1 msTR0 = 1;PWM=0;while(1)phimnhan();