ỨNG DỤNG VI ĐIỀU KHIỂN ATMEGA 16 THIẾT KẾ CHẾ TẠO BỘ ĐIỀU KHIỂN
Trang 1ỨNG DỤNG VI ĐIỀU KHIỂN ATMEGA 16 THIẾT KẾ CHẾ TẠO BỘ ĐIỀU KHIỂN
ĐỘNG CƠ ĐIỆN MỘT CHIỀU KÍCH TỪ ĐỘC LẬP
KS TRẦN HOÀI LINH
TS NGUYỄN HỒNG QUANG
1.Đặt vấn đề:
Ngày nay công nghệ số đã và đang được ứng dụng rất nhiều trong mọi nghành của khoa học kỹ thuật Ở các nước công nghiệp, truyền động điện đã ứng dụng rất thành công công nghệ này với những ưu việt hơn so với phương pháp điều khiển tương tự truyền thống như:
- Mềm dẻo trong việc thay đổi cấu trúc và tham số của hệ thống tự động.
- Độ chính xác cao.
- Có khả năng chống nhiễu tốt.
- Dễ dàng tự động hoá.
Đa dạng về chủng loại, linh hoạt về chức năng, dễ dàng thay đổi các tham số bằng chương trình phần mềm, các hệ thống vi điều khiển được thiết kế và chế tạo tin cậy sẽ tạo
ra những bộ điều khiển linh hoạt, phù hợp với từng đặc điểm của hệ điều khiển tự động
và tình hình sản xuất của nước ta hiện nay
Tuy nhiên ở nước ta phần lớn các bộ điều khiển số động cơ một chiều hiện đại (DC motor Drive), chất lượng cao hiện nay đều phải nhập hoàn toàn từ nước ngoài Nhưng thực ra nếu áp dụng tốt các nguyên lý về điều khiển số và vi xử lý, chúng ta hoàn toàn có thể chế tạo ra những bộ điều khiển hoàn chỉnh có chức năng tương đương Dưới đây là ví
dụ đầy đủ thiết kế mà chúng tôi đã thực hiện với đối tượng điều khiển là một động cơ một chiều kích từ nam châm vĩnh cửu cótải giả
2 Thực nghiệm nhận dạng đối tượng điều khiển:
Từ trước đến nay khi tổng hợp các hệ truyền động nhiều thông số người ta thường phân
hệ thành cấu trúc nhiều mạch vòng có các bộ điều chỉnh nối theo cấp Do đó việc xác định được các tham số của đối tượng điều khiển (mà không phải nhà sản xuất nào cũng cung cấp) là tất yếu
DC Motor
E
U
-I
U
-I
w M Mc
Thông thường đối động cơ điện một chiều nhà sản xuất sẽ cung cấp các thông số cơ bản:
Uưđm, Iưđm, Pđm, đm Tuy nhiên để tổng hợp và mô phỏng hệ chúng ta cần phải biết thêm một số tham số khác như: Điện trở phần ứng (Rư), Điện cảm phần ứng (Lư), Mômen quán tính của rôto (J), Hằng số mômen (Km), Mômen tổn hao theo tốc độ (B) Đây là các tham số động nên để xác định được cần phải thí nghiệm nhiều lần và lấy giá trị trung
Trang 2bình Có nhiều phương pháp thực nghiệm hay các công thức lý thuyết gần đúng để tính chúng Ở đây tác giả kết hợp cả hai phương pháp này xác định được:
- Hằng số mômen Km=0,138(Nm/A)
- Mômen tổn hao theo tốc độ B: B = 3,38,10-5(Nm/rad)
Với B là tổng sự suy giảm tương đương (the total equivalent damping)
- Điện trở phần ứng Rư= 5,9()
- Điện cảm phần ứng Lư= 3,54(mH.)
- Mômen quán tính của rôto J5,10-5kgm2
-Hằng số thời gian điện và hằng số thời gian cơ: Tư=0,6ms; Tc=15,5ms
* Mô hình toán học động cơ một chiều kích từ độc lập:
2 Tổng hợp và mô phỏng hệ thống điều khiển:
Sau khi nhận dạng đầy đủ các thông số của động
cơ (đối tượng điều khiển) thay vào sơ đồ cấu trúc mô
tả toán học động cơ rồi chạy mô phỏng trên Matlab Simulink:
Đối tượng điều khiển là động cơ có công suất nhỏ nên
tác giả chọn hệ điểu khiển với mạch vòng tốc độ (phản hồi âm tốc độ)
* Tổng hợp mạch vòng tốc độ:
Sơ đồ cấu trúc:
Tổng hợp theo phương pháp module đối xứng thì bộ điều
chỉnh có dạng PID:R (p)=
m cl cl
u u
K K T
JR BL
2
+
p K K
T
K
BR
m cl
cl
m
55
,
9
2
55
,
K K T
JL
m cl cl
2
= 3,44 + 224p,6 + 2 , 04 10 4 p
Mô phỏng Simulink:
1 R(1+Ts)
1 B+Js
Km
Km
+
-+
-U
M c
E
Trang 3Trên thực tế trong hệ chỉ có bộ điều chỉnh (được thực hiện bởi vi điều khiển) là xử lý tín hiệu số Nên khi mô phỏng trên simulink chỉ cần số hoá bộ điều chỉnh dùng phương pháp đổi biến Tustin: p=
1
1 2
z
z
T , trong đó thời gian cắt mẫu T tương ứng với mạch vòng tốc
độ là: T=0,01s Một cách khác là có thể dùng luôn bộ PID hay PI số có sẵn trong thư viện Simulink Các đặc tuyến tốc dòng quá độ sau khi số hoá bộ điều chỉnh về cơ bản giống
như analog nhưng độ chính xác giảm và chậm hơn do ảnh hưởng của thời gian cắt mẫu:
Rõ ràng là kết quả này là chưa được như mong muốn vì thế cần hiệu chỉnh lại các tham
số bộ điều chỉnh Kết quả bộ điều chỉnh chỉ cần là PI với Kp=2,66 ; Ki=130 , Kd=0 Như vậy sau khoảng 0,1 giây tốc độ động cơ đã ổn định ở giá trị đặt, quá độ điều chỉnh
có hơi lớn do sai số tính toán và đồ thị dòng điện tuy chưa lý tưởng nhưng cũng tương đối đúng
3 Tính toán thiết kế hệ thống:
Mặc dù những phương pháp tổng hợp các bộ điều chỉnh chưa thật hoàn thiện, đã tính gần đúng hoặc không xét tới ảnh hưởng của các tham số có trị số nhỏ một cách tương đối Những giá trị nhận dạng về đối tượng điều khiển cũng không thật chính xác cùng với việc
bỏ qua tác động của môi trường xung quanh mà từ đó tìm ra được thông số tối ưu cho bộ điều chỉnh Tuy nhiên việc tính toán tổng hợp gần đúng có giá trị to lớn trong định hướng thiết kế cũng như trong chỉnh định vận hành hệ thống sau này
a Mạch công suất :
hợp lý nhất:
L
T1
R M
DC Motor T3
T4
U1 220V AC
U2
U2
Trang 4P=10W Dòng điện và điện áp phần ứng nhỏ (2,2A-52V), tác giả có sẵn thyristor 80A-600V nên có thể bỏ qua công đoạn làm mát và bảo vệ (Nhưng nếu độc giả chưa có sẵn thì phải tính toán theo phương pháp thông thường)
Giả sử với động cơ nhỏ và điện áp lưới điện khá ổn định nên cũng không cần tính đến góc dự trữ, chỉ cần trừ đi điện áp rơi trên các phần tử: van, R, L, biến thế là có thể tính toán thiết kế được máy biến áp lực
b Mạch điều khiển:
thành và phần mềm tiện ích giao diện với người sử dụng,
* Chức năng điều khiển: người vận hành có thể thực hiện điều khiển theo 3 cách: 1 Điều khiển tại chỗ nhờ Panel (hộp điều khiển có các nút ấn và màn hình hiển thị LCD); 2 Điều khiển từ xa qua các đầu vào/ ra, số/tương tự (từ bàn máy); 3 Điều khiển, giám sát bằng máy vi tính (qua cổng COM)
- Bật tắt bộ biến đổi
- Chạy và dừng động cơ
- Điều chỉnh tốc độ
- Đảo chiều quay
- Chạy nhắp
- Dừng khẩn cấp
* Chức năng kiểm tra giám sát và bảo vệ:
- Hiển thị các tham số như: tốc độ, dòng điện,
điện áp…
- Tín hiệu báo trạng thái đang hoạt động của
động cơ
- Các tín hiệu bảo vệ động cơ: quá dòng, quá áp, quá tải…
* Để giao tiếp với nhiều khối chức năng đồng thời thực hiện được luật điều khiển tác giả
sử dụng hai vi điều khiển ATMEGA 16, một master và một slave Slave làm nhiệm vụ giao tiếp và hiển thị: nhận các tín hiệu đặt từ máy tính và phản hồi một mặt hiển thị (lên LCD), mặt khác truyền các dữ liệu đó và tốc độ phản hồi sang cho master Master nhận các dữ liệu này cùng tín hiệu đồng bộ thực hiện luật điều khiển (trong các bộ điều chỉnh) rồi đưa ra xung điều khiển bộ biến đổi
- Tín hiệu tốc độ lấy từ encoder: slave sẽ đếm số xung nhận được trong một đơn vị thời gian, từ đó suy ra vận tốc thực của động cơ
Trang 5- Tớn hiệu dũng điện phản hồi về là tớn hiệu tương tự nờn phải khuyếch đại rồi qua biến đổi A/D trong slave thành tớn hiệu số Mặt khỏc động cơ cú đảo chiều nờn giỏ trị phản hồi
cú hai dấu Do đú trước khi đưa về vi điều khiển cần qua cỏc bộ chỉnh lưu Mạch phản hồi dũng cần phải nhận biết được thời điểm dũng về 0 để đảo chiều Ở cỏc mạch chỉnh lưu
dựng diode thụng thường thỡ tớn hiệu dũng phản hồi về chuyển thành ỏp sẽ bị rơi trờn mạch chỉnh lưu một khoảng (0,7V), do đú khi dũng cũn nhỏ thỡ kết quả đo thiếu chớnh xỏc Ở đõy, tỏc giả dựng mạch chỉnh lưu dựng IC thuật toỏn, do vậy cú thể đo chớnh xỏc được thời điểm dũng về 0
4 Hệ thống điều khiển trung tõm:
a Vi điều khiển ATMEGA 16: thuộc họ AVR của hóng Atmel, là một dũng vi khiển tớch hợp cao với những chức năng cơ bản nhưng rất cần thiết trong những ứng dụng cụ thể
Đú là: 8 kờnh biến đổi A/D, 16Kbyte bộ nhớ chương trỡnh, 1Kbyte Ram, 2 bộ định thời,
512 byte EEprom và 21 nguyờn nhõn ngắt Với thạch anh 8MHz một chu kỳ mỏy của nú chỉ mất 0,125us nhanh hơn rất nhiều so với cỏc loại vi điều khiển thụng thường Khi thực hiện cỏc lệnh chủ yếu trong 1 chu kỳ mỏy, thậm chớ với phộp nhõn cũng chỉ mất 2 chu kỳ
b Sơ đồ hệ thống:
Master:
Thụng tin từ Slave được truyền qua cổng RS232 sang cho Master Trong Master
cú chương trỡnh phục ngắt truyền thụng làm nhiện vụ nhận thụng tin và chia thành hai loại: thứ nhất là thụng tin đặt
và thụng tin điều khiển, thứ hai là tốc độ thực của động cơ Từ đú Master tớnh
LCD
ưưưưHiểnưthịưtạiưchỗ
máy tính
- Đặtưthôngưsố
- Điềuưkhiển
- Hiểnưthịưdữưliệu Nhậnưtínưhiệuưđặtưtốcư
độưvàưthamưsốưbộưđiềuư
chỉnhưtừưmáyưtính.
BiếnưđổiưA/DưI
Đếmưxungưđoưtốcưđộ.
HiểnưthịưlênưLCD.
Truyềnưtínưhiệuưđặtưvàư
tốcưđộưphảnưhồiưsangư
choưMaster.
Vi điều khiển slave
Vi điều khiển master
Nhậnưxungưđồngưbộ.
BiếnưđổiưA/DưI Nhậnưtínưhiệuưđặtưvàư
tốcưđộưphảnưhồi Thựcưhiệnưluậtưđiềuư
khiển.
Phátưxungưđiềuưkhiển.
Truyềnưtínưhiệuưphảnư
hồiưlênưmáyưtính.
đèn led
Báoưtrạngưtháiư
đangưhoạtưđộngư củaưđộngưcơ
Xung điều khiểncác thyristor Xung Đồng bộ
Truyền thông không
đồng bộ rs232
Mạch phản hồi dòng
Encoder phản hồi tốc độ L
T1
R M
DC Motor
T3
T4 T2
U2 U2
G1
G2
G3
G4
U1
220V AC
Trang 6toán luật điều khiển PID số, kết quả tính toán được cùng với xung đồng bộ đưa vào chương trình tạo xung điều khiển alpha
e Sơ đồ bên trong của vi điều khiển Slave:
Slave nhận tín hiệu truyền từ máy tính xuống qua cổng COM và xử lý thông tin bằng chương trình xử lý ngắt truyền thông Cứ sau mỗi 10(ms) Slave lại đếm số xung từ Encoder, tính ra tốc độ động cơ rồi cùng với dữ liệu đặt gửi sang cho Master qua khối chương trình truyền tin
5 Điều khiển bằng PC:
Việc ứng dụng máy vi tính vào điều khiển ở các cấp độ khác nhau được ứng dụng nhiều trong quá trình sản xuất Với kiểu điều khiển này có ưu điểm là thuận lợi cho người vận hành vì chỉ cần ở nguyên vị trí mà có thể điều khiển và giám sát được một hay nhiều quá trình xảy ra một cách trực quan Nhưng quan trọng nhất là có thể thành lập cơ sở dữ liệu lưu thành hệ thống những thông tin về quá trình rất chính xác
Động cơ được điều khiển từ máy tính PC thông qua cổng COM (cổng nối tiếp) theo chuẩn RS232 Giao diện được viết bằng ngôn ngữ Visual C++ 6.0, bao gồm 2 phần:
bộ điều chỉnh, đặt tốc độ mong
ấn là mỗi lần máy tính gửi
Vi điều khiển nhận lần lượt dữ liệu này rồi xử lý
- Phần 2: hiển thị dữ liệu tốc độ và dòng điện trung bình dưới dạng số (đèn led) và đồ thị Qua các mạch phản hồi dòng và encoder phản hồi tốc độ, hai đại lượng này được số hoá, tính toán đồng thời gửi lên cho máytính Cứ sau mỗi 10ms vi khiển sẽ gửi lên 8 byte dữ liệu, máy tính sẽ nhận 2 lần, mỗi lần 4 byte theo dạng mã ASCII
6 Kết luận
Như đã đề cập ở trên, thực tế đối tượng điều khiển trong thí nghiệm là một động cơ nhỏ nên có hiện tượng dòng điện phần ứng bị gián đoạn chỉ khi mới tăng góc điều khiển anpha lên Tuy nhiên với bộ điều chỉnh đã tổng hợp áp vào điều khiển động cơ với chất lượng có thể chấp nhận được Để cải thiện chất lượng điều khiển có hai phương án như sau:
- Một dùng các phương pháp thu hẹp vùng gián đoạn dòng điện để áp dụng bộ điều chỉnh
đã tổng hơp, tăng thêm giải điều chỉnh Để thu hẹp vùng gián đoạn lại có hai khả năng: hoặc là dùng cuộn kháng để tăng thêm điện cảm trong mạch, hoặc là giảm biên độ của điện áp xoay chiều đưa vào chỉnh lưu, khi đó không cần tăng anpha lên quá lớn tránh hiện tượng gián đoạn dòng điện
Trang 7- Hai là dụng lụgic mờ nhằm tuyến tớnh hoỏ đặc tớnh vựng giỏn đoạn một cỏch tương đối Khi đú hoàn toàn cú thể điều khiển động cơ trong vựng giỏn đoạn này.Đõy mặc dự là thớ nghiệm với phần cứng đơn giản dễ thực hiện nhưng nguyờn lý điều khiển là hoàn toàn cơ bản và đỳng đắn Để thực hiện được đầy đủ cỏc chức năng chớnh của một bộ điều khiển động cơ một chiều kớch từ độc lập cũng như điều khiển được kớch từ thỡ cần phải tăng thờm khả năng và tốc độ xử lý của vi điều khiển trung tõm cũng như cỏc mạch phụ trợ khỏc mà thụi
L
T1
R
M
DC Motor T3
T4 T2
U1
220V AC
U2
U2
ĐIềU KHIểN TRUNG TÂM
MáY
VI TíNH
PHáT XUNG
G1 K1 G2 K2 G3 K3 G4 K4
G1
G2
G3
G4
ĐIềU KHIểN TạI CHỗ (Panel)
ĐIềU KHIểN
Từ XA (a/d i/o)
Điềuưkhiển HIểnưthị RS232
Giắc nối
Đoưđiệnưáp phầnưứng
Đoưdòngưđiện phầnưứng ENCODER
Đoưtốcưđộ
7 Acknowlegement
The authors gratefully acknowledge the receipt of a grant from the Flemish Interuniversity Council for University Development cooperation (VLIR UOS) which enabled them to carry out this work
TÀI LIỆU THAM KHẢO:
[1] Frank, Benjamin C (1995).Feedback control of dynamic system Third Edition Englewood Cliffs, New Jersey, Prentice-Hall Inc
[2] Messner, William, Tilbury, Dawn, (1999) Control Tutorials for MATLABđ and Simulink: A Web-Based Approach: 1/e http://www.engin.umich.edu/group/ctm/,
Regents of the University of Michigan (2002)
[3] Bishop, Robert H., Dorf, Richard C (2001) Modern Control Systems Ninth Edition Upper Saddle River, New Jersey, Prentice-Hall Inc
[4] Atmel coporation, Atmega 16 Datasheets, http://www.atmel.com