Các loại động cơ một chiều pot

58 360 0
Các loại động cơ một chiều pot

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

Thông tin tài liệu

 Các loại động cơ một chiều Động cơ một chiều được ứng dụng rộng rãi trong rất nhiều lĩnh vực. Các đề tài về thiết kế bộ điều khiển cho động cơ một chiều cũng được đề cập rất nhiều trong các sách, báo, tạp chí và trên Internet. Trong nhiều tài liệu, bài toán điều khiển động cơ điện một chiều thường được dùng để minh họa cho các ví dụ thiết kế vì tính đơn giản và khá thiết thực. Mô hình toán động cơ điện một chiều khá đơn giản mà lại có thể minh họa bài toán điều khiển với nhiều mạch vòng. Tài liệu này cũng không nằm ngoài mục đích kể trên. Chúng ta sẽ áp dụng lý thuyết điều khiển cơ bản theo từng bước một thông qua bài toán điều khiển tốc độ động cơ một chiều. Công cụ Matlab/Simulink được sử dụng trong thiết kế vừa giúp chúng ta nhanh chóng tìm ra được mô hình cần thiết nhờ các hàm toán học mạnh mẽ của Matlab vừa minh họa cho các lệnh của Matlab thông qua Control system toolbox. Với mục tiêu là không những có thể giải quyết một cách thấu đáo bài toán điều khiển tốc độ động cơ một chiều trên không gian trạng thái mà còn thông qua đó làm sáng tỏ thêm phần lý thuyết cơ bản trong một ứng dụng cụ thể. Chính vì lý do đó nên phần phân tích và thiết kế nói chung sẽ được thực hiện nhiều trên nền các lệnh của Matlab. Đồng thời phần Simulink cũng được sử dụng một cách thích hợp để kiểm chứng phần lý thuyết. Do bài toán điều khiển tốc độ động cơ một chiều có thể được mở rộng ra, sử dụng nhiều loại điều khiển khác nhau như PID tương tự, PID số, điều khiển theo phương pháp đặt cực, quan sát trạng thái, điều khiển tối ưu, LQG nên không thể hoàn thành sớm ngay được tất cả các phần theo mong muốn. Do đó tài liệu này sẽ được cập nhật, sửa chữa và bổ sung thường xuyên. Thậm chí cả cấu trúc của tài liệu cũng sẽ được thay đổi cho phù hợp. 1. Mô hình hóa và khảo sát các đặc tính của động cơ một chiều 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 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 (1) - 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: (2) Hệ phương trình này có hai 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 của tải . Giả sử các biến trạng thái 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ó (3) Hay dưới dạng ngắn gọn (4) Trong đó (5) (6) (7) (8) Biến trạng thái , tín hiệu vào . 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: 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. figure (1); 2. step(G_m); 3. 4. figure (2); 5. plot (eig(G_m),'r*'); 6. grid on; 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, mô hình của DCM có thể được vẽ như sau Như vậy, nó là một hệ hai đầu vào, hai đầu ra. Đầu vào thứ nhất là điện áp phần ứng U_a, đầu vào thứ hai là mômen tải T_L, đầu ra thứ nhất là dòng điện phần ứng I_a và đầu ra thứ hai chính là tốc độ n. Trong cú pháp của biểu đồ Bode bodemag(G_m(1,1),'r',G_m(1,2),'b', G_m(2,1),'g',G_m(2,2),'m', logspace(- 1,5,500)); thì: - G_m là mô hình trạng thái của đối tượng. - Viết G_m(out, in) nghĩa là biểu đồ Bode được vẽ cho đáp ứng của đầu ra out đối với đầu vào in Như vậy G_m(2,1) là đáp ứng đầu ra số 2 (tốc độ n) đối với đầu vào số 1 (điện áp phần ứng U_a). - Các chữ cái r , b , g , m là chỉ màu của các đường vẽ. - Lệnh logspace(-1,5,500) để biểu diễn trục tần số theo Logarit từ 10^{-1} đến 10^5 với 500 điểm vẽ. Ý nghĩa của biểu đồ Bode Biểu đồ Bode phản ánh mối quan hệ giữa tần số - 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. Ví dụ, bodemag(G_m(2,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. 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_a ở đầu vào số 1. Đó chính là ý nghĩa của biểu đồ Bode. Nó có vai trò rất quan trọng trong việc khảo sát hệ. matlab code 1. Ra = 0.25; 2. La = 0.004; 3. Phi = 0.04; 4. J = 0.012; 5. Km = 38.2; 6. Ke = 2*pi*Km; 7. 8. A_m = [-Ra/La -Ke*Phi/La; Km*Phi/2/pi/J 0]; 9. B_m = [1/La 0; 0 -1/2/pi/J]; 10. C_m = [1 0; 0 1]; 11. D_m = [0 0; 0 0]; 12. 13. G_m = ss(A_m, B_m, C_m, D_m); 14. minfo(G_m) 15. 16. figure(1); 17. bodemag(G_m(1,1),'r ',G_m(1,2),'b ', logspace(-1,5,500)); 18. title('Bieu do bien do Bode - He tuong tu'); 19. legend('Ua - n', 'T_L - n', 3); 20. grid on, 21. 22. T = 0.0025; %SamplingTime 23. 24. U = eye(2); 25. 26. A_md = U + A_m*T; 27. B_md = B_m*T; 28. C_md = C_m; 29. D_md = D_m; 30. 31. G_md = ss(A_md, B_md, C_md, D_md); 32. minfo(G_md); 33. 34. figure(2); 35. bodemag(G_md(1,1),'r ',G_md(1,2),'b ', logspace(-1,5,500)); 36. title('Bieu do bien do Bode - He roi rac'); 37. legend('Ua - n', 'T_L - n', 3); 38. grid on 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 T_L=0) dựa trên mô hình vừa xây dựng như sau 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 , , và như hình sau Model { Name "dcmdl" Version 6.2 MdlSubVersion 0 GraphicalInterface { NumRootInports 0 NumRootOutports 0 ParameterArgumentNames "" ComputedModelVersion "1.50" NumModelReferences 0 NumTestPointedSignals 0 } SavedCharacterEncoding "ibm-5348_P100-1997" SaveDefaultBlockParams on SampleTimeColors off LibraryLinkDisplay "none" WideLines off ShowLineDimensions on ShowPortDataTypes off ShowLoopsOnError on IgnoreBidirectionalLines off ShowStorageClass off ShowTestPointIcons on ShowViewerIcons on SortedOrder off ExecutionContextIcon off ShowLinearizationAnnotations on RecordCoverage off CovPath "/" CovSaveName "covdata" CovMetricSettings "dw" CovNameIncrementing off CovHtmlReporting on covSaveCumulativeToWorkspaceVar on CovSaveSingleToWorkspaceVar on CovCumulativeVarName "covCumulativeData" CovCumulativeReport off CovReportOnPause on ScopeRefreshTime 0.035000 OverrideScopeRefreshTime on DisableAllScopes off DataTypeOverride "UseLocalSettings" MinMaxOverflowLogging "UseLocalSettings" MinMaxOverflowArchiveMode "Overwrite" BlockNameDataTip off BlockParametersDataTip off BlockDescriptionStringDataTip off ToolBar on StatusBar on BrowserShowLibraryLinks off BrowserLookUnderMasks off Created "Thu Sep 29 12:32:07 2005" UpdateHistory "UpdateHistoryNever" ModifiedByFormat "%<Auto>" LastModifiedBy "hnguyentien" ModifiedDateFormat "%<Auto>" LastModifiedDate "Thu Mar 16 15:03:08 2006" ModelVersionFormat "1.%<AutoIncrement:50>" ConfigurationManager "None" LinearizationMsg "none" Profile off ParamWorkspaceSource "MATLABWorkspace" AccelSystemTargetFile "accel.tlc" AccelTemplateMakefile "accel_default_tmf" AccelMakeCommand "make_rtw" TryForcingSFcnDF off ExtModeBatchMode off ExtModeEnableFloating on ExtModeTrigType "manual" ExtModeTrigMode "normal" ExtModeTrigPort "1" ExtModeTrigElement "any" ExtModeTrigDuration 1000 ExtModeTrigDurationFloating "auto" ExtModeTrigHoldOff 0 ExtModeTrigDelay 0 ExtModeTrigDirection "rising" ExtModeTrigLevel 0 ExtModeArchiveMode "off" ExtModeAutoIncOneShot off ExtModeIncDirWhenArm off ExtModeAddSuffixToVar off ExtModeWriteAllDataToWs off ExtModeArmWhenConnect on ExtModeSkipDownloadWhenConnect off ExtModeLogAll on ExtModeAutoUpdateStatusClock on BufferReuse on StrictBusMsg "None" ProdHWDeviceType "32-bit Generic" ShowModelReferenceBlockVersion off ShowModelReferenceBlockIO off [...]... như sau: sysc = connect(sys,Q,inputs,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 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 Bắt đầu với mô tả sơ đồ khối, ta có thể sử dụng các lệnh append và connect để xây dựng một mô hình không gian trạng thái của hệ thống... 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ế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 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, 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 đó Xây dựng hệ thống kín Trong... trí) của động cơ Tín hiệu đặt là tốc độ , 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 - Từ tốc độ, bộ điều khiển tốc độ phải tính ra dòng cần thiết để tạo ra momen quay cho động cơ, dòng này chính là - Với dòng điện yêu cầu như trê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... 'ei', 'outputname','uaref'); Cuối cùng là mô hình động cơ, khai báo như sau: sys3 = ss(A_m, B_m, C_m, D_m, 'inputname', {'ua', 'TL'}, 'outputname',{'ia', 'n'}); Sau đó sử dụng lệnh append để 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: sys = append(sys1, sys2, sys3); Tiếp theo ta phải khai báo các điểm nối của các khâu Nếu các bạn để ý sẽ thấy, đầu vào của khối là có số thứ... Matlab: Đòi hỏi phải hiểu bài toán, 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 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ế 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 Tuy nhiên, khi làm thì ta nên kết hợp cả... nhau) Cách chúng ta đang thực hiện ở đây là thiết kế từng mạch vòng một, từ trong ra ngoài Thông thường, mạch vòng trong cùng bao giờ cũng phải có đáp ứng nhanh nhất, càng ra ngoài thì tốc độ đáp ứng càng giảm dần 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, nó phản ánh đúng các trạng thái bên trong của đối tượng (ví dụ vui, buồn, giận dữ ) Các biến... muốn bằng bao nhiêu cũng được, 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 ta vẽ lại sơ đồ điều khiển, trong đó đánh số thứ tự các đầu vào của các khối trong hình tròn, 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 Khối này được vào để tiện khai báo đầu vào ra cho cả hệ mà lệnh connect yêu... n', 2); 15 axis([0, 0.001, -0.2, 1.25]); 16 grid on; 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à Để đỡ nhầm lẫn ta có thể thay sysc bằng một cái tên khác, chẳng hạn -hekindcd(hệ kín với bộ điều chỉnh dòng) Khi đó lệnh dùng là hekindcd = connect(sys,Q,inputs,outputs); Sau đó... u_a dao động với tần số khoảng đó Thế còn khi u_a dao động nhỏ, không thay đổi hoặc thay đổi nhanh (tần số cao) thì biên độ giảm rất nhanh Điều này có nghĩa là ảnh hưởng của u_a đối với i_a là rất yếu Ví dụ khi ta đặt một giá trị u_a cố định (tần số bằng 0) thì giá trị biên độ L có khi chỉ khoảng -100dB Hay 20lgL = -100dB \Rightarrow L = 10^{-5} Tóm lại, ta có thể nhận xét sơ bộ là ta phải dùng một bộ... "Gain" 1 "Gain" 1 "i-n" 2 2 Phương pháp thiết kế 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 Như vậy là ta cần phải có hai bộ điều khiển PID cho hai mạch vòng Tuy nhiên, ta có thể thiết kế bộ điều khiển cho mạch vòng dòng điện trước, sơ đồ như sau: Còn để nối các khối với nhau thì ta có thể dùng lệnh >> help .  Các loại động cơ một chiều Động cơ một chiều được ứng dụng rộng rãi trong rất nhiều lĩnh vực. Các đề tài về thiết kế bộ điều khiển cho động cơ một chiều cũng được đề cập rất nhiều trong các. khảo sát các đặc tính của động cơ một chiều 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. liệu, bài toán điều khiển động cơ điện một chiều thường được dùng để minh họa cho các ví dụ thiết kế vì tính đơn giản và khá thiết thực. Mô hình toán động cơ điện một chiều khá đơn giản mà lại

Ngày đăng: 08/08/2014, 22:20

Tài liệu cùng người dùng

Tài liệu liên quan