Sau 12 tuần nghiên cứu tìm tòi làm đồ án tốt nghiệp, dƣới sự phân công
của các thầy cô trong bộ môn Điện tự động khoa điện – điện tử, đƣợc sự chỉ
bảo hết sức nhiệt tình của thầy GS.TSKH Thân Ngọc Hoàn cùng với sự cố
gắng, nỗ lực hết sức của bản thân em, bản đồ án tôt nghiệp đã hoàn thành.
Đồ án đã đạt được kết quả như sau:
Nghiên cứu ứng dụng lý thuyết điều khiển mới hiện đại đặc biệt là điều
khiển mờ để tổng hợp lên bộ điều khiển.
Đã thiết kế thành công hệ truyền động điện bộ điều khiển vạn năng ứng
dụng điều khiển động cơ 1 chiều có khâu hồi tiếp tốc độ
76 trang |
Chia sẻ: baoanh98 | Lượt xem: 813 | Lượt tải: 0
Bạn đang xem trước 20 trang tài liệu Đề tài Xây dựng hệ thống điều chỉnh truyền động điện dùng bộ điều chỉnh vạn năng, để xem tài liệu hoàn chỉnh bạn click vào nút DOWNLOAD ở trên
mờ dễ hiểu hơn so với các bộ điều khiển khác (cả
về kỹ thuật) và dễ dàng thay đổi.
23
Trong nhiều trƣờng hợp bộ điều khiển mờ làm việc ổn định hơn,
bền vững hơn và chất lƣợng điều khiển cao hơn.
Cấu trúc chung của bộ điều khiển mờ:
Một bộ điều khiển mờ có 3 khâu cơ bản :
Mờ hoá: có nhiêm vụ chuyển đổi một giá trị rõ đầu vào x0 thành một
vecto gồm các độ phụ thuộc của giá trị vào rõ.
Luật hợp thành và Thực hiện luật hợp thành: Lƣu giữ các mệnh đề hợp
thành và xử lý vecto các độ phụ thuộc của giá trị vào rõ và cho ra giá trị mờ
B' của biến ngôn ngữ đầu ra.
Giải mờ: có nhiệm vụ chuyển đổi tập mờ B’ thành một giá trị rõ y’
chấp nhận đƣợc cho đối tƣợng (tín hiệu điều chỉnh)
Bé ®iÒu khiÓn mê
Mê
ho¸
R1: NÕu . . . Th× . .
.
.
R2: NÕu . . . Th× . .
Gi¶i mê
B’
x0
y’
Hình 1.5: Cấu trúc bên trong của một bộ điều khiển mờ
Ta có thể phân loại các bộ điều khiển mờ dựa trên quan hệ vào/ra toàn
cục của tín hiệu vào x0 và tín hiệu ra y’. Quan hệ toàn cục đó có tên gọi là
quan hệ truyền đạt. Cũng giống nhƣ việc phân loại một khâu điều khiển kinh
điển, việc phân loại quan hệ truyền đạt của một bộ điều khiển mờ theo các
tiêu chí sau [3]:
1. Tĩnh hay động
2. Tuyến tính hay phi tuyến
3. Tham số tập trung hay tham số rải
4. Liên tục hay rời rạc
24
5. Tham số tĩnh hay tham số động
6. Tiền định hay ngẫu nhiên
7. Ổn định hay không ổn định
Xét từng khâu của bộ điều khiển mờ gồm các khâu mờ hoá, thiết bị hợp
thành và giải mờ trong hình 2.1.a, thì thấy rằng trong quan hệ vào/ra giá trị y’
tại đầu ra chỉ phụ thuộc vào một mình giá trị x0 của đầu vào chứ không phụ
thuộc vào giá trị đã qua của tín hiệu x(t), tức là chỉ phụ thuộc vào giá trị của
x(t) tại đúng thời điểm đó. Do đó bộ điều khiển mờ thực chất là một bộ điều
khiển tĩnh và quan hệ truyền đạt hoàn toàn đƣợc mô tả đầy đủ bằng đƣờng
đặc tính y(x) nhƣ các đƣờng đặc tính của khâu relay 2 hoặc 3 trạng thái quen
biết trong kỹ thuật điều khiển phi tuyến kinh điển [3].
Tuy nhiên, trong nhiều trƣờng hợp, qua thay đổi dạng hàm liên thuộc
của các giá trị ngôn ngữ vào ra, hoặc nhờ việc nối thêm các khâu tích phân, vi
phân vào phía trƣớc bộ điều khiển làm vai trò tiền xử lý tín hiệu, thì bộ điều
khiển chung nhận đƣợc sẽ lại có tính gần tĩnh giống nhƣ khâu relay có trễ
hoặc có tính chất động nhƣ bộ điều khiển mờ PID sẽ trình bày trong phần tiếp
theo.
1.1.2.5. Nguyên tắc thiết kế bộ điều khiển mờ
Khi tổng hợp các bộ điều khiển mờ cần lƣu ý đến tính phi tuyến khá
mạnh của các bộ điều khiển mờ. Phần lớn các đối tƣợng điều khiển trong thực
tế có tính phi tuyến, phụ thuộc vào thời gian, có hằng số trễ lớn và tham số
rải. Đối với hệ thống nhƣ vậy việc ứng dụng kỹ thuật điều khiển mờ là rất
thích hợp. Tuy vậy, nền tảng cho sự ứng dụng thành công kỹ thuật điều khiển
mờ là kiến thức, kinh nghiệm và sự hiểu biết của các chuyên gia về hệ thống
đó. Trong quá trình thiết kế bộ điều khiển mờ không nhất thiết phải biết trƣớc
mô hình đối tƣợng điều khiển mà chỉ cần thể hiện những hiểu biết về đối
tƣợng, qua các biến ngôn ngữ thể hiện động học của đối tƣợng. Nói chung,
qui trình thiết kế bộ điều khiển mờ ngắn hơn qui trình thiết kế bộ điều khiển
25
kinh điển. Các bƣớc xây dựng thiết bị điều khiển và chọn luật hợp thành khá
tốn công khi thiết kế các bộ điều khiển mờ. Cho đến nay vẫn chƣa có các
nguyên tắc chuẩn mực cho việc thiết kế khảo sát tính ổn định, chất lƣợng,
đối với các bộ điều khiển mờ cũng nhƣ nguyên lý tối ƣu các bộ điều khiển mờ
về mặt lý thuyết. Các nguyên tắc dƣới đây là cần thiết khi lựa chọn các bộ
điều khiển :
Không bao giờ áp dụng bộ điều khiển mờ khi có thể dễ dàng giải quyết
tốt vấn đề bằng bộ điều khiển kinh điển. Khi áp dụng bộ điều khiển
mờ, trƣớc hết cần đi phân tích, thu thập các kinh nghiệm và thể hiện nó
trên cơ sở logic mờ. Một giải pháp rất hiệu quả là kết hợp các bộ điều
khiển kinh điển với logic mờ để phát huy đƣợc ƣu điểm của cả hai kiểu
bộ điều khiển.
Việc sử dụng bộ điều khiển mờ cho các hệ thống yêu cầu độ an toàn
cao vẫn còn hạn chế do chỉ có thể xác định đƣợc chất lƣợng của hệ
thống bằng thực nghiệm.
Bộ điều khiển mờ phải đƣợc phát triển qua thực nghiệm.
Các bước thiết kế bộ điều khiển mờ
Từ những phần trƣớc, chúng ta có thể thấy rằng các phần chính của
việc thiết kế một bộ điều khiển mờ thƣờng nhƣ sau:
Hai bƣớc thiết kế đầu tiên (1) và (2) chỉ ra rằng, trong việc thiết kế một
bộ điều khiển mờ, trƣớc tiên, từ yêu cầu thiết kế đặt ra phải nhận diện đƣợc
các biến trạng thái chính của quá trình và các biến điều khiển và xác định tập
các thuật ngữ (ký hiệu) để miêu tả giá trị của mỗi biến ngôn ngữ. Ví dụ, một
tập các thuật ngữ nhƣ nhỏ, trung bình, rộng không thể thoả mãn trong một
vài lĩnh vực và việc sử dụng một tập năm số hạng nhƣ rất nhỏ, nhỏ, trung
bình, rộng, rất rộng có thể thay thế đƣợc. Do đó, số lƣợng các tập mờ của
không gian vào-ra sẽ đƣợc chọn đủ rộng để cung cấp một sự đủ thích hợp và
còn đủ nhỏ để tiết kiệm không gian bộ nhớ. Số lƣợng này có một ảnh hƣởng
26
cơ bản đến chất lƣợng của bộ điều khiển có thể thu đƣợc. Hơn nữa, các kiểu
hình dạng khác nhau của các hàm liên thuộc ví dụ nhƣ là hình tam giác, hình
thang, và kiểu hình chuông, có thể đƣợc dùng làm các giá trị của mỗi biến
ngôn ngữ cũng ảnh hƣởng không nhỏ đến chất lƣợng của bộ điều khiển mờ.
Thu thËp c¸c yªu cÇu thiÕt kÕ. Chän s¬ ®å cÊu tróc ®iÒu khiÓn
hÖ thèng, c¸ch kÕt nèi. §Þnh nghÜa c¸c biÕn vµo vµ ra, gi¶i gi¸
trÞ tuyÖt ®èi cña c¸c biÕn.
§Þnh nghÜa gi¸ trÞ ng«n ng÷ (tËp mê) cña c¸c biÕn vµo vµ ra,
lùa chän c¸c hµm liªn thuéc cho c¸c biÕn ng«n ng÷ vµo vµ ra.
Lùa chän c¸c luËt ®iÒu khiÓn mê.
ThiÕt kÕ thiÕt bÞ hîp thµnh (thiÕt bÞ suy diÔn), bao gåm
viÖc lùa chän quan hÖ mê vµ c¸c mÖnh ®Ò hîp thµnh, ph-¬ng
ph¸p tÝnh to¸n suy luËn mê.
Lùa chän ph-¬ng ph¸p gi¶i mê.
HiÖu chØnh tèi -u hÖ thèng.
øng dông thùc tÕ
Hình 1.6: Lưu đồ thiết kế một bộ điều khiển mờ
Với các bƣớc thiết kế (4) và (5), không có một phƣơng pháp có hệ
thống nào để thực hiện việc thiết kế một thiết bị hợp thành và lựa chọn một bộ
giải mờ. Hầu hết các nhà thiết kế sử dụng các kinh nghiệm nghiên cứu và các
kết quả thực nghiệm để đƣa ra những hƣớng dẫn cho những sự lựa chọn này.
Bƣớc thiết kế thứ (6) thực chất là kiểm tra và hiệu chỉnh lại bộ điều
27
khiển trong điều kiện môi trƣờng mô phỏng (nếu nhƣ có thể vì tạo mô hình
toán học thích hợp cho một hệ thống lớn phức tạp, phi tuyến là rất khó) hay
trong môi trƣờng làm việc thực tế. Khi hiệu chỉnh ta có thể tận dụng kinh
nghiệm đã có về một số tính chất của bộ điều khiển kinh điển PID cho bộ điều
khiển mờ. Nếu thiết kế dù đã hiệu chỉnh mà vẫn chƣa thoả mãn yêu cầu đặt ra
thì ta lại phải quay trở lại bƣớc (1) để làm lại.
Bƣớc thiết kế thứ (3) trong việc xác định các luật điều khiển mờ phụ
thuộc rất lớn vào bản chất vật lý (trạng thái tự nhiên vốn có) của các đối
tƣợng đƣợc điều khiển. Nói chung, có bốn phƣơng pháp để tạo nên các luật
điều khiển mờ và các luật này không độc lập nhau. Một sự kêt hợp của chúng
có thể là cần thiết để xây dựng một phƣơng pháp hiệu quả cho việc tạo nên
các luật điều khiển mờ. Đó là bốn phƣơng pháp:
Kinh nghiệm chuyên gia và hiểu biết của kỹ sƣ điều khiển: Các luật
điều khiển mờ đƣợc thiết kế nhờ việc xem xét các hoạt động của con ngƣời
và/hoặc hiểu biết của các kỹ sƣ điều khiển. Đặc biệt hơn, chúng ta có thể hỏi
một chuyên gia để biểu diễn tri thức của ngƣời này trong thuật ngữ tập mờ, đó
là để biểu diễn phƣơng pháp làm việc này trong các luật mờ Nếu - Thì. Chúng
ta cũng có thể hỏi một kỹ sƣ điều khiển để liệt kê số các phƣơng thức dựa trên
hiểu biết của ngƣời này về quá trình đƣợc điều khiển. Cuối cùng, dùng thủ tục
tìm kiếm loại trừ để tạo nên các luật điều khiển mờ.
Mô phỏng một hành động điều khiển của ngƣời vận hành: Chúng ta
có thể mô phỏng một hành động kỹ năng của ngƣời vận hành hay đặc tính
điều khiển trong thuật ngữ của tập mờ sử dụng với dữ liệu vào - ra để liên kết
với các hành động điều khiển của ngƣời vận hành. Sau đó chúng ta có thể
nhận đƣợc "mô hình vào-ra" nhƣ là một bộ điều khiển mờ.
Dựa trên một mô hình mờ hoặc phân tích đặc tính của một quá trình
điều khiển: Trong trƣờng hợp này, các luật điều khiển mờ đƣợc tạo ra dựa
trên hoặc là mô hình mờ hoặc là phân tích đặc tính của quá trình điều khiển.
28
Nếu chúng ta có một mô hình mờ của quá trình hoặc nếu chúng ta biết một
vài tính chất có ích của quá trình, chúng ta có thể thiết kế tạo ra một tập các
luật điều khiển mờ để đạt đƣợc hoạt động tối ƣu. Phƣơng pháp này đƣợc áp
dụng trong những hệ thống điều khiển thích nghi mờ.
Dựa trên việc học (hay tự tổ chức): rất nhiều bộ điều khiển mờ đã
đƣợc xây dựng để mô phỏng khả năng ra quyết định của bộ não con ngƣời.
Gần đây, rất nhiều sự nghiên cứu cố gắng định hƣớng vào việc mô phỏng việc
học của con ngƣời, chủ yếu là khả năng tạo nên các luật điều khiển mờ và sửa
chữa chúng dựa trên kinh nghiệm hoạt động của hệ thống. Đây là một hƣớng
phát triển cao hơn của điều khiển thích nghi mờ. Logíc mờ kết hợp với mạng
Nơron nhân tạo, ANN tạo nên một hệ thống điều khiển tự thích nghi với sự
thay đổi của đối tƣợng điều chỉnh. Ví dụ: Một cách phối hợp đơn giản nhất là
ANN quan sát nhận dạng đối tƣợng sau đó căn cứ trên những phiếm hàm mục
tiêu điều khiển để thay đổi, tạo ra các luật của bộ điều khiển mờ.
1.1.2.6. Kết luận
Phƣơng pháp tổng hợp bộ điều khiển theo phƣơng pháp mờ có nhiều
ƣu điểm hơn so với các phƣơng pháp tổng hợp bộ điều khiển trƣớc đây:
- Giảm đƣợc khối lƣợng công việc do không phải xác định mô
hình, giảm khối lƣợng tính toán mà bộ điều khiển vẫn làm việc tin cậy.
- Cấu trúc đơn giản, dễ hiểu và khả năng thay đổi linh hoạt.
- Làm việc ổn định, bền vững, chất lƣợng cao, tăng độ tin cậy cho
thiết bị và giảm giá thành sản phẩm trong nhiều trƣờng hợp.
1.2. Bé ®iÒu khiÓn pid sè
1.2.1. Luật điều khiển PID.
1.2.1.1. Luật điều khiển tỷ lệ: Proportional (P)
29
r(t) u(t)
Hình 1.7: Hệ kín với luật điều khiển tỷ lệ
Với : r(t): tín hiệu đầu vào của hệ thống.
y(t): tín hiệu đầu ra của hệ thống.
u(t): tín hiệu điều khiển tác động lên đối tƣợng.
e(t): tín hiệu sai lệch điều khiển.
Hệ kín Hình 1.6 đƣợc làm việc với bộ điều khiển theo luật tỷ lệ. Nhƣ vậy
nếu gọi sai lệch e(t) = r(t) – y(t) là đầu vào của bộ điều khiển và u(t) là đầu ra
của bộ điều khiển thì quan hệ giữa đầu vào của luật điều khiển đƣợc biểu diễn
theo phƣơng trình sau đây:
u(t) = kp.e(t) (1-24)
Trong đó kp là tham số của luật điều khiển. Hầu hết các đối tƣợng công
nghiệp đều đƣợc điều khiển theo luật này vì luật cho khả năng điều khiển rất
đơn giản, nhƣng lại có thể thay đổi cả chất lƣợng động và chất lƣợng tĩnh của
hệ thống. Dễ dàng thấy đƣợc nhận định này là đúng đắn bởi vì khi thay đổi kp
dẫn đến sự thay đổi hệ số khuếch đại của hệ hở, điều đó dẫn đến sự thay đổi
vị trí của các điểm cực và điểm không của hệ. Ngoài ra khi thay đổi hệ số kp,
ta thấy ngay chất lƣợng của hệ thống ở chế độ xác lập cũng thay đổi. Có thể
nhận thấy ngay ở công thức xác nhận sai lệch tĩnh của hệ trong Hình 1.7:
δ(t) = (1-25)
kp Đối tƣợng
điều khiển
e(t) y(t)
30
1.2.1.2. Luật điều khiển tích phân: Integral (I)
Hình 1.8: Hệ kín với luật điều khiển tích phân
Hệ kín trong hình 1.8 đƣợc điều khiển bằng luật điều khiển tích phân,
nhƣ vậy với tín hiệu đầu vào của bộ điều khiển là sai lệch e(t) và tín hiệu đầu
ra u(t) ta có thể biểu diễn luật điều khiển tích phân bằng phƣơng trình sau:
u(t) = (1-26)
hoặc u(t) = (1-27)
Tham số của luật điều khiển là Ti đƣợc gọi là hằng số thời gian tích
phân hay ki là hệ số tích phân. Khi sử dụng luật điều khiển tích phân độ dự trù
ổn định của hệ kín sẽ giảm đi, theo tiêu chuẩn ổn định Nyquist, sai lệch tĩnh
sẽ giảm vì hàm truyền hệ hở lúc đó có dạng:
w0 = wdk(s) - wdt =
và sai lệch của hệ:
(1-28)
Điều khiển tích phân hay còn gọi là phƣơng pháp điều khiển theo tích
lũy sai lệch, điều khiển chậm sau. Phƣơng pháp điều khiển này có ƣu điểm là
ít chịu ảnh hƣởng của nhiễu và làm tăng độ chính xác của hệ ở chế độ xác lập
31
1.2.1.3. Luật điều khiển vi phân: Derivative (D).
Hình 1.9: Hệ kín với luật điều khiển vi phân
Luật vi phân đƣợc biểu diễn theo phƣơng trình sau đây:
u(t) = TD (1-29)
Trong đó TD là hằng số thời gian vi phân. Luật điều khiển vi phân có
tác dụng làm cho giảm thời gian quá độ của hệ. Luật điều khiển vi phân chính
vì vậy còn đƣợc gọi là luật điều khiển vƣợt mức. Quyết định điều khiển đƣợc
đƣa ra trên cơ sở thông tin về đạo hàm của sai lệch. Nhƣợc điểm của luật
chính là ở phƣơng pháp lấy thông tin này, vì nếu đối tƣợng chịu ảnh hƣởng
của các nhiễu biến thiên thì luật sẽ ra quyết định điều khiển theo nhiễu. Chính
vì vậy luật chỉ thích hợp khi nhiễu tác động vào đối tƣợng điều khiển là các
nhiễu hằng số. Trong môi trƣờng làm việc của đối tƣợng điều khiển có nhiễu
biến thiên thì không nên sử dụng luật điều khiển này. Trong thực tế các khâu
vi phân thƣờng phải thiết kế gần đúng. Hình 1.9 là cơ sở thiết kế luật điều
khiển vi phân hay sử dụng:
TDS
32
kp
u(t)
e(t)
Hình 1.10: Sơ đồ thiết kế luật vi phân thực tế
= TD TDs (1-30)
Nhƣ vậy để có đƣợc TDs ta phải chọn hệ số khuếch đại k thật lớn (k
∞). Thực hiện k lớn lại phụ thuộc vào khả năng của thiết bị. Đó cũng chính là
những hạn chế khi thực hiện luật điều khiển vi phân.
1.2.1.4. Luật điều khiển tỷ lệ - tích phân (PI).
Cấu trúc của luật điều khiển PI đƣợc biểu diễn ở hình sau:
Hình 1.11: Cấu trúc luật PI
u(t) = kp[e(t) + (1-31)
e(t)
K
U(t)
T D
1
s
33
Biểu diễn luật dƣới dạng hàm truyền:
WPI(s) = (1-32)
Khi kết hợp giữa luật tỷ lệ và luật điều khiển tích phân ta có đƣợc ƣu
điểm của cả hai luật. Luật điều khiển PI có khả năng bù hằng số thời gian lớn
nhất của đối tƣợng điều khiển, điều đó chỉ ra ở công thức (1-32) và do vậy
nâng cao đƣợc chất lƣợng động của hệ thống điều khiển kin. Luật PI còn có
khả năng làm giảm sai lệnh tĩnh của hệ, từ công thức (2) ta có:
St = (1-33)
Phần lớn các đối tƣợng công nghiệp đƣợc điều khiển theo luật điều
khiển này.
1.2.1.5. Luật điều khiển PID
PID là chữ viết tắt của ba thành phần cơ bản có trong bộ điều khiển:
Khuếch đại (P), tích phân (I) và vi phân (D). Ba thành phần này phối hợp với
nhau, bổ sung những yếu điểm, hạn chế những nhƣợc điểm của nhau, tạo
thành bộ điều khiển hoàn chỉnh để điều khiển đối tƣợng.
Thành phần khuếch đại (P) có tốc độ xử lý tín hiệu nhanh, hệ thống sử
dụng quy luật tỷ lệ sẽ có tính ổn định cao, thời gian điều khiển ngắn. Nhƣng
quy luật này còn có nhƣợc điểm: hệ thống khi ở trạng thái xác lập luôn tồn tại
sai lệch tĩnh.
Thành phần tích phân (I) có ƣu điểm là triệt tiêu đƣợc sai lệch tĩnh
nhƣng tốc độ xử lý tín hiệu còn chậm.
34
e(t)
u(t)
Thành phần vi phân (D) có tác dụng làm tăng nhanh tốc độ tác dụng
của tín hiệu điều khiển nhƣng bên cạnh đó hệ thống khi sử dụng thành phần
này còn có độ quá điều chỉnh lớn.
Sơ đồ câu trúc của luật điều khiển PID đƣợc biểu diễn ở hình 1.12
Hình 1.12: Cấu trúc luật PID
Lý do bộ điều khiển PID đƣợc sử dụng rộng rãi là tính đơn giản của nó
cả về cấu trúc lẫn nguyên lý làm việc. Bộ điều khiển PID có nhiệm vụ đƣa sai
lệch e(t) của hệ thống về 0 sao cho quá trình quá độ thoả mãn các yêu cầu cơ
bản về chất lƣợng:
+ Nếu sai lệch e(t) càng lớn thì thông qua thành phần tỷ lệ, tín hiệu điều
chỉnh u(t) càng lớn (vai trò khuếch đại),
+ Nếu sai lệch e(t) chƣa bằng 0 thì thông qua thành phần tích phân, bộ
điều khiển PID vẫn còn tín hiệu điều chỉnh (vai trò tích phân).
+ Nếu có sự thay đổi của sai lệch e(t) càng lớn thì thông qua thành phần
vi phân, phản ứng thích hợp của tín hiệu điều chỉnh u(t) sẽ càng nhanh (vai trò
của vi phân).
Tds
35
Luật điều khiển PID đƣợc biểu diễn bằng phƣơng trình sau đây:
u(t) = kp[e(t) + (1-34)
Trong đó e(t) là tín hiệu đầu vào, u(t) là tin hiệu đầu ra, kp đƣợc gọi là
hệ số khuếch đại, Ti là hằng số thời gian tích phân và TD là hằng số thời gian
vi phân. Chất lƣợng của hệ thống phụ thuộc vào các tham số kp, Ti, TD,. Muồn
hệ thống có chất lƣợng nhƣ mong muốn thì phải phân tích đối tƣợng rồi trên
cơ sở đó chọn các tham số trên cho phù hợp.
Bằng hàm truyền luật điều khiển PID thƣờng đƣợc biểu diễn dƣới dạng
cộng hoặc dạng nhận. Hàm truyền biểu diễn dƣới dạng cộng:
WPID
+
(s) = kp[ 1+ (1-35)
Hàm truyền biểu diễn dƣới dạng nhân:
WPID.MUL(s) = (1-36)
Dạng (13) thuận lợi cho việc tính toán tham số của bộ điều khiển, còn
luật cộng (1-35) là luật đƣợc cài đặt trong các bộ PID số do các hãng công
nghiệp cung cấp cho ngƣời sử dụng, ở dạng (1-35) nhà chế tạo dễ dàng cung
cấp giải pháp lựa chọn luật điều khiển khác nhƣ luật P, I, luật PI, luật PD trên
nền luật PID. Quan hệ của các tham số giữa hai luật đƣợc biểu diễn bằng các
phƣơng trình dƣới đây:
Kp = (1-37)
Ti = Ti
*
+ TD
*
(1-38)
TD = (1-39)
36
kp
u(k) e(k)
Luật PID đƣợc sử dụng rất nhiều trong công nghiệp, theo thống kê của
các nhà thiết kế hệ thống điều khiển quá trình trên thế giới cho đến nay 90%
đối tƣợng công nghiệp đƣợc điều khiển bằng luật điều khiển này hay trên cơ
sở của luật điều khiển này. Luật PID có khả năng bù các hằng số thời gian lớn
của đối tƣợng điều khiển làm cho hệ kín chuyển trạng thái nhanh và làm giảm
sai số tĩnh của hệ ở chế độ xác lập.
1.2.2. Bộ điều khiển PID số
Yêu cầu thiết kế đƣợc đặt ra là bộ PID số phải có tính linh hoạt cao, có
nghĩa là phải có giao diện thân thiện với ngƣời sử dụng. Thông qua HMI,
ngƣời sử dụng có thể chọn luật điều khiển dễ dàng. Ví dụ nhƣ có thể điều
khiển các đối tƣợng công nghiệp theo luật P, I, PI, PID và có thể lựa chọn
tham số của các luật phù hợp với đối tƣợng thiết kế.
1.2.2.1. Luật điều khiển tỷ lệ số
Hình 1.13: Cấu trúc luật P số.
Đây là luật điều khiển có thể thiết kế đơn giản nhất. Dãy u(k) đƣợc tính
từ dãy e(k) theo công thức:
u(k) = kpe(k) k = 0,1,2 (1-40)
1.2.2.2. Luật điều khiển tích phân số
Từ công thức số (3) ta có phƣơng trình sai phân:
u(k) = (1-41)
Trong đó T là thời gian trích mẫu (Sample Time)
37
u(k - 1)
e(k - 1)
Hình 1.14: Cấu trúc luật I số
1.2.2.3. Luật điều khiển vi phân số
Hình 1.15: Cấu trúc luật D số
Thƣờng các bộ điều khiển theo luật vi phân số đƣợc cài đặt theo các
phƣơng trình sai phân sau:
u(k) = (1-42)
Trong đó T là thời gian trích mẫu.
D
u(k) e(k)
D
e(k)
u(k)
38
1.2.2.4. Luật điều khiển PID số
Hình 1.16: Cấu trúc luật PID số
Từ cấu trúc PID số trong hình 1.16, ta có:
u(k) = kp {e(k) + (1-
43)
u(k) = kp {(1 +
u(k) = kp {(1 +
Luật điều khiển PID số trong công thức trên đƣợc lựa chọn để cài đặt
cho bộ điều khiển đƣợc chế tạo trên nền AVR.
T
T I
T D
T
K p
u p (k)
u(k)
D
D
e(k)
u I (k)
u D (k)
39
CHƢƠNG 2
THIẾT KẾ BỘ ĐIỀU CHỈNH SỬ DỤNG CHÍP AVR
Với sự phát triển mạnh của rất nhiều vi điều khiển lên có rất nhiều phƣơng
án cho việc chọn lựa cho khối điều khiển trung tâm.Ở đồ án này em đã chọn
họ vi điều khiển AVR của hãng Ateml. Hãng Atmel đã từ lâu nổi tiếng với
chíp vi điều khiển họ 89Cxx phù hợp với các ứng dụng đơn giản. Chuyển
sang họ AVR, Atmel đã thêm vào chíp vi điều khiển này nhiều tính năng mà
chíp họ 8051 không có nhƣ là ADC, PWM, BUS I2C, 2 Wire v.v..., để giúp
cho ngƣời sử dụng có thêm nhiều tính năng để sử dụng. AVR là vi điều khiển
đƣợc thiết kế cho rất nhiều ứng dụng. Từ các ứng dụng điều khiển, đo lƣờng...
2.1. chØnh ®Þnh mê bé ®iÒu khiÓn pid
Trong lý thuyết điều khiển tuyến tính, có nhiều phƣơng pháp hữu hiệu
để xác định tham số kR, Ti, TD cho bộ điều khiển PID. Tuy nhiên, hạn chế
chung của các phƣơng pháp này là chỉ tổng hợp đƣợc một bộ điều khiển
(PID) cho một đối tƣợng xác định. Với một đối tƣợng khác cần phải tổng hợp
một bộ điều khiển khác. Phƣơng pháp chỉnh định mờ tham số bộ điều khiển
PID cho phép một bộ điều khiển (PID) có thể làm việc với nhiều đối tƣợng
khác nhau. Tƣ tƣởng cơ bản của phƣơng pháp này là ứng dụng lý thuyết mờ
vào việc chỉnh định tham số KR, TI, TD của bộ điều khiển PID sao cho phù
hợp với đối tƣợng hiện tại.
Sau đây, tôi xin trình bày hai phƣơng pháp chỉnh định mờ tham số bộ
điều khiển PID:
- Phƣơng pháp thứ nhất là phƣơng pháp chỉnh định mờ của Zhao,
Tomizuka và Isaka.
- Phƣơng pháp thứ hai là phƣơng pháp chỉnh định mờ tham số α.
40
y
2.1.1. Phương pháp chỉnh định mờ của Zhao, Tomizuka và Isaka
Ta có mô hình toán học của một bộ điều khiển PID với đầu vào e(t),
đầu ra u(t).
u(t) = kp[e(t) + (2-1)
Hàm truyền của bộ điều khiển: GPID(s) = kR[1 +
Hoặc GPID(s) = KR + + KDs
Trong đó: KR = kR, KI = , KD = kR.TD
Các tham số kR, TI, TD hay KR, KI, KD của bộ điều khiển PID đƣợc
chỉnh định mờ trên cơ sở phân tích tín hiệu chủ đạo và tín hiệu ra của hệ
thống, chính xác hơn là sai lệch e(t) và đạo hàm của sai lệch . Sơ đồ hệ
thống sử dụng bộ điều khiển PID có các tham số đƣợc chỉnh định theo
phƣơng pháp mờ đƣợc chỉ ra ở hình sau:
Hình 2.2: Phương pháp chỉnh định mờ tham số bộ điều khiển PID của
Zhao, Tomizuka và Isaka
Bộ chỉnh
định mờ
Thiết bị
chỉnh định
Bộ điều
khiển PID
Đối tƣợng
x
u
41
Bộ chỉnh định mờ trong sơ đồ trên có hai đầu vào là sai lệch tĩnh e(t),
đạo hàm sai lệch và ba đầu ra là KR, KI và α.
Trong đó: α = KI =
Do đó có thể xem bộ chỉnh định mờ gồm ba bộ chỉnh định mờ nhỏ, mỗi
bộ có hai đầu vào một đầu ra.
Hình 2.3: Cấu trúc bên trong bộ chỉnh định mờ
Bộ chỉnh định mờ là thành phần quan trọng trong sơ đồ Hình 2.2. Thiết
kế bộ chỉnh định nhƣ sau:
- Bộ chỉnh định mờ 1 ( chỉnh định KR)
Bộ chỉnh định mờ 1 có hai đầu vào là sai lệch e(t), đạo hàm sai lệch
.
Đầu ra là giá trị chỉnh định KR
+ Đầu vào 1( sai lệch e(t): Chọn dải sai lệch và tập mờ nhƣ hình sau:
Bộ chỉnh
định mờ 1
Bộ chỉnh
định mờ 2
Bộ chỉnh
định mờ 3
KR
KP
α
e
e
42
Hình 2.4: Tập mờ đầu vào 1, bộ chỉnh định KR
+ Đầu vào 2( tốc độ sai lệch ): Chọn dải tốc độ sai lệch và tập mờ
nhƣ hình sau:
Hình 2.5: Tập mờ đầu vào 2, bộ chỉnh định KR
+ Luật chỉnh định KR:
Luật điều khiển để chỉnh định các tham số của bộ điều khiển PID đƣợc
xây dựng theo nguyên tắc: tín hiệu điều khiển càng mạnh nếu KR càng lớn,
KD và α càng nhỏ. Khi giá trị tuyệt đối của sai lệch càng lớn cần có tin hiệu
điều khiển mạnh để đƣa sai lệch nhanh vê 0, theo bảng sau:
0 50 100
ZE PS PB
-50 -100
NS NB
e
0 5 10
ZE PS PB
-5 -10
NS NB
de
dt
43
Bảng 1.1: Luật chỉnh định KR
E
NB NS ZE PS PB
NB B S S S B
NS B B S B B
ZE B B B B B
PS B B S B B
PB B S S S B
+ Luật hợp thành là luật MAX – MIN, phƣơng pháp giải mờ là phƣơng
pháp điểm trọng tâm.
- Bộ chỉnh định mờ 2 (Chỉnh định KD)
Bộ chỉnh định mờ 2 cũng có hai đầu vào là sai lệch e(t), đạo hàm sai
lệch . Đầu ra là giá trị KD đã chỉnh định.
+ Đầu vào và đầu ra của bộ chỉnh định mờ 2 giống bộ chỉnh định I. Tức
là sai lệch e(t), đạo hàm sai lệch và đầu ra KD có dải giá trị và hàm thuộc
nhƣ bộ chỉnh định mờ 1.
+ Luật chỉnh định KD: Tín hiệu điều khiển càng mạnh nếu KR càng lớn,
KD và α càng nhỏ. Khi giá trị tuyệt đối của sai lệch càng lớn cần có tín hiệu
điều khiển mạnh để đƣa sai lệch nhanh về 0. Trên cơ sở đó, ta xây dựng luật
chỉnh định kD nhƣ bảng sau:
Bảng 1.2: Luật chỉnh định KD
E
NB NS ZE PS PB
NB S B B B S
NS S B B B S
ZE S S B S S
44
PS S B B B S
PB S B B B S
+ Luật hợp thành là luật MAX – MIN, phƣơng pháp giải mờ là phƣơng
pháp điểm trọng tâm.
- Bộ chỉnh định mờ 3 ( Chỉnh định α )
+ Đầu vào bộ chỉnh định mờ 3 cùng các tập mờ của chúng giống nhƣ
đầu vào của bộ chỉnh định mờ 1và 2.
+ Đầu ra cùng các hàm thuộc bộ chỉnh định mờ cho trong hình sau:
Hình 2.6: Đầu ra bộ chỉnh định α
+ Luật chỉnh định: Luật chỉnh định α cho trong bảng sau.
Bảng 1.3: Luật chỉnh định α
E
NB NS ZE PS PB
NB S M B M S
NS S MS MS MD S
ZE S S MS D S
PS S MS MS MD S
PB S M B M S
0 1 2 3 4 5 6
S MS M B
α
45
+ Luật hợp thành là luật MAX – MIN, phƣơng pháp giải mờ là phƣơng
pháp điểm trọng tâm.
2.1.2. Phương pháp chỉnh định mờ hệ số α
- Nội dung phƣơng pháp này thể hiện trong hình sau:
Hình 2.7: Phương pháp chỉnh định mờ hệ số α
Trong sơ đồ trên, các tham số kp, TI, TD đƣợc đƣa vào trƣớc khi hệ
thống hoạt động. Tín hiệu ra u của bộ điều khiển PID đƣợc hiệu chỉnh sao cho
phù hợp với đối tƣợng điều khiển.
Tín hiệu đầu ra của bộ điều khiển PID trƣớc khi chỉnh định:
u(t) = kpe(t) + + kpTD
Tín hiệu đầu ra của bộ điều khiển PID sau khi chỉnh định:
αu(t) = αkpe(t) +α + αkpTD
= αkpe(t) + + αkpTD (2-2)
K p
1
T I
s
T D s
FC
α
Đối
tƣợng
46
Đặt:
Do đó việc chỉnh định tín hiệu u có thể coi nhƣ chỉnh định kp, TI, TD.
Với một hệ số α thích hợp, sẽ có một bộ điều khiển với tham số phù hợp cho
đối tƣợng ổn định.
Khâu FC (Fuzzy Control) trong sơ đồ trên có nhiệm vụ tạo ra tín hiệu
hiệu chỉnh Dα để hiệu chỉnh hệ số α theo nguyên tắc: Nếu sai lệch của hệ
thống càng lớn thì tín hiệu chỉnh càng nhỏ và ngƣợc lại, nếu sai lệch của hệ
thống càng nhỏ thì tín hiệu hiệu chỉnh càng lớn. Khâu FC nhận 2 đầu vào lấy
ra từ bộ điều khiển PID là kpe và TD ( sai lệch và đạo hàm sai lệch đã
nhận thêm các hệ số tƣơng ứng). Hệ số hiệu chỉnh α gồm 2 thành phần: thành
phần ban đầu α0 và thành phần hiệu chỉnh Dα:
α = α0 + Dα với α0 = 1.
Khâu α trong hình 1.20 có chức năng tạo tín hiệu điều khiển udk = αu.
Tín hiệu này sẽ trực tiếp điều khiển đối tƣợng.
- Thiết kế khâu FC
+ Dải giá trị và các tập mờ của đầu vào 1
Hình 2.8: Tập mờ đầu vào 1
0 100 200
ZE PS PB
-100 -200
NS NB
e
47
µ
S B
0 100
α
+ Dải giá trị và các tập mờ của đầu vào 2
Hình 2.9: Tập mờ đầu vào 2
+ Dải giá trị và các tập mờ của đầu ra
Hình 2.10: Tập mờ đầu ra
+ Luật chỉnh định: Luật chỉnh định làm việc theo nguyên tắc: nếu sai
lệch của hệ thống càng lớn thì tín hiệu hiệu chỉnh càng nhỏ và ngƣợc lại, nếu
sai lệch của hệ thống càng nhỉ thì tin hiệu hiệu chỉnh càng lớn.
Bảng 1.4: Luật chỉnh định hệ số α
E
NB NS ZE PS PB
NB S B B B S
0 10 20
ZE PS PB
-10 -20
NS NB
de
dt
48
NS S B B B S
ZE S S B S S
PS S B B B S
PB S B B B S
+ Luật hợp thành là luật MAX – MIN, phƣơng pháp giải mờ là phƣơng
pháp điểm trọng tâm.
Do các tập mờ đầu vào và ra hai bên bảng luật điều chỉnh định là đối
xứng nhau nên α sẽ nhận giá trị nhƣ nhau với cùng một độ lớn nhƣng khác
dấu của sai lệch e(t). Do đó, ta chỉnh lại các tập mờ vào ra và luật chỉnh định
nhƣ sau:
Hình 2.11: Tập mờ đầu vào 1 Hình 2.12: Tập mờ đầu vào 2
Hình 2.13: Tập mờ đầu ra
0 100 200
S M B
e
0 10 20
S M B
de
dt
α
0 1000
S B
49
Bảng 1.5: Luật chỉnh định hệ số α thu gọn
E
S M B
S B B S
M B B S
B B S S
2.2. Chíp AVR ATMEL16
Vi điều khiển 8 bit AVR Atmega16 là loại vi điều khiển có 16 kbyte bộ
nhớ Flash để nạp chƣơng trình điều khiển do công ty Atmel chế tạo.
Atmega16 có kiến trúc hiện đại kiểu RISC nâng cao (Advanced Reducer
Instruction Set Computer) và tiêu thụ ít năng lƣợng. Các đặc điểm cơ bản của
Atmega16 nhƣ sau
2.2.1.Cấu trúc
131 lệnh, hầu hết trong đó chỉ thực hiện trong một chu kỳ đồng hồ.
32 thanh ghi đa năng 8 bit.
Tốc độ xử lý dữ liệu lên đến 16 triệu lệnh 1 giây ở tần số 16 MHz.
Có bộ thực hiện phép Nhân 2 vòng.
Bộ nhớ, loại không tự mất dữ liệu.
Bộ nhớ 16K byte có thể lập trình đƣợc ngay trên bản mạch hệ thống
mà không phải tháo rời chip. Số lần ghi - xoá cho phép là 10.000 lần.
512 byte EEPROM lập trình đƣợc ngay trong hệ thống với số lần
ghi - xóa là 100.000 lần.
1K byte SRAM.
Thời gian duy trì dữ liệu: 20 năm tại 850C và 100 năm tại 250C. Cho
phép lập trình bảo mật chƣơng trình và dữ liệu trong bộ nhớ.
Ngoại vi:
50
2 bộ đếm/định thời 8 bit với bộ chia tần riêng.
1 bộ đến/định thời 16 bit với bộ chia tần riêng.
Chức năng đếm thời gian thực với mạch dao động riêng.
8 kênh vào cho bộ chuyển đổi ADC 10 bit.
Bộ định thời watchdog lập trình đƣợc với mạch dao động riêng có
sẵn trên chip.
Bộ so sánh tƣơng tự trên chip.
Giao tiếp:
Chức năng giao tiếp hƣớng theo byte kiểu 2 dây.
Bộ USART nối tiếp lập trình đƣợc.
Giao tiếp nối tiếp SPI chủ/tớ.
Giao tiếp JTAG.
Các đặc điểm khác của vi điều khiển:
Reset khi cấp nguồn và có thể lập trình để dò sụt áp nguồn nuôi.
Có sẵn bộ dao động RC trên chip.
Cho phép lập trình từ các nguồn ngắt bên trong và bên ngoài.
Có 6 chế độ ngủ
Vào/ ra và đóng gói:
32 đƣờng vào/ra lập trình đƣợc.
PDIP40 có 40 chân, PLCC vàTQPF 44 chân nhƣ trong hình sau:
51
Hình 2.14. Sơ đồ bố trí chân và các kiểu khác nhau của ATmega16
Điện áp hoạt động:
4.5 – 5.5 V
Dải tốc độ:
0 – 16MHz
Công suất tiêu thụ tại 1MHz và 250C:
Chế độ tích cực: 1.1 mA
Chế độ chờ: 0.35 mA
Chế độ giảm năng lƣợng: < 1 A.
Công nghệ chế tạo bán dẫn:
Công nghệ CMOS.
Vi điều khiển đƣợc chế tạo với công nghệ bộ nhớ không mất dữ liệu
mật độ cao của Atmel đồng thời cũng cho phép lập trình ngay trên hệ thống
để nạp dữ liệu và chƣơng trình vào bộ nhớ này. Điều này mang lại tính mềm
dẻo và hiệu quả cao về thời gian và chi phí trong nhiều ứng dụng vi điều
khiển. Vi điều khiển đƣợc hỗ trợ bởi một tập hợp đầy đủ các công cụ phát
triển chƣơng trình và hệ thống bao gồm các trình biên dịch ngôn ngữ lập trình
C, các trình dịch hợp ngữ macro, các chƣơng trình gỡ rối, mô phỏng chƣơng
trình, các bộ mạch mô phỏng có sẵn kèm theo các thiết bị đánh giá thử
nghiệm.
52
Lõi của vi điều khiển AVR Atmega16 kết hợp tập lệnh phong phú với
32 thanh ghi đa năng. Tất cả 32 thanh ghi này đƣợc nối trực tiếp với đơn vị số
học và lôgíc ALU. Cách thức này cho phép hai thanh ghi độc lập nhau đƣợc
truy nhập trong cùng một lệnh đơn, thực hiện trong một chu kỳ đồng hồ. Kết
quả là tốc độ xử lý nhanh hơn gấp 10 lần kiều vi điều khiển theo kiến trúc
CISC. Vi điều khiển Atmega 16 sử dụng kiến trúc Harvard theo phân loại đối
với phƣơng thức truy cập bộ nhớ và bus riêng biệt cho chƣơng trình và dữ
liệu. Bộ nhớ chƣơng trình đƣợc thực thi với một đƣờng ống hai tầng. Trong
khi lệnh đang đƣợc thực thi thì lệnh tiếp theo đƣợc nhận vào bộ nhớ chƣơng
trình. Giải pháp này cho phép các lệnh đƣợc thực thi trong mọi chu kỳ xung
nhịp. Điều này rõ ràng đã làm tăng đáng kể tốc độ xử lí của vi điều khiển. Bộ
nhớ chƣơng trình là bộ nhớ flash lập trình đƣợc ngay trên hệ thống nhƣ đã nói
đến ở trên. Các loại vi điều khiển ATmega 16 đƣợc chỉ ra trong bảng .
Bảng 1.5 Các loại vi điều khiển ATmega16
53
Hình 2.15: Sơ đồ cấu trúc bên trong vi điều khiển ATmega16
54
2.2.2. Mô tả các chân
VCC: Điện áp nguồn nuôi.
GND: Đất.
Cổng A (PA7PA0): là cổng vào/ra hai hƣớng 8 bit. Các chân của
cổng có các điện trở nối lên nguồn dƣơng (pull – up) có thể chọn cho từng bit.
Các chân ra của cổng A có thể cho phép dòng điện 20 mA đi qua và trực tiếp
điều khiển Led hiển thị. Khi các chân PA0 đến PA7 là các lối vào và đƣợc đặt
xuống mức thấp từ bên ngoài, chúng sẽ là nguồn dòng nếu các điện trở bên
trong nối lên nguồn dƣơng đƣợc kích hoạt. Các chân của cổng A ở trạng thái
có trở kháng cao khi tín hiệu reset ở mức tích cức hoặc ngay cả khi không có
tín hiệu giữ nhịp.
Cổng B (PB7PB0): có chức năng tƣơng tự nhƣ cổng A. Cổng B cũng
cung cấp các chức năng ứng với các tính năng đặc biệt khác của ATmega16
[9].
Cổng C (PC7PC0): có chức năng tƣơng tự nhƣ cổng A. Cổng C cũng
cung cấp các chức năng cho giao tiếp JTAG và ứng với các tính năng đặc biệt
khác của ATmega16 [9].
Cổng D (PD7PD0): có chức năng tƣơng tự nhƣ cổng A. Cổng B
cũng cung cấp các chức năng cho giao tiếp nối tiếp dùng bộ USART và ứng
với các tính năng đặc biệt khác của ATmega16 [9].
Reset: Lối vào đặt lại. Bộ vi điều khiển sẽ đƣợc đặt lại khi chân này ở
mức thấp trong hơn 50 ns ngay cả khi không có tín hiệu giữ nhịp.
XTAL1, XTAL2: nối với bộ dao động thạch anh.
AVCC: Điện áp cho cổng A khi dùng với bộ ADC bên trong.
AREF: Cung cấp điện áp chuẩn cho bộ ADC.
2.2.3. Bộ định thời
Bộ định thời (timer/counter0) là một module định thời/đếm 8 bit, có các
đặc điểm sau:
55
Bộ đếm một kênh
Xóa bộ định thời khi trong mode so sánh (tự động nạp)
PWM
Tạo tần số
Bộ đếm sự kiện ngoài
Bộ chia tần 10 bit
Nguồn ngắt tràn bộ đếm và so sánh
Sơ đồ cấu trúc của bộ định thời:
Hình 2.16: Sơ đồ cấu trúc bộ định thời
2.2.3.1. Các thanh ghi
TCNT0 và OCR0 là các thanh ghi 8 bit. Các tín hiệu yêu cầu ngắt đều nằm
trong thanh ghi TIFR. Các ngắt có thể đƣợc che bởi thanh ghi TIMSK.
Bộ định thời có thể sử dụng xung clock nội thông qua bộ chia hoặc xung
clock ngoài trên chân T0. Khối chọn xung clock điều khiển việc bộ định
thời/bộ đếm sẽ dùng nguồn xung nào để tăng giá trị của nó. Ngõ ra của khối
chọn xung clock đƣợc xem là xung clock của bộ định thời (clkT0).
56
Thanh ghi OCR0 luôn đƣợc so sánh với giá trị của bộ định thời/bộ đếm.
Kết quả so sánh có thể đƣợc sử dụng để tạo ra PWM hoặc biến đổi tần số ngõ
ra tại chân OC0.
2.2.3.2. Đơn vị đếm
Phần chính của bộ định thời 8 bit là một đơn vị đếm song hƣớng có thể lập
trình đƣợc. Cấu trúc của nó nhƣ hình dƣới đây:
Hình 2.17: Đơn vị đếm
count: tăng hay giảm TCNT0 1
direction: lựa chọn giữa đếm lên và đếm xuống
clear: xóa thanh ghi TCNT0
clkT0: xung clock của bộ định thời
TOP: báo hiệu bộ định thời đã tăng đến giá trị lớn nhất
BOTTOM: báo hiệu bộ định thời đã giảm đến giá trị nhỏ nhất (0)
57
2.2.3.3. Đơn vị so sánh ngõ ra
Hình 2.18: Sơ đồ đơn vị so sánh ngõ ra
Bộ so sánh 8 bit liên tục so sánh giá trị TCNT0 với giá trị trong thanh ghi
so sánh ngõ ra (OCR0). Khi giá trị TCNT0 bằng với OCR0, bộ so sánh sẽ tạo
một báo hiệu. Báo hiệu này sẽ đặt giá trị cờ so sánh ngõ ra (OCF0) lên 1 vào
chu kỳ xung clock tiếp theo. Nếu đƣợc kích hoạt (OCIE0=1), cờ OCF0 sẽ tạo
ra một ngắt so sánh ngõ ra và sẽ tự động đƣợc xóa khi ngắt đƣợc thực thi. Cờ
OCF0 cũng có thể đƣợc xóa bằng phần mềm.
2.2.4. Mô tả các thanh ghi
2.2.4.1. Thanh ghi điều khiển bộ định thời/bộ đếm TCCR0
*) Bit 7-FOC0: So sánh ngõ ra bắt buộc
Bit này chỉ tích cực khi bit WGM00 chỉ định chế độ làm việc không có
PWM. Khi đặt bit này lên 1, một báo hiệu so sánh bắt buộc xuất hiện tại đơn
vị tạo dạng sóng.
58
*) Bit 6, 3-WGM01:0: Chế độ tạo dạng sóng
Các bit này điều khiển đếm thứ tự của bộ đếm, nguồn cho giá trị lớn nhất
của bộ đếm (TOP) và kiểu tạo dạng sóng sẽ đƣợc sử dụng.
*) Bit 5:4-COM01:0: Chế độ báo hiệu so sánh ngõ ra
Các bit này điều khiển hoạt động của chân OC0. Nếu một hoặc cả hai bit
COM01:0 đƣợc đặt lên 1, ngõ ra OC0 sẽ hoạt động.
*) Bit 2:0: CS02:0: Chọn xung đồng hồ
Ba bit này dùng để lựa chọn nguồn xung cho bộ định thời/bộ đếm.
2.2.4.2. Thanh ghi bộ định thời/bộ đếm
Thanh ghi bộ định thời/bộ đếm cho phép truy cập trực tiếp (cả đọc và ghi)
vào bộ đếm 8 bit.
2.2.4.3. Thanh ghi so sánh ngõ ra-OCR0
59
Thanh ghi này chứa một giá trị 8 bit và liên tục đƣợc so sánh với giá trị
của bộ đếm.
2.2.4.4. Thanh ghi mặt nạ ngắt
Bit 1-OCIE0: Cho phép ngắt báo hiệu so sánh
Bit 0-TOIE0: Cho phép ngắt tràn bộ đếm
2.2.4.5. Thanh ghi cờ ngắt bộ định thời
Bit 1-OCF0: Cờ so sánh ngõ ra 0
Bit 0-TOV0: Cờ tràn bộ đếm
Bit TOV0 đƣợc đặt lên 1 khi bộ đếm bị tràn và đƣợc xóa bởi phần cứng
khi vector ngắt tƣơng ứng đƣợc thực hiện. Bit này cũng có thể đƣợc xóa bằng
phần mềm.
2.2.5. USART
Bộ truyền nhận nối tiếp đồng bộ và bất đồng bộ là một thiết truyền
thông nối tiếp có các chức năng chính nhƣ sau:
Hoạt động song công (các thanh ghi truyền và nhận nối tiếp độc lập với
nhau).
Hoạt động đồng bộ hoặc bất đồng bộ
Bộ tạo tốc độ baud có độ chính xác cao
Hỗ trợ khung truyền nối tiếp với 5, 6, 7, 8, hoặc 9 bit dữ liệu và 1 hoặc
2 bit stop
60
Kiểm tra chẵn lẻ
Phát hiện tràn dữ liệu
Phát hiện lỗi khung
Lọc nhiễu, bao gồm phát hiện bit start lỗi và bộ lọc thông thấp số
Ngắt khi kết thúc truyền, thanh ghi truyền hết dữ liệu và kết thúc nhận
Chế độ truyền thông đa vi xử lý
Chế độ truyền đồng bộ tốc độ cao
Sơ đồ khối của bộ USART nhƣ sau:
Hình 2.19: Sơ đồ khối bộ USART
USART bao gồm 3 phần chính: bộ tạo xung clock, bộ truyền và bộ nhận.
Các thanh ghi điều khiển đƣợc sử dụng chung giữa các phần này.
61
2.2.5.1. Tạo xung clock
Bộ tạo xung clock tạo ra xung đồng hồ căn bản cho bộ truyền và bộ nhận.
USART hỗ trợ 4 chế độ hoạt động xung clock: bất đồng bộ, bất đồng bộ tốc
độ cao, truyền đồng bộ master và truyền đồng bộ slave. Sơ đồ khối của bộ tạo
xung clock nhƣ sau:
Hình 2.20: Đơn vị tạo xung clock
.
txclk: xung đồng hộ bộ truyền
rxclk: xung đồng hồ bộ nhận
xcki: tín hiệu vào từ chân XCK, sử dụng cho hoạt động truyền đồng bộ master
xcko: tín hiệu xung clock ngõ ra tới chân XCK, sử dụng cho hoạt động truyền
đồng bộ slave
fosc: tần số từ chân XTAL
2.2.5.2. Định dạng khung truyền
USART chấp nhận tất cả 30 tổ hợp của các định dạng khung truyền sau
đây:
1 bit start
5, 6, 7, 8, hoặc 9 bit dữ liệu
Có hoặc không có bit chẵn lẻ
62
1 hoặc 2 bit stop
Một khung truyền bắt đầu với một bit start, theo sau đó là bit có trọng số
thấp nhất (LSB) của dữ liệu (có thể lên tới 9 bit), kết thúc bằng bit có trọng số
lớn nhất (MSB) và bit stop.
Hình 2.21: Định dạng khung truyền
St: bit start (mức thấp)
(n): bit dữ liệu (0 đến 8)
P: bit chẵn lẻ
Sp: bit stop (mức cao)
IDLE: không có dữ liệu truyền (mức cao trong suốt thời gian idle)
2.2.5.3. Khởi tạo USART
Quá trình khởi tạo USART bao gồm việc thiết lập tốc độ baud, thiết lập định
dạng khung và kích hoạt bộ truyền và bộ nhận.
Thiết lập hoạt động truyền bất động bộ sử dụng polling (không dùng ngắt) và
định dạng khung truyền là cố định. Tốc độ baud là một tham số của hàm.
2.2.5.4. Truyền thông dữ liệu-bộ truyền USART
Bộ truyền USART đƣợc kích hoạt bằng cách thiết lập bit TXEN trong
thanh ghi UCSRB. Khi bộ truyền đƣợc kích hoạt, chân TxD hoạt động nhƣ
ngõ ra của bộ truyền nối tiếp. Tốc độ baud, chế độ hoạt động và định dạng
khung truyền phải đƣợc thiết lập trƣớc khi thực hiện truyền dữ liệu.
63
a) Truyền khung 5 đến 8 bit dữ liệu
Việc truyền dữ liệu đƣợc thiết lập bằng cách nạp dữ liệu truyền vào bộ
đệm truyền. Dữ liệu trong bộ đệm sẽ đƣợc đƣa vào thanh ghi dịch khi thanh
ghi dịch đã sẵn sàng gửi một khung mới.
b) Truyền khung 9 bit dữ liệu
Nếu sử dụng 9 bit dữ liệu, bit thứ 9 phải đƣợc ghi vào bit TXB8 trong
thanh ghi UCSRB trƣớc khi byte còn lại đƣợc ghi vào UDR.
2.2.6. Bé biÕn ®æi a/d
Vi điều khiểnATmega16 có một bộ biến đổi ADC tích hợp trong chip với
các đặc điểm:
Độ phân giải 10 bit
Sai số tuyến tính: 0.5LSB
Độ chính xác +/-2LSB
Thời gian chuyển đổi:65-260μs
8 Kênh đầu vào có thể đƣợc lựa chọn
Có hai chế độ chuyển đổi free running và single conversion
Có nguồn báo ngắt khi hoàn thành chuyển đổi
Loại bỏ nhiễu trong chế độ ngủ.
Tám đầu vào của ADC là tám chân của PORTA và chúng đƣợc chọn
thông qua một MUX.
Để điều khiển hoạt động vào ra dữ liệu của ADC và CPU chúng ta có 3
thanh ghi: ADMUX là thanh ghi điều khiển lựa chọn kênh đầu vào cho
ADC, ADCSRA là thanh ghi điều khiển và thanh ghi trạng thái của
ADC, ADCH và ADCL là 2 thanh ghi dữ liệu.
64
Hình 2.22 Sơ đồ bộ biến đổi A/D
2.2.6.1. Thanh ghi dữ liệu ACDH và ADCL
Thanh ghi này chứa dữ liệu chuyển đổi từ tƣơng tự sang số, đƣợc sắp xếp nhƣ
hình dƣới đây.
2.2.6.2. Nguyên tắc hoạt động và lập trình điều khiển
65
ADC có nhiệm vụ chuyển đổi tín hiệu điện áp tƣơng tự thành tín hiệu số
có độ phân giải 10 bit.Với giá trị nhỏ nhất của điện áp đặt ở chân AGND và
giá trị cực đại của điện áp tƣơng tự đƣợc mắc vào chân AREF. Tám kênh
tƣơng tự đầu vào đƣợc chọn lựa thông qua ADMUX và ADMUX này đƣợc
điều khiển bởi thanh ghi ADMUX.
ADC này có thể hoạt động đƣợc ở hai chế độ. Đó là chuyển đổi đơn: chỉ
chuyển đổi một lần khi có lệnh chuyển đổi và chế độ tự chuyển đổi (Free
running mode) đây là chế độ mà ADC tự động chuyển đổi khi đƣợc hoạt động
và công việc chuyển đổi có tính tuần hoàn (chỉ cần khởi động một lần).
ADC đƣợc phép hoạt động nhờ thiết lập bit ADEN. Quá trình chuyển đổi
đƣợc bắt đầu bằng việc ghi vào bit ADSC mức logic 1 và trong suốt quá trình
chuyển đổi bit này luôn đƣợc giữ ở mức cao. Khi quá trình chuyển đổi hoàn
thành thì bit này đƣợc xóa bằng phần cứng và cờ AIDF đƣợc bật lên.
Dữ liệu sau khi chuyển đổi đƣợc đƣa ra thanh ghi dữ liệu ADCL và
ADCH, nhƣng chú ý khi đọc dữ liệu từ hai thanh ghi này thì đọc ADCL trƣớc
rồi mới đọc ADCH. Nếu đọc ADCH trƣớc thì dữ liệu cập nhật có thể ghi đè
lên ADCL (Vi điều khiển nghĩ rằng đã đọc xong dữ liệu).
Để điều khiển vào ra dữ liệu với ADC, các bƣớc thực hiện nhƣ sau:
Bƣớc 1: Định nghĩa các cổng vào cho tín hiệu tƣơng tự
Xóa bit tƣơng ứng với chân đó trong thanh ghi DDRA. Sau đó loại bỏ điện
trở treo bằng cách xóa bit tƣơng ứng ở thanh ghi PORTA.
Bƣớc 2: Chọn kênh tƣơng tự vào (chọn chân vào cho ADC) thông qua
thanh ghi ADMUX (có thể thay đổi trong quá trình hoạt động).
Bƣớc 3: Thiết lập các thông số cho ADC
Tốc độ chuyển đổi thông qua xung nhip chuyển đổi.
Chế độ chuyển đổi : đơn hoặc tự động.
66
Sử dụng ngắt hoặc không.
Bƣớc 4: Bắt đầu chuyển đổi và đọc dữ liệu.
2.2.7. PhÇn mÒm CodeVision AVR
Đây là một chƣơng trình chuyên dụng để viết chƣơng trình ngôn ngữ C
và biên dịch để nạp cho các loại vi điều khiển AVR của công ty Atmel. Phần
mềm này do công ty HP Info Tech phát triển. Cửa sổ làm việc chính của
chƣơng trình hình 2.22
Chƣơng trình đƣợc thiết kế để chạy trong môi trƣờng hệ thống
Windows 95, 98, Me, NT 4, 2000, XP và Vista 32bit. Ngôn ngữ C sử dụng
trong chƣơng trình hầu hết theo chuẩn ANSI C với một số cải tiến đặc biệt để
phù hợp với cấu trúc của vi điều khiển AVR và các hệ thống nhúng.
Phần mềm này là một IDE trong đó đã xây dựng sẵn nhiều công cụ lập
trình cho hệ thống nhúng. Đáng chú ý nhất là công cụ cho phép lập trình trực
tiếp trên hệ thống (In System Programming) khi code đƣợc viết xong. Phần
mềm cho phép kết nối với nhiều thiết bị lập trình cho AVR chip. Đó là Atmel
STK500, AVRISP, AVRISP MkII, AVR Dragon, JTAGICE MkII, AVRProg,
Kanda Systems STK200+, STK300, Dontronics DT006, Vogel Elektronik
VTEC-ISP, Futurlec JRAVR and MicroTronics ATCPU, Mega2000
Để phân tích gỡ rối cho hệ thống dùng vi điều khiển có sử dụng truyền
thông nối tiếp, trong CodeVisionAVR cũng đƣợc tích hợp hộp công cụ gỡ rối
Terminal giúp ngƣời thiết kế dễ dàng hơn rất nhiều.
Đồng thời với việc đã có các thƣ viện chuẩn của ngôn ngữ C, trong
CodeVision cũng có các thƣ viện dành riêng cho:
Màn hình hiển thị ký tự LCD
Bus I2C của Philips
Cảm biến nhiệt độ
Đồng hồ thời gian thực
67
Giao thức truyền thông 1 dây
Bộ nhớ EEPROM
Giao tiếp ngoại vi nối tiếp
Quản lý nguồn nuôi
Trễ
Chuyển đổi mã Gray
Hình 2.22: Cửa sổ làm việc chính của CodevisionAVR v1.25.7
68
CHƢƠNG 3
XÂY DỰNG HỆ TRUYỀN ĐỘNG ĐIỆN SỬ DỤNG BỘ ĐIỀU
KHIỂN v¹n n¨ng
Để thi công xây dựng bộ điều khiển ta phải thiết kế và thi công qua 2
bƣớc là: 1 là thiết kế và thi công phần cứng, 2 là thiết kế thi công phần mềm
3.1. thiÕt kÕ phÇn cøng cho bé ®iÒu khiÓn
3.1.1. Mục đích thiết kế bộ điều khiển
Hiện nay, trong các dây chuyền tự động, có nhiều loại đối tƣợng đƣợc
điều khiển phục vụ cho nhiều mục đích khác nhau, mỗi đối tƣợng sẽ tƣơng
ứng với một dải tín hiệu, một loại tín hiệu vào/ra (tƣơng tự, số), và đƣợc điều
khiển bởi các luật khác nhau. Điều này sẽ gây ra nhiều vấn đề khi tổng hợp hệ
thống cũng nhƣ khi bảo trì, sửa chữa dây chuyền sản xuất, nhất là khi phải
thay thế các thiết bị.
Xuất phát từ thực tế trên, em thực hiện hệ chế tạo bộ điều khiển vạn
năng với mục đích là sử dụng cho nhiều loại đối tƣợng trong công nghiệp. Bộ
điều khiển này có thể áp dụng cho những đối tƣợng mà ta đã biết mô hình và
cả những đối tƣợng mà chúng ta không có hiểu biết nhiều về mô hình đối
tƣợng thông qua bộ điều khiển mờ (fuzzy control). Với bộ điều khiển vạn
năng này em xây dựng hệ truyền động điện sử dụng bộ điều khiển vạn năng.
3.1.2. Sơ đồ khối bộ điều khiển
Với mục đích thiết kế trên, bộ điều khiển đƣợc thiết kế và đƣợc cài đặt
luật điều khiển PID có chỉnh định mờ, để tăng tốc độ xử lý, tính toán và giảm
thời gian trích mẫu trong quá trình điều khiển, ta sử dụng 2 chip AVR, trong
đó, chip 1 thực hiện chỉnh định tham số cho bộ điều khiển, sau đó những tham
số này đƣợc truyền đến chip 2. Lúc này chip 2 có nhiệm vụ thực hiện luật
69
điều khiển PID đã đƣợc cài đặt và xuất tín hiệu điều khiển đối tƣợng, việc
truyền thông giữa hai chip đƣợc thực hiện thông qua module truyền thông
USART đƣợc tích hợp sẵn trên chip.
Ngoài ra chíp 2 còn có nhiệm vụ thực hiện giao tiếp với ngƣời sử dụng
thông qua bàn phím và màn hình hiển thị, bên cạnh đó, những ứng dụng cần
giao tiếp với máy tính để giám sát quá trình điều khiển hay phục vụ cho việc
truyền thông trong mạng công nghiệp đƣợc thông qua chip 1.
Mặt khác, cả hai chip đều đƣợc thiết kế các đầu vào/ra tƣơng
tự/xungphục vụ cho quá trình điều khiển, mỗi chíp đƣợc thiết kế 8 đầu
vào/ra giúp ngƣời dùng có nhiều lựa chọn tùy mục đích điều khiển.
Hình 3.1: Sơ đồ khối của bộ điều khiển
3.2. s¬ ®å nguyªn lý cña bé ®iÒu khiÓn
Thuyết minh sơ đồ:
Do yêu cầu của đề tài, cũng nhƣ yêu cầu bài toán đặt ra, em sử dụng 2
chip AVR (Atmega 16, Atmega 162) đƣợc kết nối với nhau thông qua giao
uart
LCD
CHIP
Atmega
16
CHIP
Atmega
162
Input/
Out put
Input/
Out put
Bàn phím
Truyền thông
Máy
tính
70
diện truyền thông UART, việc phân bổ nhiệm vụ của 2 chip đƣợc thực hiện
nhƣ sau:
Chip 1 (Atmega 162) đƣợc sử dụng để chỉnh định mờ tham số của bộ
điều khiển, đông thời chip 1 cũng đƣợc thiết kế để có thể giao tiếp với các
thiết bị khác thông qua một số giao diện chuẩn nhƣ RS232.
Ngoài ra chip 1 (Atmega162) làm nhiệm vụ thực hiện giao tiếp giữa bộ
điều khiển với ngƣời sử dụng thông qua bàn phím, màn hình hiện thị. Nhiệm
vụ chính của chip2 là nhận tham số đã chỉnh định từ chip 1 và thực hiện luật
điều khiển PID để cho ra tín hiệu điều khiển tới đối tƣợng
Hai chân P14, P15 của Atmega16 và P10, P11 của Atmega162 thực
hiện việc truyền và nhận dữ liệu trong quá trình điều khiển.
Trong sơ đồ nguyên lý trên, đối với chip 1 màn hình hiển thị LCD đƣợc
kết nối với chip qua cổng PC (PC0 ÷PC7). Trong quá trình điều khiển chân
PB3 đƣợc dùng cho truyền thông RS232 thông qua giắc DB9_Com port
Chƣơng trình điều khiển đƣợc nạp xuống từng chip thông qua giắc JP1
và JP2, các giắc này đều đƣợc nối với chíp thông qua chân PB4 ÷PB7.
Chip đƣợc cấp nguồn thông qua 2 chân 10 và 40 của mỗi chip.
Trong sơ đồ trên bộ điều khiển đƣợc tích hợp mạch biến đổi điện áp từ
12V DC sang 5V DC để cấp nguồn cho chip và các thiết bị khác.
71
3.2.1. Mạch điều khiển trung tâm
Hình 3.2: Khối xử lý trung tâm
72
3.2.2. Nguồn điều khiển
3.2.3. Khối truyền thông
3.2.4. Khối hiển thị
73
3.3. thiÕt kÕ phÇn mÒm ®iÒu khiÓn
3.3.1. Thuật toán điều khiển
Chọn chế độ
điều khiển
Cài đặt các
thông số PID
Lựa chọn kiểu đầu vào Lựa chọn kiểu đầu ra
Start
Khởi tạo các Module cần thiết
Timer, LCD, EEPROM
Đọc các tham số từ EEPROM
Thiện quét bàn phím
Phím Set ấn
gọi hàm Menu
Phím Cancel ấn
chạy hoăc dừng
Phím Down ấn
giảm gia trị đặt
Phím Down ấn
giảm gia trị đặt
Menu chức năng Thoát Menu
Nếu đang chạy thì dừng, đang dừng thì chạy
L
u
ật d
ig
ita
l P
ID
L
u
ật F
u
zzy
P
ID
T
h
am
số
S
P
T
h
am
số
K
D
T
h
am
số
K
i
T
h
am
số
K
T
Hàm điều chỉnh tham
số
Đ
àu
v
ào
x
u
n
g
Đ
àu
v
ào
tƣ
ơ
n
g
tự
Đ
àu
v
ào
tƣ
ơ
n
g
tự
[0
- 5
V
]
Đ
àu
ra tƣ
ơ
n
g
tự
[0
- 5
V
]
Đ
àu
ra tƣ
ơ
n
g
tự
[0
- 8
0
m
V
]
74
3.3.2. Kết quả
Hình3.3: Mô hình mạch điều khiển
Hình 3.4: Mô hình điều khiển động cơ DC
75
KÕt luËn
Sau 12 tuần nghiên cứu tìm tòi làm đồ án tốt nghiệp, dƣới sự phân công
của các thầy cô trong bộ môn Điện tự động khoa điện – điện tử, đƣợc sự chỉ
bảo hết sức nhiệt tình của thầy GS.TSKH Thân Ngọc Hoàn cùng với sự cố
gắng, nỗ lực hết sức của bản thân em, bản đồ án tôt nghiệp đã hoàn thành.
Đồ án đã đạt được kết quả như sau:
Nghiên cứu ứng dụng lý thuyết điều khiển mới hiện đại đặc biệt là điều
khiển mờ để tổng hợp lên bộ điều khiển.
Đã thiết kế thành công hệ truyền động điện bộ điều khiển vạn năng ứng
dụng điều khiển động cơ 1 chiều có khâu hồi tiếp tốc độ.
Viết chƣơng trình cho vi điều khiển AVR sử dụng ngôn ngữ C, để làm
khâu điều khiển trung tâm. Ngoài ra còn lập giao diện trên máy tính
bằng Visual basic 6.0, cho phép điều khiển tốc độ động cơ bằng tay
hoặc bằng máy tính.
Tuy nhiên hạn chế của đồ án là: mô hình chƣa đƣợc gon gàng, phân tích
cơ lý thuyết chƣa đƣợc đầy đủ sâu sắc. Nhƣng đó cũng là thành công của em
trong suốt thời gian qua.
Em xin chân thành cảm ơn!
Hải Phòng, ngày 1 tháng 7 năm 2010
Sinh viên
Nguyễn Thanh Tùng
76
Tµi liÖu tham kh¶o
1. PGS.TSKH Thân Ngọc Hoàn (2000), Máy Điện, NXB Xây Dựng.
2. GS.TSKH Thân Ngọc Hoàn, TS Nguyễn Tiến Ban (2007), Điều khiển
tự động các hệ thống TRUYỀN ĐỘNG ĐIỆN, NXB Khoa học kỹ
thuật.
3. Bùi Công Cƣờng – Nguyễn Doãn Phƣớc (2001), Hệ mờ mạng nơtron
và ứng dụng, NXB Khoa học và Kỹ thuật.
4. Phan Xuân Minh – Nguyễn Doãn Phƣớc (2001), Lý thuyết điều khiển
mờ, NXB Khoa học và Kỹ thuật.
5. Phạm Công Ngô (1996), Lý thuyết điều khiển tự động, NXB Khoa học
và Kỹ thuật.
6. Tống Văn On, Hoàng Đức Hải (1999), Họ vi điều khiển 8051, NXB
Lao động – Xã hội.
7. Ngô Diên Tập (2001), Đo lƣờng và điều khiển bằng máy tính, NXB
Khoa học và Kỹ thuật.
8. Atmega16 family datasheet.
Các file đính kèm theo tài liệu này:
- 42.NguyenThanhTung_DC1001.pdf