P. 1
Dieu Khien Toc Do Dong Co Dien 1 Chieu

Dieu Khien Toc Do Dong Co Dien 1 Chieu

|Views: 287|Likes:
Được xuất bản bởiCoffee Đen

More info:

Published by: Coffee Đen on May 27, 2012
Bản quyền:Attribution Non-commercial

Availability:

Read on Scribd mobile: iPhone, iPad and Android.
download as DOCX, PDF, TXT or read online from Scribd
See more
See less

07/02/2014

pdf

text

original

I.

Mô hình hóa và khảo sát các đặc tính của động cơ một chiều
1. Mô hình không gian trạng thái của động cơ một chiều
Các phương trình động học cơ bản - Phương trình cân bằng điện áp phần ứng
(1)

- Sức điện động phần ứng (2) - Phương trình chuyển động

(2) Trong đó: . là mômen điện từ. (3)

.

là mômen cản của tải.

. là tốc độ góc của rotor. . là mômen quán tính của động cơ. Mặt khác, do (n tính theo vòng/giây), nên ta có thể viết

(3) - Hằng số động cơ (5)

Xem [MATSIM01]Tr.291.

Hệ phương trình không gian trạng thái
Từ các phương trình cơ bản trên ta có thể viết hệ phương trình mô tả không gian trạng thái của động cơ một chiều như sau:

(4)

Hệ phương trình này có hai biến trạng thái của tải . Giả sử các biến trạng thái

và n. Các tín hiệu vào là điện áp

và mômen cản

và n là đo được, viết lại hệ phương trình trên dưới dạng ma trận ta có

(5) Hay dưới dạng ngắn gọn

(6) Trong đó

(7)

(8)

(9)

(10)

Biến trạng thái

, tín hiệu vào

.

2. Các đặc tính vòng hở trong miền thời gian
Từ các phương trình (001) hay (002) ta có thể viết lệnh Matlab mô tả không gian trạng thái của động cơ một chiều như sau:
matlab code 1. 2. Ra = 0.25; 3. La = 0.004; 4. Phi = 0.04; 5. J = 0.012; 6. Km = 38.2; 7. Ke = 2*pi*Km; 8. 9. A_m = [-Ra/La -Ke*Phi/La; Km*Phi/2/pi/J 0]; 10. B_m = [1/La 0; 0 -1/2/pi/J]; 11. C_m = [1 0; 0 1]; 12. D_m = [0 0; 0 0]; 13. 14. G_m = ss(A_m, B_m, C_m, D_m); 15. minfo(G_m)

Khi chạy m-file này, Matlab sẽ tạo ra mô hình không gian trạng thái của động cơ một chiều được lưu ở biến G_m qua lệnh: G_m = ss(A_m, B_m, C_m, D_m); Lệnh minfo(G_m) cho biết thông tin về mô hình đối tượng MATLAB ss object: 2 states 2 outputs 2 inputs

Hình 1: Mô hình G_m của động cơ một chiều Ta có thể sử dụng các lệnh sau để vẽ đáp ứng bước nhảy và phân phố các điểm cực của hệ
matlab code 1. 2. 3. 4. 5. 6. figure(1); step(G_m); figure(2); plot(eig(G_m),'r*'); grid on;

.

thì: là mô hình trạng thái của đối tượng. mô hình của DCM có thể được vẽ như sau Như vậy.1)) cho biết biên độ của tín hiệu ra ở kênh 2 theo tần số ở đầu vào kênh 1. đầu ra thứ nhất là dòng điện phần ứng và đầu ra thứ hai chính là tốc độ .1). g. Trong cú pháp của biểu đồ Bode bodemag(G_m(1.m 3.5. .'r'. .2). đầu vào thứ hai là mômen tải .Các chữ cái r.Lệnh logspace(-1. Nghĩa là sự phụ thuộc của tốc độ đầu ra theo tần số của tín hiệu điều khiển ở đầu vào số 1.'g'. logspace(-1.biên độ và cả pha nữa nếu vẽ đầy đủ (cái này để sau) nên còn gọi là đặc tính tần-biên-pha. m là chỉ màu của các đường vẽ. Biểu đồ Bode phản ánh mối quan hệ giữa tần số . Ví dụ. b. bodemag(G_m(2.'b'.2).G_m(2.1). hai đầu ra. nó là một hệ hai đầu vào.Có thể download m-file này ở đây: DCMC0001.5. Như vậy là đáp ứng đầu ra số 2 (tốc độ ) đối với đầu vào số 1 (điện áp phần ứng . G_m(2. với 500 điểm vẽ. Các đặc tính vòng hở trong miền tần số Với mô hình không gian trạng thái đã lập.500)).Viết in.'m'.500) để biểu diễn trục tần số theo Logarit từ Ý nghĩa của biểu đồ Bode đến ). Đầu vào thứ nhất là điện áp phần ứng . nghĩa là biểu đồ Bode được vẽ cho đáp ứng của đầu ra out đối với đầu vào .G_m(1.

'T_L . C_md. C_m. bodemag(G_md(1. grid on. logspace(-1. 30. 3. 16. 34. J = 0. 36. Phi = 0.G_m(1.G_md(1. 17. Nó có vai trò rất quan trọng trong việc khảo sát hệ.5. 0 0]. 'T_L . B_md = B_m*T. 8. 3). 38.25. figure(2).2). 19.0025. 32.He roi rac'). title('Bieu do bien do Bode . 18. figure(1).Đó chính là ý nghĩa của biểu đồ Bode.'r--'. B_m = [1/La 0.500)).n'. 6. C_md = C_m. A_md = U + A_m*T. 37. La = 0.1). 21. 0 -1/2/pi/J].'b--'. 33.n'. legend('Ua . 3). 24. 22. 5.04. 27.2).500)). G_md = ss(A_md.He tuong tu').n'. matlab code 1. Km*Phi/2/pi/J 0].012. Ke = 2*pi*Km. 11.1). 20. B_m. 10. U = eye(2). legend('Ua . C_m = [1 0. 29. logspace(-1.5. grid on . G_m = ss(A_m. 12. A_m = [-Ra/La -Ke*Phi/La. D_m = [0 0. D_m).'b--'. D_md = D_m. minfo(G_md). %SamplingTime 23. D_md). B_md. 13. 0 1]. Km = 38. 2.2.n'. 35. 4. 28. 31. 7. 26. 25. 14. minfo(G_m) 15. title('Bieu do bien do Bode . Ra = 0.'r--'.004. 9. T = 0. bodemag(G_m(1.

và như hình sau . Mô phỏng động cơ một chiều Bây giờ ta có thể xây dựng mô hình mô phỏng động cơ một chiều chạy không tải (mômen cản của tải ) dựa trên mô hình vừa xây dựng như sau Hình 1: Mô hình mô phỏng động cơ một chiều Lưu ý nhập các ma trận của mô hình bằng cách kích kép chuột lên khối không gian trạng thái sau đó nhập . .4.

mdl .Các ma trận của mô hình DCM Có thể download file này ở đây: Kết quả mô phỏng như sau dcmdl.

Phương pháp thiết kế 1. Các mạch vòng điều chỉnh Sơ đồ khối của các mạch vòng có thể được mô tả như sau: Trong đó là bộ điều chỉnh tốc độ. là bộ điều chỉnh dòng điện. .Hình 2: Kết quả mô phỏng không tải động cơ một chiều II. Như vậy là ta cần phải có hai bộ điều khiển PID cho hai mạch vòng.

Tín hiệu đặt là tốc độ . . mạch vòng trong cùng bao giờ cũng phải có đáp ứng nhanh nhất. Chú ý: . ta có thể thiết kế bộ điều khiển cho mạch vòng dòng điện trước. dòng này chính là . Phần mô tả sau đây chúng tôi dịch từ help của Matlab. Nếu tất cả các biến trạng thái đều đo được thì "trạng thái" và "đầu ra" là hoàn toàn giống nhau.Tuy nhiên. Cú pháp của lệnh này như sau: . bộ điều khiển tốc độ cơ. Còn nếu có các biến trạng thái không đo được thì phải cần đến bài toán nhận dạng. Hệ thống điều khiển có dạng như trên gọi là --Cascade-. từ trong ra ngoài.. Các biến trạng thái có thể đo được bằng các thiết bị đo thì có thể đưa ra ngoài được nên được gọi là "-đầu ra--". nó phản ánh đúng các trạng thái bên trong của đối tượng (ví dụ vui. 2. giận dữ. Thông thường. Mạch vòng ngoài là mạch vòng tốc độ. phải tính ra dòng cần thiết để tạo ra momen quay cho động .(điều khiển lồng nhau). tín hiệu cần điều khiển là tốc độ thực đầu ra sẽ được phản hồi về so sánh với tốc độ đặt .Với dòng điện yêu cầu như trên.Bài toán ở đây là điều khiển tốc độ (hay vị trí) của động cơ. Xây dựng hệ thống kín Trong báo cáo này chúng ta sẽ sử dụng lệnh Connect để xây dựng hệ thống kín. bộ điều khiển dòng sẽ tính ra điện áp cần thiết để đặt vào phần ứng (hay chính là điện áp cần cung cấp cho động cơ) để tạo ra dòng điện thực được phản hồi về so sánh với dòng điện đặt do bộ điều khiển tốc độ cung cấp.Từ tốc độ. Thế còn phân biệt thế nào là "--trạng thái--" và "--đầu ra--"? Các trạng thái mang tính tổng quát hơn. Bài toán tổng thể gồm có hai mạch vòng: mạch vòng trong được gọi là mạch vòng dòng điện vì mục đích của nó là để điều chỉnh dòng. Cách chúng ta đang thực hiện ở đây là thiết kế từng mạch vòng một. nghĩa là phải dựa trên cơ sở các biến đầu vào và biến đầu ra đo được để tính ra các biến đó. càng ra ngoài thì tốc độ đáp ứng càng giảm dần.Reference page in Help browser doc connect— để xem chi tiết hơn. buồn. sơ đồ như sau: Còn để nối các khối với nhau thì ta có thể dùng lệnh >> help connect Sau đó chọn -.)..

matlab code 1. then inputs and outputs should be set to matlab code 1. 2.sysN) to specify each block sysj in the diagram and form a block-diagonal. 2. if the external inputs are inputs 1.inputs. Short rows can be padded with trailing zeros (see example below).và --connect-. ta có thể sử dụng các lệnh -append-. if input 7 gets its inputs from the outputs 2. sysc = connect(sys... Trước tiên. inputs. Next. inputs = [1 2 15]. Check that . sys = append(sys1. outputs = [2 7]. The final model sysc has these particular inputs and outputs. use matlab code 1. The subsequent elements of each row specify where the block input gets its summing inputs. It has a row for each input of sys.. the concatenation of all block inputs and outputs).sys2. For example. be sure to verify your model in as many ways as you can. Given sys and Q.inputs. Here are some suggestions: Make sure the poles of the unconnected model sys match the poles of the various blocks in the diagram. the corresponding row of Q is [7 2 -15 6]. and 15 of sys. dùng matlab code 1. where the first element of each row is the input number.outputs) Các hệ thống động học phức tạp thường được cho dưới dạng các sơ đồ khối. sysc = connect(sys. The index vectors inputs and outputs then indicate which of the inputs and outputs in the large unconnected system are external inputs and outputs of the block diagram.để xây dựng một mô hình không gian trạng thái của hệ thống. Bắt đầu với mô tả sơ đồ khối.Q.Q. Since it is easy to make a mistake entering all the data required for a large model.outputs) to connect the blocks together and derive a state-space model sysc for the overall interconnection. and outputs have the following purpose: The matrix Q indicates how the blocks on the diagram are connected. For example. 15.. unconnected LTI model sys of the diagram. connect computes a statespace model of the interconnection with the same inputs and outputs as sys (that is. The arguments Q. and the external outputs are outputs 2 and 7 of sys. where the input from output 15 is negative. and 6. negative elements indicate minus inputs to the summing junction. Ngay cả với các hệ có độ phức tạp vừa phải thì cũng đã rất khó tìm mô hình không gian trạng thái để sử dụng các công cụ phân tích và thiết kế có sẵn.

A = [ -9. If you need to work extensively with block diagrams or you need to interconnect models with time delays.5009 18. 2.5362 -.6459 .1410 -.'inputname'. Define the three blocks as individual LTI models. C = [ -3.[1 5].2897 2.'inputname'.4544 -13.-2.{'y1' 'y2'}) 4.C.7791 -1. 8. The connect function does not support delays in a reliable way. Plot the step and bode responses of sysc and compare them with your expectations.B. Ví dụ Consider the following block diagram.0201 17.'uc') 2. 7..5112 .2) Next append these blocks to form the unconnected model sys. sys1 = tf(10. B = [ -.2138 ]...8470]. .5476 -.{'u1' 'u2'}. 3.002 -1. 6. matlab code 1.2958 ]. 5. 'outputname'. sys2 = ss(A. 4.the final poles and DC gains are reasonable. Simulink is a much easier and more comprehensive tool for model building.6943 3. 3.0745]. sys3 = zpk(-1.D. D = [-. Given the matrices of the state-space model sys2 matlab code 1.

d = 30. The interconnection matrix Q is therefore matlab code .2897 -13. 36. and output 3 (y2) into input 4. Continuous-time system. ? 0 35. To derive the overall block diagram model from sys. 11. b = 12. ? 2. x2 0 7. 10.002 0 u2 0 0. ? 0 27. 20. 18. 28. y2 0 34. x4 0 9. Unnamed inputs or outputs are denoted b.847 0 ? 0 0 0 1. y2 0 26.779 3.4142 x2 0 -3.075 0 x4 0 0 0 -1. x4 0 17. uc 31.0201 -1. y1 0 25.5362 -1. x3 0 8. 21. You need to connect outputs 1 and 4 into input 3 (u2). x1 5.2958 0 ? 0 0 0 2 Note that the ordering of the inputs and outputs is the same as the block ordering you chose.matlab code 1. uc 13.4142 u1 0 -0.5 24. x1 4 14.4544 18. 19. x2 0 -9.6459 0 u2 0 -0. x1 23. x3 0 16. sys = append(sys1.2138 0 x4 0 0 0 -2 u1 0 -0. ? 0 32.5112 -0. x1 -5 6. y1 0 33. sys 2. c = 22.501 0 x3 0 2.5476 -0.141 0.6943 0 x3 0 17. 3.sys2. x2 0 15. 29.sys3) This produces the block-diagonal model matlab code 1. specify the interconnections and the external inputs and outputs. a = 4.

x3 0 -1.4826 23.06 x4 0 0.40582 29.164 16. x1 x2 5. Note that the second row of Q has been padded with a trailing zero. x1 4 0 14. y2 0 -0. 10.1. and two external outputs y1 and y2 (outputs 2 and 3 of sys).26283 Note that the inputs and outputs are as desired. x2 0. outputs = [2 3]. x4 0 -0. 4 3 0]. x1 x2 21.84223 0. 19.22148 -5. b = 12. . The block diagram has two external inputs uc and u1 (inputs 1 and 2 of sys). x4 0. y2 0. uc u1 27. d = 26. matlab code 1.Q. 25. Continuous-time system. a = 4. x3 -2. 24. 18.076636 7.029 8. 2. sysc = connect(sys. c = 20. x2 0 -0. 3.outputs) 2.996 9. set inputs and outputs as follows. 30.5011 16.6007 45. y1 0 -0. You can obtain a state-space model for the overall interconnection by typing matlab code 1.46463 -8.inputs.65708 -11.076001 15.47644 -1. x3 0 5.6818 22. 11.6411 -1. y1 -0. uc u1 13.356 x4 -0.9012 -33.66204 28. Accordingly.12529 0.6283 x3 5.57391 17. inputs = [1 2]. Q = [3 1 -4 2.6568 11. x1 -5 0 6.

Khối này được vào để tiện khai báo đầu vào ra cho cả hệ mà lệnh --connect-. kệ nó. trong đó đánh số thứ tự các đầu vào của các khối trong hình tròn. Chúng ta có hai lựa chọn: .III. khi làm thì ta nên kết hợp cả hai hướng trên để vừa thiết kế theo lý thuyết vừa có cái để kiểm chứng ngay. Hướng thứ hai sẽ có ích cho những người cần hiểu sâu thêm về cách thiết kế bộ điều khiển. mọi thứ đều có sẵn. Trong thuật toán điều khiển vì hàm truyền của nó bằng 1 nên có nó cũng không ảnh hưởng gì đến cấu trúc của cả hệ. cứ nối vào nhau rồi xem kết quả -> chọn kết quả tốt nhất. Thiết kế bộ điều khiển PID tương tự 1.Thiết kế bằng Simulink: Có thể coi là phương pháp thực nghiệm. Bộ điều khiển PID tương tự Bây giờ ta tiếp tục với phần thiết kế bộ điều khiển tương tự. lý thuyết và phải biết lập trình một chút -> khó hơn một chút nhưng sẽ hiểu sâu hơn về lý thuyết và cách thực hiện. miễn là ta đặt dòng bằng bao nhiêu thì nó phải ra bấy nhiêu! Để sử dụng hàm --connect-. Cho phép khảo sát nhiều đặc tính hơn ngay trong quá trình thiết kế cũng như hiểu thêm về các lệnh Matlab dùng trong thiết kế. Tuy nhiên. Bây giờ chúng ta bắt đầu với bộ điều khiển dòng (vòng lặp trong) Ở đây ta chưa cần quan tâm đến tốc độ vội. Ta khai báo khối matlab code bằng lệnh . Phương pháp thiết kế đơn giản.Thiết kế bằng Matlab: Đòi hỏi phải hiểu bài toán.ta vẽ lại sơ đồ điều khiển. nhanh chóng. muốn bằng bao nhiêu cũng được. số thứ tự của các đầu ra của các khối trong hình vuông như hình sau Trong đó khối là khối ta sẽ đặt hàm truyền bằng 1. .yêu cầu thôi.

'in'). Ki = 10. 5. đầu vào của khối DCM có số thứ tự là 3 được nối với đầu ra số 2 của khối nên khi khai báo ma trận ta sẽ phải có dòng: [đầu vào số 3 = đầu ra số 2] Tóm lại. ta khai báo ma trận matlab code 1.{'ia'. 6. sys1 = tf(1. 3 2 0]. Sau đó sử dụng lệnh --append-. Kp = 100. numpid = [Kp Ki]. 4. B_m. Vậy nên khi khai báo ma trận ta sẽ phải có dòng: [đầu vào số 2 = đầu ra số 1 . 'ei'. C_m. nó là hiệu của đầu ra số 1 của khối và đầu ra số 3 của DCM.'uaref'). sys3 = ss(A_m. {'ua'. 'TL'}. sys2. 'inputname'. D_m. 1. 7. Tiếp theo ta phải khai báo các điểm nối của các khâu. 'outputname'. 'inputname'. 'outputname'. Kd = 1. khai báo như sau: matlab code 1. đầu vào của khối là có số thứ tự là 2. Với khối điều khiển PID thì tạm thời ta chỉ dùng PI và khai báo như sau: matlab code 1. 'n'}). 2.để báo cho Matlab biết các khối cần kết hợp và thứ tự của chúng như sau: matlab code 1. sys = append(sys1. Q = [2 1 -3 2. Nếu các bạn để ý sẽ thấy. 'inputname'.1. 3.đầu ra số 3] Tương tự. Vậy như sau: . sys3). 8. denpid = [1 0]. sys2 = tf(numpid. . denpid. Cuối cùng là mô hình động cơ.

. logspace(-1. 1). 14. Đầu vào là dòng điện đặt ra là dòng điện thực phần ứng và tốc độ .Q. figure(3). grid on.i_a'. 10. 2).500)). 6. 'i_a^{ref} . title('Bieu do Bode .. -0. tc. 4.m .'r--'. đầu Có thể download m-file này tại đây.25]). Bây giờ ta có thể vẽ thử đồ thị Bode và step như sau: matlab code 1. 0. 11. inputs = [1 4]. 'i_a^{ref} . tc. legend('i_a^{ref} . 3). outputs = [3 4]. 1. yc(:. 2).'k--'). 2.n'. 1. 0. 5. legend('i_a^{ref} . 2).2. 'T_L . 16. 2.1). 13. sysc(2.n'.. sysc(2.05). title('Dap ung buoc nhay cua vong lap dieu khien dong'). yc(:. plot(tc. tc] = step(sysc.1). 15. bodemag(sysc(1. grid on. 'T_L .001..i_a'.'g--'. 9.'g--'.. yc(:.'m--'. 7.'b--'. sysc = connect(sys. figure(4). axis([0.2).n'.. 2. (vì ) và mômen tải .outputs). 1).i_a'. 'T_L .'r--'.i_a'. Cuối cùng là dùng lệnh connnect: matlab code 1.Bây giờ khai báo các đầu vào và đầu ra của hệ sau khi đã nối với nhau: matlab code 1. yc(:. 'T_L .inputs.Dieu khien dong tuong tu').n'. tc. sysc(1. 1. 2. DCMC001.2). 3. 12.5. Đến đây ta đã có được mô hình không gian trạng thái tổng hợp của hệ kín gồm cả bộ điều khiển và đối tượng điều khiển. 8. [yc.'b-'.

Hình 3: Biểu đồ Bode điều khiển dòng tương tự Hình 4: Đáp ứng bước nhảy vòng lặp điều khiển dòng Bây giờ là lúc ta cần phân tích các đáp ứng thu được. Từ đó có thể đưa ra một số kết luận sơ bộ về việc chọn các hệ số và . .

05). Vì vậy: . Khi đó lệnh dùng là matlab code 1.Giá trị 40 trên trục tung ứng với . vẽ ở figure(1) trong m-file) .. tc] để vẽ như sau matlab code 1.(hệ kín với bộ điều chỉnh dòng). chẳng hạn -hekindcd.inputs.outputs). nếu gọi là biên độ của tín hiệu đầu ra thì giá trị ghi trên trục tung là .Để đỡ nhầm lẫn ta có thể thay sysc bằng một cái tên khác. Lưu ý rằng đối với biểu đồ Bode thì trục tung biểu thị cho logarit của biên độ. [yc. 0. Sau đó tính [yc..Giá trị 20 trên trục tung ứng với . hekindcd = connect(sys.Q. Cụ thể.Giá trị 0 trên trục tung ứng với . tc] = step(hekindcd. Bây giờ ta quay lại từ biểu đồ Bode của mô hình DCM (hệ hở.

ta có thể nhận xét sơ bộ là ta phải dùng một bộ điều khiển có hệ số khuyếch đại rất lớn để có thể điều khiển được đầu ra bám theo giá trị đặt đầu vào. Chính vì thế mà ta sẽ thử tăng đến 10.Hãy chú ý đến đường màu đỏ. Thế còn khi dao động nhỏ.000 và đến 100. Nghĩa là. Lưu ý rằng tần số khoảng là lúc đường đặc tính tần số biên độ bắt đầu đi xuống rất nhanh và đó chính là Bandwidth hay dải thông tần của hệ. Rõ ràng là trong khoảng tần số từ đến khoảng thì hay . hay nói cách khác rất nhanh. Nghĩa là khi dao động với tần số khoảng đó. Nghĩa là . nếu tần số đầu vào của lớn hơn tần số này thì biên độ của đầu ra giảm xuống rất nhanh. Hay Tóm lại. Còn lại ngoài khoảng tần số đó thì không điều khiển được. thể hiện quan hệ giữa (chính là điện áp cần có để sinh ra dòng ) và . Điều này có nghĩa là ảnh hưởng của đối với là rất yếu. Khi đó đáp ứng tần số của nó như sau: . Ví dụ khi ta đặt một giá trị cố định (tần số bằng 0) thì giá trị biên độ có khi chỉ khoảng -100dB. Bạn có nhận xét gì trong trường hợp này không? Bạn thấy biên độ của nó thế nào? 2. không thay đổi hoặc thay đổi nhanh (tần số cao) thì biên độ giảm rất nhanh. Phân tích chất lượng Giá trị biên độ ứng với tần số đầu vào khoảng hơn 200 rad/s. Trong thực tế thì ta mong muốn có dạng đường thằng nằm trùng với đường hay trong suốt dải tần số từ 0 đến để cho đầu ra bám theo đầu vào (vì hàm truyền bằng ). Bây giờ ta xem qua điều gì xảy ra cho ta với bộ điều khiển thiết kế như trên (ứng với ).

áp dụng cho vòng điều khiển dòng bên trong. Như đã nói trên. vòng điều khiển này phải có đáp ứng thật nhanh. có trường hợp phải dùng . Đây mới chỉ là các nhận xét sơ bộ. Trong trường hợp này nó vào khoảng rad/s và do Chu kỳ vào khoảng Ta còn phải thiết kế mạch vòng điều chỉnh tốc độ nữa. 3. Mạch vòng này có Bandwitdh chậm hơn nhiều vì tốc độ cơ không thể nhanh như điện được.mdl Đáp ứng đầu ra . Mô phỏng bộ điều khiển PID tương tự Trước tiên là với bộ tham số: Sơ đồ mô phỏng download ở đây: DCMCC001.Trong thực tế.

Còn đây là với bộ tham số: Đáp ứng đầu ra .Như vậy là tín hiệu ra không bám theo tín hiệu vào.

Điều chỉnh tốc độ Để tổng hợp bộ điều khiển thì dùng sơ đồ kết nối sau . 4.Đầu ra đã bám tốt theo đầu vào.

20. C_m.500)). 'T_L .{'ia'. CMMApp = append(Wc. 23. Phi = 0. G_m(2. 13.'m--'.Còn đây là đoạn chương trình matlab code 1. 'ec'. B_m.G_m(2. D_m = [0 0. 17. 30.'r--'. A_m = [-Ra/La -Ke*Phi/La. 7. La = 0. 'outputname'. 38. 6. title('Bieu do Bode vong ho'). 2. 22. B_m.2). 0 -1/2/pi/J].2. 27.'g--'. 12. Kpc = 2500. 5.n'. Ra = 0. G_m = ss(A_m.012. {'ua'. DCM = ss(A_m.I_a'.004. C_m. logspace(-1. 3 2 0].5. 40. 33. 21. minfo(G_m) 15. 14. 4. 29. 0 1]. Kdc = 1. Wc = tf(1. numpidc = [Kpc Kic]. 37. Kcc = tf(numpidc. Ke = 2*pi*Km. 24. 18. 3). denpidc. C_m = [1 0. grid on. 'inputname'.2). 39. 'inputname'. 'U_a . 9. 16. figure(2). 19. 34. outputsc). Qc. Km = 38. D_m).'uaref'). Qc = [2 1 -3 36. 'outputname'. 41. 28.'b--'.25. 'T_L . DCM). 26. Km*Phi/2/pi/J 0]. Kcc. CCMDL = connect(CMMApp. legend('U_a . 10. .G_m(1. 43. B_m = [1/La 0. outputsc = [3 4]. inputsc.04. 31. figure(1). 42. inputsc = [1 4]. denpidc = [1 0].1). 32. 1.n'. 3. 'in'). 'n'}). Kic = 5. 8.I_a'.1). bodemag(G_m(1. 11. D_m. 0 0]. 'inputname'. 'TL'}. 25. J = 0. 35.

75. DCMC003. 'n'}).i_a'. 63.2). 'inputname'. 85. 64. outputsn). 55. Kdn = 1.'g--'. 65. CCMDL(1. legend('i_a^{ref} . 'outputname'. grid on. 45.5.. 60.{'ia'. CCMDLB. [CCMDLA. denpidn = [1 0]. 62. Kn.. figure(5). Kpn = 0. CCMDLC.i_a'. inputsn. 68. 77.1). Qn.'b--'.44. Kn = tf(numpidn. CCMDLB.1). 'n_{ref} .Dieu khien toc do'). CCMDLS = ss(CCMDLA. Qn = [2 1 -4 71. 'en'. title('Bieu do Bode . CCMDL(2. 83. 67. 'i_a^{ref} . 3. 'outputname'..2). 61. SCMDL = connect(SCMDLApp.'r--'. 53. CCMDL(2. 'nr'). 'inputname'.. step(SCMDL). 79. SCMDL(2.m Các đáp ứng của hệ thống đã thiết kế .15.'iaref').. 47.Dieu khien dong tuong tu').'g--'..9. grid on. {'ui'. Wn = tf(1. legend('n_{ref} .1). 500)). 'TL . CCMDLD.'m--'.500)).i_a'. grid on.n'. 59. 48.. SCMDLApp = append(Wn. 78. 72.n'. step(CCMDL).'b--'. CCMDLS). 52. CCMDLC. inputsn = [1 4].'m--'. 57. 87.. 'T_L . logspace(-2. title('Bieu do Bode . 46. 50. 1). 49. figure(4). figure(3). 58. bodemag(SCMDL(2. 82. numpidn = [Kpn Kin]. 70. 'T_L . 84.i_a'. 51. SCMDL(1. CCMDLD] = ssdata(CCMDL). 69. bodemag(CCMDL(1. 86. grid on. Download file này ở đây. logspace(0. 3 2 0]. 66..2). 1. 'inputname'.n'.1). 56.n'. 76.2). outputsn = [3 4]. 'TL'}. 80. 81. 73. 54. denpidn. 'T_L . Kin = 7. 74. SCMDL(1. 3).'r--'.

.

.

mdl Các kết quả mô phỏng không tải.5. dòng điện tăng lên trong quá trình khởi động rồi trở về 0. DCMCC003. Mô phỏng hệ điều khiển với hai mạch vòng Mô phỏng hệ điều khiển với hai mạch vòng. Mô hình mô phỏng download ở đây. .

Các kết quả mô phỏng có tải .

Đáp ứng của hệ khi tải thay đổi plot_DCMC. tín hiệu yêu cầu tăng này sẽ được chuyển .m Trên các đồ thị mô phỏng đã thể hiện rất rõ ảnh hưởng của tải đến các đáp ứng của hệ thống. Qua bộ điều khiển dòng. Khi tải tăng thì nếu không điều chỉnh gì thì tốc độ động cơ sẽ bị giảm xuống. Nhưng do có bộ điều chỉnh tốc độ nên nó sẽ ra lệnh tăng dòng lên để sinh ra thêm lực bù lại tác động của tải.Để vẽ các hình sau khi mô phỏng thì dùng file này.

. còn bộ điều khiển tốc độ thì kiểm tra sự sai khác về tốc độ như thể hiện ở hình dưới đây (ở đây ta còn chưa đề cập đến ảnh hưởng trực tiếp của mômen đối với dòng điện theo hàm truyền từ đến ). Bộ điều khiển dòng sẽ liên tục theo dõi xem dòng đã đạt được mức yêu cầu chưa. Phải nói rằng các bộ điều khiển đã đáp ứng rất tốt yêu cầu đặt ra và rất giống với thực tế. Khi mô phỏng ta có thể thay đổi tải để thấy dòng điện thay đổi như thế nào.thành điện áp (tăng) đặt lên phần ứng. trong khi tốc độ vẫn giữ nguyên.

You're Reading a Free Preview

Tải về
scribd
/*********** DO NOT ALTER ANYTHING BELOW THIS LINE ! ************/ var s_code=s.t();if(s_code)document.write(s_code)//-->