THIẾT KẾ VÀ THI CÔNG HỆ THỐNG

Một phần của tài liệu Ghép nối điều khiển động cơ một chiều bằng máy tính (Trang 86 - 108)

I . GHÉP NỐI GIỮA ĐỘNG CƠ VÀ CẢM BIẾN : 1. Moâ hình :

2 . Cảm biến vị trí ghép với động cơ DC:

Ta sử dụng động cơ một chiều 12V kích từ độc lập bằng nam châm vĩnh cửu, công suất nhỏ làm đối tượng điều khiển. Cảm biến vị trí là Encoder giải mã tuyệt đối 10 bit, Encoder này được ghép đồng trục với trục động cơ DC bằng khớp nối cứng, và hồi tiếp vị trí trục động cơ DC về Card mở rộng ở dạng 10 bit xung số với hai mức cap và thấp.

Do cảm biến vị trí là Encoder giãi mã tuyệt đối 10 bit nên trong một vòng quay, Encoder mã hóa 1024 vị trí khác nhau. Để tính được tổng số góc mà động cơ đã quay được(xác định vị trí trục động cơ), ta cần phải phát hiện khi nào tất cả các bit của Encoder chuyển từ tất cả các mức cao sang thấp hay ngược lại để tăng giảm số vòng đã quay của động cơ cho thích hợp.

Một điều ta phải quan tâm là khớp nối cứng giữa trục động cơ và trục cảm biến ta cần phải thật chính xác, nhằm giúp động cơ và cảm biến quay đồng trục với nhau để sai số điều khiển sẽ giảm đi nhiều.

Ngõ ra 10 bit của Encoder là cực thu hở, ta cần phải có 10 điện trở kéo lên nguồn, giá trị của các điện trở này khoảng 4.7KΩ, nguồn cấp cho Encoder là 5V DC. Với 10 bit mã hóa và hai dây nguồn, Encoder có tất cả là 12 dây ra với các màu dây như sau :

MÀU DÂY RA CỦAENCODER CHỨC NĂNG

Traéng +5V

ẹen GND

Trắng sọc tím D0

Trắng sọc nâu D1

Xám D2

Tím D3

Xanh dửụng D4

Xanh lá D5

Vàng D6

Cam D7

Đỏ D8

Naâu D9

Các thông số kỹ thuật của Encoder : THÔNG SỐ KỸ THUẬT

Digital shaft encoder (vị trí góc quay) Code 10 bit BCD Số xung cho một vòng 1024 Độ chính xác ± 1

Output Parallel TTL Tốc độ đọc 3.5kHz Thời gian chuyển đổi tối đa 50 ns

II . SƠ ĐỒ KHỐI HỆ THỐNG ĐIỀU KHIỂN VỊ TRÍ :

Để giao tiếp với động cơ, máy tính cần phải thông qua Card mở rộng có các bộ Digital input/output, A/D và D/A. Ở ngõ ra D/A của Card mở rộng, máy tính xuất ra điện áp thay đổi để điều khiển tốc độ và chiều quay của động cơ thông qua mạch điều khiển và mạch khuyết đại công suất. Ở ngõ Digital input của Card mở rộng, máy tính đọc giá trị của 10 bit số về từ Encoder để xác định vị trí hiện tại của trục động cơ, từ đó hiệu chỉnh và xuất áp điều khiển thích hợp.

III . MẠCH ĐỘNG LỰC:

Mạch công suất dùng để điều khiển tốc độ và chiều quay của động cơ, yêu cầu đặt ra là mạch phải có cấu hình thích hợp để động cơ có thể làm việc ở cả 4 phần tư của mặt phẳng đặc tính cơ. Nghĩa là động cơ có thể làm việc được ở cả chế độ động cơ và chế độ hãm.

Với động cơ công suất nhỏ điện áp 12V, ta sử dụng bộ mạch công suất là bộ chopper lớp E, với các khóa bán dẫn là transistor công suất có cấu hình như sau:

M

+

- Mạch

khuếch đại coâng suaát

Máy tính

(duứng Card mở rộng)

Encoder mã hóa tuyệt đối

10 bit

Mạch ẹieàu khieồn D/A(Uủk)

10 Bit Digital Input

Các transistor công suất và các diode mắc đối song nhau, các diode có chức năng là trả năng lượng từ động cơ về nguồn khi động cơ hoạt động ở chế độ hãm tái sinh. Transistor Q1 và Q3 dẫn điện áp cung cấp cho động cơ là 12V, động cơ quay theo chiều thuận. Transistor Q2 và Q4 dẫn điện áp cung cấp cho động cơ là –12V, động cơ quay theo chiều nghịch. Để thay đổi tốc độ động cơ ta thay đổi khoảng dẫn của các transistor bằng phương pháp điều rộng xung. Sơ đồ khối tạo tín hiệu điều rộng xung kích dẫn các transistor như sau :

+12V

M

+ -

Iử

Q1 Q2

Q3 Q4

D1 D2

D3 D4

Khối tạo xung tam

giác

Khối tạo so sánh

Khối cách ly

Tớn hieọu PWM kích daãn transistor Q1, Q3

Tớn hieọu PWM kích daãn transistor Q2, Q4 Uủk

Khối xác ủũnh chieàu

quay

DO

CHỨC NĂNG CỦA CÁC KHỐI : 1. Khối tạo xung tam giác :

Yêu cầu xung tam giác được tạo ra có tần số thay đổi, để thay đổi tần số đóng tắt của các transistor khi cần thiết.

Dùng 2 op-amp so sánh và tích phân, mạch có dạng sau:

Nguyên tắc làm việc của mạch :

Op-amp U1A có ngõ ra là dạng xung vuông , Op-amp này thực hiện chức năng so sánh điện áp chân 2 (0V) và chân 3. Biến trở VR1 thay đổi tần số , biến trở VR2 thay đổi biên độ xung vuông ngõ ra Opamp U1A.

Op-amp U1B có ngõ ra là xung tam giác tạo ra bỡi quá trình nạp và xả của tụ điện C1. Khi xung vuông ở ngõ ra Op-amp U1A lên mức cao, tụ C1 nạp, điện áp OUT tăng dần, vì dòng điện qua tụ không đổi nên điện áp ở ngõ ra tuyến tính theo thời gian. Khi xung vuông xuống mức thấp tụ C1 xả, điện áp ở ngõ ra giảm dần.

Hình sau là dang điện áp ở ngõ ra của hai Op-amp:

+VCC +VCC

-VCC -VCC

OUT

-

+ U1B LF353

7 6

5 4 8

- +

U1A LF353

1 3

2 4 8

C1 0.1uF R1 10K

VR2

50K VR1

50K

t U1A

U1B

2/ Khối so sánh :

Do xung tam giác tạo ra ở ngõ ra của Op-amp U1B có cả phần âm và dương nên ta dùng mạch cộng điện áp để có xung tam giác ở hai mức 0 và 5V cần thiết.

Các biến trở VR3 và VR4 dùng để điều chỉnh biên độ và mức offset so với 0V của xung tam giác ngõ ra của Op-amp U2A.

Dùng chức năng so sánh của Op-amp U2B để so sánh tín hiệu điện áp Uđk từ Card mở rộng và tín hiệu xung tam giác từ ngõ ra của U1A, nhằm tạo tín hiệu số có dạng xung vuông có bề rộng thay đổi được. Bằng cách thay đổi Udk từ 0V ->5V ta có độ rộng xung vuông PWM thay đổi từ 0% ->100%. Dạng áp được mô tả ở hình sau ủaõy :

U(V) 5

t(s) Uủk

t(s) 0

0 5

R3 10K

VR450K -Vcc

JP2

PWM

12 +Vcc

+ -

U2B LF353 5

6

7

8 R6 10K 4

VR3 10K

1 3

2

+Vcc -Vcc

R7 10K

R8 1K R4

10K

R5 R +Vcc

D1

DIODE

JP1

U_ủk12

+

- U2A

LF353 3

2

1 8

4

U1A

U2A

U2B

3 . Khối xác định chiều quay :

Gồm các cổng AND (74LS08) và NOT (74LS05) : nhằm tạo xung kích cho các Opto theo 2 cách :

Cách 1 :

Khi tín hiệu xác định chiều quay từ máy tính gửi đến(qua ngõ DO của Card) được AND với tín hiệu xung vuông vừa tạo ở phần trên. Đồng thời tín hiệu xác định chiều quay này được gửi qua cổng đảo rồi AND với tín hiệu xung vuông.

- Khi tín hiệu xác định chiều quay của máy tính ở mức cao thì tín hiệu này được AND với tín hiệu xung vuông để kích các Opto 1, 3 làm cho động cơ quay theo chiều thuận. Còn ngõ ra còn lại của cổng AND ở mức thấp nên các Opto 2, 4 bị khóa.

- Khi tín hiệu xác định chiều quay của máy tính ở mức thấp thì các Opto 1, 3 bị khóa. Còn ngõ ra còn lại của cổng AND ở mức cao nên các Opto 2, 4 được kích dẫn làm cho động cơ quay theo chiều nghịch.

Các dạng xung trên các OPTO:

Quay thuận : 1

0

0

OPTO 1,3

OPTO 2,4

Kích Opto 1,3

JP1 DO

12

JP2 PWM

12

D0 PWM

U2A 74LS05 1

2

U1A 74LS08

1 2 3

U1B 74LS08

4 5 6

Kích Opto 2,4

Quay nghòch :

Cách 2 : Do trong hệ thống điều hiển vị trí động cơ DC, cần có điện áp hãm để tăng độ chính xác, giảm sai số, khối xác định chiều quay sử dụng mạch sau:

Máy tính xuất ra một tín hiệu cho phép OE(qua ngõ DO của Card). Khi OE ở mức thấp 4 Opto điều tắt, động cơ không được cấp điện áp. Khi OE ở mức cao, xung vuông PWM and với OE kích các opto 1, 3 và đồng thời PWM qua cổng NOT and với OE để đảo xung rồi đưa đến kích các opto 2, 4. Vậy khi OE ở mức cao ta có giản đồ xung kích các Opto như sau:

Giản đồ xung : 1 0

OPTO 2,4

0 OPTO 1,3

Kích Opto 1,3 OE

JP1 OE

12

U1A 74LS08

1 2 3

JP2 PWM

12

PWM

Kích Opto 2 ,4

U1B 74LS08

4 5 6

U2A 74LS05 1

2

1 0

OPTO 1,3

0 1

OPTO 2,4

4 . Khối cách ly :

Gồm các Opto 1, 2, 3, 4 dùng để cách ly mạch điều khiển và mạch công suất veà ủieọn.

- OPTO 1 kích Transistor Q11 (D468) . - OPTO 2 kích Transistor Q12 (D468) . - OPTO 3 kích Transistor Q13 (D468) . - OPTO 4 kích Transistor Q14 (D468) .

5 . Sơ đồ nguyên lý mạch công suất và mạch điều khiển :

IV . XÁC ĐỊNH HÀM TRUYỀN ĐỘNG CƠ :

Có nhiều phương pháp xác định hàm truyền động cơ, nhưng ở đây ta sử dụng phương pháp tìm hàm truyền động cơ dựa trên đáp ứng đặc tuyến tốc độ vòng hở động cơ theo thời gian.

Hàm truyền động cơ có dạng tổng quát là:

(Ts 1) (Ts 1)

Ke )

s ( U

) s ) ( s ( G

2 1

S T1

+

= +

= ω

Ta thấy hàm truyền động cơ có hai khâu: khâu trễ và khâu quán tính. Nhưng vì động cơ đáp ưng nhanh nên khâu trễ của động cơ (T1) rất nhỏ nên ta có thể bỏ qua, ta xem động cơ chỉ có một khâu quán tính và mẫu số là khâu bậc nhất. Do đó hàm truyền có thể viết lại như sau :

1 Ts

K ) s ( U

) s ) ( s (

G ω = +

=

Từ thực nghiệm ta có đặc tuyến tốc độ động cơ:

Từ đồ thị đáp ứng tốc độ động cơ trên ta có thể xác định hàm truyền động cơ nhử sau:

1 s 0068 . 0

2257 . ) 0 s (

G = +

c

V . CÁC LƯU ĐỒ GIẢI THUẬT CHƯƠNG TRÌNH ĐIỀU KHIỂN VỊ TRÍ:

1. Lưu đồ giải thuật bộ hiệu chỉnh PID rời rạc :

Nhập các thông số PID:

KP, KI, KD

Tính: A1= 

 

 + +

T K 2 K T

KP I D

A0= 

 

− + −

T K 2 K T

KP I D

A2= T KD

Tính: e(-2)=e(-1) e(-1)=e(0)

e(0)=saisoá U(0) = U

U=A0e(0)+A1e(-1)+A2e(-2)+U(0)

Xuaỏt Uủk=|U|

STOP PID

U>Umax

U=Umax U<Umin

U=Umin

2 . Lưu đồ giải thuật chương trình điều khiển vị trí với vị trí đặt là 1 vị trí

hàm nấc: STEP

Nhập : ϕđ(Độ)

Đọc vị trí ban đầu của Encoder: Vt0 Gán :Vtht=Vt0

i=0, ϕ=0

Cq = 0

Xuaát chieàu quay ngòch N

Xuaát chieàu quay thuận Tính: e=Vtht-Vtht1

Gán : Vtht1=Vtht

Đọc vị trí hiện tại của Encoder: Vtht

Y

Tính: ϕ = ϕ + e Saisoỏ = ϕủ - ϕ

e< 0

e = e+360 Tính: e=Vtht1-Vtht Y

N

ϕủ ≥ 0

Cq=1 Cq=0

ϕủ = - ϕủ

Y N

PID(saisoá)

i=i+1

Vtht=Vtht1

i≤100

Y N

N

Y

Stop N

(ϕ> ϕủ)and(Cq=0)

Cq=1

(ϕ> ϕủ)and(Cq=1)

Cq=0 N

Y Y N

3 . Lưu đồ giải thuật chương trình điều khiển vị trí với vị trí đặt là nhiều vị trí hàm nấc:

Start Nhập: Số vị đặt = n

Các vị trí đặt (ϕđ[i], i=1-> n) Thời gian dừng ở từng vị trí

đặt(Dl[i], i=1-> n)

i= i+1 Gán : i=1

i=n

Y Stop

N Gọi chương trình điều khiển 1 vị trí

đặt hàm Step: Step(ϕđ[i])

Delay(Dl[i])

4 . Lưu đồ giải thuật chương trình điều khiển vị trí với vị trí đặt là hàm doác:

RAMP Nhập : Đỉnh dừng ϕđ(Độ)

Độ dốc : Hsg

(Hsg:Hệ số góc hàm Ramp) Chieàu quay : Cq

(Cq=1:quay thuận Cq=0:quay nghòch)

Đọc vị trí ban đầu của Encoder: Vt0 Gán :Vtht=Vt0

i=0, ϕ=0

Cq = 0

Xuaát chieàu quay ngòch N

Xuaát chieàu quay thuận Tính: e=Vtht-Vtht1

Gán : Vtht1=Vtht

Đọc vị trí hiện tại của Encoder: Vtht

Y

Tính: ϕ = ϕ + e Saisoá = i*Hsg- ϕ

e< 0

e = e+360 Tính: e=Vtht1-Vtht Y

N

PID(saisoá)

ϕ≤ϕủ Y

Stop N i:=i+1

5 . Lưu đồ giải thuật chương trình điều khiển vị trí với vị trí đặt là hàm

xung tam giác : RAMP

Nhập : Đỉnh trên :ϕđt(Độ) Đỉnh dưới :ϕđd(Độ)

Hệ số góc : Hsg Soỏ chu kyứ : Ck

Đỉnh bắt đầu Chu kỳ : Đbđ

(Đbđ=1:đỉnh trên, Đbđ=0:đỉnh dưới)

((ẹbủ=1)and(ϕủt≥0))or ((ẹbủ=0)and(ϕủd>0))

ẹbủ=1

RAMP (ϕủ=ϕủt, Hsg, Cq=1)

RAMP (ϕủ=ϕủd, Hsg, Cq=1) ẹbủ=1

RAMP (ϕủ=-ϕủt, Hsg, Cq=0)

RAMP (ϕủ=-ϕủd, Hsg, Cq=0)

J=0

ϕủd<0

ϕq=ϕủt-ϕủd ϕq=|ϕủt|-|ϕủd|

Y N

Y

N Y

N

N

Y

RAMP (ϕủ=ϕq, Hsg, Cq=0)

ẹbủ=1

RAMP (ϕủ=ϕq, Hsg, Cq=1)

RAMP (ϕủ=ϕq, Hsg, Cq=1)

RAMP (ϕủ=ϕq, Hsg, Cq=0)

J=Ck J= J +1

((ẹbủ=1)and(ϕủd≥0))or ((ẹbủ=0)and(ϕủt ≥0))

ẹbủ=1

RAMP (ϕủ=ϕủd, Hsg, Cq=0)

RAMP (ϕủ=ϕủt, Hsg, Cq=0) ẹbủ=1

RAMP (ϕủ=-ϕủd, Hsg, Cq=1)

RAMP (ϕủ=-ϕủt, Hsg, Cq=1)

Stop Y

N

Y N

N Y

Y N

Y N

N

6 . Lưu đồ giải thuật chương trình điều khiển vị trí với vị trí đặt là hàm Parapol:

Parapol Nhập : Đỉnh dừng ϕđ(Độ)

Độ dốc : Hsg

(Hsg:Hệ số góc hàm Ramp) Chieàu quay : Cq

(Cq=1:quay thuận Cq=0:quay nghòch)

Đọc vị trí ban đầu của Encoder: Vt0 Gán :Vtht=Vt0

i=0, ϕ=0

Cq = 0

Xuaát chieàu quay ngòch N

Xuaát chieàu quay thuận Tính: e=Vtht-Vtht1

Gán : Vtht1=Vtht

Đọc vị trí hiện tại của Encoder: Vtht

Y

Tính: ϕ = ϕ + e Saisoá = i2*Hsg- ϕ

e< 0

e = e+360 Tính: e=Vtht1-Vtht Y

N

PID(saisoá)

ϕ≤ϕủ Y

Stop N i:=i+1

PHAÀN III

Một phần của tài liệu Ghép nối điều khiển động cơ một chiều bằng máy tính (Trang 86 - 108)

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

(184 trang)