Thiết kế mụ hỡnh phần cứng mạch điều khiển

Một phần của tài liệu pid dieu khien dong co (Trang 58)

Chương 2 : Thiết kế bộ điều khiển PID số

2.1 Thiết kế mụ hỡnh phần cứng mạch điều khiển

2.1.1. Yờu cầu thiết kế

Khi thiết kế một kit điều khiển thành phần trung tõm là vi điều khiển để cho phộp cú thể cài đặt nhiều thuật toỏn điều khiển thỡ trước tiờn yờu cầu vi diều khiển phải tớnh toỏn nhanh, dung luợng bộ nhớ lớn hoặc cú thể mở rộng được bộ nhớ với dũng chip Pic mới thỡ cơ bản đỏp ứng yờu cầu này. Bờn cạnh đú kit điều khiển cũng phải cú khả năng giao tiếp với nhiều đối tượng và thiết bị cảm biến khỏc nhau, hiển thị cỏc tham số chế độ hoạt động đồng thời cú khả năng cú thể giao tiếp mỏy tớnh thực hiện chức năng điều khiển giỏm sỏt …Trờn cơ sỏ đú việc thiết kế kit điều khiển trong đồ ỏn thieets kế đảm bảo chức năng:

- Kit cú cỏc đầu vào tương tự theo cỏc chuẩn cụng nghiệp 0-20mA, 4 -20mA, 0-10V và đầu vào đo điện trở, bờn cạnh đú là cỏc đầu vào số cho phộp thu thập cỏc giỏ trị logic số, đếm xung, nhận tớn hiệu ngắt từ bờn ngồi.

- Kit cú cỏc đầu ra tương tự theo cỏc chuẩn cụng nghiệp 0-20mA, 4 -20mA, 0 - 10V, cỏc đầu ra số, bao gồm đầu ra logic số, đầu ra xung cho phộp băm xung hoặc phỏt tần số.

- Kit giao tiếp với mỏy tớnh qua cổng nối tiếp RS 232, cho phộp gửi và nhận dữ liệu với mỏy tớnh.

- Kit cú cỏc phần tử cho phộp hiển thị là LCD hoặc LED .

- Kit cú khối bàn phớm cho phộp nhập một số tham số và chế độ hoạt động. - Kit cú cỏc chõn vào ra cho phộp kết nối một số modul chức năng khỏc… Như vậy mụ hỡnh khối chức năng của kit mạch điều khiển cú dạng:

Cấu tạo của kớt điều khiển : Ở đõy cỏc đầu vào-ra tương tự là cỏc tớn hiệu chuẩn

điều khiển 0-20mA, 4 -20mA, 0-10V cũn cỏc đầu vào ra số là cỏc tớn hiệu logic hoặc xung số. Khối vi điều khiển trung tõm là thành phần quan trọng nhất của kit nú giỏm sỏt thu thập xử lý dữ liệu từ cảm biến và cơ cấu chấp hành để điều khiển truyền thụng nối tiếp với mỏy tớnh qua chuẩn RS232. Bàn phớm và LCD là hai modul tỏc dụng hỗ trợ quỏ trỡnh điều khiển và giỏm sỏt hệ thống hoạt động.

2.1.2. Cỏc khối chức năng trờn kit điều khiển a) Khối vi điều khiển trung tõm a) Khối vi điều khiển trung tõm

Hinh 2.2.Sơ đồ khối vi điều khiển trung tõm

Khối vi điều khiển trung tõm cú nhiệm vụ điều khiển quản lý, giỏm sỏt, điều khiển hoạt động tồn bộ cỏc modul sử dụng trong mạch cú nghĩa là mọi hoạt động trong hệ thống trờn cơ sở diều khiển Pic18F4520. Ngồi ra:

- Vi điều khiển Pic18F4520 sử dụng mạch dao động thạch anh ngồi tần số 10MHz.

- Sử dụng mạch nạp PicKit2 riờng để nạp chương trỡnh cho PIC18F4520

b) Khối giao tiếp mỏy tớnh qua cổng nối tiếp

Hinh 2.4 Khối giao tiếp mỏy tớnh Max232

Cổng nối tiếp của mỏy tớnh là cổng COM( Comunication Port) để giao tiếp dữ liệu hai chiều giữa mỏy tớnh PC và ngoại vi với nhiều ưu điểm . Ngày nay, mỗi mỏy tớnh cỏ nhõn đều cú một hoặc một vài cổng nối tiếp theo chuẩn RS-232 (cổng COM), cú thể sử dụng để kết nối với cỏc thiết bị ngoại vi hoặc cỏc mỏy tớnh khỏc. Nhiều thiết bị cụng nghiệp cũng tớch hợp cổng RS-232 phục vụ cho cụng việc lập trỡnh hoặc tham số húa.

Cấu tạo cổng COM

- TxD (Transmit Data): đường gửi dữ liệu - RxD (Receive Data): đường nhận dữ liệu

- RTS (Request To Send): Yờu cầu gửi; bộ truyền đặt đường này lờn mức hoạt động khi sẵn sàng truyền dữ liệu.

- CTS (Clear To Send): Xoỏ để gửi; bộ nhận đặt đường này lờn mức hoạt động để thụng bỏo cho bộ truyền là nú sẵn sàng nhận dữ liệu.

- DSR (Data Set Ready): Dữ liệu sẵn sàng; tớnh hoạt động giống với CTS nhưng được kớch hoạt bởi bộ truyền khi nú sẵn sàng nhận dữ liệu.

- SG (Signal Ground): Đất của tớn hiệu.

- DCD (Data Carrier Detect): Phỏt hiện tớn hiệu mang dữ liệu.

- DTR (Data Terminal Ready): Đầu cuối dữ liệu sẵn sàng; tớnh hoạt động giống với RTS nhưng được kớch hoạt bởi bộ nhận khi muốn truyền dữ liệu.

- RI (Ring Indicate): Bỏo chuụng, cho biết là bộ nhận đang nhận tớn hiệu rung chuụng.

Cổng nối tiếp cú nhiều ưu điểm và đặc điểm nổi trội:

- Tớnh chống nhiễu tương đối tốt, khoảng cỏch truyền xa hơn cổng song song. - Số lượng dõy kết nối ớt tối thiểu 3 dõy: TxD, RxD , GND.

- Ghộp nối dễ dàng vi điều khiển hoặc PLC. - Cú khả năng kết nối mạng…

Trong sơ đồ mạch giao tiếp mỏy tớnh này chỳng ta sử dụng 3 dõy truyền nhận dừ liệu TxD, RxD, GND khụng dựng chế độ bắt tay phần cứng, nếu khi cần bắt tay chỳng ta cú thể sử dụng phần mềm. Ngày nay vi xử lý và mỏy tớnh tốc độ hoạt độngcao khụng nư trước lờn thuận lợi khi chỳng ta truyền nhận .

Trờn vi điều khiển chỳng ta sử dụng modul USART giao tiếp bất đồng bộ mỏy tớnh cài đặt thụng số: tốc độ 9600 baud, 1bit start, 1 bit stop, 8 bit dữ liệu khụng sủ dụng bit Parity.

c) Khối bàn phớm

Nguyờn tắc sử dụng khố bàn phớm là :Dựng ngắt để nhận biết cú phớm nhấn. Ban đầu khởi tạo cỏc COL1 : COL4 là 0000, và ngắt ngồi INT0 được kớch hoạt khi cú sườn xuống (1 ặ 0). Khi nhấn một phớm bất kỳ thỡ chõn INT0 xũt hiện sườn xuống chương trỡnh chuyển sang phục vụ ngắt. Trong thủ tục ngắt ta xỏc định phớm nào được nhấn, để xỏc định được ta cần xỏc định ra hàng và cột của phớm được nhấn. Đầu tiờn ta kiểm tra cỏc hàng ROW1 ặ ROW4 nếu hàng nào cú giỏ trị bằng “0” thỡ hàng đú cú phớm nhấn. Tiếp theo ta xỏc định cột, đầu tiờn ta cho COL1=1 và COL2=COL3=COL4=0 sau đú kiểm tra tớch ROW1*ROW2* ROW3*ROW4, nếu tớch bằng “1” thỡ cột 1 cú phớm nhấn, từ đú xỏc định được phớm nào đĩ nhấn. Nếu tớch đú bằng “0” thỡ khụng phải cột 1 cú phớm nhấn, ta lại chuyển sang kiểm tra cột 2 với COL2=1 và COL1=COL3=COL4=0. Cứ tiếp tục như vậy ta sẽ xỏc định được cột cú phớm nhấn.

d) Khối hiển thị LCD 2x16(2 dũng, 16cột)

LCD làm việc chế độ 8 bit ghộp nối Port D của vi điều khiển trung tõm

Hỡnh 2.7 Khối hiển thị LCD

- Sử dụng một biến trở 100K điều chỉnh độ tương phản của LCD. - Chỉ dựng LCD để hiển thị (Write) nờn chõn R/W được nối mass.

e) Khối mạch động lực điều khiển

Hinh 2.8 Khối thiết bị chấp hành

Khối mạch lực này làm việc đỳng theo nguyờn lý trỡnh cơ cấu chấp hành (IC L298) trỡnh bày chương 3 ứng dụng bộ điều khiển PID số điều khiển động cơ một chiều .

f) Khối nguồn 12V/5V

Trong mạch sử dụng hai modul nguồn 5V(cung cỏp mạch điều khiển) và 12V(cung cấp cho động cơ):

- Mạch cung cấp đầu ra 5V cho mạch điều khiển: điện ỏp đầu vào xoay chiều khoảng 18-24V xoay chiều lấy từ biến ỏp, qua chỉnh lưu 2 nửa chu kỳ bằng cầu diode, thu được điện ỏp 1 chiều 18 - 24V sau đú qua IC ổn ỏp LM7805 mắc song song để thu được điện ỏp đầu ra 5V. Trước IC ổn ỏp ta mắc thờm trở nhiệt và diode để tản nhiệt 1 phần cho IC và bảo vệ ngăn dũng đỏnh ngược. Ở đầu vào và đầu ra của IC ổn ỏp đều mắc thờm tụ, gồm cả tụ húa (cú phõn cực) và tụ keo (khụng phõn cực) để ổn định điện ỏp. Ngồi ra cũn thờm đốn bỏo và cụng tắc bật, và cầu chỡ bảo vệ đầu vào khi lấy nguồn từ biến ỏp. - Mạch nguồn 12V cũng tương tự hoạt động như trờn nhưng thay vỡ dựng

ICLM7805 chỳng ta dựng LM7812 tạo nguồn 12V điều khiển động cơ.

g) Cỏc khối khỏc

Trờn Kit cũn cú một số khối phụ khỏc như cũi chip, led, ADC, ISP&ISCP để kết nối mạch nạp ngồi cho Chip, hai chõn vào ra cho phộp kết nối đầu vào ra khỏc, Encoder, truyền thụng cổng Com.

Sơ đồ mạch in hai lớp

2.2 Thiết kế phần mềm trờn nền vi điều khiển PIC

2.2.1. Yờu cầu phần mềm

Chương trỡnh phần mềm cho vi điều khiển Pic18F4520 cú thể viết theo nhiều cụng cụ như CCS, ngụn ngữ Asembly hoặc C18 . Trong đồ ỏn chỳng ta thực hiện lập trỡnh vi điều khiển Pic18F4520 sử dụng C18 trờn mụi trường MPLAB của nhà sản suất Mỉcochip. Phần mềm nhỳng trờn vi điều khiển PIC thực hiện cỏc nhiệm vụ sau:

- Nhận dữ liệu thụng số từ mỏy tớnh và bàn phớm.

- Xử lý và nhận cỏc tớn hiệu từ cỏc đầu vào số hoặc tương tự trờn modul phần cứng.

- Truyền dữ liệu lờn mỏy tớnh qua cổng truỳen thụng nối tiếp RS232. - Hiển thị dữ liệu lờn LCD và tớn hiệu đốn led.

- Tớnh toỏn đầu ra cho bộ điều khiển thiết kế, trong đề tài là bộ điều khiển PID số.

Khi viết chương trỡnh cho vi điều khiển chỳng ta cú thể sử dụngthư viện khối chức năng hỗ trợ sĩn nhà sản xuất về cỏc modul PWM, Timer, ADC, Led, cỏc hàm bộ điều khiển PID…

No Yes

Digital

Analog

2.2.2. Giải thuật chương trỡnh a) Loop điều khiển a) Loop điều khiển

Hỡnh 2.10 Lưu đồ loop điều khiển BEGIN BEGIN

Khởi tạo cỏc khối chức năng: PWM,LCD,TIMER… Khởi tạo cỏc giỏ trị ban đầu

Start ?

Cập nhật dữ liệu từ ADC ặ CPU Tớnh toỏn thuật toỏn

PID Kiểu cổng ra ? PWM CPU ặ ADC Xử lý truyền thụng END

Khi thực hiện chương trỡnh chỳng ta quản lý theo ngắt để tạo chu kỡ trớch mẫu.

Hỡnh 2.11 Lưu đồ hàm ngắt dựng tạo chu lỡ trớch mẫu

Trong đú gọi T là chu kỉ trớch mẫu chương trỡnh thỡ ta sẽ xõy dựng được quan hệ biến “Constant” và T theo khung thời gian hoạt động của “timer”. Điều đú cú nghĩa lớn trong việc quản lý chớnh xỏc việc tạo thời gian trớch mẫu.

b) Thuật toỏn PID số

* ) Luật PID trờn miền thời gian ( liờn tục ) được mụ tả bởi cụng thức:

(3.1) Trong đú: KR = Hệ số tỷ lệ TC = Hằng số thời gian tớch phõn TV = Hằng số thời gian vi phõn * ) Xấp xỉ thành phần I (3.2) Bản chất là phộp tớnh xấp xỉ diện tớch của hàm e (t) - Xấp xỉ theo nguyờn tắc hỡnh chữ nhật :

- Xấp xỉ theo nguyờn tắc hỡnh thang :

Trong đú T là chu kỡ trớch mẫu . *) Xấp xỉ thành phần D

- Khai triền thành chuỗi

Start Interrupt

If (Biến đếm < Constant) then biến

đếm++

Else biến đếm=Constant; thực hiện thuật toỏn Flag=1;

- Vi phõn xấp xỉ bậc 2 : - Vi phõn xấp xỉ bậc 1 : *) Xấp xỉ luật PID Thay cỏc cụng thức xấp xỉ trờn vào cụng thức: uk = upk + uik + udk

- Với xấp xỉ thành phần I theo phương phỏp hỡnh chữ nhật và thành phần D theo bậc 1 (3.3) - Với xấp xỉ thành phần I theo phương phỏp hỡnh chữ thang và thành phần D theo bậc2:

- Theo Takahashi cú thể làm giảm bớt biờn độ độ lớn điều khiển khi đại lượng chủ đạo ( giỏ trị đặt ) cú đột biến nhanh bằng cỏch, thay vỡ ek = wk – xk chỉ sử dụng ek = - xk. Từ đú ta cú :

(3.4) Mụ hỡnh bộ điều khiển PID số:

Sơ đồ như trờn giỳp chỳng ta cú thể lựa chọn nhiều giải phỏp sử dụng bộ điều khiển PID theo nhiều luật khỏc nhau.

Khi thiết kế thuật toỏn PID số cho vi điều khiển chỳng ta cũng thực hiện thuật toỏn PID theo nguyờn tắc chung như trờn nhưng sử dụng cỏc khối Timer để quản lý việc thực hiện thuật toỏn. Cỏc thụng số đầu vào bộ điều khiển là Ref_Input và Mea_Input luụn được cập nhập từ cỏc cổng vào ra số và tương tự trờn kit điều khiển để vi điều khiển thực hiện thuật toỏn PID ỏp đặt lờn cơ cấu chấp hành điều khiển đối tượng. Trong quỏ trỡnh điều khiển dựa trờn sai lệch đầu vào giữa Ref_Input và Mea_Input bộ điều khiển PID số tỏc dụng vừa đưa sai lệch mụ hỡnh về khụng vừa đảm bảo cỏc chỉ tiờu chất lượng điều khiển . Mỗi một chu kỡ thực hiện thuật toỏn PID trờn vi điều khiển thỡ tớn hiệu đầu ra của hệ thống điều khiển luụn được cập nhập qua cảm biến chuyển đổi phản hồi về tạo tớn hiệu Mea_Input .

Cú nhiều cỏch xấp xỉ bộ điều khiển PID nờn việc thực thi cỏc thuật toỏn PID trờn vi điều khiển cũng khỏc nhau. Một vấn đề quan trọng cần quan tõm khi thiết kế bộ điều khiển PID cần quan tõm là việc hạn chế cỏc hiện tượng bĩo hồ tớch phõn (Winup). Vấn dề này rất thường gặp khi thực thi luật điều khiển PID. Hiện tượng bĩo hồ tớch phõn là hiện tượng đầu ra của bộ điều khiển vẫn tiếp tục tăng quỏ mức giới hạn do tớch luỹ của thành phần tớch phõn vẫn cũn khi sai lệch điều khiển đĩ trở về khụng. Giải quyết vấn đề này cú thể sử dụng phương phỏp:

- Khi sai lệch mụ hỡnh bằng khụng ta thực hiện tỏch bỏ thành phần tớch phõn hoặc xoỏ trạng thỏi của nú bằng vũng lặp.

- Giảm hệ số khuếch đại để đầu ra nằm trong dải cho phộp khụng quỏ lớn.

- Thực hiện thuật toỏn bự thành phần tớch phõn bằng phản hồi giỏ trị thực đo được.

- Đặt một khõu giới hạn ở dầu ra của bộ điều khiển và sử dụng thuật toỏn bự. Hai phương phỏp cuối cú ưu điểm hơn cả và thường được hầu hết cỏc bộ điều khiển cụng nghiệp hỗ trợ. Giả phỏp đa năng và ỏp dụng nhiều trờn thực tế thực hiện Anti_Winup là điều khiển bỏm(tracking) thực chất cải thiện thành phần tớch phõn I:

2.2.3. Thiết kế phần mềm điều khiển và giỏm sỏt trờn mỏy tớnh

Chỳng ta thực hiện thiết kế giao diện giao tiếp vi điều khiẻn và mỏy tớnh bằng ngon ngữ Visual Basic6.0(VB).Trong mụi trường lập trỡnh VB, việc tạo ra một giao diện đồ họa là tương đối đơn giản. VB đĩ hỗ trợ cho người sử dụng những mụ đun đối tượng phổ biến giỳp cho cụng việc của người lập trỡnh trở nờn nhẹ nhàng hơn rất nhiều. Việc tạo giao diện chỉ là lựa chọn những đối tượng vẽ vào một giao diện (form) cú sẵn cựng với việc thiết lập cỏc thụng số cho đối tượng.

Ở đõy, giao diện được tạo tương đối đơn giản nhưng đủ đỏp ứng được những yờu cầu mà cụng việc đặt ra.

Yờu cầu cụng việc:

• Thu nhận dữ liệu do người dựng nhập vào (cỏc giỏ trị Kp, Ki, Kd , thụng số cần đạt được …)

• Phõn tớch, xử lý dữ liệu đĩ nhận, truyền xuống cho vi điều khiển PIC qua cổng nối tiếp

• Nhận dữ liệu truyền về từ PIC và hiển thị lờn màn hỡnh đồ họa để thấy được khả năng đỏp ứng của hệ thống

Trờn giao điện đồ hoạ gồm cú cỏc button điều khiển, cỏc textbox hiển thị số liệu, combobox cho phộp lựa chọn cỏc chế độ, và picturebox dựng để nhận dữ liệu của người sử dụng vẽ vào, đồng thời cũng là nơi hiển thị dữ liệu thu nhận được cho thấy đỏp ứng của hệ thống. Cụ thể hoạt động cỏc phớm chức năng như sau:

- Khối chức năng điều khiển động cơ bao gồm:comand button và textbox biểu thị và điều khiển chế độ hoạt đọng động cơ DC. Button ‘Start’Button “Start” dựng để bắt đầu gởi giỏ trị vị trớ mong muốn xuống cho vi điều khiển, lỳc đú chương trỡnh sẽ nhận được giỏ trị tốc độ được gởi lờn bởi vi điều khiển thụng qua giao triếp RS232, rồi vẽ trờn đồ thỡ và hiển thị giỏ trị tốc độ của động cơ trờn đồ thị theo miền thời gian, từ đú ta cú thể quan sỏt được hoạt động của hệ thống cú đỏp ứng đỳng yờu cầu đề ra khụng (như sai lệch, thời gian đạt được …).Button ‘Inverser’ điều khiển đảo chiốu quay động cơ. Button ‘Stop’ dừmg

Một phần của tài liệu pid dieu khien dong co (Trang 58)

Tải bản đầy đủ (PDF)

(111 trang)