BLDC_CLBROBOT

61
ĐI H TR --- L ĐIU KHIN Đ HC QUC GIA TP. HCHÍ MINH RƯNG ĐẠI HC BÁCH KHOA KHOA ĐIN – ĐIN T----------------------o0o------------------------ LUAÄN VAÊN TOÁT NGHIEÄP ĐNG CƠ BLDC DÙNG V DSPIC30F4011 SVTT : NGUYN THAN MSSV : 40502473 SVTH :NGUYN ĐÔN A MSSV : 40502798 GVHD: ThS. TRN CÔN BM : THIT BN ĐIN TP HCM, THÁNG 01/2010 VI XNH TÂM ANH THÔNG NG BINH www.clbrobot.com www.robotgiaoduc.com

Transcript of BLDC_CLBROBOT

Page 1: BLDC_CLBROBOT

ĐẠI HỌ

TRƯ

------------------------

LUAÄN VAÊN TOÁT NGHIEÄP

ĐIỀU KHI ỂN Đ

I HỌC QUỐC GIA TP. HỒ CHÍ MINH

TRƯỜNG ĐẠI HỌC BÁCH KHOA

KHOA ĐIỆN – ĐIỆN TỬ ------------------------o0o------------------------

LUAÄN VAÊN TOÁT NGHIEÄP

N ĐỘNG CƠ BLDC DÙNG VI XDSPIC30F4011

SVTT : NGUYỄN THANH TÂM

MSSV : 40502473

SVTH :NGUYỄN ĐÔN ANH THÔNG

MSSV : 40502798

GVHD: ThS. TRẦN CÔNG BINH

BM : THI ẾT BN ĐIỆN

TP HCM, THÁNG 01/2010

BLDC DÙNG VI XỬ LÝ

N THANH TÂM

ÔN ANH THÔNG

N CÔNG BINH

www.clbrobot.com www.robotgiaoduc.com

Page 2: BLDC_CLBROBOT

CHƯƠNG 1: GIỚI THI ỆU VỀ ĐỘNG CƠ KHÔNG CHỔI THAN (BLDC)

1

CHƯƠNG 1: GIỚI THI ỆU VỀ ĐỘNG CƠ KHÔNG CHỔI THAN (BLDC)

1.1.Giới thi ệu động cơ BLDC:

Hình 1.1: Động cơ BLDC [12]

Động cơ Một chiều không chổi than (Brushless Direct Current- BLDC) ngày càng được sử dụng nhiều vì có những ưu điểm về đặc tính làm việc của động cơ một chiều trong khi đó đã loại trừ được nhược điểm lớn nhất của động cơ một chiều là chổi than và cổ góp.

Động cơ BLDC có nhiều thuận lợi hơn động cơ một chiều có chổi than ở một vài điểm sau:

- Tốc độ tuyến tính với đặc tính cơ (moment) - Đáp ứng nhanh. - Hiệu suất tương đối. - Tuổi thọ cao. - Ít gây nhiễu - Tốc độ cao hơn

www.clbrobot.com www.robotgiaoduc.com

Page 3: BLDC_CLBROBOT

CHƯƠNG 1: GIỚI THI ỆU VỀ ĐỘNG CƠ KHÔNG CHỔI THAN (BLDC)

2

Thêm vào đó, tỷ số moment với kích thước của động cơ cao hơn, điều đó làm cho động cơ BLDC rất hữu ích trong các ứng dụng ở những nơi yêu cầu không gian và trọng lượng của động cơ.

Với những ưu điểm ở trên, Động cơ BLDC được sử dụng nhiều trong những hệ thống dùng nguồn DC, những hệ thống khó bảo trì và yêu cầu đáp ứng nhanh.

1.2. Cấu tạo của động cơ DC không chổi than:

Động cơ BLDC là loại động cơ đồng bộ, điều này có nghĩa là từ trường tạo ra bởi stator và từ trường tạo ra bởi rotor quay cùng tốc độ khi chạy ổn định. Động cơ BLDC không có khái niệm độ trượt như ở động cơ ba pha đồng bộ.

Luận văn này trình bày động cơ BLDC 3 pha, là loại động cơ BLDC được sử dụng nhiều nhất. Sau đây chúng ta sẽ đi vào cấu tạo của động cơ BLDC:

1.2.1. Stator:

Hình 1.2 : Stator của động cơ BLDC[3]

Statorcủa động cơ BLDC được cấu tạo gồm nhiều rãnh thép, các cuộn dây stator quấn tập trung trên các cực từ của lõi thép stator.

Các cuộn dây stator của động cơ BLDC 3 pha được đấu theo hình Y. Mỗi cuộn dây này là tập hợp nhiều cuộn dây nhỏ bên trong. Mỗi cuộn dây nhỏ được quấn trên các cực từ của lõi thép stator sao cho số cực là một số chẵn và chúng được liên kết để thành cuộn dây của một pha.

www.clbrobot.com www.robotgiaoduc.com

Page 4: BLDC_CLBROBOT

CHƯƠNG 1: GIỚI THI ỆU VỀ ĐỘNG CƠ KHÔNG CHỔI THAN (BLDC)

3

Hình 1.3: Sơ đồ các cuộn dây stator nối sao[12]

Có hai loại cuộn dây trong stator động cơ BLDC: Động cơ Sin (Sinusoidal) và

động cơ thang (Trapezoidal). Điều khác biệt này làm nền tảng để kết nối các cuộn dây bên trong những cuộn dây stator, để thu về được những sức phản điện động (back Emf) khác nhau.

Hình 1.4: Sức phản điện động (Back Emf) hình thang[3]

www.clbrobot.com www.robotgiaoduc.com

Page 5: BLDC_CLBROBOT

CHƯƠNG 1: GIỚI THI ỆU VỀ ĐỘNG CƠ KHÔNG CHỔI THAN (BLDC)

4

Hình 1.5: Sức phản điện động hình Sin[3]

Động cơ BLDC dây quấn stator hình thang tạo ra một sức điện động cảm ứng

hình thang (Hình 1.4), và tương tự cho động cơ dây quấn hình sin tạo ra một sức điện động cảm ứng hình sin (Hình 1.5). Bên cạnh sức điện động cảm ứng, dòng điện trên mỗi pha cũng dạng tương ứng với mỗi loại động cơ. Điều này sinh ra sự khác nhau về moment của hai loại động cơ, động cơ BLDC có stator dây quấn hình Sin có môment liên tục hơn động cơ BLDC có stator dây quấn hình thang. Nhưng động cơ BLDC có stator dây quấn hình sin lại có giá thành cao hơn, nguyên nhân là do số cuộn dây nhỏ được liên kết thành các cuộn dây ở mỗi pha tăng lên.

Phụ thuộc vào khả năng điều khiển nguồn cung cấp, động cơ có stator phù hợp với điện áp thì có thể được chọn. Động cơ với cấp điện áp định mức là 48V hay ít hơn được sử dụng trong thiết bị di chuyển (Automotive) hay robot (robotics), trong sự chuyển động của những cánh tay nhỏ và những nơi dùng nguồn DC từ acquy. Những động cơ với định mức 100V hoặc cao hơn được dùng trong các ứng dụng tự động hóa công nghiệp.

Động cơ sử dụng trong đề tài này là loại động cơ BLDC 3 pha có stator dây quấn hình thang.

1.2.2. Rotor:

Rotor động cơ làm bằng nam châm vĩnh cửu, và thay đổi từ 2 đến 8 cặp cực với các cực nam (South) và bắc (North) xen kẽ nhau.

Dựa trên yêu cầu mật độ từ trường trên rotor mà lựa chọn vật liệu từ làm rotor cho thích hợp. Nam châm ferrit thường được dùng làm nam châm vĩnh cửu. Với sự www.clbrobot.com www.robotgiaoduc.com

Page 6: BLDC_CLBROBOT

CHƯƠNG 1: GIỚI THI ỆU VỀ ĐỘNG CƠ KHÔNG CHỔI THAN (BLDC)

5

phát triển của công nghệ, các loại hợp kim nam châm ngày càng tốt hơn. Nam châm ferrit khá rẻ nhưng có một điều bất lợi khi sử dụng đó là mật độ từ thông trong một đơn vị thể tích của nam châm ferrit nhỏ. Ngược lại, các vật liệu hợp kim hiện nay có mật độ từ thông trên một đơn vị thể tích lớn hơn, điều đó cho phép kích thước rotor được thu nhỏ với cùng một moment sinh ra. Do đó nam châm hợp kim cải thiện kích thước, khối lượng và cho moment cao hơn với cùng một kích thước động cơ khi sử dụng nam châm ferrit.

Hình 1.6 : Mặt cắt ngang của các rotor với cách bố trí nam châm khác nhau[3]

Đề tài sử dụng động cơ BLDC stator có 6 cực, rotor có 4 cực như hình vẽ :

Hình 1.7 : Sơ đồ stator và rotor [II] www.clbrobot.com www.robotgiaoduc.com

Page 7: BLDC_CLBROBOT

CHƯƠNG 1: GIỚI THI ỆU VỀ ĐỘNG CƠ KHÔNG CHỔI THAN (BLDC)

6

1.2.3. Cảm biến Hall (Hall Sensors):

Hình 1.8: Mặt cắt dọc của một động cơ BLDC[3]

Không như động cơ DC có chổi than, bộ chuyển mạch của động cơ BLDC được điều khiển bằng khóa điện tử. Để động cơ BLDC quay được, các cuộn dây stator phải được cấp điện theo một thứ tự nhất định để từ trường stator quay. Đồng thời vector từ trường stator phải “đồng bộ” với vị trí của rotor (Nam châm vĩnh cửu-NCVC) vì vậy khi điều khiển cần phải xác định vị trí của (các cực từ) rotor. Việc này được thực hiện thông qua các cảm biến Hall gắn cố định trong động cơ.

Các động cơ BLDC 3 pha thường có ba cảm biến Hall gắn cố định đặt cách nhau 60 độ hay 120 độ. Bất cứ khi nào các cực Nam (hay cực Bắc) của nam châm rotor đến gần các cảm biến Hall, thì các cảm biến Hall này sẽ đưa ra một tín hiệu ở mức cao (hay mức thấp) để chỉ ra cực Nam (hay cực Bắc) đang đến gần cảm biến Hall. Trên cơ sở kết hợp tín hiệu của 3 cảm biến Hall này, bộ điều khiển sẽ nhận biết được vị trí của rotor để điều khiển thứ tự chuyển mạch sao cho từ trường stator “Đồng bộ” với vị trí rotor (NCVC) .

Lý thuyết Hiệu ứng Hall: là một hiệu ứng vật lý được thực hiện khi áp dụng một từ trường vuông góc lên một bản làm bằng kim loại, chất bán dẫn hay chất dẫn điện nói chung (thanh Hall) đang có dòng điện chạy qua. Lúc đó người ta nhận được hiệu điện thế (hiệu thế Hall) sinh ra tại hai mặt đối diện của thanh Hall. Tỷ số giữa hiệu điện thế Hall và dòng điện chạy qua thanh Hall gọi là điện trở Hall, đặc trưng cho vật liệu làm nên thanh Hall.

www.clbrobot.com www.robotgiaoduc.com

Page 8: BLDC_CLBROBOT

CHƯƠNG 1: GIỚI THI ỆU VỀ ĐỘNG CƠ KHÔNG CHỔI THAN (BLDC)

7

Hình 1.8 biểu diễn một động cơ BLDC nằm ngang. Cảm biến Hall được gắn trong phần không chuyển động của động cơ. Gắn cảm biến cần có sự cân xứng đối với nam châm rotor, để tránh sai số trong việc xác định vị trí của rotor.

Để đơn giản quá trình lắp đặt cảm biến Hall vào trong stator, một vài động cơ có thể có nam châm cảm biến Hall trên rotor. Đây là một bản sao nhỏ của nam châm rotor (Hình 1.8). Vì thế, khi rotor quay, nam châm của cảm biến Hall sẽ cho ảnh hưởng như những nam châm rotor. Điều này cho phép người sử dụng điều chỉnh các cảm biến Hall với nam châm rotor sao cho tốt nhất.

Các mạch khuếch đại của cảm biến Hall cần có nguồn cung cấp. Giới hạn điện áp từ 4 - 24VDC, dòng yêu cầu từ 5 -10mA. Khi thiết kế mạch điều khiển động cơ, cần tra các thông số dòng và áp cảm biến Hall để điều khiển thích hợp. Có thể cần trở kéo lên ở phía điều khiển.

1.3. Nguyên lý hoạt động của động cơ DC không chổi than:

Hình 1.9 : Sơ đồ cấp điện cho các cuộn dây stator[III]

Để động cơ BLDC hoạt động thì cần biết được vị trí chính xác của rotor để điều khiển quá trình đóng ngắt các khóa bán dẫn, cấp nguồn cho các cuộn dây stator theo trình tự hợp lý. Mỗi trạng thái chuyển mạch có một trong các cuộn dây (như pha A) được cấp điện dương (dòng đi vào trong cuộn dây pha A), cuộn dây thứ 2 (pha B) được cấp điện âm (dòng từ cuộn dây đi ra pha B) và cuộn thứ 3(pha C) không cấp điện. Moment được sinh ra do tương tác giữa từ trường tạo ra bởi những cuộn dây của

www.clbrobot.com www.robotgiaoduc.com

Page 9: BLDC_CLBROBOT

CHƯƠNG 1: GIỚI THI ỆU VỀ ĐỘNG CƠ KHÔNG CHỔI THAN (BLDC)

8

stator với nam châm vĩnh cửu. Một cách lý tưởng, moment lớn nhất xảy ra khi 2 trường từ lệch nhau 90 độ và giảm xuống khi chúng di chuyển. Để giữ động cơ quay, từ trường tạo ra bởi những cuộn dây stator phải quay “đồng bộ” với từ trường của rotor một góc α.

1.4. Mô hình toán mô tả động cơ BLDC:[I]

Hình 1.10: Sơ đồ mạch một pha của động cơ BLDC[1]

V = E + (R+jωL)I (1.1)

Giả sử rằng R>>ωL

Khi đó V = E + RI (1.2)

Nếu I cùng pha với E thì V cũng cùng pha với E

Lúc này độ lớn công suât điện từ được tính bởi công thức:

Pem=m|E||I| = mω|λm||I| (1.3)

Với m là số pha, |E|, |I|, | λm | là độ lớn của suất điện động cảm ứng của pha E, dòng điện pha I và độ liên kết của từ thông λm

Moment điện từ:

��� = ���

ω=

�ω|��||�|

ω (1.4)

Với ωr=2ω/p là vận tốc góc của rotor (rad/s), với p là số cặp cực của rotor www.clbrobot.com www.robotgiaoduc.com

Page 10: BLDC_CLBROBOT

CHƯƠNG 1: GIỚI THI ỆU VỀ ĐỘNG CƠ KHÔNG CHỔI THAN (BLDC)

9

��� = �

�|��||�| (1.5)

Moment cơ :

Tload=Tem-Tloss (1.6)

Với Tloss là tổng moment tổn hao (ma sát, tổn hao khe hở không khí, tổn hao sắt…)

Xét về độ lớn:

��� = ����� (1.7)

Và :

� = ���ω� (1.8)

Như vậy khi V tăng thì I tăng, dẫn đến moment điện từ tăng kéo theo ω� tăng.

1.5. So sánh động cơ BLDC với Động cơ DC có chổi than:

Tính năng: Động cơ BLDC Động cơ DC có chổi than

Sự chuyển mạch

Chuyển mạch bằng khóa điện tử, dựa vào vị trí của rotor xác định bởi cảm biến Hall

Chuyển mạch bằng chổi than

Sự bảo trì yêu cầu bảo trì đơn giản do ko có mặt chổi than

Yêu cầu bảo trì thường xuyên

Tuổi thọ Dài hơn Ngắn hơn

Đặc tính vận tốc-moment

Phẳng, cho phép hoạt động cơ tất cả tốc độ với định mức tải

Ít phẳng hơn, ở tốc độ cao, ma sát chổi than tăng, làm giảm moment có ích

www.clbrobot.com www.robotgiaoduc.com

Page 11: BLDC_CLBROBOT

CHƯƠNG 1: GIỚI THI ỆU VỀ ĐỘNG CƠ KHÔNG CHỔI THAN (BLDC)

10

Hiệu suất Vừa phải, không tổn hao trên chổi than

Vừa phải

Công suất ra/ kích thước khung

Cao, giảm kích thước do đặc tính nhiệt tốt hơn. Bởi vì BLDC có các cuộn dây trên stator, với cách kết nối này,tản nhiệt tốt hơn

Vừa phải/thấp- nhiệt sinh ra bởi phần ứng được tản trong khe hở không khí, vì thế tăng nhiệt độ trong khe hở không khí, và giới hạn công suất ra.

Quán tính rotor Thấp, bởi vì nó có nam châm trên rotor. Điều này cải thiện đáp ứng động

Quán tính rotor cao hơn, làm giới hạn đặc tính động

Giới hạn tốc độ Cao hơn, không giới hạn cơ nào được áp đặt như động cơ DC thường nhờ rotor nhỏ, nhẹ.

Thấp hơn, giới hạn cơ bởi chổi than

Nhiễu Ít Hồ quang trong chổi than sẽ

tạo ra điện từ với các thiết bị ở gần

Giá thành Cao hơn- do có NC vĩnh cửu dùng lõi thép ferrit, cảm biến Hall, bộ điều khiển

Thấp

Điều khiển Phức tạp và đắt tiền Đơn giản và rẻ

Yêu cầu điều khiển

Bắt buộc vi điều khiển luôn hoạt động để giữ động cơ chạy.

Không yêu cầu vi điều khiển, nếu cần chỉ để điều khiển tốc độ

www.clbrobot.com www.robotgiaoduc.com

Page 12: BLDC_CLBROBOT

CHƯƠNG 1: GIỚI THI ỆU VỀ ĐỘNG CƠ KHÔNG CHỔI THAN (BLDC)

11

Với những đặc tính nổi bật của BLDC như không có chổi than, giống động cơ DC có chổi than ở chỗ có đặc tính moment tuyến tính nên dễ điều khiển tốc độ, moment. Quán tính nhỏ nên có thể điều khiển vị trí. Dùng nguồn DC nên BLDC được ứng dụng trong một số hệ thống sử dụng nguồn DC để điều khiển tốc độ, moment, vị trí. Đề tài này thiết lập bộ điều khiển cho động cơ BLDC. Chương tiếp theo sẽ trình bày các phương pháp điều khiển động cơ BLDC.

www.clbrobot.com www.robotgiaoduc.com

Page 13: BLDC_CLBROBOT

CHƯƠNG 2:CÁC PHƯƠNG PHÁP ĐIỀU KHI ỂN ĐỘNG CƠ DC KHÔNG CHỔI THAN (BLDC)

12

CHƯƠNG 2:CÁC PHƯƠNG PHÁP ĐIỀU KHI ỂN ĐỘNG CƠ DC KHÔNG CHỔI THAN (BLDC)

Giới thi ệu

Chương này trình bày phương pháp điều khiển tốc độ của động cơ BLDC thông qua điều khiển điện áp cấp cho động cơ bằng phương pháp điều khiển độ rộng xung (PWM). Điện áp cấp cho động cơ bằng phương pháp điều khiển độ rộng xung như Hình 2.1.

Hình 2.1 (giống Hình 1.9) : Sơ đồ cấp điện cho các cuộn dây stator [III]

Các cuộn dây được cấp điện theo trình tự sao cho từ trường trong stator “đồng bộ” với vị trí rotor (nam châm vĩnh cửu). Vị trí của rotor được xác định dựa vào các tín hiệu của cảm biến Hall đưa về.

2.1. Điều khiển vòng hở:

www.clbrobot.com www.robotgiaoduc.com

Page 14: BLDC_CLBROBOT

CHƯƠNG 2:CÁC PHƯƠNG PHÁP ĐIỀU KHI ỂN ĐỘNG CƠ DC KHÔNG CHỔI THAN (BLDC)

13

Hình 2.2: Tín hiệu cảm biến Hall tương ứng với tín hiệu điện áp các pha[14]

Để điều khiển động cơ việc đầu tiên là xác định vị trí của rotor, được thực hiện thông qua các tín hiệu của các cảm biến Hall được gắn cố định trong động cơ. Nhờ biết được vị trí rotor, ta có thể điều khiển các trạng thái chuyển mạch các khóa bán dẫn của bộ nghịch lưu cho thích hợp, từ đó điều khiển từ trường trong cuộn dây stator quay “đồng bộ” với vị trí của rotor. Bảng 2.1và 2.2 trình bày các trạng thái của cảm biến Hall tương ứng với quá trình đóng ngắt của các khóa bán dẫn để động cơ quay theo chiều thuận (chiều kim đồng hồ) hay chiều ngược.

Bảng 2.1: Trạng thái cảm biến Hall tương ứng với trạng thái các khóa bán dẫn để động cơ quay theo chiều kim đồng hồ.[14]

www.clbrobot.com www.robotgiaoduc.com

Page 15: BLDC_CLBROBOT

CHƯƠNG 2:CÁC PHƯƠNG PHÁP ĐIỀU KHI ỂN ĐỘNG CƠ DC KHÔNG CHỔI THAN (BLDC)

14

Bảng 2.2: Trạng thái cảm biến Hall tương ứng với trạng thái các khóa bán dẫn để động cơ quay theo ngược chiều kim đồng hồ.[14]

Tốc độ của rotor động cơ BLDC phụ thuộc vào độ lớn moment điện từ, moment điện từ lại tỷ lệ với dòng điện và điện áp dây của bộ nghịch lưu như đã trình bày ở phương trình 1.1 và 1.4 ở trên. Do đó để điều khiển vòng hở tốc độ động cơ BLDC ta chỉ cần điều khiển các trạng thái chuyển mạch của các khóa bán dẫn của bộ nghịch lưu và độ lớn điện áp ngõ ra bộ nghịch lưu. Để thay đổi điện áp ngõ ra của bộ nghịch lưu, ta có 2 cách: cách thứ nhất là thay đổi điện áp ngõ vào bộ nghịch lưu và cách thứ hai là thay đổi thời gian Ton của các khóa bán dẫn bằng cách thay đổi độ rộng xung kích cho các khóa bán dẫn. Trong đề tài này ta sử dụng phương pháp thay đổi độ rộng xung kích cho các khóa bán dẫn. Việc này ta có thể điều chỉnh dễ dàng hoàn toàn bằng phần mềm.

Hình 2.3: Điều động xung điều khiển động cơ BLDC[12]

Hình 2.2 mô tả các tín hiệu đưa về của cảm biến Hall tương ứng với điện áp pha của các cuộn dây trong stator.

www.clbrobot.com www.robotgiaoduc.com

Page 16: BLDC_CLBROBOT

CHƯƠNG 2:CÁC PHƯƠNG PHÁP ĐIỀU KHI ỂN ĐỘNG CƠ DC KHÔNG CHỔI THAN (BLDC)

15

2.2. Điều khiển vòng kín:

* Hi ệu chỉnh PID: (PID control)[2]

Phương trình vi phân mô tả khâu hiệu chỉnh PID:

���� = ������ + � � ������ + �������

��

Trong đó:

Kp: Hệ số khâu tỉ lệ

K I: Hệ số khâu tích phân

KD: Hệ số khâu vi phân

Thủ tục hiệu chỉnh PID

Khâu hiệu chỉnh khuếch đại tỷ lệ (Kp) được đưa vào hệ thống nhằm làm giảm sai số xác lập, với đầu vào thay đổi theo hàm nấc sẽ gây ra vọt lố và trong một số trường hợp là không chấp nhận được đối với mạch động lực.

Khâu tích phân tỷ lệ (PI) có mặt trong hệ thống dẫn đến sai lệch tĩnh triệt tiêu (hệ vô sai). Muốn tăng độ chính xác của hệ thống ta phải tăng hệ số khuếch đại, song với mọi hệ thống thực đều bị hạn chế và sự có mặt của khâu PI là bắt buộc.

Sự có mặt của khâu vi phân tỷ lệ (PD) làm giảm độ vọt lố, đáp ứng ra bớt nhấp nhô và hệ thống sẽ đáp ứng nhanh hơn.

Khâu hiệu chỉnh vi tích phân tỷ lệ (PID) kết hợp những ưu điểm của hai khâu PI và PD, có khả năng tăng độ dự trữ pha ở tần số cắt, khử chậm pha. Sự có mặt của của khâu PID có thể dẫn đến sự dao động của hệ do đáp ứng quá độ bị vọt lố bởi hàm dirac δ(t). Các bộ hiệu chỉnh PID được ứng dụng nhiều trong lĩnh vực công nghiệp dưới dạng thiết bị điều khiển hay thuật toán phần mềm.

PID rời rạc:

www.clbrobot.com www.robotgiaoduc.com

Page 17: BLDC_CLBROBOT

CHƯƠNG 2:CÁC PHƯƠNG PHÁP ĐIỀU KHI ỂN ĐỘNG CƠ DC KHÔNG CHỔI THAN (BLDC)

16

Hình 2.4: Sơ đồ khối PID số

u(k) = up(k) + uI(k)

up(k) = Kp.e(k)

uI(k) = uI(k-1)+KI.T.e(k) = uI(k-1)+K’ I .e(k)

PID số (phương pháp 1)

���� = ������ + � � ������ + �������

��

Rời rạc hóa:

u(k) = up(k) + uI(k) + uD(k)

uP(k)= Kpe(k)

uI(k) = uI(k-1)+KI.T.e(k) = uI(k-1)+K’ I .e(k)

uD(k) = KD[e(k)-e(k-1)]/T = K’D[e(k)-e(k-1)]

Trong đó T là tần số lấy mẫu

Rời rạc hóa - Phương pháp gần đúng (khâu I)

u(k) = up(k) + uI(k) + uD(k)

uP(k)= Kpe(k)

uI(k) = KI[e(k)+e(k-1)]

uD(k) = KD[e(k)-e(k-1)]

www.clbrobot.com www.robotgiaoduc.com

Page 18: BLDC_CLBROBOT

CHƯƠNG 2:CÁC PHƯƠNG PHÁP ĐIỀU KHI ỂN ĐỘNG CƠ DC KHÔNG CHỔI THAN (BLDC)

17

PID số - Phương pháp 2

Đạo hàm 2 vế

������� = ��

������� + ����� + ��

���������

���� − ��� − 1�� = ����� + ��k� + ���k�

����� = ������ − ��� − 1�

� = �′������ − ��� − 1��

���� = �����

����� = �� ����� − ��� − 1�� − ��� − 1� − ��� − 2�

� �= � ′������ − 2 ∗ ��� − 1� + ��� − 2��

Hay :

���� = ��� − 1� + ��′���� + �′��� + �′�����

�′���� = �′′������ − ��� − 1��

�′��� = �′����

�′���� = �′′������ − 2 ∗ ��� − 1� + ��� − 2��

Hay:

���� = ��� − 1� + ��′���� + �′��� + �′�����

����� = ������� − ��� − 1��

���� = �����

����� = � ′���′���� + �′��� − 1��

www.clbrobot.com www.robotgiaoduc.com

Page 19: BLDC_CLBROBOT

CHƯƠNG 2:CÁC PHƯƠNG PHÁP ĐIỀU KHI ỂN ĐỘNG CƠ DC KHÔNG CHỔI THAN (BLDC)

18

Hình 2.5: Sơ đồ khối điều khiển vòng kín tốc độ sử dụng khâu PI

Độ lỗi �� là sự sai khác giữa tốc độ dặt �r với tốc độ thực tế �m, độ lỗi có thể có thể âm (hay dương) phụ thuộc vào tốc độ thực lớn hơn (hay nhỏ hơn) tốc độ đặt. Độ lỗi này được đưa qua khâu hiệu chỉnh PI để khuếch đại độ lỗi lên. Khuếch đại của độ lỗi được sử dụng để hiệu chỉnh lại độ rộng xung PWM của xung điều khiển. Tùy thuộc vào khả năng đáp ứng của từng loại động cơ, tùy thuộc vào từng loại tải mà ta hiệu chỉnh hệ số của các quá trình và thời gian lấy mẫu. Thông thường tốc độ PI được đưa lên cao nhất có thể, khi mà nó còn đủ khả năng xử lý các phép toán trong hàm hiệu chỉnh và các tác vụ cần thiết. Phương pháp được trình bày chi tiết ở lập trình vòng kín cho động cơ trong chương 5.

Để ứng dụng các phương pháp điều khiển nói trên vào mô hình thực nghiệm đòi hỏi phải có bộ điều khiển đáp ứng đủ chức năng ,có thể dùng IC hay vi điều khiển,… cho bộ điều khiển. Ở đề tài này dùng vi điều khiểu dspic30f4011. Chương tiếp theo ta sẽ trình bày rõ những tính năng về vi điều khiển dspic30f4011 và các phần mềm hỗ trợ.

www.clbrobot.com www.robotgiaoduc.com

Page 20: BLDC_CLBROBOT

CHƯƠNG 2:CÁC PHƯƠNG PHÁP ĐIỀU KHI ỂN ĐỘNG CƠ DC KHÔNG CHỔI THAN (BLDC)

19

www.clbrobot.com www.robotgiaoduc.com

Page 21: BLDC_CLBROBOT

CHƯƠNG 3: GIỚI THI ỆU VỀ DSPIC30F4011

19

CHƯƠNG 3: GIỚI THI ỆU VỀ DSPIC30F4011

3.1. Tổng quan về dsPIC30F4011[9]

Microchip là một trong những nhà cung cấp linh kiện bán dẫn và vi điều khiển lớn trên thế giới. dsPIC30F là họ vi điều khiển 16bits, dựa trên kiến trúc Hardvard sửa đổi, với tập lệnh rút gọn ( PIC thuộc loại RISC), bao gồm những hỗ trợ cho DSP. Bộ DSP có khả năng thực thi ở tốc độ cao, 17-bit × 17-bit, một ALU 40-bit, 2 thanh ghi tích lũy 40-bit, một ống dịch 2 chiều 40 bit, ống dịch có khả năng dịch 15 bit bên phải hay 16 bit bên trái trong một chu kỳ đơn. Các lệnh của DSP hoạt động đồng nhất với tất cả các lệnh khác và được thiết kế đặc biệt cho các ứng dụng thời gian thực. Lệnh MAC kết hợp với những lệnh khác có thể đồng thời tìm về 2 toán hạng từ bộ nhớ trong khi nhân 2 thanh ghi W. Điều này đòi hỏi không gian dữ liệu phải được phân chia cho những lệnh này và tuyến tính cho những lệnh khác. Điều này đạt được một cách mềm dẻo và rõ ràng thông qua chỉ định của thanh ghi làm việc (W) đến mỗi không gian địa chỉ.

dsPIC30F có 8 nguồn ngắt không che được (non -mask) và 54 nguồn ngắt khác. Một nguồn ngắt có thể được gán cấp độ ưu tiên từ 1 đến 7.

Bộ điều khiển của dsPIC30F là sự lựa chọn hợp lý để dùng cho những ứng dụng điều khiển TMS320 là sự lựa chọn hợp lý để dùng cho những ứng dụng điều khiển với các đặc trưng sau:

• Tập lệnh linh hoạt

• Tính thực thi linh hoạt

• Thực thi tốc độ cao

• Cải tiến cấu trúc song song

• Giá cả hợp lý

Dòng dsPIC30F được thiết kế cho những ứng dụng cơ bản cũng như những ứng dụng điều khiển động cơ. Tích hợp tính thực thi nhanh cùng với ngoại vi điều khiển trên một chip đơn, dsPIC30F là sự lựa chọn hợp lý để thay thế cho những ứng dụng sử dụng nhiều chip và điều khiển đắt tiền. dsPIC30F có khả năng thực thi lên đến 30MIPS (Milion Instruction Per Second), và khả năng xử lý tính toán 16 bit.

www.clbrobot.com www.robotgiaoduc.com

Page 22: BLDC_CLBROBOT

CHƯƠNG 3: GIỚI THI ỆU VỀ DSPIC30F4011

20

Ngoài tính năng mạnh mẽ, dòng dsPIC30F đưa ra rất nhiều chip phù hợp với tất cả những ứng dụng vừa và nhỏ, vẫn đảm bảo tính điều khiển tốt nhưng giá thành có thể giảm đi nhiều.

Hình 3.1: Sơ đồ chân dsPIC30F4011[9]

Vi điều khiển dsPIC30F4011 có 40 chân đóng gói PDIP. Được thiết kế đặc biệt dành riêng cho những ứng dụng điều khiển động cơ điển hình như động cơ không đồng bộ, động cơ DC không chổi than(BLDC), động cơ DC có chổi than… Các ngoại vi cơ bản trong dspic30f4011 :

• Cổng I/O

• Timers

• Module Input Capture

• Module Output Capture

• Module đọc Encoder

• Module ADC 10-bit

• Module UART

• Module SPI

• Module I2C

• Module chuyển đổi dữ liệu (DCI – Data Converter Interface)

• Module CAN (Control Network Area)

www.clbrobot.com www.robotgiaoduc.com

Page 23: BLDC_CLBROBOT

CHƯƠNG 3: GIỚI THI ỆU VỀ DSPIC30F4011

21

3.2. Các khối ngoại vi của dsPIC30F4011 sử dụng trong đề tài: 3.2.1. Cổng truy xuất (I/O Port):

3.2.1.1. Các thanh ghi điều khiển I/O:

Tất cả các chân thiết bị (ngoại trừ VDD, VSS, ������������, và OSC1/CLKI) được dùng chung giữa các ngoại vi và các cổng truy xuất I/O.

Các cổng I/O cho phép thiết bị kiểm tra và điều khiển các thiết bị khác. Hầu hết các chân I/O đều kết hợp với những chức năng thay thế. Sự kết hợp sẽ khác nhau, phụ thuộc vào ngoại vi có mặt trên thiết bị. Thông thường, khi ngoại vi được sử dụng, các chân này không thể sử dụng như chân I/O được nữa.

Hình 3.2: Sơ đồ khối chức năng của một cổng I/O đơn[9]

www.clbrobot.com www.robotgiaoduc.com

Page 24: BLDC_CLBROBOT

CHƯƠNG 3: GIỚI THI ỆU VỀ DSPIC30F4011

22

Hình 3.2 đưa ra sơ đồ khối điển hình của một Cổng I/O. Sơ đồ khối này chỉ đơn thuần Cổng I/O không đưa vào chức năng của ngoại vi dùng chung chân.

Tất cả các cổng I/O đều có 3 thanh ghi kết hợp với hoạt động cả cổng I/O đó. Với ‘x’ là một chữ cái biểu thị Cổng I/O cụ thể:

• TRISx: Thanh ghi quy định chiều dữ liệu (Input hay Output)

• PORTx: Thanh ghi Cổng I/O

• LATx: Thanh ghi chốt I/O

Mỗi một chân I/O trên thiết bị kết hợp với một bít trên các thanh ghi TRIS, PORT, LAT.

Tổng số Cổng và số I/O tùy thuộc từng thiết bị. Trong một thiết bị, có thể các bít trên các thanh ghi trên sẽ không được sử dụng.

Thanh ghi TRIS: quy định chức năng truy xuất (Input hay Output). Mỗi một chân I/O trên một cổng kết hợp với một bit trên thanh ghi TRIS của cổng tương ứng. Nếu bit của chân I/O trên thanh ghi TRIS bằng 1 thì chân đó là chân Input, ngược lại nếu bit đó bằng 0 thì chân đó là chân Output. Tất cả các chân được xác định như Input khi Reset xảy ra.

Thanh ghi PORT: Dữ liệu trên một chân I/O được truy xuất qua một bit của thanh ghi PORT tương ứng với cổng đó. Muốn đọc một giá trị ở chân I/O ta đọc giá trị bít tương ứng với thanh ghi PORT, và muốn ghi một giá trị ra chân I/O ta ghi giá trị đó vào thanh ghi LAT.

Nhiều lệnh, như BSET, BCLR hoạt động đọc thay đổi ghi (read-modify-write). Vì thế, khi ghi vào cổng, cũng có nghĩa là cổng được đọc, giá trị này bị thay đổi, và sau đó được ghi vào dữ liệu chốt của cổng. CNn thận khi sử dụng các lệnh read-modify-write trên thanh ghi PORT và khi một vài chân I/O được cấu hình như chân Input. Nếu một chân Input được thay đổi thành Output một thời gian sau, một giá trị không mong đợi có thể sẽ xuất ra ở chân Output. Điều này xảy ra do các lệnh read-modify-write đọc các giá trị tức thời ở chân input và ghi vào dữ liệu chốt của cổng.

Thanh ghi LAT: Thanh ghi LAT kết hợp với một chân I/O để loại bỏ loại bỏ vấn đề có thể xảy ra với lệnh read-modify-write. Đọc thanh ghi LAT trả về giá trị trong giá trị chốt ngõ ra, không phải giá trị trên chân I/O. Hoạt động read-modify-write trên thanh ghi

www.clbrobot.com www.robotgiaoduc.com

Page 25: BLDC_CLBROBOT

CHƯƠNG 3: GIỚI THI ỆU VỀ DSPIC30F4011

23

LAT tránh việc ghi giá trị ở chân input vào dữ liệu chốt của cổng. Ghi vào thanh ghi LAT có cùng ảnh hưởng như ghi vào thanh ghi PORT.

3.2.1.2. Chân I/O Kết hợp chức năng ngoại vi:

Khi một ngoại vi được cho phép, các chân ngõ ra kết hợp được điều khiển bởi module trong khi một số ít được người sử dụng cài đặt. Các I/O pin có thể được đọc qua đường dữ liệu vào, những đường lái ngõ ra thường bị chặn.

Một cổng I/O chia sẽ một chân với ngoại vi khác luôn phụ thuộc vào ngoại vi. Dữ liệu đệm ngõ ra và tín hiệu điều khiển của ngoại vi được cung cấp bởi một cặp bộ giải mã. Bộ giải mã sẽ chọn ngoại vi, port kết hợp quyền sở hữu dữ liệu ngõ ra hay tín hiệu điều khiển của chân I/O. Hình 3.2 mô tả cổng truy xuất chia sẽ với ngoại vi như thế nào :

Hình 3.3: Sơ đồ khối cấu trúc port chia sẽ chân (shared port)[3.2]

3.2.1.3. Thông báo thay đổi tr ạng thái các chân: (CN pins)

Thông báo thay đổi trạng thái các chân cung cấp cho dsPIC30F4011 khả năng tạo ra yêu cầu ngắt đến bộ xử lý để đáp ứng sự thay đổi trạng thái của các chân được chọn. dsPIC30F lên đến 24 chân được chọn để ngắt khi có thông báo thay đổi trạng thái, trong đó dsPIC30F4011 có 8 chân cho phép ngắt khi thay đổi trạng thái, số chân cho phép thay

www.clbrobot.com www.robotgiaoduc.com

Page 26: BLDC_CLBROBOT

CHƯƠNG 3: GIỚI THI ỆU VỀ DSPIC30F4011

24

đổi tùy vào từng thiết bị. Hình 3.4 chỉ ra cấu trúc cơ bản của phần cứng thông báo thay đổi trạng thái.

Hình 3.4: Sơ đồ khối thông báo thay đổi tr ạng thái ngõ vào:[9]

* Các thanh ghi điều khiển:

Có 4 thanh ghi điều khiển kết hợp với module CN. Thanh ghi CNEN1 và CNEN2 chứa bít điều khiển CNxIE với x biểu thị số thứ tự của ngõ vào chân CN. Bit CNxIE phải được set cho ngõ vào chân CN để ngắt CPU.

Thanh ghi CNPU1 và CNPU2 chứa các bít điều khiển CNxPUE. Mỗi chân CN có một điện trở kéo lên, có thể cho phép hoặc không cho phép chức năng này dùng bit điều khiển CNxPUE. Điện trở kéo lên hoạt động như một nguồn dòng kết nối vào chân và loại bỏ yêu cầu điện trở ngoài khi nút nhấn được nhấn hay thiết bị phím nhấn được kết nối.

3.2.2. Các bộ định thời (Timers):

Phụ thuộc vào từng thiết bị số Timer cũng khác nhau. dsPIC30F4011 có 5 Timer. Được ký hiệu từ Timer1 đến Timer5.

www.clbrobot.com www.robotgiaoduc.com

Page 27: BLDC_CLBROBOT

CHƯƠNG 3: GIỚI THI ỆU VỀ DSPIC30F4011

25

Mỗi module Timer là một bộ đếm hay định thời 16 bit bao gồm các thanh ghi có thể được đọc hay ghi sau:

• TMRx: thanh ghi đếm định thời 16 bit

• PRx: thanh ghi giai đoạn 16 bit kết hợp với bộ định thời

• TxCON: thanh ghi điều khiển 16 bit kết hợp với bộ định thời

Mỗi module Timer cũng kết hợp với những bit điều khiển ngắt:

• Bit cho phép ngắt (TxIE)

• Bit cho biết trạng thái của cờ ngắt (TxIF)

• Bit điều khiển ưu tiên ngắt (TxIP 2:0)

Ngoại trừ những ngoại lệ, tất cả timer 16 bit có cùng mạch chức năng. Các timer 16 bit được phân thành 3 loại theo những chức năng khác nhau :

- Loại A - Loại B - Loại C

Một vài timer 16 bit kết hợp với nhau để tạo thành timer 32 bit

3.2.3. Module ADC 10bit:

A/D 10 bit của dsPIC30F có những tính năng chính sau:

- Sử dụng thuật toán chuyển đổi SAR - Tốc độ chuyển đổi lên 1Mbps - 16 ngõ vào analog - Có thể sử dụng điện áp tham khảo ngoài - Có 4 bộ khuếch đại S/H (Sample and Hold) - Tự động Scan qua các kênh được chọn - Có thể lựa chọn nguồn kích chuyển đổi - Bộ đệm chứa tối đa 16 kết quả - Có thể chọn lựa chế độ lấp đầy bộ đệm - Có thể hoạt động trong chế độ Idle hay Sleep

www.clbrobot.com www.robotgiaoduc.com

Page 28: BLDC_CLBROBOT

CHƯƠNG 3: GIỚI THI ỆU VỀ DSPIC30F4011

26

Hình 3.5: Sơ đồ khối A/D 10 bit[9]

Một sơ đồ khối của bộ A/D 10bit được cho ở Hình 3.5. Bộ A/D 10bit có thể lên đến 16 chân ngõ vào, được ký hiệu từ AN0 đến AN15. Thêm vào đó, có 2 chân ngõ vào analog cho nguồn điện áp tham khảo ở ngoài. Những chân này được chia sẻ với các chân analog. Các ngõ vào analog được kết nối qua bộ chọn kênh đến các bộ khuếch đại S/H, được ký hiệu từ CH0 đến CH3. Một, hai hay bốn bộ khuyếch đại được cho phép truy vẫn dữ liệu vào. Ngõ vào bộ chọn kênh có thể được chuyển giữa 2 tín hiệu ngõ vào được cài đặt trong suốt quá trình chuyển đổi. Chuyển đổi sai khác đơn có thể thực hiện trên tất cả các kênh của một ngõ vào nào đó.

Một chế độ scan tín hiệu ngõ vào có thể được cho phép cho bộ khuếch đại S/H CH0. Một thanh ghi điều khiển sẽ chỉ định tín hiệu ngõ vào nào sẽ được scan tuần tự.

www.clbrobot.com www.robotgiaoduc.com

Page 29: BLDC_CLBROBOT

CHƯƠNG 3: GIỚI THI ỆU VỀ DSPIC30F4011

27

ADC 10bit được kết nối đến một bộ nhớ đệm chứa 16 kết quả. Một kết quả được chuyển đến một trong 4 định dạng ra 16bit khi nó được đọc từ bộ đệm.

(*)Trong các dòng dsPIC thuộc dòng điều khiển động cơ, trong đó có dsPIC30F4011, module ADC là loại 10-bit tốc độ cao, nhằm đáp ứng yêu cầu về tốc độ lấy mẫu của các bộ truyền động điện. Các bộ ADC trong dsPIC sử dụng thuật toán chuyển đổi SAR, do đó thời gian chuyển đổi đã được xác định trước. Việc chuyển đổi tín hiệu từ dạng tương tự sang dạng số bao gồm hai giai đoạn: giai đoạn lấy mẫu tín hiệu (sample) và giai đoạn chuyển đổi (conversion). Ta có thể bắt đầu giai đoạn lấy mẫu bằng tay hay tự động. Thời điểm chấm dứt lấy mẫu (và bắt đầu chuyển đổi) có thể do người dùng xác định (bằng cách tắt bit SAMP) hay được một ngoại vi nào đó xác định (một timer dành riêng, module MCPWM, timer 3, hay INT0). Như vậy thời gian lấy mẫu là khác nhau với các thiết lập khác nhau. Giai đoạn chuyển đổi cần có 12 xung clock cho các module ADC, với một chu kỳ xung clock TAD ta có thể chọn từ TCY/2 đến 32TCY. TCY chính là thời gian một chu kỳ máy.

Module ADC của dsPIC có 4 bộ khuếch đại S/H (Sample and Hold), được đánh địa chỉ từ CH0 đến CH3. Người dùng có thể dùng kênh 0, kênh 0 và 1, hay cả 4 kênh cho việc thu thập dữ liệu. Kênh 0 là kênh linh hoạt nhất trong việc chọn các ngõ vào tương tự.

3.2.4. Module MCPWM

Module điều khiển động cơ PWM là module tạo ra nhiều xung ngõ ra đồng bộ và có thể thay đổi độ rộng xung được. Các ứng dụng về nguồn và động cơ được hỗ trợ:

- Động cơ 3 pha không đồng bộ - Động cơ thay đổi từ trở - Động cơ DC không chổi than (BLDC) - Nguồn duy trì cung cấp điện (UPS)

Module PWM có những chức năng sau:

- Hỗ trợ thời gian riêng, độ phân giải TCY/2 - 2 chân output cho mỗi bộ PWM - Có thể sử dụng độc lập hay cấu hình thành các cặp bổ phụ (complementary) - Tạo dead- time phần cứng cho chế độ bổ phụ - Cực tính chân output được cấu hình bởi các bit điều khiển trong thiết bị - Nhiều chế độ Output

www.clbrobot.com www.robotgiaoduc.com

Page 30: BLDC_CLBROBOT

CHƯƠNG 3: GIỚI THI ỆU VỀ DSPIC30F4011

28

- Gióng hàng theo cạnh - Gióng hàng theo điểm giữa - Gióng hàng theo điểm giữa có cập nhập kép - Chế độ tạo xung duy nhất - Có thể ghi đè thanh ghi xuất PWM - Duty cycle có thể được cấu hình đáp ứng tức thời hay đồng bộ với PWM - Chân ngắt nhanh lỗi (Có thể được cấu hình) - Kích khi có những sự kiện đặc biệt để đồng bộ với quá trình chuyển đổi ADC - Mỗi ngõ ra kết hợp với PWM có thể được cho phép riêng lẻ

www.clbrobot.com www.robotgiaoduc.com

Page 31: BLDC_CLBROBOT

CHƯƠNG 3: GIỚI THI ỆU VỀ DSPIC30F4011

29

Hình 3.6: Module MCPWM[9]

www.clbrobot.com www.robotgiaoduc.com

Page 32: BLDC_CLBROBOT

CHƯƠNG 3: GIỚI THI ỆU VỀ DSPIC30F4011

30

(**)Module Module MCPWM có nhiều ngõ ra được điều chế độ rộng xung, thích hợp cho các ứng dụng điều khiển động cơ, hay các nguồn xung. Một số dsPIC có nhiều module MCPWM, và một module có thể có 6 hay 8 ngõ ra. Đối với dsPIC30F4011 đang được xét ở đây, chip có một module với 6 ngõ ra, gồm 3 cặp bổ phụ (complementary). Các dsPIC với module MCPWM có 6 ngõ ra sẽ có 3 bộ điều chế độ rộng độc lập, với độ phân giải là TCY/2, tương ứng với 3 cặp ngõ ra bổ phụ. Các cặp ngõ ra này cũng có thể được sử dụng độc lập, với trạng thái tích cực được thiết lập bằng các bit cấu hình. Module MCPWM hỗ trợ nhiều kiểu ngõ ra: gióng hàng theo cạnh hay theo điểm giữa, chế độ tạo xung duy nhất, hay gióng hàng theo điểm giữa có cập nhật kép. Module MCPWM có thể tạo ngắt đặc biệt để đồng bộ các phép chuyển đổi A/D. Nó cũng hỗ trợ tạo thời gian chết (dead time) cho chế độ dùng ngõ ra bổ phụ, và có một số chân phát hiện sự cố bằng phần cứng. Có thể khởi tạo hoạt động của module MCPWM theo trình tự sau:

Xác định thời gian cho một chu kỳ xung bằng cách đặt một giá trị 15-bit vào thanh ghi ngưỡng đếm chu kỳ xung PTPER, theo công thức:

����� = ��

����×����− 1, gióng hàng theo cạnh

����� = ��

����×����×�− 1, gióng hàng theo điểm giữa

– Thiết lập thanh ghi SEVTCMP cho việc tạo ngắt sự kiện đặc biệt (nếu cần)

– Thiết lập chế độ dùng các chân PWM bằng thanh ghi PWMCON1

– Thiết lập việc dùng overdrive trong thanh ghi OVDCON

– Đặt giá trị chu kỳ nhiệm vụ vào các thanh ghi PDCx tương ứng. Chú ý là độ phân giải của chu kỳ nhiệm vụ là TCY/2, còn độ phân giải của chu kỳ xung là TCY. Do đó, chẳng hạn PTPER = 0x7F thì PDCx = 0xFF mới là chu kỳ nhiệm vụ = 100%.

Thiết lập postscaler cho việc tạo ngắt sự kiện đặc biệt, cách thức cập nhật thanh ghi chu kỳ nhiệm vụ và việc đồng bộ overdrive bằng thanh ghi PWMCON2. Thiết lập prescaler và postscaler cho thanh ghi đếm chu kỳ xung, chế độ đếm chu kỳ xung và kích hoạt việc đếm chu kỳ xung bằng thanh ghi PTCON. Khi các ngõ ra PWM được sử dụng ở chế độ bổ phụ, bộ tạo thời gian chết được tự động cho phép để tránh cho các linh kiện

www.clbrobot.com www.robotgiaoduc.com

Page 33: BLDC_CLBROBOT

CHƯƠNG 3: GIỚI THI ỆU VỀ DSPIC30F4011

31

công suất bị trùng dẫn. Mỗi cặp ngõ ra bổ phụ được dành riêng một thanh ghi đếm thời gian chết 6-bit, với một prescaler giúp cho việc tạo thời gian chết được linh hoạt hơn. Một (hay nhiều) chân phát hiện sự cố cũng có thể được dùng để đưa các ngõ ra PWM về một trạng thái xác định khi xảy ra sự cố, bằng tác động của phần cứng. Tín hiệu sự kiện đặc biệt luôn luôn được module MCPWM tạo ra, và module ADC có thể dùng nó để đồng bộ việc chuyển đổi với việc tạo xung PWM. Tín hiệu sự kiện đặc biệt này có thể dùng với một postscaler từ 1:1 đến 1:16, và điều này sẽ có ích nếu việc chuyển đổi A/D không cần phải được thực hiện ở mỗi chu kỳ PWM.(**)

3.2.5. Module UART:

Bộ thu phát vạn năng không đồng bộ (UART) là một trong những module I/O nối tiếp có trong dsPIC30F4011. UART là một hệ thống song công bất đồng bộ có thể giao tiếp với các ngoại vi bên ngoài như máy tính PC, với giao diện RS233 hay RS485.

Những chức năng chính của module UART là:

• Truyền song công 8 hay 9 bit dữ liệu thông qua hai chân UxTX và RxTX

• Với chế độ dữ liệu 8 bit có thể tùy chọn tính chẵn lẻ hoặc không.

• 1 hay 2 bit dừng

• Tích hợp đủ bộ tạo tốc độ Baud với bộ chia tần 16 bit

• Tốc độ Baud nằm trong khoảng từ 29bps đến 1.875Mbps ở tần số 30MIPS

• Buffer dữ liệu truyền 4 ô kiểu FIFO

• Buffer dữ liệu nhận 4 ô kiểu FIFO

• Kiểm tra lỗi chẵn lẻ, khung, và tràn bộ đệm dữ liệu

• Hỗ trợ cho chế độ 9-bit kiểm tra địa chỉ (bit 9 = 1)

• Ngắt sau khi truyền hoặc nhận

• Chế đô lặp trở lại để hỗ trợ chuNn đoán

dsPIC30F4011 có 2 module UART.

Hình 3.7 mô tả sơ đồ khối của module UART bào gồm: - Bộ tạo tốc độ Baud - Truyền bất đồng bộ - Nhận bất đồng bộ

www.clbrobot.com www.robotgiaoduc.com

Page 34: BLDC_CLBROBOT

CHƯƠNG 3: GIỚI THI ỆU VỀ DSPIC30F4011

32

Hình 3.7: Sơ đồ khối module UART[9]

Module UART bao gồm một bộ tạo tốc độ Baud chuyên dụng 16-bit. Thanh ghi UxBRG điều khiển giai đoạn của timer 16 bit ở chế độ free running. Phương trình 19.1 chỉ ra công thức tính toán của tốc độ baud

Hình 3.8:Phương trình tốc độ Baud của module UART

3.3. Phần mềm hỗ trợ và ngôn ngữ lập trình 3.3.1. Phần mềm MPLAP:

Chu kỳ thiết kế:

www.clbrobot.com www.robotgiaoduc.com

Page 35: BLDC_CLBROBOT

CHƯƠNG 3: GIỚI THI ỆU VỀ DSPIC30F4011

33

Hình 3.9 : Chu trình thiết kế[9]

IDE là một gói tất cả các công cụ trong một giao diện người dùng thông thường là tự

động. Cho ví dụ, ngay khi code được viết, nó có thể được chuyển đến những lệnh thực thi và tải vào bên trong vi điều khiển để xem nó làm việc như thế nào. Trong quá trình này, nhiều công cụ được cần đến như: một trình soạn thảo để viết code, một trình quản lý project hay sắp xếp các file, một trình biên dịch hay biên tập để chuyển code nguồn đến code máy tính và một ít phần cứng và phần mềm để đưa code đó vào bên trong vi điều khiển hay mô phỏng hoạt động của nó.

MPLAP IDE ( Integrated Development Enviroment) là một chương trình toàn diện bao gồm :

- Quản lý project: quản lý project cung cấp sự giao tiếp và tập hợp lại giữa môi trường phát triển tích hợp (IDE) và những công cụ ngôn ngữ.

Hình 3.10: MPLAP project Manager[9]

www.clbrobot.com www.robotgiaoduc.com

Page 36: BLDC_CLBROBOT

CHƯƠNG 3: GIỚI THI ỆU VỀ DSPIC30F4011

34

- Trình soan thảo: trình soạn thảo có đầy đủ những tính năng soạn thảo văn bản

cho việc lập trình, mặt khác nó cũng là một cửa sổ phục vụ trong quá trình debug.

- Asembler/Linker và các công cụ ngôn ngữ: Asembler có thể sử dụng một mình để tập hợp các file đơn hoặc có thể sử dụng với Linker để xây dựng một project từ những nguồn riêng biệt như file, thư viện, và các object đã được biên dịch. Linker chịu trách nhiệm trong việc vị trí code được biên dịch vào vị trí đích là vùng nhớ trong vi điều khiển.

- Debuger: chương trình debug của Microchip cho phép ngắt tại một điểm, thực thi từng bước đơn, cửa sổ xem (watch window) kết quả và tất cả những tính năng hiện đại của debug trong MPLAP IDE. Nó làm việc trong mối liên kết với trình soạn thảo để tham khảo thông tin từ mục tiêu bằng cách debug trở về code gốc.

- Bộ thực thi: Có một chương trình mô phỏng trong MPLAP IDE cho tất cả các dòng PIC và dsPIC. Trình mô phỏng sử dụng PC để mô phỏng các lệnh và một vài chức năng ngoại vi của PIC và dsPIC. Tùy chọn in-circuit emulator và in-circuit debugger để test code và chạy chúng trên phần cứng.

www.clbrobot.com www.robotgiaoduc.com

Page 37: BLDC_CLBROBOT

CHƯƠNG 3: GIỚI THI ỆU VỀ DSPIC30F4011

35

-

Hình 3.11: MPLAP IDE[9

3.3.2. Ngôn ngữ lập trình:

Các dòng vi điều khiển thuộc họ dsPIC30F đều được hỗ trợ đầy đủ bao gồm: Những công cụ phát triển, trình biên dịch tối ưu C, asembler, một linker và achiver/librarian.

Trình biên dịch sử dụng cho vi điều khiển dsPIC30F4011 trong luận văn này sử dụng ngôn ngữ C, được sửa đổi cho phù hợp với Vi điều khiển là trình biên dịch MPLAP C30.

Trình biên dịch MPLAP C30 biên dịch các file nguồn .C, thành những file ngôn ngữ asembly. Liên kết những file đối tượng và file thư viện để tạo ra những chương trình ứng dụng cuối cùng trong định dạng file thực thi .COFF hay . ELF. Có thể được tải vào MPLAP IDE, nơi nó có thể được kiểm tra và debug, hay sử dụng tính năng chuyển đổi các định dạng này sang định dạng file .HEX, để mô phỏng hay tải vào thiết bị.

www.clbrobot.com www.robotgiaoduc.com

Page 38: BLDC_CLBROBOT

CHƯƠNG 3: GIỚI THI ỆU VỀ DSPIC30F4011

36

Hình 3.12: Chu trình thực hiện của MPLAP C30[9]

Trình biên dịch có đầy đủ các tính năng, tối ưu trình biên dịch để chuyển đổi ngôn ngữ ANSI C thành ngôn ngữ Asembly trong chip 16 bít. Trình biên dịch cũng hỗ trợ nhiều tuỳ chọn dòng lệnh và những mở rộng của ngôn ngữ cho phép chúng ta truy cập hầu hết phần cứng, ngoại vi thiết bị 16bits, và đạt được kết quả điều khiển tốt mà code biên dịch tạo ra.

Chương này đã trình bày họ vi điều khiển dsPic30f nói chung và dsPic30f4011 nói riêng được dùng trong mô hình thực nghiệm và trình biên dịch MPLAP C30 cùng ngôn ngữ lập trình C. Việc thiết kế và thi công mạch điều khiển và mạch động lực dùng vi điều khiển dsPic30f4011 để điều khiển động cơ BLDC được trình bày ở chương tiếp theo.

www.clbrobot.com www.robotgiaoduc.com

Page 39: BLDC_CLBROBOT

CHƯƠNG 4: THIẾT KẾ VÀ THI CÔNG M ẠCH ĐIỀU KHI ỂN ĐỘNG CƠ DC KHÔNG CHỔI THAN

37

CHƯƠNG 4: THIẾT KẾ VÀ THI CÔNG M ẠCH ĐIỀU KHI ỂN ĐỘNG CƠ DC KHÔNG CHỔI THAN

4.1. Sơ đồ điều khiển chung

Hệ thống điều khiển động cơ BLDC dùng dsPIC30F4011 được cấp nguồn từ điện áp một pha qua biến áp đến bộ chỉnh lưu thành dòng DC. dsPIC sẽ điều khiển bộ nghịch lưu thông qua mạch lái MOSFET để điều chỉnh thành dạng điện áp thích hợp (Hình thang) cấp nguồn cho động cơ. Ngoài ra hệ thống còn có các cảm biến đo vận tốc, dòng điện hồi tiếp về để điều khiển động cơ và một số thiết bị hỗ trợ giao tiếp điều khiển hệ thống.

Hình 4.1: Sơ đồ khối điều khiển chung

4.1.1. Mạch nguồn DC:

Từ nguồn AC một pha 220V được đưa qua bộ biến áp với đầu ra 15V sau đó cho qua bộ chỉnh lưu DC ta được nguồn DC 21V. Động cơ hoạt động với dòng định mức là 3A nên ta chọn biến áp 8A đủ để cấp nguồn cho động cơ và các thiết bị, linh kiện trong bộ điều khiển hoạt động.

www.clbrobot.com www.robotgiaoduc.com

Page 40: BLDC_CLBROBOT

CHƯƠNG 4: THIẾT KẾ VÀ THI CÔNG M ẠCH ĐIỀU KHI ỂN ĐỘNG CƠ DC KHÔNG CHỔI THAN

38

Hình 4.2: Sơ đồ mạch nguồn từ điện áp AC qua cầu chỉnh lưu ra điện áp DC

4.1.2. Mạch nghịch lưu 3 pha:

Hình 4.3: Mạch nghịch lưu 3 pha

Mạch nghịch lưu 3 pha sử dụng 6 MOSFET 75NF75 có dòng điện hoạt động lớn 75A, điện áp hoạt động 75V, điện trở 12.5mOhm phù hợp với ứng dụng điều khiển động cơ BLDC công suất nhỏ như của chúng ta ở điện áp dưới 24V, công suất dưới 50W.

www.clbrobot.com www.robotgiaoduc.com

Page 41: BLDC_CLBROBOT

CHƯƠNG 4: THIẾT KẾ VÀ THI CÔNG M ẠCH ĐIỀU KHI ỂN ĐỘNG CƠ DC KHÔNG CHỔI THAN

39

Hình 4.4: Sơ đồ chân của MOSFET 75NF75[4.0]

4.1.3. Mạch kích MOSFET:

IC kích

Trong các thiết kế của các bộ biến tần công nghiệp cũng như các bộ nghịch lưu dùng để điều khiển động cơ, mạch lái linh kiện công suất (MOSFET, IGBT) là một phần hết sức quan trọng ảnh hưởng trực tiếp đến chất lượng điện áp ngõ ra và kết quả là ảnh hưởng trực tiếp đến chất lượng chung của bộ điều khiển.

Khó khăn đầu tiên gặp phải với mạch lái bộ nghịch lưu đó là phải sử dụng nghiều nguồn cách ly để kích được cả 6 khóa của bộ nghịch lưu. Với 3 khóa dưới sử dụng một nguồn, 3 khóa bên trên dùng 3 nguồn riêng, lý do là điện áp các pha của bộ nghịch lưu thay đổi liên tục và phải cách ly với nhau.

Khó khăn thứ hai có thể gặp phải với mạch lái của bộ nghịch lưu đó là: đáp ứng của các linh kiện phải đủ nhanh và trùng khớp với nhau để đảm bảo mạch không bị trùng dẫn (các khóa trên và khóa dưới của cùng một nhánh cùng đóng), gây sự cố ngắn mạch tức thời, làm giảm tuổi thọ và có thể dẫn đến hư hỏng toàn bộ hệ thống điều khiển.

Để giảm bớt sự cồng kềnh khi sử dụng quá nhiều nguồn cách ly cho mạch kích ta chọn linh kiện IC driver MOSFET chuyên dùng IR2102 của hãng International Rectifier. Cung cấp nhiều chức năng cho phép ta giải quyết các khó khăn gặp phải ở trên.

Các chức năng nổi bật của IR2102:

- Hoạt động ở dải điện áp rộng (từ 10V đến 20V) www.clbrobot.com www.robotgiaoduc.com

Page 42: BLDC_CLBROBOT

CHƯƠNG 4: THIẾT KẾ VÀ THI CÔNG M ẠCH ĐIỀU KHI ỂN ĐỘNG CƠ DC KHÔNG CHỔI THAN

40

- Mức logic ngõ vào cho phép từ 3.3V đến 15V - Thời gian đáp ứng nhanh (Ton = 160ns,Toff = 150ns) - Dòng ngõ ra khá lớn (Io+ = 130mA/Io- = 270 mA) - Khóa ngõ ra khi điện áp cung cấp nhỏ hơn 10V - Dead-time nội 50ns

Hình 4.5: Sơ đồ chân và cách mắc IR2102[4.1]

Hình 4.6: Mạch mắc IR2102 thực tế trên một pha(Pha A)

www.clbrobot.com www.robotgiaoduc.com

Page 43: BLDC_CLBROBOT

CHƯƠNG 4: THIẾT KẾ VÀ THI CÔNG M ẠCH ĐIỀU KHI ỂN ĐỘNG CƠ DC KHÔNG CHỔI THAN

41

IC cách ly

Để cách ly giữa mạch kích MOSFET với DSP ta sử dụng opto cách ly đáp ứng nhanh 6N137. Tần số đáp ứng của 6N137 khá cao, lên đến 10Mbd, đáp ứng được yêu cầu sử dụng cho các mạch kích tần số cao:

Một số chức năng nổi bật của 6N137 là:

- Tốc độ cao 10Mbd - Tương thích +5V CMOS - Biên độ nhiệt rộng -400C đến 1000C - Dòng cấp nhỏ 5mA

Hình 4.7: Sơ đồ chân 6N137[4.2]

Hình 4.8: Cách mắc opto 6N137[4.3]

www.clbrobot.com www.robotgiaoduc.com

Page 44: BLDC_CLBROBOT

CHƯƠNG 4: THIẾT KẾ VÀ THI CÔNG M ẠCH ĐIỀU KHI ỂN ĐỘNG CƠ DC KHÔNG CHỔI THAN

42

Hình 4.9: Sơ đồ mạch mắc opto thực tế (Pha A)

Sơ đồ layout của mạch động lực của mô hình thực nghiệm: gồm mạch nghịch lưu

3 pha,mạch kích MOSFET,mạch cách ly.

4.1.4. Mạch điều khiển:

Khối điều khiển sử dụng dsPIC30F4011 để xử lý toàn bộ các công việc điều khiển. Công việc của khối điều khiển bao gồm xử lý tín hiệu ngõ ra của các cảm biến Hall thông qua ngõ vào thông báo thay đổi trạng thái (Change Notification), xuất tín hiệu xung PWM, đọc tín hiệu ADC, nhận thao tác từ các phím bấm và hiển thị ra LCD, giao tiếp và truyền dữ liệu về máy tính cũng như nhận lệnh điều khiển từ máy tính từ đó điều khiển động cơ BLDC.

www.clbrobot.com www.robotgiaoduc.com

Page 45: BLDC_CLBROBOT

CHƯƠNG 4: THIẾT KẾ VÀ THI CÔNG M ẠCH ĐIỀU KHI ỂN ĐỘNG CƠ DC KHÔNG CHỔI THAN

43

Hình 4.10: Sơ đồ nguyên lý mạch điều khiển

Chi tiết chức năng các chân vi điều khiển thực hiện:

- Chân MCLR : Chân Reset - Chân HALL_A, HALL_B, HALL_C: các chân đọc tín hiệu cảm biến Hall

tương ứng về vi điều khiển. - Chân IMOTOR_OUT: Chân Analog đọc tín hiệu áp để xác định dòng điện vào

bộ nghịch lưu điều khiển động cơ. - Chân QEA, QEB: Các chân chức năng thực hiện việc đọc tín hiệu xung từ

Encoder về. - Chân VBUS, MODE, SPEED: Cấu hình là chân Analog thực hiện chuyển đổi

A/D giúp xác định điện áp nguồn, chế độ điều khiển và tốc độ đặt để điều khiển động cơ.

- Chân OSC1, OSC2 : Ngõ vào của bộ tạo dao động (Thạch anh) - Chân OPEN_CLOSE giúp chọn chế độ điều khiển vòng hở hay vòng kín - Chân PC để chọn chế độ chỉnh tay hay thông qua giao tiếp với máy tính - Chân FAULTA_OUT ngắt bộ PWM khi tín hiệu ngõ vào mức cao - Các chân PWM1H, PWM1L, PWM2H, PWM2L, PWM3H, PWM3L điều

khiển xung kích cho bộ nghịch lưu. - Các chân LCD_RS, LCD_EN, DB4, DB5, DB6, DB7 thực hiện giao tiếp với

LCD ở chế độ 4bit. - Các chân TX_IN, RX_IN thực hiện giao tiếp UART với máy tính.

www.clbrobot.com www.robotgiaoduc.com

Page 46: BLDC_CLBROBOT

CHƯƠNG 4: THIẾT KẾ VÀ THI CÔNG M ẠCH ĐIỀU KHI ỂN ĐỘNG CƠ DC KHÔNG CHỔI THAN

44

*Thạch anh: Thạch anh sử dụng cho vi điều khiển dsPIC30F4011 là 6MHz, sau khi qua bộ nhân 16, tốc độ xử lý của vi điều khiển là 16MIPS (16 triệu lệnh trên giây).

4.1.5. Mạch hồi ti ếp tốc độ:

Khối hồi tiếp tốc độ sử dụng trong bộ điều khiển sử dụng công cụ mà nhà sản xuất động cơ đã cung cấp đó là 3 cảm biến Hall được nối với các chân CN, chân này sẽ tự động tạo ra một ngắt khi trạng thái ngõ vào thay đổi. Động cơ sử dụng trong đề tài có stator 6 cực và rotor có 4 cực do đó một chu kỳ điện của động cơ có 6 trạng thái của 3 cảm biến Hall (011, 010, 110, 100, 101, 001) và số chu kỳ điện bằng p = 2(số cặp cực rotor) lần số chu kỳ cơ, do đó trong một chu kỳ cơ 3 cảm biến Hall thay đổi trạng thái 12 lần. Do số lần thay đổi trạng thái của cảm biến Hall ít nên muốn ít sai số trong việc đo tốc độ, động cơ phải hoạt động ở tốc độ cao. Trong điều khiển chúng ta chọn tốc độ 2500RPM.

4.1.6. Mạch điều khiển chức năng, hiển thị:

*Khối điều khiển chức năng của bộ điều khiển bao gồm nút nhấn START, công tắc PC, OPEN_CLOSE, và các biến trở chỉnh MODE, SPEED. Như đã mô tả chức năng trong phần 4.2.4.

Hình 4.11:Sơ đồ mạch nút nhấn, Công tắc và biến trở chỉnh.

- Nút nhấn START điều khiển chạy hay ngừng động cơ. - Công tắc PC cho phép điều khiển bằng giao tiếp với máy tính hay sử dụng các

nút bấm chức năng.

www.clbrobot.com www.robotgiaoduc.com

Page 47: BLDC_CLBROBOT

CHƯƠNG 4: THIẾT KẾ VÀ THI CÔNG M ẠCH ĐIỀU KHI ỂN ĐỘNG CƠ DC KHÔNG CHỔI THAN

45

- Công tắc OPEN_CLOSE cho phép chạy vòng kín hay vòng hở trong chế độ sử dụng nút bấm

- Biến trở MODE để chỉnh một số chế độ hoạt động. - Biến trở SPEED: Thay đổi giá trị điện áp đọc về trên chân Analog tương ứng

để đặt giá trị tốc độ trong chế độ điều khiển tại chỗ (sử dụng các nút bấm). * Khối hiển thị: Thành phần chủ yếu của khối hiển thị là LCD 16*2, với lợi điểm là dễ dàng sử

dụng, khả năng hiển thị được nhiều ký tự cho phép LCD thành công cụ giao tiếp tốt giữa vi điều khiển với bên ngoài. Do chỉ dùng chức năng hiển thị nên không cần sử dụng đến chân RW(Nối mass).

Hình 4.12: Mạch hiển thị LCD

4.1.7. Mạch giao tiếp:

Mạch điều khiển giao tiếp với máy tính qua cổng COM được thực hiện thông qua IC MAX232. MAX232 là bộ chuyển mức logic từ TTL sang RS232 và ngược lại. Cổng COM được sử dụng trong mạch là cổng DB9.

www.clbrobot.com www.robotgiaoduc.com

Page 48: BLDC_CLBROBOT

CHƯƠNG 4: THIẾT KẾ VÀ THI CÔNG M ẠCH ĐIỀU KHI ỂN ĐỘNG CƠ DC KHÔNG CHỔI THAN

46

Hình 4.13: Mạch giao tiếp

Hình 4.14: Sơ đồ chân MAX232[4.4]

4.2. Thi công:

4.2.1. Mạch in: www.clbrobot.com www.robotgiaoduc.com

Page 49: BLDC_CLBROBOT

CHƯƠNG 4: THIẾT KẾ VÀ THI CÔNG M ẠCH ĐIỀU KHI ỂN ĐỘNG CƠ DC KHÔNG CHỔI THAN

47

Hình 4.15: Mạch điều khiển (khối điều khiển, hiển thị, hồi ti ếp, giao tiếp)

www.clbrobot.com www.robotgiaoduc.com

Page 50: BLDC_CLBROBOT

CHƯƠNG 4: THIẾT KẾ VÀ THI CÔNG M ẠCH ĐIỀU KHI ỂN ĐỘNG CƠ DC KHÔNG CHỔI THAN

48

Hình 4.16: Mạch động lực (mạch nghịch lưu 3 pha, mạch kích,mạch cách ly )

4.2.2. Kết quả thi công mạch in:

Kết quả của quá trình thi công hai mạch in ở trên:

www.clbrobot.com www.robotgiaoduc.com

Page 51: BLDC_CLBROBOT

CHƯƠNG 4: THIẾT KẾ VÀ THI CÔNG M ẠCH ĐIỀU KHI ỂN ĐỘNG CƠ DC KHÔNG CHỔI THAN

49

Hình 4.17: Mạch điều khiển

Hình 4.18: Mạch động lực

4.2.3. Thử nghiệm:

Bộ điều khiển đã hoạt động tốt, các module thực hiện được các chức năng đề ra. Kết quả của quá trình này là động cơ đã hoạt động.

www.clbrobot.com www.robotgiaoduc.com

Page 52: BLDC_CLBROBOT

CHƯƠNG 5: ĐIỀU KHI ỂN MÔ HÌNH TH ỰC NGHIỆM

CHƯƠNG 5: ĐIỀU KHI ỂN MÔ HÌNH TH ỰC NGHIỆM

5.1 Lập trình vòng hở

5.1.1. Điều khiển vòng hở:

Hình 5.1: Bộ điều khiển động cơ BLDC

Theo các chương trước (chương 1, chương 2) để điều khiển động cơ BLDC điều quan trọng là phải xác định được vị trí rotor để điều khiển các khóa bán dẫn chuyển mạch cho cuộn dây stator thích hợp tạo ra từ trường “đồng bộ” giữa stator và rotor. Một phương pháp đơn giản để xác định được vị trí rotor là sử dụng tín hiệu của các cảm biến Hall có sẵn trong động cơ. Các chân ngõ ra của các cảm biến này được nối với các chân CN- chân tạo ngắt khi ngõ vào thay đổi.

Khi đã xác định được các trạng thái chuyển mạch thích hợp cho các cuộn dây stator, muốn điều khiển tốc độ của động cơ ta dựa vào mối quan hệ giữa tốc độ, moment, dòng điện và điện áp như đã đề cập ở chương 2, khi điện áp cấp vào các pha của stator tăng lên, dòng điện pha cũng tăng kéo theo moment tăng và vận tốc cũng tăng theo. Để thay đổi điện áp cung cấp cho động cơ ta có thể thay đổi thời gian đóng Ton của các khóa bán dẫn của bộ nghịch lưu bằng cách thay đổi độ rộng xung kích cho

www.clbrobot.com www.robotgiaoduc.com

Page 53: BLDC_CLBROBOT

CHƯƠNG 5: ĐIỀU KHI ỂN MÔ HÌNH TH ỰC NGHIỆM

các khóa, điều này được thực hiện dễ dàng bằng phần mềm và cho kết quả khá chính xác. Phương trình liên hệ giữa các đại lượng vận tốc, điện áp và động rộng xung:

Ta có:

Đ�ệ� á� đặ� =Đ�ệ� á� đị�ℎ �ứ

ố độ đị�ℎ �ứ∗ �ố độ đặ�

Mà:

Đ�ệ� á� đặ� = Đ�ệ� á� ấ� ℎ� ộ ��ℎịℎ �ư� ∗��

Suy ra :

�� = ∗ Đ�ệ� á� đặ�

Đ�ệ� á� ấ� ℎ� ộ ��ℎịℎ �ư�

Thời gian Ton tương ứng với Duty Cycle của Module PWM bởi công thức

��

=

���

2 ∗ ����

Lưu đồ giải thuật:

www.clbrobot.com www.robotgiaoduc.com

Page 54: BLDC_CLBROBOT

CHƯƠNG 5: ĐIỀU KHI ỂN MÔ HÌNH TH ỰC NGHIỆM

Nút start được nhấn

Đọc giá trị cảm biến Hall, tra bảng tìm giá trị chuyển mạch cho các khóa

Biến trở thay đổi giá trị? (vận tốc thay đổi)

Tính toán, thay đổi giá trị trong thanh ghi PDC theo giá trị tính toán ứng với tốc độ

Phím Stop (Start) có nhấn không?

Dừng module PWM dùng thanh ghi OVDCON

Start

Khởi tạo module PWM, ADC, Port, Timer, UART, CN

No

Yes

No

Yes

No

Yes

www.clbrobot.com www.robotgiaoduc.com

Page 55: BLDC_CLBROBOT

CHƯƠNG 5: ĐIỀU KHI ỂN MÔ HÌNH TH ỰC NGHIỆM

Hình 5.2: Sơ đồ khối của bộ điều khiển vòng hở

Trong kỹ thuật lập trình vòng hở thì MCPWM điều khiển trực tiếp tốc độ động cơ trên cơ sở điện áp ngõ vào thông qua biến trở tốc độ. Sau khi khởi tạo các module MCPWM, ADC, IO ,UART, TIMER, và chức năng thông báo ngõ vào thay đổi, chương trình đợi tín hiệu kích hoạt từ một phím nhấn để bắt đầu. Khi một phím được nhấn thì các cảm biến Hall bắt đầu đọc. Dựa vào các giá trị đó ,một giá trị tương ứng được tìm thấy trong bảng tra,rồi ghi vào thanh ghi OVDCON. Tại thời điểm này động cơ bắt đầu quay.

Đầu tiên duty cycle được đặt mặc định 0 %. Ở vòng lặp tiếp theo của chương trình chính ,giá trị của biến trở được đọc về (thông qua giá trị của bộ ADC) và ghi vào duty cycle, điều này quyết định tốc độ của động cơ. Với duty cycle càng cao thì động cơ sẽ quay càng nhanh.

Các cảm biến Hall được nối với các chân thông báo thay đổi trạng thái (CN-Change Notification). Ngắt thông báo thay đổi trạng thái được cho phép. Khi rotor quay thì vị trí của nam châm rotor thay đổi,và rotor vào một trạng thái khác. Mỗi vị trí mới thì được thông báo bởi một ngắt của CN. Trong hàm ngắt CN ,các giá trị của cảm biến Hall được đọc về trên cơ sở các giá trị này một giá trị tương ứng được tra trong bảng và ghi vào thanh ghi OVDCON. Các hoạt động này đảm bảo kích đúng các cuộn dây thể hiện qua việc rotor tiếp tục quay.

Tốc độ vòng hở được đo bởi các cảm biến Hall, một timer tuần tự đếm và tính toán vận tốc của động cơ, các giá trị vận tốc được truyền lên máy tính để giám sát.

5.2 Lập trình vòng kín

Điểm khác biệt trong lập trình vòng kín là biến trở dùng để đặt giá trị yêu cầu. Vòng kín cung cấp khâu hiệu chỉnh PI (Proportional – Integral) để hiệu chỉnh tốc độ. Tốc độ hồi tiếp về được tính toán dựa trên các cảm biến Hall.

www.clbrobot.com www.robotgiaoduc.com

Page 56: BLDC_CLBROBOT

CHƯƠNG 5: ĐIỀU KHI ỂN MÔ HÌNH TH ỰC NGHIỆM

Hình 5.3: Giải thuật điều khiển tốc độ vòng kín

Sau khi kiểm tra xem nút nhấn Start có được nhấn chưa, nếu nút đã được nhấn các giá trị của cảm biến Hall sẽ được đọc về, tương ứng với giá trị của cảm biến Hall sẽ có một giá trị tương ứng của thanh ghi OVDCON được tra trong bảng quy định trạng thái đóng hay ngắt các xung kích liên quan. Sau đó giá trị của analog của biến trở chỉnh tốc độ sẽ được đọc và chuyển sang tín hiệu số để xác định vận tốc cần đặt. Vận tốc thực hồi tiếp về từ các cảm biến Hall được tính toán và xử lý như sau: trong mỗi chu kỳ điện cảm biến Hall thay đổi trạng thái 6 lần, và mỗi chu kỳ cơ bằng 2 chu kỳ điện nên số lần thay đổi trạng thái của cảm biến Hall là 12 lần/1 chu kỳ cơ do đó muốn tính toán chính xác tốc độ của động cơ phải cần một khoảng thời gian khá lớn để giảm

www.clbrobot.com www.robotgiaoduc.com

Page 57: BLDC_CLBROBOT

CHƯƠNG 5: ĐIỀU KHI ỂN MÔ HÌNH TH ỰC NGHIỆM

sai số (vài giây). Điều đó gây trở ngại lên việc điều khiển vòng kín cho động cơ. Động cơ BLDC có tần số đáp ứng khá cao (5-10ms) nên mặc nhiên để điều khiển tốt, tần số của bộ PI phải lớn hơn tần số đáp ứng của động cơ ở mức cao nhất có thể. Để giải quyết điều trở ngại này ta thực hiện việc điều khiển động cơ ở tốc độ cao (2500 vòng /phút) cộng với giải thuật phần mềm để giảm sai số trong việc tính toán vận tốc hồi tiếp về và ổn định hệ thống.

Sau khi có tốc độ thực, độ lỗi được tính toán và đưa qua khâu hiệu chỉnh PI, sau khâu hiệu chỉnh giá trị của độ rộng xung được thay đổi để đáp ứng với những thay đổi (khi tải tăng hay giảm).

5.3 Giao tiếp máy tính và vẽ đồ thị :

C# là một ngôn ngữ lập trình hướng đối tượng hoạt động trên môi trường .NET. Ưu điểm lớn nhất của C# là dễ sử dụng trong khi vẫn đầy đủ những ưu điểm của các phần mềm hiện có. Trong đề tài này sử dụng C# và bộ công cụ Visual studio để lập trình giao diện và giao tiếp giữa máy tính và vi xử lý thực hiện một số chức năng hiển thị và điều khiển quá trình hoạt động của động cơ. Giao diện chương trình như sau:

Hình 5.4: Giao diện giao tiếp máy tính

Một số chức năng của chương trình: www.clbrobot.com www.robotgiaoduc.com

Page 58: BLDC_CLBROBOT

CHƯƠNG 5: ĐIỀU KHI ỂN MÔ HÌNH TH ỰC NGHIỆM

- Open Port/ Close Port : Đóng/Mở cổng COM - Start/Stop : Cho phép chạy/dừng động cơ - Exit : Thoát khỏi chương trình. Trước khi thoát, động cơ được điều khiển dừng. - Reference Speed: Tốc độ đặt Sau khi đặt tốc độ nhấn Send Speed để áp dụng

tốc độ đặt. - Real Speed : Thông báo tốc độ thực của động cơ được truyền từ bộ điều khiển - Kp : Hệ số của khâu tỷ lệ, sau khi nhập nhấn Send Kp để áp dụng - Ki : Hệ số của khâu vi phân, sau khi nhập nhấn Send Ki để áp dụng - P_Enable : cho phép sử dụng khâu P (Kích hoạt khâu tỷ lệ) - I_Enable : cho phép sử dụng khâu I

5.4. Kết quả thực nghiệm:

5.4.1. Vòng hở:

Hình 5.5: Đáp ứng vòng hở

Vận tốc đặt: 2500 V/PHÚT

Vận tốc thực: 2490 V/PHÚT

www.clbrobot.com www.robotgiaoduc.com

Page 59: BLDC_CLBROBOT

CHƯƠNG 5: ĐIỀU KHI ỂN MÔ HÌNH TH ỰC NGHIỆM

Nhận xét: Khi moment tải tăng thì vận tốc giảm.

5.4.2. Vòng kín:

Hình 5.6: Đáp ứng vòng kín với khâu hiệu chỉnh PI

Nhận xét: Những đoạn có PI thì đáp ứng tốt hơn,vận tốc giảm nhẹ rồi lên nhanh ở vị trí xác lập.

5.5 Nhận xét

- Đáp ứng vòng hở của bộ điều khiển khá tốt. Có sai số tốc độ nhưng không đáng kể do ảnh hưởng sai số đo tốc độ của cảm biến Hall.

- Đáp ứng vòng kín của bộ điều khiển khá tốt trong khả năng của động cơ (moment tải định mức).

www.clbrobot.com www.robotgiaoduc.com

Page 60: BLDC_CLBROBOT

CHƯƠNG 6: KẾT QUẢ, ỨNG DỤNG VÀ HƯỚNG PHÁT TRI ỂN

60

CHƯƠNG 6: KẾT QUẢ, ỨNG DỤNG VÀ HƯỚNG PHÁT TRI ỂN

6.1. Kết quả đạt được

- Tìm hiểu và sử dụng được động cơ một chiều không chổi than (BLDC). - Thiết kế và thi công mạch điều khiển tốc độ động cơ BLDC (mạch điều khiển dùng vi điều khiển dsPIC30F và mạch động lực).

- Lập trình điều khiển vòng hở và vòng kín tốc độ động cơ BLDC (dùng PI). - Điều khiển tại chỗ bằng LCD và nút nhấn. - Điều khiển từ xa và giám sát thông qua máy tính

6.2. Ứng dụng

Mô hình thực nghiệm trong đề tài này có thể được sử dụng để điều khiển các động cơ BLDC 3 pha,với điện áp có thể tới 50 V, dòng điện 10 A.

Có thể sử dụng trong các hệ thống truyền động điện,công nghệ điều khiển robot,…

6.3 Hướng phát triển của đề tài

Có thể thiết kế nguồn xung cho bộ điều khiển tốc độ BLDC để tăng cao hiệu suất, tiết kiệm năng lượng giảm trọng lượng cho bộ mạch nguồn .

Có thể phát triển đề tài này để điều khiển các động cơ BLDC có công suất lớn hơn.

Tối ưu phương pháp điều khiển để tăng chất lượng của bộ điều khiển.

www.clbrobot.com www.robotgiaoduc.com

Page 61: BLDC_CLBROBOT

TÀI LI ỆU THAM KH ẢO

[1] 48531 EMS – Chapter 12. Brushless DC Motors

[2] Chương 4: Điều khiển định hướng từ thông ĐCKĐB-Trần Công Binh

[3] AN855 Brushless DC (BLDC) Motor Fundamentals- Microchip

[4] Implementation of a Speed Controlled Brushless DC Drive Using TMS320F240

[5] DSP Solutions for BLDC Motors

[6] Ứng dụng kỹ thuật DSP trong điều khiển động cơ một chiều không chổi than- Nguyễn Hữu Phúc, Nguyễn Trọng Duy

[7] 3-Phase BLDC Motor Control with Hall Sensors Using the MC56F8013

[8] dsPIC30F Family Reference Manual- Microchip

[9] Datasheet dsPIC30F4011- Microchip

[10] Sử dụng các module UART và I2C của dsPIC – Nguyễn Quang Nam

[11] Sử dụng các module ADC và MCPWM của dsPIC- Nguyễn Quang Nam

[12] discuss BLDC – dee forum

[13] Sensored BLDC Motor Control Using dsPIC30F2010- Microchip

[14] Brushless DC Motor Control Made Easy- Microchip

www.clbrobot.com www.robotgiaoduc.com