Đăng ký Đăng nhập
Trang chủ Www.tinhgiac.com hiện thực hệ thống điều khiển tốc độ và vị trí động cơ một chiề...

Tài liệu Www.tinhgiac.com hiện thực hệ thống điều khiển tốc độ và vị trí động cơ một chiều

.PDF
13
213
73

Mô tả:

1 Điều khiển tốc độ động cơ một chiều loại nhỏ 1. Sơ đồ khối Sơ đồ khối cho điều khiển tốc độ của động cơ một chiều loại nhỏ sử dụng vi điều khiển P89C664: (hình 1) Yêu cầu là sử dụng vi điều khiển để điều khiển tốc độ động cơ DC theo chiều thuận và ngược và hiện thực ở hai tốc độ (nhanh và chậm). Công tắc (nút nhấn) được dung tạo ra hai tốc độ và tác động quay ngược. Sơ đồ khối được minh họa ở hình 1, sử dụng vi điều khiển P89C664. Phương pháp điều khiển tốc độ là bằng điều rộng xung (PWM) dung P89C664. Đặt chân 7 P1.5=’0’ (logic 0) và áp dụng PWM vào chân P1.4 (chân 6) làm cho động cơ quay thuận. Việc điều khiển quay thuận hay nghịch đạt được bằng thiết kế cầu của mạch điều khiển động cơ. Nếu nút nhấn không được nhấn thì động cơ vẫn ổn định. Giả sử nút nhấn 1 được thiết lập PWM ở tỉ số 6:4 và nút 2 được thiết lập PWm với tỉ số 9:1. PWM = Ton Ton = T Ton + Toff P89C664 Động cơ chạy Mạch lái động cơ Động cơ Ngược chiều Tốc độ 1 Tốc độ 2 Ngược chiều Nút nhấn 1 Nút nhấn 2 Nút nhấn 3 Hình 1 Tỉ số 6:4 có chu kì tổng T=6+4=10 và 6 chu kì ở mức cao (1), 4 ở mức thấp (0). Tỉ số 9:1 có T=10, và 9 ở mức 1, và 1 ở mức 0. Thanh ghi capture CCAP1L (low) và CCAP1H(high) là 8 bit và có 256 (28) mức tăng. mức tăng/chu kì=256/10=25,6 vì vậy tỉ số 6:4 =154 mức tăng ở logic 1, 102 mức ở logic 0. Tỉ số 9:1=230 mức ở logic 1 và 26 mức ở logic 0. Hướng dẫn thí nghiệmđiều khiển tự động (bổ sung)-©Huỳnh Minh Ngọc 2 Hình 2: Mạch tạo mức logic 0/1 Vi điều khiển P89C664 có 64 KB Bộ nhớ chương trình Flash, 1 KB bộ nhớ Ram trên chip, 3 timer-To, T1, T2, dãy bộ đếm lập trình được (PCA), bộ thu phát bất đồng bộ đa năng (UART), giao tiếp I2C. P89C664 có 44 chân dạng PLCC. VCC (chân 44), Vss(chân 22), T0/CEX3 (P3.4), T1/CEX4(P3.5), T2 (P1.0), P.14(CEX1), P1.5(CEX2), P3.0 (RxD), P3.1 (TxD), P3.2 (/INT0), P3.3 (/INT1). 2. Điều khiển động cơ: Sơ đồ cầu được minh họa ở hình 3. Mạch tận dụng cặp transistor bổ phụ NPN/PNP T2/T3 và T4/T5. Động cơ dung không quá 0,5 A trong khi diode tạo điện áp dẫn gây bởi dòng chuuyển mạch nhanh. Hướng dẫn thí nghiệmđiều khiển tự động (bổ sung)-©Huỳnh Minh Ngọc 3 Hình 3: Mạch điều khiển cầu sử dụng ngõ vào từ chân P1.4 và P1.5 để điều khiển tốc độ động cơ một chiều và hướng quay. Động cơ ngừng (off) khi P1.4 và P1.5 ở logic 0, cực C của T1 và T6 ở mức cao. Vì vậy T2 và T4 sẽ dẫn (on) trong khi T3 và T5 tắt (off)(không dẫn) và không có dòng dẫn qua động cơ giữa 5V và đất (GND, mass). Động cơ quay(on): khi P1.5=’0’, cực C của T6 sẽ cao, T4 dẫn và T5 tắt. Nếu tín hiệu PWM áp dụng vào P1.4 thì khi PWM ở logic 1, T1 dẫn, cực C của T1 ở mức thấp; vì vậy T2 tắt và T3 dẫn. Do đó dòng điện dẫn qua đất thong qua transistor T3, động cơ Dc và qua transistor T4 lên nguồn +5V. Động cơ quay ngược(reverse): Nếu P1.4=’0’ (logic 0) thì T2 dẫn và T3 tắt. Nếu tín hiệu PWM áp dụng vào P1.5 thì khi PWM là logic cao (1), transistor T4 tắt và T5 dẫn, tạo ra dòng điện dẫn ngược thong qua T5, động cơ và T2. 5.6.3. Hoạch định chương trình: Chương trình điều khiển động cơ theo một hướng từ chân P1.4 dùng phương pháp điều rộng xung, được cấu trúc từ dãy đếm lập trình được (PCA). Quay ngược đạt được bằng cách áp đặt PWM ở chân P1.5. Hai tốc độ là : nhanh (9:1) và chậm (6:4). Nghịch đảo và tốc độ được chọn từ nút nhấn on/off tích cực mức thấp (logic 0). Chương trình kiểm tra nút nhấn bằng hành động ngắt /INT0 mức thấp ở chân P3.2. Chương trình sau khai báo vectơ ngắt có địa chỉ ở 0003H và chỉ tới chuỗi đuợc chọn ngắt CHECK. Org 03h; địa chỉ ngắt ngoài 0 Sjmp check; nhảy tới chương trình phục vụ ngắt Khởi động (START) CFH=1100 1111 b và điều này làm cho chân 4 và 5 của port 1 là bằng zero và vì vậy hành động đầu tiên của chương trình là tắt động cơ. SETB IT0 bật ngắt xảy ra trên chuyển từ mức cao sang thấp (cạnh xuống) của hành động nút nhấn trên chân 2 của port 3 (/INT0). MOV IEN0,#81H đặt số nhị phân 1000 0001 vào thanh ghi cho phép ngắt IE IEN0 để cho phép hành động của /INT0. Kiểm tra (CHECK) Các nút nhấn của port 1 chân số 0 (quay ngược), chân 1(6:4 tốc độ 1), chân 2(9:1 tốc độ 2) là bình thường ở logic 1. Khi nút nhấn được nhấn, chúng chuyển thành logic 0 và lệnh JNB (jump if not bit) trở nên tích cực và gửi chương trình tới chương trình phục vụ tương ứng. Tốc độ (SPEED) Với tốc độ 1 và tốc độ 2, hành động PWM là thong qua chân 4 trên port 1 khi cho quay ngược, tốc độ 1R và tốc độ 2R, hành động PWM là thong qua chân 5 của port 1. Như vậy hành động của hai dòng chương trình đầu tiên của bốn chương trình con này là không cho phép hành động PWM trên chân đối diện. Chương trình: Sinh viên làm như một bài tập. Hướng dẫn thí nghiệmđiều khiển tự động (bổ sung)-©Huỳnh Minh Ngọc 4 Bài tập: Viết chương trình hợp ngữ điều khiển động cơ DC ở trên dung Keil µVision 2 hay TopView. Mô phỏng: dung Proteus. Chương trình: $include (REG66x.inc) ; địa chỉ SFR org 0 ; địa chỉ reset sjmp START ;nhảy tới START org 03h ; địa chỉ ngắt ngoài 0 sjmp CHECK ;nhảy tới chương trình con ngắt org 40h ; địa chỉ bắt đầu chương trình START: mov p1,#0CFh ; động cơ lái về zero (0). setb IT0 ;ngắt trên cạnh âm mov IEN0,#81H ; ngắt ngoài 0 INT0 được cho phép STAY: SJMP STAY ;chờ ở đây cho tới khi ngắt xảy ra. CHECK: JNB P1.0, REVERSE; nếu được chọn nhảy tới reverse JNB P1.1, SPEED1 ; nhảy tới tốc độ 1 6:4 JNB P1.2, SPEED2 ; nhảy tới tốc độ 2 9:1 SJMP CHECK ;kiểm tra nút nhấn trở lại SPEED1: ANL CCAPM2,#0FDH; xoá PWM lái trên chân P1.5 CLR P1.5 ; đặt P1.5 về logic 0 ORL CCAPM1,#42H; bật (set) ECOM1 và PWM1(P1.4) MOV CCAP1L,#102; nạp giá trị đếm 6;4 MOV CCAP1H,#102; đếm 6:4 được nạp lại ORL CCON,#40H ; bật CR để bật timer PCA lên RETI ;trở về từ ngắt SPEED2: ANL CCAPM2,#0FDH; xóa PWM lái trên P1.5 CLR P1.5 ; đặt P1.5 về logic 0 ORL CCAPM1,#42H ; bật ECOM1 và PWM1(P1.4) MOV CCAP1L,#26; nạp số đếm 9:1 MOV CCAP1H,#26; số đếm 9:1 được nạp lại ORL CCON,#40H ; bật CR để bật timer PCA lên RETI ;trở về từ ngắt REVERSE: JNB P1.1,SPEED1R; nhảy tới quay ngược speed1 JNB P1.2, SPEED2R; nhảy tới quay ngược speed2 SJMP CHECK ;kiểm tra nút nhấn ngõ vào SPEED1R: ANL CCAPM1,#0FDH; xoá PWM lái trên P1.4 CLR P1.4 ; đặt P1.4 về logic 0 ORL CCAPM2,#42H ; bật ECOM2 và PWM2 (P1.5) MOV CCAP2L,#102; nạp giá trị đếm 6;4 MOV CCAP2H,#102; đếm 6: 4 được nạp lại ORL CCON,#40H ;bật CR để bật timer PCA lên RETI ;trở về từ ngắt SPEED2R: ANL CCAPM1,#0FDH; xóa PWM lái trên P1.4 Hướng dẫn thí nghiệmđiều khiển tự động (bổ sung)-©Huỳnh Minh Ngọc 5 CLR P1.4 ; đặt P1.4 về logic 0 ORL CCAPM2,#42H; bật ECOM2 và PWM2 MOV CCAP2L,#26 ; nạp số đếm 9:1 MOV CCAP2H,#26 , đếm 9:1 được nạp lại ORL CCON,#40H ;bật CR để bật timer PCA lên RETI ;trở về từ ngắt END Chương trình dung phần mềm Raisonance. Bạn có thể dung Keil µVision hay TopView. Tham khảo: David Calcutt, Fred Cowan, Hassan Parchizadeh, 8051 Microcontrollers: an Application based introduction, Newnes (Elsevier), 2004. Hướng dẫn thí nghiệmđiều khiển tự động (bổ sung)-©Huỳnh Minh Ngọc 6 Bài 6: Hiện thực hệ thống điều khiển tốc độ và vị trí động cơ một chiều I.Mục tiêu: Khảo sát làm mô hình động cơ dung vi điều khi ểnPIC 16F877A/887 giao tiếp máy tính. Nhận dạng hàm truyền động cơ DC dùng đáp ứng n ấc hệ hở của ZieglerNichols. Điều khiển và thu thập dữ lệu tốc độ và vị trí động cơ theo phương pháp on/off. -Sử dụng chương trình VB6.0, và chương trình CCS cho PIC. Cảm biến tốc độ l à encoder. II. Cơ sở lý thuyết: 1. Sơ đồ khối điều khiển Khối máy tính Khối Vi điều khiển PIC Khối công suất (cầu H) Khối động cơ DC Khối Encoder Hình – Sơ đồ khối điều khiển Khối máy tính Dùng ngôn ngữ lập trình Visual Basic 6.0 làm phương tiện giao tiếp. Nhiệm vụ của VB6 là: – Tạo giao diện người dùng để giao tiếp với người sử dụng. Trên đó cho phép thay đổi giá trị tốc độ yêu cầu, thay đổi bộ thông số PID, chọn chiều quay của động cơ, vẽ đồ thị biểu diễn đáp ứng của hệ thống. – Thiết lập giao tiếp với khối Vi điều khiển qua cổng nối tiếp RS – 232. – Lấy giá trị đo tốc độ thực tế do khối vi điều khiển truyền về để xử lý. – Từ giá trị đo tốc độ thực tế, thực hiện thuật toán PID xuất giá trị độ rộng xung về khối Vi xử lý để điều khiển. – Xuất giá trị điều khiển chiều quay của động cơ được thiết lập trên giao diện người dùng. Hướng dẫn thí nghiệmđiều khiển tự động (bổ sung)-©Huỳnh Minh Ngọc 7 Khối vi điều khiển Dùng ngôn ngữ lập trình C (CCS C) cho PIC 16F877A/887 để lập trình cho Vi điều khiển PIC. Nhiệm vụ của khối Vi điều khiển là: – Thiết lập giao tiếp với máy tính qua cổng giao tiếp nối tiếp. – Thực hiện thuật toán PID số , sử dụng tính năng điều rộng xung(PWM). – Thực hiện việc lấy tốc độ thực tế của động cơ từ khối encoder và truyền giá trị này về cho khối máy tính để xử lý. Khối công suất Nhiệm vụ của khối này là: – Khuếch đại công suất từ tín hiệu điều khiển do khối vi điều khiển truyền tới để điều khiển động cơ DC. – Cho phép đảo chiều quay của động cơ thông qua cầu H. Khối động cơ DC Khi nhận được xung điều khiển từ khối công suất, động cơ sẽ quay với tốc độ phụ thuộc vào độ rộng của xung truyền tới. Động cơ DC servo có tích hợp sẵn encoder (200 xung). Khối encoder Đo tốc độ của động cơ bằng cách xuất xung liên tục về cho khối Vi điều khiển. Động cơ quay nhanh hay chậm tùy thuộc vào số xung xuất ra trong một khoảng thời gian. Việc định thời gian lấy mẫu được thực hiện từ khối vi điều khiển. 2.Hàm truyền động cơ: Hàm truyền động cơ DC: Động cơ DC là thiết bị truyền động công suất mà phân phối năng lượng ra tải. Động cơ một chiều được mô tả ở hình sau: Hướng dẫn thí nghiệmđiều khiển tự động (bổ sung)-©Huỳnh Minh Ngọc 8 Hình 5.9: Sơ đồ nối dây của động cơ DC Trong đó: Load : tải; Armature: phần ứng, Field: trường; Inertia: mô men quán tính; Friction: ma sát. Từ thong của động cơ tỉ lệ với dòng điện từ, giả sử từ trường không bão hòa: φ = K f if (1) Mô men của động cơ được giả sử là tuyến tính với φ và dòng điện phần ứng ia (armature current) (2) Tm = K1φ .ia (t ) = K 1 K f i f (t )ia (t ) hay Tm (t ) = K m .ia (t ) trong ñoù K1 laø haèng soá tæ leä. Söùc phaûn ñieän ñoäng: Vb = K 1φ .ω dθ (t ) Hay Vb (t ) = K b = K bω (t ) dt Rõ rang từ phương trình (2) để có phần tử tuyến tính, một dòng điện phải là hằng số. Trường hợp ia=Ia dòng điện phần ứng không đổi ta có động cơ được điều khiển bằng dòng từ (field current controlled motor). Xét trường hợp động cơ DC được điều khiển bằng phần ứng (armature controlled DC motor), động cơ sử dụng dòng ia như là biến điều khiển. Phần cảm (stator) dung cuộn dây từ và dòng hay từ trường không đổi. Khi dòng điện từ không đổi được thiết lập trong cuộn dây từ, mô men động cơ là Tm ( s ) = TL ( s) + Td ( s ) (3) Mô men động cơ bằng mô men phân phối cho tải. Quan hệ này được minh họa (3). Trong đó, TL(s) là mô men tải và Td(s) là mô men của nhiễu (theå hieän moâmen ma saùt taûi nhö laø ma saùt Coulomb). Hướng dẫn thí nghiệmđiều khiển tự động (bổ sung)-©Huỳnh Minh Ngọc 9 Tm ( s ) = ( K 1 K f I f ) I a ( s ) = K m I a ( s ) (4) vôùi K m = K1φ : haèng soá moâmen. Khi từ trường không đổi được dung, ta có Tm ( s ) = K m I a ( s ) Mô men tải cho quán tính quay được viết như sau: d 2θ (t ) dθ (t ) +b = Tm (t ) − Td (t ) 2 dt dt TL ( s) = Js 2θ ( s) + bsθ ( s) = Tm ( s ) − Td ( s ) TL (t ) = J (8) trong đó Km là hàm của từ tính của vật liệu từ. Dòng điện phần ứng có quan hệ với điện áp vào đặt vào phần ứng (armature) Va(s) ( goïi laø U): di a (t ) + Vb (t ) dt Va ( s ) = Ra I a ( s ) + La sI a ( s ) + Vb ( s ) Va (t ) = Ra ia (t ) + La (5) trong đó Ra là điện trở phần ứng La là điện cảm phần ứng. Va là điện áp vào đặt vào phần ứng. Vb(s) (goïi laø E) là điện áp điện động ngược (sức phản điện động phaàn öùng) và tỉ lệ với tốc độ động cơ. Vb ( s) = K bϖ ( s) (6) và dòng điện phần ứng I a (s) = Va ( s ) − K bϖ ( s) ( R a + La s ) (7) Quan hệ cho động cơ DC được điều khiển bằng phần ứng được minh họa ở hình sau: Sử dụng phương trình (4), (7) và (8) hay sơ đồ khối và cho Td(s)=0, ta giải và đạt được hàm truyền sau: G ( s) = = θ (s) Va ( s ) = Km s[( Ra + La s )( Js + b) + K b K m ] Km (9) . s ( s 2 + 2ξϖ n s + ϖ n2 ) Km θ (s) hay G ( s) = = 3 Va ( s ) La Js + ( Ra J + bLa ) s 2 + ( K b K m + Ra b) s Phöông trình traïng thaùi: khi coù nhieãu Td(t)  dia (t )  − Ra  dt   La  dϖ   K  = m  dt   J  dθ   0  dt    Kb La b − J 1 −  0 1  0  i ( t )   a   La   1     0 ϖ (t ) +  0 Va (t ) + − Td (t ) (10)   0J  0  θ (t )   0          Hướng dẫn thí nghiệmđiều khiển tự động (bổ sung)-©Huỳnh Minh Ngọc 10 trong ñoù Td(t) ñöôïc xem laø ngoõ vaøo thöù hai trong phöông trình traïng thaùi. Khi khoâng coù nhieãu Td(t), Phöông trình traïng thaùi:  dia (t )  − Ra  dt   La  dϖ   K  = m  dt   J  dθ   0  dt     0 1 i ( t )   a   La    0 ϖ (t ) +  0 Va (t ) (11)    0 0  θ (t )        Tuy nhiên, đối với nhiều động cơ DC, haèng soá thôøi gian ñieän töø cuûa ñoäng cô (hằng số thời gian của phần ứng) τ a = La / Ra bị bỏ qua nên ta có G ( s) = θ (s) Va ( s ) = Kb La b − J 1 − Km [ K /( Ra b + K b K m )] (12) = m s[ Ra ( Js + b) + K b K m ] s (τ 1 s + 1) trong đó hằng số thời gian tương đương τ 1 = Ra J /( Ra b + K b K m ). , coøn goïi laø haèng soá thôøi gian ñieän cô cuûa ñoäng cô.Chú ý là Km bằng Kb (Km=Kb=Ce). Sự bằng nhau này được minh họa bằng cách xem xét hoạt động động cơ ở trạng thái xác lập và cân bằng công suất khi điện trở rotor bị bỏ qua. Armature Va(s)+ Tm(s) Km Ra + sLa - Td(s) - TL(s) + 1 J .s + b ω θ 1 .s Vị trí Vb(s) Kb Hình 5.10 : Sơ đồ khối động cơ một chiều được điều khiển bằng phần ứng. Khi xeùt haøm truyeàn cuûa toác ñoä, ta coù : G ( s) = = ϖ ( s) Va ( s ) = Km [( Ra + La s)( Js + b) + K b K m ] Km ( s 2 + 2ξϖ n s + ϖ n2 ) (13) . vaø khi boû qua τ a = La / Ra thì haøm truyeàn toác ñoä laø: Hướng dẫn thí nghiệmđiều khiển tự động (bổ sung)-©Huỳnh Minh Ngọc 11 G(s) = ϖ ( s) = Va ( s ) [ K m /( Ra b + K b K m )] τ 1s + 1 (14) ñaây laø khaâu quaùn tính baäc nhaát. Khi bỏ qua phản ứng phần ứng, bỏ qua ma sát (b=0) và giả sử các phần tử trong hệ thống là tuyến tính, có các phương trình sau: di dt dϖ − Mc = J dt = Cei U = E + Ri + L M dc M dc (15), (16), (17) vaø (18) E = C eϖ trong đ ó: U : điện áp hai đầu phần ứng. I : dòng điện qua động cơ. R,L: điện trở, t ự cảm mạch điện phần ứng. E, Mdc: s ức điện động, moment quay của động cơ. J: moment quán tính của các phần quay và Mc là moment cản. Ce=Km : haèng soá moâmen Từ phương trình trên , có thể suy ra hàm truyền động cơ như hình sau , cho Mc=0 : U 1R 1 + sL / R - Mc Mdc - I Ce 1 J .s ω E Ce Hình5.11 : Sơ đồ khối động cơ một chiều khi từ thông không đổi. Haøm truyeàn toác ñoä : G ( s) = ϖ ( s) Va ( s ) = Ce La Js + ( Ra J ) s + Ce 2 2 (19) Haøm truyeàn vò trí : G ( s) = θ (s) Va ( s ) = Ce La Js + ( Ra J ) s 2 + Ce 2 .s 3 (20) 3.Đáp ứng nấc hệ hở theo Ziegler-Nichol: Hướng dẫn thí nghiệmđiều khiển tự động (bổ sung)-©Huỳnh Minh Ngọc 12 Xem lý thuyết ở bài 5 Hiện thực hệ thống điều khiển nhiệt độ. 4.Điều khiển on/off: Xem lý thuyết ở bài 5 Hiện thực hệ thống điều khiển nhiệt độ. III. Thí nghiệm 1. Thí nghiệm khảo sát hệ hở : Mục đích : Xác định thông số hàm truyền động cơ từ đồ thị quá trình quá độ hệ hở với đầu vào hàm nấc. Một cách gần đúng, có thể giả thuyết động cơ một chiều có hàm truyền là khâu bậc nhất có hàm truyền như sau : Udk K Ts + 1 wdco Trong đó K : hệ số biểu diễn quan hệ vào ra : K=wdco/Udk. 2.Điều khiển tốc độ theo phương pháp on/off vòng kín: R + e Bộ điều khiển on/off u Động cơ DC - Trong đó: R: tốc độ đặt. C: tốc độ đo được. E:sai lệch= r-c Hướng dẫn thí nghiệmđiều khiển tự động (bổ sung)-©Huỳnh Minh Ngọc c 13 U: tín hiệu điều khiển. 1. Điều khiển vị trí theo phương pháp on/off vòng kín: Trong đó: R: vị trí góc đặt. C: vị trí góc đo được. E:sai lệch= r-c U: tín hiệu điều khiển. IV. Báo cáo kết quả: Sinh viên nộp báo cáo và giảng viên nhận xét, đánh giá. Hướng dẫn thí nghiệmđiều khiển tự động (bổ sung)-©Huỳnh Minh Ngọc
- Xem thêm -

Tài liệu liên quan