Đề tài Điều khiển động cơ không đồng bộ dùng PSoc

Để giữ cho từ thông và momen cực đại trên trục động cơ không đổi khi điều chỉnh tốc độ động cơ theo tần số ta phải đảm bảo tỷ số U1/f1 là không đổi. Mà biên độ của sóng sin đầu ra tỷ lệ với độ rộng xung. Độ rộng xung đạt giá trị lớn nhất tại đỉnh của hình sin. Khi chạy ở tần số định mức (50Hz), điện áp đầu ra đạt giá trị định mức là 220V (giá trị hiệu dụng), giá trị đỉnh sẽ là 310V, tức là bằng giá trị dương của điện áp một chiều. Khi đó ma = 1, độ rộng xung lớn nhất là 100% tại đỉnh của hình sin. Để thay đổi biên độ của điện áp đầu ra, ta sẽ thay đổi độ rộng xung tại mỗi chu kỳ PWM sao tỷ số U/f là không đổi bằng giá trị này ở định mức (U1dm/f1dm = 220/50 ≈ 4,4). Cụ thể, sau khi có được giá trị tần số điều khiển, ta tính được chu kỳ ngắt để xác định giá trị thanh ghi chu kỳ của bộ timer. Một hàm udateU_f nằm trong vòng lặp chính được sử dụng để tính lại các giá trị trong bảng sin sao cho biên độ đầu ra tương ứng với tần số điều khiển. Trong mỗi chu kỳ ngắt, giá trị thanh ghi so sánh trong bộ PWM sẽ được truy xuất từ bảng sin (đã được tính lại theo giá trị của tần số điều khiển) bởi biến con trỏ, sau đó biên con trỏ được tăng lên để chỉ đến giá trị mới trong bảng sin. Khi biến con trỏ này đạt đến giá trị tới hạn, sẽ được nạp lại giá trị ban đầu.

doc92 trang | Chia sẻ: lylyngoc | Lượt xem: 2799 | Lượt tải: 2download
Bạn đang xem trước 20 trang tài liệu Đề tài Điều khiển động cơ không đồng bộ dùng PSoc, để xem tài liệu hoàn chỉnh bạn click vào nút DOWNLOAD ở trên
hư bảo vệ chống quá áp hay thấp áp đầu vào… Các mạch điều khiển, thu thập tín hiệu đều cần cấp nguồn, các nguồn này thường là nguồn điện một chiều 5, 12, 15VDC yêu cầu điện áp cấp phải ổn định. Bộ nguồn có nhiệm vụ tạo ra nguồn điện thích hợp đó. Sự ra đời của các bộ vi xử lý có tốc độ tính toán nhanh có thể thực hiện các thuật toán phức tạp thời gian thực, sự phát triển của các lý thuyết điều khiển, công nghệ sản xuất IC có mức độ tích hợp ngày càng cao cùng với giá thành của các linh kiện ngày càng giảm dẫn đến sự ra đời của các bộ biến tần ngày càng thông minh có khả năng điều khiển chính xác, đáp ứng nhanh và giá thành rẻ. 4. Phương thức điều khiển 4.1. Phương pháp điều chế độ rộng xung (PWM) Nội dung của phương pháp điều chế độ rộng xung là tạo ra một tín hiệu sin chuẩn có tần số bằng tần số ra và biên độ tỷ lệ với biên độ điện ra nghịch lưu. Tín hiệu này sẽ được so sánh với một tín hiệu răng cưa có tần số lớn hơn rất nhiều tần số của tín hiệu sin chuẩn. Giao điểm của hai tín hiệu này xác định thời điểm đóng mở van công suất. Điện áp ra có dạng xung với độ rộng thay đổi theo từng chu kỳ. Hình 3-2: Dạng sóng đầu ra theo phương pháp điều chế độ rộng xung (vo1 là thành phần sin cơ bản, v ilà điện một chiều vào bộ nghịch lưu, vo là điện áp ra ) Trong quá trình điều chế, người ta có thể tạo xung hai cực hoặc một cực, điều biến theo độ rộng xung đơn cực và điều biến theo độ rộng xung lưỡng cực. Trong đề tài này em sử dụng phương điều chế độ rộng xung đơn cực. Có hai phương pháp điều chế cơ bản là: Điều chế theo phương pháp sin PWM (SPWM) Điều chế vectơ Điều chế theo phương pháp SPWM Để tạo ra điện áp xoay chiều bằng phương pháp SPWM, ta sử dụng một tín hiệu xung tam giác vtri (gọi là sóng mang) đem so sánh với một tín hiệu sin chuẩn vc (gọi là tín hiệu điều khiển). Nếu đem xung điều khiển này cấp cho bộ nghich lưu một pha, thì ở ngõ ra sẽ thu được dạng xung điện áp mà thành phần điều hòa cơ bản có tần số bằng tần số tín hiệu điều khiển vc và biên độ phụ thuộc vào nguồn điện một chiều cấp cho bộ nghịch lưu và tỷ số giữa biên độ sóng sin mẫu và biên độ sóng mang. Tần số sóng mang lớn hơn rất nhiều tần số tín hiệu điều khiển. Hình 3-3 miêu tả nguyên lý của của phương pháp điều chế SPWM một pha: Hình 3-3: Nguyên lý điều chế SPWM một pha Khi: vc > vtri , VA0 = Vdc/2 vc < ttri , VA0 = -Vdc/2 Đối với nghịch lưu áp ba pha có sơ đồ như hình 3-4. Để tạo ra điện áp sin ba pha dạng điều rộng xung, ta cần ba tín hiệu sin mẫu. Hình 3-4: Nghịch lưu áp ba pha Nguyên lý điều chế và dạng sóng như sau: Hình 3-5: Nguyên lý điều chế SPWM ba pha Hệ số điều chế biên độ ma được định nghĩa là tỷ số giữa biên độ của tín hiệu điều khiển với biên độ của sóng mang: (3-1) ma - hệ số điều biến Vc - biên độ sóng điều khiển Vtri - biên độ sóng mang Trong vùng tuyến tính (0 < ma < 1), biên độ của thành phần sin cơ bản VA01 (điện áp pha) trong dạng sóng đầu ra tỷ lệ với hệ số điều biến theo công thức: (3-2) Đối với điện áp dây là: (3-3) Như vậy trong phương pháp này biên độ điện áp dây đầu ra bộ nghịch lưu chỉ có thể đạt 86,67% điện áp một chiều đầu vào trong vùng tuyến tính (0 < ma < 1). Hệ số điều chế tỷ số mf là tỷ số giữa tần số sóng mang và tần số tín hiệu điều khiển: (3-4) mf - hệ số điều chế tỷ số ftri - tần số sóng mang, bằng tần số PWM fc - tấn số tín hiệu điều khiển Giá trị của mf được chọn sao cho nên có giá trị dương và lẻ. Nếu mf là một giá trị không nguyên thì trong dạng sóng đầu ra sẽ có các thành phần điều hòa phụ (subharmonic). Nếu mf không phải là một số lẻ, trong dạng sóng đầu ra sẽ tồn tại thành phần một chiều và các hài bậc chẵn. Giá trị của mf nên là bội số của 3 đối nghịch lưu áp ba pha vì trong điện áp dây đầu ra sẽ triệt tiêu các hài bậc chẵn và hài là bội số của ba. Như vậy, nếu điện áp một chiều đầu vào không đổi, để điều chỉnh biên độ và tần số của điện áp đầu ra ta chỉ việc điều chỉnh biên độ và tần số của tín hiệu sin chuẩn vc. Đặc trưng cơ bản của phương pháp này là thành phần sóng điều hòa của điện áp ra. Muốn giảm các sóng điều hòa bậc cao cần phải tăng tần số sóng mang hay tần số PWM. Tuy nhiên càng tăng tần số PWM thì tổn hao chuyển mạch lại tăng lên. Phương pháp điều chế vectơ không gian (SVPWM) Phương pháp điều chế vectơ không gian khác với các phương pháp điều chế độ rộng xung khác. Với phương pháp điều chế PWM khác, bộ nghịch lưu được xem như ba bộ biến đổi đẩy kéo riêng biệt với ba điện áp pha độc lập nhau. Đối với phương pháp điều chế vectơ không gian, bộ nghịch lưu được xem như một khối duy nhất với 8 trạng thái đóng ngắt từ 0 đến 7. 4.1.2.1. Thành lập vectơ không gian Đối với nguồn áp ba pha cân bằng, ta luôn có phương trình sau: (3-5) Và bất kỳ ba hàm số nào thỏa mãn phương trình trên đều có thể chuyển sang hệ tọa độ hai chiều vuông góc. Ta có thể biểu diễn phương trình trên dưới dạng ba vectơ gồm [ua 0 0]T, trùng với trục x, vectơ [0 ub 0]T lệch một góc 120o và vectơ [0 0 ua]T lệch một góc 240o so với trục x, như hình vẽ sau: Hình 3-6: biểu diễn vectơ không gian trong hệ tọa độ x0y Từ đó ta xây dựng được phương trình của vectơ không gian trong hệ tọa độ phức như sau: (3-6) Trong đó 2/3 là hệ số biến hình. Phân tích u(t) trong phương trình trên thành phần thực và phần ảo. (3-7) Ta xây dựng được công thức chuyển đổi hệ tọa độ từ ba pha abc sang hệ tọa độ phức x-y bằng cách cân bằng phần thực và phần ảo trong phương trình (3-6), ta có: (3-8) Tiếp theo hình thành tọa độ quay α-β bằng cách cho hệ tọa độ x-y quay với vận tốc góc ωt. Ta có công thức chuyển đổi hệ tọa độ như sau: (3-9) Nguồn áp ba pha tạo ra là cân bằng và sin nên ta có thể viết lại phương trình điện áp pha như sau: (3-10) Từ phương trình (3-9) ta xây dựng được phương trình sau: (3-11) Thể hiện vectơ không gian có biên độ Vr quay với vận tốc góc ωt quanh gốc tọa độ 0. Phương trình điện áp dây theo phương trình (3-8) như sau: (3-11) Trong đó để chuyền từ giá trị biên độ sang giá trị hiệu dụng, để chuyển giá trị điện áp pha thành điện áp dây. Vectơ điện áp dây sẽ sớm pha hơn vectơ điện áp pha một góc π/6. Nếu lồng ghép các trạng thái có thể có của q1, q3 và q5 vào phương trình (3-11) ta thu được phương trình điện áp dây (trị biên độ) theo các trạng thái của các khóa. (3-12) Với n = 0,1,2,…,6 ta thành lập được 6 vectơ không gian V1 – V6 và hai vectơ 0 là V0 và V7 như hình sau: Hình 3-7: Các vectơ không gian từ 1 đến 6 Hình 3-8: Trạng thái đóng ngắt của các van Bảng 3-1: Giá trị điện áp các trạng thái đóng ngắt và vectơ không gian tương ứng (Ghi chú: độ lớn điện áp phải nhân với Vdc) Tính toán thời gian đóng ngắt Xét trường hợp vectơ Vr nằm trong vùng 1 như hình sau: Hình 3-9: Vectơ không gian Vr trong vùng 1 Giả sử tần số băm xung fPWM đủ cao để trong suốt chu kỳ điều rộng xung Ts, vectơ Vr không thay đổi vị trí. Nhờ đó ta có thể phân tích Vr theo các vectơ V1, V2 và vectơ V0 hoặc V7 như phương trình sau: (3-13) Với: Ts là chu kỳ điều rộng xung Tn là thời gian duy trì ở trạng thái Vn Chuyển sang hệ tọa độ vuông góc, ta có phương trình sau – suy ra từ phương trình (3-11) và (3-12): (3-14) Cân bằng phần thực và phần ảo, ta có: (3-15) Giải phương trình trên để tìm T1 và T2: (3-16) Suy ra: (3-17) Trong đó: m - tỷ số điều biên Ts - chu kỳ điều rộng xung θ - góc lệch pha giữa Vr và Vn Ta nhận thấy việc giải phương trình (3-13) để tìm T1, T2 và Ts không phụ thuộc vào hai vectơ giới hạn vùng đó: Hình 3-10:Vectơ không gian Vr trong vùng bất kỳ Dựa trên kết quả trên phương trình (3-17), ta xây dựng công thức tổng quát trong phương trình (3-18) sau đây: (3-18) Phân bố các trạng thái đóng ngắt Vẫn xét trường hợp Va nằm trong vùng 1, với kết quả từ phương trình (3-17): (3-18) Kỹ thuật thực hiện vectơ không gian Thông thường một trong những tiêu chuẩn để lựa chọn giản đồ đóng kích linh kiện là giảm thiểu tối đa số lần chuyền mạch của linh kiện, để giảm tổn hao trong quá trình đóng cắt của chúng. Số lần chuyển mạch sẽ ít nếu ta trình tự điều khiển sau: Hình 3-11: Giản đồ đóng cắt linh kiện 4.1.2.5. Giản đồ đóng cắt các khóa để tạo ra vectơ Vs trong từng sectơ: Các van công suất trong từng nhánh đóng ngắt đối nghịch nhau. Để đơn giản hóa sơ đồ, ta chỉ vẽ trạng thái của 3 van công suất phía trên. Ba van còn lại có trạng thái đối nghịch với ba van trên theo từng cặp: S0 – S1 S2 - S3 S4 – S5 Hình 3-12: Vectơ Vs trong các vùng từ 0-6 Nhận xét: Dạng điện áp đầu hoặc dòng điện đầu ra của phương pháp SVPWM ít bị méo hơn do chứa ít các thành phần điều hòa hơn so với phương pháp SPWM. Hiệu suất sử dụng điện áp đầu vào của phương pháp SVPWM cao hơn so với phương pháp SPWM 4.2. Phương pháp điều khiển trực tiếp momen (DTC: Direct Torque Moment) Sự khác nhau giữa phương pháp điều chế SVPWM và phương pháp DTC là phương pháp DTC không sử dụng khuôn mẫu chuyển mạch cố định (fixed switching pattern). Phương pháp này chuyển mạch bộ nghịch lưu theo yêu cầu của tải. Vì không sử dụng khuôn mẫu chuyển mạch cố định, phương pháp này đáp ứng cực nhanh theo sự biến động của tải. Độ chính xác vận tốc của phương pháp này lên tới 0,5%, mặc dù không cần phải sử dụng một thiết bị phản hồi nào. Trái tim của phương pháp này là khâu thích ứng động cơ. Khâu thích ứng này dựa trên mô hình toán học cơ bản của động cơ. Khâu thích ứng yêu cầu thông tin về rất nhiều thông số động cơ, như điện trở stato, điện cảm tương hỗ, hệ số bão hòa,.. Thuật toán này lấy các thông tin này về động cơ lúc khởi động mà không làm quay động cơ. Nhưng việc làm quay động cơ trong vòng vài giây sẽ giúp cho việc điều chỉnh của khâu thích ứng. Hiệu chỉnh càng tốt, việc điều khiển tốc độ và momen càng có độ chính xác càng cao. Từ điện áp một chiều, dòng điện dây và vị trí chuyển mạch hiện thời, khâu thích ứng này tính toán ra từ thông và momen thực tế của động cơ. Những giá trị này được đưa tới bộ so sánh hai lớp từ thông và momen tương ứng. Đầu ra của các bộ so sánh này là tín hiệu tham chiếu momen và từ thông cho bảng lựa chọn chuyển mạch tối ưu. Vị trí chuyển mạch được lựa chọn được đưa thẳng tới bộ nghịch lưu mà không cần điều chế do đó có đáp ứng rất nhanh. Tín hiệu tham chiếu tốc độ đặt từ bên ngoài được giải mã để tạo ra từ thông và momen tham chiếu. Vì thế, trong phương pháp điều khiển trực tiếp momen, từ thông và momen động cơ là những biến được điều khiển trực tiếp vì thế có tên là điều khiển trực tiếp momen. Ưu điểm của phương pháp này tốc độ đáp ứng rất nhanh, không cần các thiết bị phản hồi, giảm được sử hỏng hóc về cơ khí, hiệu suất gần bằng máy điện một chiều mà không có phản hồi. Nhước điểm của phương pháp này là sự trễ vốn có của bộ so sánh dẫn đến từ thông và momen bị nhấp nhô. Vì chuyển mạch được thực hiện ở tần số thấp nên câc thành phần điều hòa bậc thấp tăng lên PHẦN II THIẾT KẾ SƠ BỘ Từ cơ sở lý thuyết trên, trong đề tài này em lựa chọn thiết kế bộ biến tần kiểu gián tiếp, sử dụng chỉnh lưu cầu, bộ nghịch lưu có sơ đồ nghịch lưu cầu ba pha nguồn áp, điều khiển theo luật U/f không đổi bằng phương pháp điều chế độ rộng xung SPWM (Sinusoidal PWM). Các thông số của bộ biến tần như sau: Điện áp vào xoay chiều một pha 220V/50Hz Đầu ra điện áp xoay chiều ba pha 220V Tần số ra nhảy cấp có fmin = 10hz, fmax = 50Hz Chống quá nhiệt Chống quá dòng Tăng tốc, giảm tốc Điều khiển động cơ có thông số như sau: tốc độ định mức 1410rpm, điện áp định mức (Y/Δ) 380/220, tần số định mức 50Hz, công suất định mức 0,75kW. SƠ ĐỒ CÂU TRÚC Hình (1-1):Sơ đồ cấu trúc a) Khâu chỉnh lưu: Khâu chỉnh lưu sử dụng sơ đồ chỉnh lưu cầu một pha không điều khiển. Các van công suất trong sơ đồ là các diode công suất. Chức năng của khâu chỉnh lưu là biến đổi điện áp xoay chiều đầu vào thành điện áp một chiều. b) Lọc: Chức năng của bộ lọc là san phằng điện áp sau chỉnh lưu. c) Nghịch lưu: Bộ nghịch lưu sử dụng nghịch ưu áp ba pha có nhiệm vụ biến đổi điện áp đầu vào một chiều thành điện áp xoay chiều có tần số và biên độ có thể thay đổi được cấp cho động cơ. Các van công suất sử dụng trong bộ nghịch lưu là IGBT. d) Mạch lái: Mạch lái có nhiệm vụ nhận tín hiệu điều khiên từ bộ điều khiển tạo ra các tín hiệu điều khiển trực tiếp các van công suất trong bộ nghịch lưu. Trong đề tài này, em sử dụng module công suất thông minh (IPM: intelligent power module) của hãng International Rectifier. Hình (1-2): Sơ đồ biến tần điều khiển động cơ sử dụng bộ nghịch lưu nguồn áp ba pha e) Bộ điều khiển: Bộ điều khiển được thiết kế sử dụng vi điều khiển PSoC. Bộ điều khiển có nhiệm vụ tạo tín hiệu PWM theo một luật nào đó điều khiển các van công suất trong bộ nghịch lưu thông qua mạch lái. Luật điều khiển em sử dụng trong đề tài này là phương phap điều chế độ rộng xung SPWM (Sinusoidal PWM). Ngoài ra, bộ điều khiển còn có nhiệm vụ xử lý tín hiệu từ bộ theo dõi nhiệt độ và bộ phản hồi dòng. Bộ điều khiển nhận tín hiệu điều khiển từ phím bấm. Các yêu cầu điều khiển bao gồm khởi động, dừng, đảo chiều, đặt tốc độ. f) Mạch theo dõi nhiệt độ: Mạch theo dõi nhiệt độ cấp tín hiệu điện áp tỷ lệ với nhiệt độ trong module công suất mà thực chất chính là nhiệt độ của van công suất. g) Mạch phản hồi dòng: Mạch phản hồi dòng có nhiệm vụ biến đổi điện áp trên điện trở shunt thành tín hiệu phù hợp cấp cho bộ điều khiển. Khi có quá dòng xảy ra, bộ điều khiển sẽ tạo ra tín hiệu khóa module công suất lại, cắt công suất đầu ra. Hình (1-3): Sơ đồ mắc điện trở shunt để theo dõi dòng điện h) Phím: Người sử dụng có thể đặt lệnh điều khiển bộ biến tần thông qua phím tác dụng. i) Nguồn: Nguồn có chức năng tạo ra các mức điện áp thích hợp (5VDC và 15VDC) có công suất đủ cho các mạch điều khiển, mạch lái. Bộ nguồn lấy điện áp sau bộ lọc. 2. SƠ DỒ TÍNH NĂNG Hình (1-4): Sơ đồ tính năng bộ biến tần Giải thích sơ đồ tính năng: Tín hiệu điều khiển từ bàn phím bao gồm khởi động, dừng, đảo chiều, và đặt vận tốc thông qua việc đặt tần số điều khiển. Khi điều chỉnh tốc độ thông qua việc đặt tần số, cân phải có thời gian chuyển từ tần số này sang tần số mới để tránh hiện tượng động cơ bị giật mạnh. Thời gian động cơ chuyển từ tần số điều khiển này sang tần số điều khiển mới được xử lý trong khâu xác định tần số điều khiển mới. Khi đảo chiều cũng vậy, phải đưa động cơ về giá trị đủ nhủ rồi mới thực hiện đảo chiều quay để tránh moment xoắn tác động lên động cơ. Sau khi xác định được tần số điều khiển mới, bảng sin mới được tính lại sao để giữ cho tỷ số U/f ở đầu ra không đổi Bộ PWM có nhiệm vụ tạo tín hiệu PWM cấp cho các van công suất. Các tín hiệu này được điều chế theo phương pháp SPWM. PHẦN III THIẾT KẾ CHI TIẾT 1. Tính toán các thông số của động cơ Các thông số cho trên động cơ: Pdm = 0,75kW fdm = 50Hz Udm(Y/Δ)=380/220V ndm = 1410 vòng/phút p = 2 cosφdm = 0,88 ηdm = 0,885 Tốc độ góc định mức của động cơ: (1-1) Dòng điện định mức : (1-2) Momen định mức: (1-3) Công suất tác dụng động cơ tiêu thụ: (1-4) Tốc độ đồng bộ: (1-5) Hệ số trượt định mức (1-6) 2. Thiết kế tầng nghịch lưu và tầng mạch kích Với việc sử dụng module công suất IRAMX16UP60A của International Rectifier thì việc thiết kế mạch nghịch lưu cũng như mạch kích trở nên đơn giản hơn rất nhiều. Sơ đồ mạch nguyên lý như hình (): Hình (1-1): Sơ đồ nguyên lý mạch nghịch lưu và mạch lái sử dụng IRAMX16UP60A Giới thiệu về module công suất IRAMX16UP60A Các module công suất tích hợp điều khiển động cơ đang là một xu thế phát triển hiện tại bởi những ưu điểm mà nó mang lại như tiết kiệm không gian mạch in và dễ dàng lắp ráp. Tuy nhiên việc sử dụng rộng rãi các module này bị hạn chế bởi giá thành cũng như là khả năng thiếu mềm dẻo trong thiết kế. Một seri module công suất thông minh (IPM: intelligent power module) giá thành thấp mới đã được phát triển cho các ứng dụng điều khiển động cơ, nhằm giải quyết những yếu tố trên. Đặc tính của các module công suất thông minh mới này cho phép tổn thất công suất chung thấp hơn so với các công nghệ cạnh tranh hiện tại. Một sự cải tiến đáng kể nữa là khả năng giảm nhiễu điện từ (EMI) của hệ thống mặc dù tần số chuyển mạch có thể rất cao nhờ vào công nghệ đóng vỏ đặc biệt. Module công suất IRAMX16UP60A của International Rectifier làm một module công suất tích hợp được phát triển và tối ưu cho các ứng dụng điều khiển động cơ như máy giặt, các bộ truyền động máy nén điều chỉnh tốc độ trong các hệ thống điều hòa không khí trong nhà và các tủ lạnh thương mại. Công nghệ PlugNDrive đưa ra một bộ điều khiển động cơ xoay chiều hiệu suất cao, kết cấu siêu gọn trong một vỏ cách ly đơn cho một thiết kế đơn giản. Cấu hình hở emitter ở IGBT phía thấp cho phép dễ dàng phản hồi dòng, theo dõi quá dòng để có thể điều khiển với độ an toàn và chính xác cao. Chức năng bảo vệ quá dòng và theo dõi nhiệt độ dựng sẵn, cùng với chức năng ngắt khi thấp áp tích hợp bên trong cho phép hoạt động an toàn và bảo vệ ở mức cao. Việc kết hợp diode boostrap cho mạch lái phía cao và chỉ cần nguồn cấp đơn cực cho mạch phía trong làm đơn giản hóa việc sử dụng module và đưa ra sự thuận lợi cho việc giảm giá thành hơn nữa. Đặc tính của module IRAMX16UP60A: Tích hợp mạch kích và diode boostrap Chức năng theo dõi nhiệt độ Cắt khi quá dòng hoặc quá nhiệt độ Đóng vỏ đơn hoàn toàn Công nghệ IGBT Non Punch Through, điện áp VCE (on ) thấp Chức năng khóa khi điện áp thấp cho tất cả các kênh Trễ lan truyền như nhau cho tất cả các kênh Chân emiter của IGBT phía thấp để hở cho việc điều khiển dòng điện Đầu vào logic Schmit-triggered di/dt thấp làm cho việc chống nhiễu tốt hơn Giải công suất 0,75kW~2kW/85~253Vac Điện áp cách ly thấp nhất 2000Vrms Ưu điểm của giải pháp sử dụng module công suất tích hợp IRAMX16UP60A Bên cạnh những ưu điểm như nhỏ gọn hơn, tin cậy hơn, đơn chíp so với việc sử dụng linh kiện rời, module IPM còn giúp cho các kỹ sư thiết kế tránh khỏi những lỗi thường gặp khi thiết kế bộ nghịch lưu dùng IGBT: Độ tự cảm của mạch thấp hơn so với linh kiện rời làm giảm xung điện áp kim và khả năng hoạt động ở tần số đóng cắt cao với tổn hao ít hơn. Kết nối công suất đơn giản, bao gồm chân V+, Le1, Le2, Le3 và các chân nối với động cơ gồm U,V, W. Mạch kích tích hợp bên trong yêu cầu 6 đầu vào logic (cả mức 3,3V) và 3 tụ boostrap được chọn theo tần số đóng cắt. Trễ lan truyền thấp cho cả IGBT phía thấp và phía cao được làm cho phù hợp với việc ngăn chặn DC core flux tác động vào động cơ. Bộ điều khiển deadtime bên trong ngăn trùng dẫn Chế độ an toàn sự cố được bảo đảm bởi tính năng tự ngắt dựng sẵn khi quá dòng hoặc quá nhiệt. - Có các chân cho phép theo dõi nhiệt độ và dòng điện pha. Ưu điểm chính khi sử dụng module IPM là dễ dàng thiết kế một hệ điều khiển động cơ tối ưu, tin cậy. Kỹ sư thiết kế có thể được giải phóng khỏi những vấn đề khó khăn sau: Làm sao có thể tạo ra một khoảng thời gian trễ hợp lý (deadtime) để tránh trùng dẫn. Làm sao để thiết kế mạch bảo vệ quá dòng cho các van công suất IGBT. Làm sao để thiết kế mạch kiểm tra quá nhiệt độ mà thực tế là theo dõi nhiệt độ của IGBT. Làm sao để làm cho thời gian trễ lan truyền phù hợp trong mạch kích để ngăn không cho dòng một chiều chạy vào cuộn dây của stato động cơ. Làm sao để lựa chọn thời gian chuyển mạch tối ưu để hạn chế nhiễu điện từ đạt được hiệu suất cao nhất. Làm sao để giảm kích thước cuộn lọc để giảm quá điện áp khóa IGBT. Cấu trúc của module công suất IRAMX16UP60A Hình (1-2): Sơ đồ cấu trúc bên trong của IRAMX16UP60A Module IRAM 600V bao gồm 6 khóa IGBT cùng với mỗi điện trở cực cửa cho mỗi khóa, ba diode liên lạc cho mỗi pha, mạch kích dịch mức (level shifting), ba diode boostrap cùng với điện trở hạn chế dòng và cặp nhiệt điện trở, điện trở cho việc cắt khi quá nhiệt độ. Mạch cắt khi quá dòng đáp ứng với điện áp đầu được tạo ra từ một cảm biến bên ngoài như biến áp dòng hay nhiệt điện trở. Chân đầu vào cho mạch cắt thực hiện chức năng đôi sau: Đầu vào cho tín hiệu quá dòng Đầu ra analog cho module theo dõi dõi nhiệt độ. Vì đảm bảo hai chức năng trên nên phải có một mạch bên ngoài tương tự như sơ đồ sau: Hình (1-3): Sơ đồ mạch ITRIP Điều quan trọng là tụ lọc giữa chân Vcc và chân GND phải đặt gần module IRAM để ngăn nhiễu truyền vào mạch Itrip circuit gây ra việc cắt sai. Transitor hở collector, điều khiển quá dòng luôn ở trạng thái mở và cấm chức năng khóa dòng. Mạch bảo vệ quá nhiệt luôn đuợc kích hoạt và được xếp chồng bởi mạch bảo vệ quá dòng. Tín hiệu vào Một hệ điều khiển động cơ vòng hở, đầy đủ gồm nguồn tạo tín hiệu điều khiển, tầng mạch kích và tầng công suất. Động cơ ba pha ở đây có thể là động cơ không đồng bộ hoặc động cơ đồng bộ nam châm vĩnh cửu. Module IRAM tích hợp tầng công suất và tầng mạch kích. Nhưng bộ não của hệ thống phải tạo được tín hiệu điều khiển PWM hoặc thông tin PFM để hoàn chỉnh chức năng của một hệ điều khiển. Hệ thống điều khiển ở mức logic 5V được sử dụng thông dụng hơn theo quan điểm chống nhiễu nhưng tín hiệu điều khiển cấp cho module này có thể là 3,3V mức hoặc bất kỳ mức nào từ 3,3V tới Vcc (+15V). Tín hiệu điều khiển vào mạch kích yêu cầu tích cực mức thấp để điều khiển đầu ra. Tín hiệu đầu vào Itrip là 4,3V và điện áp ngắt khi xảy ra thấp áp là 11V. Miêu tả chân IRAMS10UP60A Hình (1-4): Bảng miều tả chân IRAMX16UP60A Tính chọn tụ boostrap IGBT là phần tử điều khiển bằng điện áp, giống như MOSFET, nên yêu cầu điện áp phải có mặt liên tục trên cực điều khiển và emitter để xác định chế độ khóa, mở. Đối với IGBT phía cao trong một kênh của bộ nghịch lưu, điện áp tại chân emitter luôn thay đổi thường là giữa đất và điện áp dương của nguồn một chiều. Do đó cần phải tạo ra một nguồn điện áp trôi cho mạch lái phía cao để điều khiển cực cửa của IGBT trong khi tín hiệu điều khiển từ vi xử lý chỉ có mức điện áp +5V so với đất. Có nhiều phương pháp để thực hiện điều này một trong những cách đó la sử dụng mạch boostrap. Mạch boostrap bao gồm một điện trở và một tụ điện được nối theo sơ đồ như hình (1-5). Phương pháp này có ưu điểm là giá thành thấp và dễ thực hiện nhưng bị hạn chế bởi yêu cầu xả điện tích trên tụ boostrap. Hình (1-5): Sơ đồ mạch boostrap Điện áp Vbs (điện áp giữa chân Vb và Vs của IC) cấp nguồn cho mạch kích phía cao của IC. Điện áp này đòi hỏi phải được giữ ở trong khoảng từ 10V đến 20V để mở hoàn toàn van công suất. Một số IC của Interational Rectifier tích hợp cả mạch dò điện áp thấp đối với Vbs để đảm bảo rằng IC sẽ không xuất tín hiệu điều khiển nếu điện áp Vbs thấp hơn giá trị nào đó (được quy định trong datasheet). Điều này ngăn không cho van công suất hoạt động trong chế độ quá tải. Nguyên lý hoạt động như sau: khi IGBT phía thấp mở, tụ Cbs nạp điện qua diode Dbs, điện trở Rbs và van S2 tới gần giá trị 15V, vì điện thế chân Vs gần như bằng 0. Tụ Cbs được chọn sao cho giữ được hầu hết điện tích khi IGBT phía thấp khóa lại và Vs đạt đến gần giá trị điện áp dây. Sau đó, Vbs xấp xỉ 15V, mạch phía cao của IC lái được phân cực bởi tụ Cbs. Việc lựa chọn tụ, diode và điện trở phụ thuộc vào các yếu tố sau: Điện áp Vbs phải được duy trì ở giá trị lớn hơn điện áp khóa (under-voltage lockout) của IC điều khiển. Cbs không nạp đến chính xác 15V khi van phía dưới mở do điện áp sụt rên diode Vbs (Vfbs) và điện áp Vceon của S2. Khi van phía trên mở, tụ xả điện chủ yế bằng những cơ chế sau: + Điện tích Qg cho việc mở van phía trên. + Dòng điện tĩnh (quiscient current) Iqbs cho mạch phía trên của IC. + Điện tích dịch mức (level-shift) QLS yêu cầu bởi mạch dịch mức (level-shifters) trong IC. + Dòng điện rò (leakage current) Idl trên diode boostrap Dbs. + Dòn điện rò trên tụ Icbs (bỏ qua nếu dùng tụ nonelctrolytic) + Điện tích phục hồi đảo diode boostrap Qrrbs. Giá trị tụ boostrap theo tài liệu của nhà sản xuất được tính theo công thức sau: (1-7) Trong đó: Qg - điện tích cực cửa cho viêc mở IGBT QRRBS - điện tích phục hồi đảo diode boostrap IQBS - dòng điện tĩnh mạch lái phía cao của IC QLS - điện tích dịch mức bởi bộ dịch mức trong IC IDL - dòng điện rò trên diode fsw - tần số băm xung Vcc - điện áp nguồn cho mạch kích phía cao VFBS - điện áp rơi trên diode VCEON(S2) - điện ráp giữa cực C và cực E khi IGBT phía thấp dẫn Các thông số trên có thể tra trong datasheet của nhà sản xuất. Với tần số băm xung fsw = 5,2kHZ, em chọn giá trị tụ boostrap Cbs = 10μF. 3. Thiết kế mạch theo dõi dòng điện Cực emitter của các IGBT phía thấp trong module IRAMX16UP60A không được nối với nhau cho phép vi điều khiển hay DSP có thể theo dõi nhiệt độ trong mỗi pha bằng các điện trở cả biến dòng mắc trên mỗi pha. Mục đích của sự lưu ý này là chỉ ra một giải pháp riêng cho việc cung cấp phản hồi dòng cho bộ A/D trong sơ đồ hệ thống. Khi điện trở shunt được mắc vào mạch nối giữa cực emitter của IGBT và cực âm của nguồn một chiều (V-), dòng điện được cảm ứng trên mỗi pha. Hình sau chỉ ra một sơ đồ điển hình. Hình (1-6): Sơ đồ mắc điện trở shunt Tín hiệu điện áp được thao tác dễ dàng hơn so với tín hiệu dòng điện, do dó điện trở shunt làm việc giống như một bộ chuyển đổi dòng điện sang điện áp. Trong nhưng ứng dụng điều khiển động cơ đặc trưng, điện áp trên điện trở shunt có thể âm hoặc dương so với điểm đất (V-). Bộ A/D lại chỉ được phép lấy đầu vào tín hiệu dương. Đây là một hạn chế lớn và không cho phép người sử dụng có thể sử dụng trực tiếp thông tin từ điện trở shunt. Tín hiệu từ điện trở shunt phải tương thích với đầu vào động của bộ A/D. Nó cần phải được lệch đi một giá trị thích hợp. Một mạch như vậy có thể tham khảo trong tài liệu của nhà sản xuất như sau: Hình (1-7): Sơ đồ mạch phản hồi dòng Đó là một bộ khuếch đại điện áp hai đầu vào. Để so thể đơn giản hóa biểu thức liên hệ giữa đầu ra và đầu vào, ta đưa ra sử dụng một số giả thiết, kết quả thu được công thức sau: (1-8) Trong đó, Vd là tín hiệu đầu vào hay chính là điện áp rơi trên điện trở shunt, Rb = R5 và Ra = R2 xác định hệ số khuếch đại áp, Vr và tỉ số R3/(R3 + R4) thiết lập độ lệch đầu vào. Mạch theo dõi dòng điện có sơ đồ như hình sau (): Hình (1-8): Sơ đồ nguyên lý mạch phản hồi dòng Biên độ điện áp trên điện trở shunt phụ thuộc vào giá trị điện trở và dòng điện lớn nhất cho phép. Theo datasheet của IRAMX16UP60A, ta có dòng điện lớn nhất cho phép là 16A. Theo khuyến cáo trong tài liệu của nhà sản xuất, người thiết kế phải cung cấp một mạch ngoài cấp tín hiệu vào trân T/Itrip để tắt hệ thống nhanh nhất có thể khi giá trị dòng điện đạt gần đến giá trị lớn nhất cho phép. Vòng bảo vệ phải tắt hệ thống nhanh hơn 10μs nếu không IGBT sẽ bị phá hủy. Từ công thức (1-8) ta tính được: (1-9) (1-10) Cho phép dòng điện lớn nhất là 12,5A, ta tính được giá trị của điện trở shunt như sau: (1-11) 4. Thiết kế mạch điều khiển Trong đề tài này em xử dụng chíp PSoC cho việc điều chế tín hiệu sin PWM. PSoC là từ viết tắt của cụm từ tiếng anh Programmable System on Chip, nghĩa là hệ thống khả trình trên một chíp. Các chíp chế tạo theo công nghệ PSoC cho phép thay đổi được cấu hình đơn giản bằng cách gán chức năng cho các khối tài nguyên có sẵn trên chíp. Hơn nữa nó còn có thể kết nối tương đối mềm dẻo các khối chức năng với nhau hoặc giữa các khối chức năng với các cổng vào ra. Chính vì vậy mà PSoC có thể thay thế cho rất nhiều chức năng nền của một hệ thống cơ bản chỉ bằng một chíp đơn. Thành phần của chip PSoC bao gồm các khối ngoại vi số và tương tự có thể cấu hình được, một bộ xử lý 8 bit, bộ nhớ chương trình (EEPROM) có thể lập trình được và bộ nhớ RAM khá lớn. Việc cấu hình cho chip như thế nào là tùy thuộc vào người lập trình thông qua một số thư viện chuẩn. Người lập trình thiếp lập cấu hình trên chíp chỉ đơn giản bằng cách muốn chip có những chức năng gì thì kéo chức năng đó và thả vào khối tài nguyên số hoặc tương tự, hoặc cả hai tùy theo từng chức năng (phương pháp lập trình kéo thả). Việc thiết lập ngắt trên chân nào, loại ngắt là gì, các chân vào ra được hoạt động ở chế độ như thế nào đều tùy thuộc vào việc thiết lập của người lập trình khi thiết kế và lập trình cho PSoC. Với khả năng đặt cấu hình mãnh mẽ này, một thiết bị điều khiển, đo lường có thể gói gọn trên một chíp duy nhất. Chình vì lý do đó, hãng Cypress MicroSystems đã không gọi sản phẩm của mình là vi điều khiển (μC) như truyền thống, mà gọi là “thiết bị PSoC” (PSoC device), và họ hy vọng rằng với khả năng đặt cấu hình mạnh mẽ, người sử dụng sẽ có được những thiết bị điều khiển, thiết bị đo có giá rẻ, kích thước nhỏ gọn và sản phẩm PSoC của ho sẽ thay thế được hầu hết các thiết bị dựa trên vi xử lý hoặc vi điều khiển đã có từ trước đến nay. Chíp PSoC (CY8C29Xxxx) cung cấp: Bộ vi xử lý cấu trúc Harvard Tốc độ vi xử lý lên đến 24MHz Lệnh nhân 8 bit × 8 bit, thanh ghi tích lũy là 32 bit Hoạt động ở tốc độ cao mà năng lượng tiêu hao ít Dải điện áp hoạt động từ 3.0 đến 5.25V Điện áp hoạt động có thể giảm xuống 1.0V sử dụng chế độ kích điện áp Hoạt động trong dải nhiệt độ -40oC đến 85oC Các khối ngoại vi có thể được sử dụng độc lập hoặc kết hợp 12 khối ngoại vi tương tự có thể được thiết lập để làm các nhiệm vụ sau: Các bộ ADC lên đến 14 bit Các bộ DAC lên đến 9 bit Các bộ khuếch đại có thể lập trình hệ số khuếc đại Các bộ lọc và các bộ so sánh có thể lập trình được 8 khối ngoại vi số có thể được thiết lập để làm các nhiệm vụ: Các bộ định thời đa chức năng, đếm sự kiện, đồng hồ thời gian thực, bộ điều chế độ rộng xung có và không có dải an toàn (deadband) Các module kiểm tra lỗi (CRC module) Hai bộ truyền thông nối tiếp không đồng bộ hai chiều Các bộ truyền thông SPI Master hoặc Slave có thể cấu hình được Có thể kết nối với tất cả các chân vào ra Bộ nhớ linh hoạt trên chip Không gian bộ nhớ chương trình Flash từ 4K đến 16K, phụ thuộc vào từng loại chíp với chu kỳ ghi xóa cho bộ nhớ Flash là 50.000 lần Không gian bộ nhớ RAM là 256 ký tự Chíp có thể lập trình thông qua chuẩn nối tiếp (ISSP) Bộ nhớ Flash có thể được nâng cấp từng phần Chế độ bảo mật đa năng, tin cậy Có thể tạo được không gian bộ nhớ Flash trên chip lên tới 2,034 byte Có thể lập trình được cấu hình cho từng chân của chip Các chân vào ra ba trạng thái sử dụng Trigger Schmitt Đầu ra logic có thể cung cấp dòng 25mA với điện trở treo cao hoặc thấp bên trong Thay đổi được ngắt trên từng chân Đường ra tương tự có thể cung cấp dòng tới 40mA Đường ra đa chức năng có từ 6 đến 44 chân tùy thuộc vào từng chip Xung nhịp của chip có thể lập trình được Bộ tạo dao động 24/48MHz ở bên trong (độ chính xác là 2,5%, không cần thiết bị ngoài) Có thể lựa chọn bộ dao động ngoài lên tới 24MHz Bộ tạo dong động thạch anh 32,768kHz bên trong Bộ tạo dao động tốc độ thấp bên trong sử dụng cho Watchdog và Sleep Ngoại vi được thiết lập sẵn Bộ định thời Watchdog và Sleep phục vụ chế độ an toàn và chế độ nghỉ Module truyền thông I2C Master và I2C Slave tốc độ tới 400kHz Module phát hiện điện áp thấp được cấu hình bởi người sử dụng Công cụ phát triển Phầm mềm phát triển miễn phí (PSoCMTM Designer) Bộ lập trình và bộ mô phỏng với đầy đủ chức năng Mô phỏng ở tốc đô cao Hình (1-9): Sơ đồ khối bên trong của chip PSoC 5. Thiết kế bộ nguồn Để xác định yêu cầu về công suất của bộ nguồn chung ta phải đánh giá các nguồn tiêu hao công suất. Các nguồn đó là: Tổn hao điều khiển các van công suất Yêu cầu công suất cho việc tạo tín hiệu điều khiển Tổn thất tĩnh của IC lái và tổn thất dịch mức Tổn thất trên diode boostrap Các tổn thất phụ khác như cho led báo, … Vì có 6 van IGBT nên tổn thất điều khiển cho các van này Ps được xác định bởi công thức sau: Ps = 6 × Qg × Vge × f (25) Trong đó Qg là điện tích cần để mở và khóa một IGBT trong một chu kỳ. Vge là biên độ điện áp giữa cực G và cực E và f là tần sô băm xung. Trong trường hợp xấu nhất, giá trị của Qg có thể lấy bằng 80nC trong họ module này, giá trị điện áp lớn nhất cho phép của điện áp cực G là 20V và tần số trong những ứng dụng điều khiển động cơ điện lớn nhất là 20kHz. Từ đó giá trị lớn nhất có thể của Ps là: Ps = 6 × 80 × 10-9 × 20 ×20 × 103 ×103 ≈ 200(mW) Tổn thất khi dẫn trong diode boostrap được cho bởi công thức: Pd = 3 × Qd × Vd × f Trong đó Qd là điện tích chuyển qua diode nạp co tụ boostrap. Vd là điện áp rơi trên diode và f là tần số PWM. Những diode này chứa trong module vì thế tất cả các thông số đều được cho trong datasheet của nhà sản xuất. Qd có giá trị là 100nC, điện áp lớn nhất rơi trên diode khi phân cực thận là 1V và tần số băm xung vẫn là 20kHz. Thay vào công thức trên ta được: Pd ≈ 6(mW) Như vậy công suất tổng tiêu hao trên IC lái là: Pt = Ps + Pd + Pic = 200mW + 6mW + 100mW = 306 (mW) Nhân giá trị trên với hệ số dữ trữ bằng 2 cộng với các công suất phụ khác la cần một công suất xấp xỉ 1W với nguồn 15V. Đối với mạch điều khiển và mạch đo dòng điện phản hồi, mạch theo dõi nhiệt độ, công suất yêu cầu lấy xấp xỉ 1,5W. Các mạch này đều sử dụng nguồn 5V. Như vậy yêu cầu về nguồn như sau: Hai mức điện áp đầu ra là 5VDC và 15VDC Công suất đối với nguồn s5VDC là 1,5W Công suất đố với nguồn 15VDC là 1W. Như vậy công suất nguồn yêu cầu là 2,5W. Từ phân tích trên, em chọn phương án sử dụng IC ổn áp 7805 và 7815. Sơ đồ nguyên lý: Hình (1-10): Sơ đồ nguyên lý nguồn cung cấp Sơ đồ nguyên lý của mạch: CHƯƠNG 2 Giải thuật và lưu đồ thuật toán 1. Phân tích khảo sát phương pháp điều chế độ rộng xung SPWM Để tạo ra điện áp xoay chiều bằng phương pháp SPWM, ta sử dụng một tín hiệu xung tam giác vtri (gọi là sóng mang) đem so sánh với một tín hiệu sin chuẩn vc (gọi là tín hiệu điều khiển). Nếu đem xung điều khiển này cấp cho bộ nghich lưu một pha, thì ở ngõ ra sẽ thu được dạng xung điện áp mà thành phần điều hòa cơ bản có tần số bằng tần số tín hiệu điều khiển vc và biên độ phụ thuộc vào nguồn điện một chiều cấp cho bộ nghịch lưu và tỷ số giữa biên độ sóng sin mẫu và biên độ sóng mang. Tần số sóng mang lớn hơn rất nhiều tần số tín hiệu điều khiển. Hình 3-3 miêu tả nguyên lý của của phương pháp điều chế SPWM một pha: Hình 2-1: Nguyên lý điều chế SPWM một pha Khi: vc > vtri , VA0 = Vdc/2 vc < ttri , VA0 = -Vdc/2 Đối với nghịch lưu áp ba pha có sơ đồ như hình 3-4. Để tạo ra điện áp sin ba pha dạng điều rộng xung, ta cần ba tín hiệu sin mẫu. Hình 2-2: Nghịch lưu áp ba pha Nguyên lý điều chế và dạng sóng như sau: Hình 2-3: Nguyên lý điều chế SPWM ba pha Hệ số điều chế biên độ ma được định nghĩa là tỷ số giữa biên độ của tín hiệu điều khiển với biên độ của sóng mang: (2-1) ma - hệ số điều biến Vc - biên độ sóng điều khiển Vtri - biên độ sóng mang Trong vùng tuyến tính (0 < ma < 1), biên độ của thành phần sin cơ bản VA01 (điện áp pha) trong dạng sóng đầu ra tỷ lệ với hệ số điều biến theo công thức: (2-2) Đối với điện áp dây là: (2-3) Như vậy trong phương pháp này biên độ điện áp dây đầu ra bộ nghịch lưu chỉ có thể đạt 86,67% điện áp một chiều đầu vào trong vùng tuyến tính (0 < ma < 1). Hệ số điều chế tỷ số mf là tỷ số giữa tần số sóng mang và tần số tín hiệu điều khiển: (2-4) mf - hệ số điều chế tỷ số ftri - tần số sóng mang, bằng tần số PWM fc - tấn số tín hiệu điều khiển Giá trị của mf được chọn sao cho nên có giá trị dương và lẻ. Nếu mf là một giá trị không nguyên thì trong dạng sóng đầu ra sẽ có các thành phần điều hòa phụ (subharmonic). Nếu mf không phải là một số lẻ, trong dạng sóng đầu ra sẽ tồn tại thành phần một chiều và các hài bậc chẵn. Giá trị của mf nên là bội số của 3 đối nghịch lưu áp ba pha vì trong điện áp dây đầu ra sẽ triệt tiêu các hài bậc chẵn và hài là bội số của ba. Như vậy, nếu điện áp một chiều đầu vào không đổi, để điều chỉnh biên độ và tần số của điện áp đầu ra ta chỉ việc điều chỉnh biên độ và tần số của tín hiệu sin chuẩn vc. Đặc trưng cơ bản của phương pháp này là thành phần sóng điều hòa của điện áp ra. Muốn giảm các sóng điều hòa bậc cao cần phải tăng tần số sóng mang hay tần số PWM. Tuy nhiên càng tăng tần số PWM thì tổn hao chuyển mạch lại tăng lên. 2. Phương pháp điều chế tín hiệu Sin PWM ba pha theo luật U/f=const sử dụng PSoC Để tạo tín hiệu sin PWM ba pha, em sử dụng ba bộ PWMDB 8 bit kết hợp với một bộ Timer 16 bit có trong PSoC. PWMDB là một module bao gồm một bộ điều chế độ rộng xung PWM 8 hoặc 16 bit kết hợp với một bộ DB 8bit có chức năng tạo dải an toàn. Bộ PWM tạo xung có biên độ và chu kỳ có thể lập trình được. Xung này sau đó được đưa đến bộ DB. Chức năng tạo dải an toàn sẽ tạo ra trên cả hai đầu ra chính và đầu ra phụ của khối. Chức năng này sinh ra xung nhịp không gối lên nhau. Hai pha xung nhịp đó không bao giờ ở mức cao trong cùng một thời điểm và khoảng thời gian ở giữa hai pha đó gọi là dải an toàn. Độ rộng của dải an toàn được xác định bởi giá trị đặt trước của thanh ghi. Trong trường hợp này, nguồn xung nhịp cấp cho bộ tạo giải an toàn DB là một PWM, hai đầu ra của bộ DB Phase1 và Phase2 là hai PWM đảm bảo không gối lên nhau. Một tín hiệu tích cực trên đầu vào ‘Kill’ sẽ khóa cả hai đầu ra này ngay lập tức. Module PWM được cấu hình sử dụng một hay hai khối số để tạo ra một bộ PWM 8 bit hay PWM 16 bit. Ở đây em sử dụng ba bộ PWMDB 8 bit. Việc sử dụng PWMDB 16 bit cũng tương tự. Mỗi bộ PWMDB 8 bit có hai đầu ra phase1 và phase2, hai đầu ra này là hai tín hiệu cấp cho hai van trong cùng một kênh của bộ nghịch lưu áp ba pha. Cách hoạt động của module PWMDB 8, 16 bit cũng như bộ Timer 16 bit có thể tham khảo trong datasheet của các module này trong phần phụ lục. Ở đây, em chỉ trình bày các chức năng chính phục vụ cho việc điều chế sin PWM ba pha. Bộ PWM 8 có ba thanh ghi chính sau: Thanh ghi đếm (Counter Register), giá trị của nó được ký hiệu là c(i) Thanh ghi chu kỳ (Period Register), giá trị của nó ký hiệu là p(i) Thanh ghi so sánh (Compare Register), hay còn gọi là thanh ghi độ rộng xung (PulseWidth Register), giá trị của nó được ký hiệ là w(i) Trong đó I ký hiệu cho chu kỳ PWM thứ i. Nếu chỉ viết c,p,w thì có nghĩa là đang đến chu kỳ bất kỳ. Giá trị trong thanh ghi đếm giảm dần từ giá trị trong thanh ghi chu kỳ mỗi khi có sườn lên của xung nhịp đầu vào. Khi đạt giá trị tới hạn, giá trị của thanh ghi đếm được nạp lại giá trị trong thanh ghi chu kỳ. Quá trình đó cứ lặp đi lặp lại liên tục (khi có tín hiệu cho phép và bắt đầu chạy của bộ đếm). Giá trị trong thanh ghi chu kỳ gọi là giá trị chu kỳ (PeriodeValue), giá trị này có thể lập trình để thay đổi được. Trong mỗi chu kỳ, giá trị trong thanh ghi đếm được so sánh với giá trị trong thanh ghi so sánh. Khi giá trị trong thanh ghi đếm nhỏ hơn (less than) hoặc nhỏ hơn hoặc bằng (less than or equal) giá trị trong thanh ghi so sánh, đầu ra được đặt lên cao, ngược lại đầu ra sẽ có mức thấp. Đầu ra của bộ PWM sẽ luôn giữ ở mức cao (HIGH) nếu thiết lập để giá trị thanh ghi so sánh lớn hơn giá trị thanh ghi chu kỳ (w > p), và luôn giữ ở mức thấp nếu giá trị thanh ghi so sánh bằng 0 (w = 0). Trong thiết kế này, ta sử dụng phép so sánh nhỏ hơn (less than) do đó công thức tính độ rộng xung PWM đầu ra như sau: (2-5) d - độ rộng xung (duty cylce) w - giá trị trong thanh ghi so sánh P - giá trị trong thanh thi chu kỳ Tần số băm xung được xác định như sau: (2-6) fpwm - tần số băm xung fclk - tần số xung nhịp đầu vào Tần số xung nhịp đầu vào được sử dụng cho cả bộ PWM và DB cũng như cho cả ba bộ PWMDB. Hình () minh họa một xung PWM với các thông số được thiết lập như sau: P = 3 W = 0,1,2,3,4 fclk = 100kHz Hình 2-4: Giản đồ miêu tả hoạt động của bộ PWM khi thay đổi giá trị thanh ghi so sánh Việc chọn tần số băm xung là sự lựa chọn dung hòa giữa nhiều yếu tố. Tần số băm xung lớn nghĩa là tần số chuyển mạch của các van công suất (hay các khóa điện tử) trong bộ nghịch lưu lớn dẫn đến tăng tổn hao do chuyển mạch nhưng lại làm giảm các điều hòa bậc cao trong dạng sóng dòng điện do đó làm giảm tổn hao chung trong động cơ. Mạch từ của động cơ, ứng với tần số của điện áp, có các tổn hao từ lớn và gây tiếng ồn. Việc chuyển mạch nhanh của các linh kiện cũng gây tiếng ồn lớn. Ngoài ra tốc độ băm xung cũng phụ thuộc vào khả năng đáp ứng của các khâu cách ly, khâu mạch kích và khẳ năng đóng cắt của van. Trong chương trình này, em cấu hình như sau, fclk = 4/3MHz, P = 255, do đó tần số băm xung là: (2-7) Một điểm cần lưu ý là khi một giá trị mới được ghi vào thanh ghi chu kỳ, nó sẽ có tác dụng sau khi thanh ghi đếm đã đếm về 0 và sẽ nạp lại giá trị mới từ thanh ghi chu kỳ. Trong khi đó, việc ghi vào thanh ghi so sánh, sẽ có tác dụng ngay lập tức. Xung PWM từ bộ PWM đưa đến bộ tạo dải an toàn DB. Đầu ra Phase1 và Phase2 tạo ra hai tín hiệu PWM điều khiển hai van công suất trên cùng một kênh qua tầng cách ly và tầng mạch kích. Do các van trong bộ nghịch lưu là cac IGBT (các van này yêu cầu thời gian đóng lâu hơn thời gian mở) nên để tránh trùng dẫn phải tạo ra một khoảng trễ giữa thời điểm mở khóa này và đóng khóa kia. Thời gian trễ này được tính theo giá trị trong thanh ghi trễ DeadTime (DeadTime Register) như sau: Ttrễ = (Giá trị trong thanh ghi trễ +1)*Tclk (2-8) Ttrễ - thời gian trễ Tclk - chu kỳ xung nhịp đầu vào Trong chương trình này, em cấu hình như sau: fclk = 4/3MHz nên Tclk = 1/fclk = 0,75µs, giá trị thanh ghi trễ là 2, và do đó Ttrễ = 3.0,75 = 2,25µs. Hoạt động của bộ PWMDB có thể được giải thích qua giản đồ thời gian sau: Hình 2-5: Giản đồ thời gian miêu tả hoạt động bộ PWMDB8 Để tạo ra tín hiệu sin, giá trị độ rộng xung (PulseWitdhValue) được điều chế theo một hàm sin. Để giải quyết bài toán này, em sử dụng một bộ Timer16 và một bảng sin. Bảng sin này chứa các giá trị từ 0 đến 2π. Một câu hỏi đặt ra ở đây là bao nhiêu giá trị trong bảng sin là hợp lý. Không có một câu trả lời chính xác cho câu hỏi này. Quá ít giát trị sẽ làm cho dạng dòng điện trong đầu ra bộ nghịch lưu có dạng bậc thang, làm tổn hao trong động cơ tăng lên. Nếu quá nhiều điểm sẽ làm tốn bộ nhớ của MCU. Ta có thể áp dụng luật sau để xác định số giá trị trong bảng sin: (2-9) N - số giá trị trong bảng sin fpwm(max) - tần số băm xung lớn nhất fmodulation(max) - tần số điều chế lớn nhất mong muốn Tần số băm xung em chọn là 5,2kHz, tần số đầu ra lớn nhất là 50Hz. Áp dụng công thức trên, N = 100. Ở đây em chọn N = 255. Bảng sin này có thể tạo ra bằng cách sử dụng chương trình Exel trong gói Microsoft Office. Một biến con trỏ được sử dụng để chỉ đến một giá trị trong bảng sin. Các giá trị trong bảng sin được đọc ra theo mỗi chu kỳ ngắt được xác định bởi Timer16. Các giá trị này được biến đổi để phù hợp với tần số đầu ra nhằm đảm bảo luật U/f=const, sau đó được ghi vào thanh ghi so sánh của bộ PWM. Để đi hết một bảng sin cần 255 chu kỳ ngắt Timer. Như vậy chu kỳ và do dó, tần số đầu ra sẽ phụ thuộc vào khoảng thời gian giữa hai lần ngắt. Có thể tính tần số đầu ra theo công thức sau: (2-10) fout - tần số sóng sin đầu ra N - số giá trị trong bảng sin Tngat - chu kỳ ngắt của Timer Chu kỳ ngắt được xác định theo giá trị trong thanh ghi chu kỳ (Period Register) của bộ Timer theo công thức sau: (2-11) PeriodValue - giá trị thanh ghi chu kỳ của bộ Timer16 Tclk - chu kỳ xung nhịp đầu vào, Tclk = 1/fclk với fclk là tần số xung nhịp đầu vào bộ Timer16. Để điều chỉnh tần số đầu ra, ta điều chỉnh giá trị của thanh ghi chu kỳ của bộ Timer16 theo công thức sau: (2-12) Với cấu hình đã chọn: fclk = 4/3MHz, N=255 ta có công thức tính giá trị thanh ghi chu kỳ của bộ Timer16 theo tần số điều khiển fcontrol (fcontrol ≡ fout) như sau: (2-12) Để giữ cho từ thông và momen cực đại trên trục động cơ không đổi khi điều chỉnh tốc độ động cơ theo tần số ta phải đảm bảo tỷ số U1/f1 là không đổi. Mà biên độ của sóng sin đầu ra tỷ lệ với độ rộng xung. Độ rộng xung đạt giá trị lớn nhất tại đỉnh của hình sin. Khi chạy ở tần số định mức (50Hz), điện áp đầu ra đạt giá trị định mức là 220V (giá trị hiệu dụng), giá trị đỉnh sẽ là 310V, tức là bằng giá trị dương của điện áp một chiều. Khi đó ma = 1, độ rộng xung lớn nhất là 100% tại đỉnh của hình sin. Để thay đổi biên độ của điện áp đầu ra, ta sẽ thay đổi độ rộng xung tại mỗi chu kỳ PWM sao tỷ số U/f là không đổi bằng giá trị này ở định mức (U1dm/f1dm = 220/50 ≈ 4,4). Cụ thể, sau khi có được giá trị tần số điều khiển, ta tính được chu kỳ ngắt để xác định giá trị thanh ghi chu kỳ của bộ timer. Một hàm udateU_f nằm trong vòng lặp chính được sử dụng để tính lại các giá trị trong bảng sin sao cho biên độ đầu ra tương ứng với tần số điều khiển. Trong mỗi chu kỳ ngắt, giá trị thanh ghi so sánh trong bộ PWM sẽ được truy xuất từ bảng sin (đã được tính lại theo giá trị của tần số điều khiển) bởi biến con trỏ, sau đó biên con trỏ được tăng lên để chỉ đến giá trị mới trong bảng sin. Khi biến con trỏ này đạt đến giá trị tới hạn, sẽ được nạp lại giá trị ban đầu. Để tạo ra tín hiệu ba pha ta cần ba biến con trỏ lệch nhau 120o, ta sử dụng ba biến con trỏ tương ứng với ba bộ PWMDB. Giá trị của ba biến con trỏ này lệc nhau 120o. Lưu đồ thuật toán: Chương trình chính Vòng lặp chính Khởi tạo hệ thống bao gồm, khởi tạo 3 bộ PWMDB8, khởi tạo Timer16, khởi tạo ngắt. Hàm udateU_f: Chương trình con updateU_f Chương trình con tinhsin() Chương trình ngắt Timer16 PHỤ LỤC Code chương trình điều khiển Chương trình chính main.c //---------------------------------------------------------------------------- // C main line //---------------------------------------------------------------------------- #include // part specific constants and macros #include "PSoCAPI.h" // PSoC API definitions for all User Modules #include "ports.h" #include "dieuche.h" //#define PULSEWIDTH 127 //#define MAXPWM PULSEWIDTH-7 unsigned int nhay; int Fset=60; // Tan so dat unsigned char ku=150; unsigned char overload=0, // Qua tai overcurrent=0; // Qua dong unsigned char state=0; void lock() { Port0_4(1); } void unlock() { Port0_4(0); } #pragma interrupt_handler overcurrent_ISR void overcurrent_ISR() // qua dong 75%: Cat cong suat hoan toan. { lock(); } #pragma interrupt_handler overload_ISR void overload_ISR() // qua dong 50%: Giam cong suat. { lock(); } void nhayled() { unsigned char led; if(++nhay>100) nhay=0; led=(nhay>50); Port2_0(led); } void main() { PRT0DR=0xFF; M8C_EnableGInt; // enable all interrups, nescessery M8C_EnableIntMask(INT_MSK0 , INT_MSK0_ACOLUMN_0); M8C_EnableIntMask(INT_MSK0 , INT_MSK0_ACOLUMN_2); PWMDB8_1_WritePeriod(255); PWMDB8_1_WritePulseWidth(0); PWMDB8_1_WriteDeadTime(2); PWMDB8_2_WritePeriod(255); PWMDB8_2_WritePulseWidth(0); PWMDB8_2_WriteDeadTime(2); PWMDB8_3_WritePeriod(255); PWMDB8_3_WritePulseWidth(0); PWMDB8_3_WriteDeadTime(2); Timer16_1_EnableInt(); Timer16_1_WritePeriod(500); Timer16_1_Start(); // start timer PWMDB8_1_Start(); PWMDB8_2_Start(); PWMDB8_3_Start(); unlock(); while(1) { nhayled(); updateU_F(Fset); if ((PRT0DR & 0x02)==0) Fset=70; else Fset=6; } } Chương trình dieuche.c #include "sintable.h" #include "PSoCAPI.h" // PSoC API definitions for all User Modules #define MS 100 unsigned char u_f=100; unsigned char Fmin=5; unsigned char sinU[LEN]; unsigned char sinA=0, sinB=0, sinC=0; unsigned int TimeA=0, TimeB=LEN/3, TimeC=2*LEN/3; #pragma interrupt_handler Timer16_1_ISR int Fcontrol=20; // Tan so dieu khien void Timer16_1_ISR() { PWMDB8_1_WritePulseWidth(sinA); PWMDB8_2_WritePulseWidth(sinB); PWMDB8_3_WritePulseWidth(sinC); if (++TimeA>=LEN) TimeA=0; if (++TimeB>=LEN) TimeB=0; if (++TimeC>=LEN) TimeC=0; sinA=sinU[TimeA]; sinB=sinU[TimeB]; sinC=sinU[TimeC]; } . void tinhsin(unsigned char kU) { unsigned int i; if (kU>MS) kU=MS; for (i=0;i<LEN;i++) { int u=tablesin[i]; u*=kU; u/=MS; if (u>254) sinU[i]=254; else sinU[i]=u; } } int time=25000; void updateU_F(unsigned char f) { unsigned int t=u_f; // Luat tang toc - giam toc if (++time>500) { time=0; if (f!=Fcontrol) { if (f>Fcontrol) { if ((FcontrolFmin)) Fcontrol=Fmin; else Fcontrol++; } else if (f<Fcontrol) Fcontrol--; t*=Fcontrol; t/=50; tinhsin(t); // tinh lai chu ky ngat timer Timer16_1_WritePeriod(5000/(Fcontrol)); } } } Bảng sin nằm trong sintable.c #include "sintable.h" const unsigned char tablesin[LEN]={ 250 ,246 ,243 ,239 ,235 ,231 ,228 ,224 ,220 ,216 ,212 ,208 , 204 ,200 ,196 ,192 ,188 ,184 ,180 ,176 ,172 ,168 ,164 ,160 , 156 ,152 ,148 ,144 ,140 ,136 ,132 ,128 ,124 ,120 ,116 ,112 , 109 ,105 ,101 ,97 ,94 ,90 ,87 ,83 ,80 ,76 ,73 ,70 ,67 ,63 ,60 ,57 ,54 ,52 ,49 ,46 ,43 , 41 ,38 ,36 ,34 ,31 ,29 ,27 ,25 ,23 ,21 ,20 ,18 ,17 ,15 ,14 ,12 ,11 ,10 ,9 ,8 ,8 ,7 ,6 ,6 , 6 ,5 ,5 ,5 ,5 ,5 ,5 ,6 ,6 ,7 ,7 ,8 ,9 ,10 ,11 ,12 ,13 ,14 ,16 ,17 ,19 ,21 ,22 ,24 , 26 ,28 ,30 ,32 ,35 ,37 ,40 ,42 ,45 ,47 ,50 ,53 ,56 ,59 ,62 ,65 ,68 ,71 ,75 ,78 ,81 ,85 ,88 ,92 , 96 ,99 ,103 ,107 ,110 ,114 ,118 ,122 ,126 ,130 ,134 ,138 ,142 , 146 ,150 ,154 ,158 ,162 ,166 ,170 ,174 ,178 ,182 ,186 ,190 , 194 ,198 ,202 ,206 ,210 ,214 ,218 ,222 ,226 ,230 ,233 ,237 , 241 ,244 ,248 ,252 ,255 ,255 ,255 ,255 ,255 ,255 ,255 ,255 , 255 ,255 ,255 ,255 ,255 ,255 ,255 ,255 ,255 ,255 ,255 ,255 , 255 ,255 ,255 ,255 ,255 ,255 ,255 ,255 ,255 ,255 ,255 255 , 255 ,255 ,255 ,255 ,255 ,255 ,255 ,255 ,255 ,255 ,255 ,255 , 255 ,255 ,255 ,255 ,255 ,255 ,255 ,255 ,255 ,255 ,255 ,255 , 255 ,255 ,255 ,255 ,255 ,255 ,255 ,255 ,255 ,255 ,255 ,255 , 255 ,255 ,255 ,255 ,255 ,255 ,255 ,255 ,255 ,255 ,255 ,255 , 255 ,255 ,255 ,255 ,255 ,}; TÀI LIỆU THAM KHẢO [1] Nguyễn Văn Nhờ. Giáo trình điện tử công suất tập 1. Nhà xuất bản đại học Quốc Gia TP. Hồ Chí Minh , 2005. [2] Lê Văn Doanh, Nguyễn Thế Công và Trần Văn Thịnh. Điện tử công suất. Nhà suất bản khoa học và kỹ thuật. [3] Võ Minh Chính, Phạm Quốc Hải và Trần Trọng Minh. Điện tử công suất. Nhà suất bản khoa học và kỹ thuật, 2007. [4] Cyril W.Lander. Điện tử công suất và điều khiển động cơ điện. Nhà suất bản khoa học và kỹ thuật, 1997. [5] Bùi Quốc Khánh, Nguyễn Văn Liễn, Phạm Quốc Hải và Dương Văn Nghi. Điều chỉnh tự động truyền động điện. Nhà xuất bản khoa học và kỹ thuật, 2008. [6] Prof. Ali Keyhani. Lecture 25, Pulse - width modulation (PWM) technique. Department of Electrical and Computer Engineering, The Ohio State University. [7] Dr. Zainal Salam. Power Electronics and Drivers (Version 2). 2002 [8] Muhammad H.Rashid. Power Electronics Handbooks. [9] Bimal K.Bose. Model Power Electronics and AC Drivers. Pentice Hall, Inc, 2002. Các trang web:

Các file đính kèm theo tài liệu này:

  • docdo_an_dieu_khien_dong_co_khong_dong_bo_dung_psoc_1535.doc