1. Trang chủ
  2. » Luận Văn - Báo Cáo

ĐIỀU KHIỂN HỆ CON LẮC NGƯỢC QUAY BẰNG PID

84 810 4

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Định dạng
Số trang 84
Dung lượng 1,45 MB

Nội dung

Với mục đích tạo ra một mô hình thí nghiệm phục vụ đắc lực cho việc áp dụng các tính chất của lý thuyết điều khiển, chúng em đã tiến hành thực hiện đề tài và đã hoàn thành tương đối tốt

Trang 1

BỘ GIÁO DỤC VÀ ĐÀO TẠO

TRƯỜNG ĐẠI HỌC NÔNG LÂM THÀNH PHỐ HỒ CHÍ MINH

KHÓA LUẬN TỐT NGHIỆP

ĐIỀU KHIỂN HỆ CON LẮC NGƯỢC QUAY BẰNG PID

Họ và tên sinh viên: NGUYỄN CÔNG CHÍNH

NGUYỄN VĂN VŨ Ngành: ĐIỀU KHIỂN TỰ ĐỘNG

Niên khóa: 2005 - 2009

Tháng 07/2009

Trang 2

ĐIỀU KHIỂN HỆ CON LẮC NGƯỢC QUAY BẰNG PID

Tác giả

NGUYỄN CÔNG CHÍNH NGUYỄN VĂN VŨ

Khóa luận được đệ trình để đáp ứng yêu cầu

cấp bằng Kỹ sư ngành Điều khiển tự động

Giáo viên hướng dẫn:

ThS ĐẶNG PHI VÂN HÀI ThS NGUYỄN VĂN CÔNG CHÍNH

Tháng 07 năm 2009

Trang 3

LỜI CẢM TẠ

Chúng em xin gửi lời cảm ơn chân thành nhất đến quý Thầy Cô trường Đại Học Nông Lâm T.p Hồ Chí Minh, những người đã truyền đạt cho chúng em những kinh nghiệm cũng như những bài học hết sức quý báu trong suốt thời gian chúng em học tại trường

Chúng em xin trân trọng gửi lời cảm ơn đến tất cả các Thầy, Cô Khoa Cơ Khí – Công Nghệ và đặc biệt là các Thầy, Cô Bộ môn Điều khiển tự động như: thầy Lê Văn Bạn, thầy Nguyễn Văn Công Chính, cô Đặng Phi Vân Hài, đã tận tình hướng dẫn, giúp đỡ, cũng như tạo mọi điều kiện thuận lợi nhất để chúng em hoàn thành tốt luận văn này

Chúng em xin gửi lời cảm ơn đến tất cả những người bạn, những người anh em, những người đã cùng gắn bó, cùng học tập và giúp đỡ cho chúng em trong suốt quãng thời gian qua cũng như trong quá trình hoàn thành luận văn này

Cuối cùng, chúng em xin cảm ơn gia đình, và đặc biệt là những bậc sinh thành

đã nuôi dưỡng và dạy dỗ chúng em khôn lớn nên người để chúng em có thể đứng vững trên đôi chân của mình trên quãng đường đời trước mắt

Tp Hồ Chí Minh, tháng 08 năm 2009 Nguyễn Công Chính Nguyễn Văn Vũ

Trang 4

TÓM TẮT

Thế giới đang chuyển mình mạnh mẽ bằng các cuộc cách mạng vô cùng vĩ đại trong khoa học – kỹ thuật Trong sự phát triển không ngừng ấy chúng ta không thể không nhắc đến sự vươn lên nhanh chóng của nền công nghiệp tự động hóa Tự động hóa phát triển như là một quy luật tất yếu, nó là một đòn bẩy làm thúc đẩy sự phát triển

và làm cho cuộc sống của chúng ta ngày càng hoàn thiện hơn Và đất nước của chúng

ta cũng không nằm ngoài quy luật chung ấy

Để có thể thúc đẩy đất nước đi lên con đường công nghiệp hoá, hiện đại hóa thì chúng

ta không còn cách nào khác là tăng tỷ trọng công nghiệp, đầu tư vào lĩnh vực tự động hóa Để đáp ứng được nhu cầu cấp bách ấy chúng ta cần có các kiến thức vững vàng

về lý thuyết điều khiển Vì thế chúng em đã tiến hành thiết kế, nghiên cứu đối tượng điều khiển “Con lắc ngược quay”

Với mục đích tạo ra một mô hình thí nghiệm phục vụ đắc lực cho việc áp dụng các tính chất của lý thuyết điều khiển, chúng em đã tiến hành thực hiện đề tài và đã hoàn thành tương đối tốt các yều cầu được đặt ra:

- Hệ thống truyền động cơ khí đã hoạt động tốt

- Các mạch điện tử hoạt động tốt

- Các phần mềm hoạt động tương đối ổn định

Hệ thống có thể được ứng dụng ngay trong phòng thí nghiệm để nâng cao khả năng ứng dụng thực nghiệm cho sinh viên các khóa sau

ThS Nguyễn Văn Công Chính Nguyễn Văn Vũ

Trang 5

MỤC LỤC

Trang tựa i

LỜI CẢM TẠ ii

TÓM TẮT iii T MỤC LỤC iv

DANH SÁCH CÁC BẢNG vii

DANH SÁCH CÁC HÌNH viii

Chương 1.MỞ ĐẦU 1

Chương 2 TRA CỨU TÀI LIỆU 2

2.1 Các hệ thống con lắc ngược 2

2.2 Tra cứu lý thuyết điều khiển tự động 4

2.2.1 Lịch sử phát triển của lý thuyết điều khiển 4

2.2.2 Khái niệm điều khiển 5

2.2.3 Các thành phần cơ bản 5

2.2.4 Các nguyên tắc điều khiển 5

2.2.5 Mô tả toán học hệ thống điều khiển liên tục 6

2.2.6 Khảo sát tính ổn định của một hệ thống tự động 7

2.2.7 Bộ điều khiển PID 8

2.3 Tìm hiểu phần mềm MATLAB 6.5 mô phỏng động học cho hệ thống điều khiển 10

2.3.1 Phần mềm MATLAB 6.5 10

2.3.2 Một số lệnh mô tả toán học hệ thống tự động 12

2.4 Giới thiệu chương trình Bascom -AVR 13

2.5 Tìm hiểu về phần mềm VISUAL BASIC 6.0 lập trình giao tiếp nhận dữ liệu từ Vi điều khiển qua cổng nối tiếp 15

2.5.1 Phần mềm VISUAL BASIC 6.0 15

2.5.2 Giao tiếp qua cổng COM 16

2.6 Tra cứu tài liệu về các linh kiện điện tử 18

2.6.1 Opto-isolator TPL521 type GB 18

2.6.2 IC cổng NAND 74hc00 19

2.6.3 Transistor A1015 19

Trang 6

2.7 Tìm hiểu vi điều khiển AVR 19

2.8 Tra cứu encoder 21

2.9 Tìm hiểu phương pháp điều chỉnh tốc độ động cơ DC bằng điều chế độ rộng xung PWM 22

Chương 3 PHƯƠNG PHÁP VÀ PHƯƠNG TIỆN 24

3.1 Phương pháp thực hiện đề tài 24

3.1.1 Chọn phương pháp thiết kế phần cứng 24

3.1.2 Chọn phương pháp giao tiếp và truyền nhận 24

3.1.3 Chọn phương pháp thiết kế mạch 24

3.1.4 Chọn phương pháp thiết kế giao diện và viết phần mềm điều khiển 24

3.2 Phương tiện thực hiện đề tài 24

Chương 4 THỰC HIỆN ĐỀ TÀI 26

4.1 Các bước thực hiện trong quá trình thiết kế và thực hiện đề tài 27

4.2 Thiết kế và chế tạo cơ khí của mô hình con lắc ngược quay 28

4.2.3 Mô hình toán học của hệ thống con lắc ngược quay 31

4.3 Chọn các thiết bị được áp dụng trong đề tài 33

4.3.1 Chọn Vi điều khiển 33

4.3.2 Chọn Encoder 33

4.3.3 Tính toán và chọn công suất cho động cơ 33

4.4 Thiết kế và thi công các bo mạch chính và bo mạch công suất để điều khiển động cơ DC và để kết nối, truyền nhận dữ liệu điều khiển 35

4.4.1 Thiết kế mạch nguyên lý của bo mạch chính 35

4.4.2 Thiết kế mạch nguyên lý bo mạch công suất 39

4.5 Nguyên tắc điều khiển con lắc ngược 43

4.6 Chương trình lập trình điều khiển hệ con lắc ngược quay 44

4.6.1 Lưu đồ thuật toán của chương trình vi điều khiển 44

4.6.2 Chương trình Visual Basic giám sát thu thập dữ liệu 49

Chương 5 KẾT LUẬN VÀ ĐỀ NGHỊ 51

5.1 Kết luận 51

5.2 Đề nghị 51

PHỤ LỤC 53

Trang 7

DANH SÁCH CÁC CHỮ VIẾT TẮT

PID Proportional Integral Derivative

P Proportional

I Integral

D Derivative

UART Universal Asynchronous Receiver Transmitter

MOSFET Metal Oxide Semiconductor Field Effect Transistor

Trang 8

DANH SÁCH CÁC BẢNG

Bảng 2.1: Chức năng của các chân ở cổng nối tiếp 17

Bảng 2.1: Các đặc tính của PL521 18

Bảng 2.2: Bảng khuyến cáo chế độ hoạt động của 74HC00 19

Bảng 2.3: Đặc tính dòng và áp khi hoạt động của Transistor A1015 19

Trang 9

DANH SÁCH CÁC HÌNH

Hình 2.4: Sơ đồ khối hệ thống điều khiển 5

Hình 2.5: Tín hiệu vào và tín hiệu ra của hệ thống tự động 6

Hình 2.6: Mạch điều khiển PID liên tục 8

Hình 2.7: Sơ đồ khối hệ thống dùng bộ điều khiển PID liên tục 8

Hình 2.8: Sơ đồ khối hệ thống điều khiển rời rạc 9

Hình 2.9: Cửa sổ MATLAB 11

Hình 2.10: Giao diện chính của phần mềm Bascom – AVR 13

Hình 2.11: Hộp thoại Options 14

Hình 2.12: Hộp thoại programmer 15

Hình 2.13: Giao diện Visual Basic 6.0 16

Hình 2.14: (a) Hình dáng thật bên ngoài 20

(b) Sơ đồ vị trí chân tương ứng 20

Hình 2.15: Hình incremental encoder 22

Hình 4.1: Sơ đồ khối hệ thống con lắc ngược quay 26

Hình 4.3: Mô hình thiết kế cơ khí của hệ con lắc ngược quay 28

Hình 4.4: Hình ảnh mô hình sau khi đã chế tạo xong 29

Hình 4.5: Hình ảnh mô hình đã chế tạo xong theo hướng nhìn từ trên xuống 30

Hình 4.6: Qui định hệ tọa độ của hệ thống 31

Hình 4.9: Sơ đồ nguyên lý của mạch chính 35

Hình 4.10: Sơ đồ nguyên lý của khối nguồn 36

Hình 4.11: Sơ đồ nguyên lý của mạch nạp 36

Hình 4.12: Sơ đồ nguyên lý của khối encoder 37

Hình 4.13: Sơ đồ nguyên lý của khối giao tiếp 37

Hình 4.14: Sơ đồ nguyên lý của khối vi điều khiển 38

Hình 4.15: Sơ đồ nguyên lý của khối port out 38

Hình 4.16: Sơ đồ nguyên lý chung của mạch công suất 39

Hình 4.17: Sơ đồ nguyên lý của khối nguồn Motor 40

Hình 4.18: Sơ đồ nguyên lý của khối logic 40

Hình 4.19: Sơ đồ nguyên lý của khối cầu H và opto cách ly 41

Trang 10

Hình 4.20: Board mạch chính 42

Hình 4.21: Board mạch công suất 43

Hình 4.22: Lưu đồ giải thuật chương trình viết cho Vi điều khiển 45

Hình 4.23: Lưu đồ giải thuật chương trình đếm xung encoder 46

Hình 4.24: Lưu đồ thuật toán xác định chiều quay của encoder 47

Hình 4.25: Lưu đồ thuật toán phần tính toán điều chỉnh 48

Hình 4.26: Lưu đồ thuật toán chương trình lập trình trên máy tính 49

Hình 4.27: Giao diện chính chương trình giám sát 50

Hình 4.28: Đồ thị sai lệch con lắc khi cho dao động tự do 50

Trang 11

Chương 1

MỞ ĐẦU

Ngày nay, đất nước đang tiến những bước ngày càng gần đến với nền công nghiệp hóa và hiện đại hóa Những ứng dụng của tự động hóa ngày càng được tăng lên trong các quá trình sản xuất cũng như trong cuộc sống hằng ngày của chúng ta

Để có thể tham gia vào các quá trình sản xuất tự động hóa cũng như có thể cải tiến được những hệ thống này thì đòi hỏi đội ngũ kỹ thuật phải có trình độ cao, đặc biệt là những khối kiến thức vững vàng về lý thuyết điều khiển Nhưng một phần không nhỏ các hạn chế là chúng ta không thể tiếp cận được các đối tượng điều khiển phù hợp, đặc biệt là trong quá trình học tập tại các giảng đường đại học

Với mục đích tạo ra một bộ thí nghiệm có thể sử dụng ngay để đáp ứng nhu cầu thực nghiệm, chúng em đã tiến hành nghiên cứu và chế tạo mô hình con lắc ngược quay

Các nghiên cứu về điều khiển hệ thống con lắc ngược đã được tiến hành khá sớm Trên phương diện nghiên cứu các kỹ thuật điều khiển hệ thống thực, con lắc ngược đại diện cho lớp các đối tượng điều khiển có mức độ phi tuyến phức tạp Để có thể hiểu thêm về các phương pháp điều khiển cũng như có một cái nhìn tổng quát về điều khiển hệ thống thực tế chúng ta nên tìm hiểu và phân tích một cách chính xác

hệ thống thực như hệ thống con lắc ngược quay

Đặc tính động học của hệ thống con lắc ngược quay rất gần với các quá trình vật

lý cụ thể như quá trình phóng tên lửa hoặc hoạt động của cần cẩu khi chuyển động và đang nâng vật nặng v.v Với hệ thống này thì chúng ta có thể thử nghiệm với nhiều phương thức điều khiển khác nhau

Xuất phát từ những yêu cầu trên chúng em đã tiến hành thực hiện đề tài:

“Điều khiển hệ con lắc ngược quay bằng PID”

Trang 12

Đã có khá nhiều nghiên cứu của nhiều chuyên gia về cân bằng hệ thống con lắc ngược quay này dựa trên lý thuyết điều khiển tuyến tính Luật điều khiển dựa trên điều khiển năng lượng bằng cách sử dụng cân bằng tuần tự, để có thể gia tăng vị trí con lắc

- Một phương pháp khác là điều khiển “Swing up” của Iraj HassanZadeh

- Và một vài phương pháp khác: điều khiển mờ, điều khiển tối ưu, điều khiển bền vững,

Mô hình hệ thống con lắc ngược quay gồm có:

- Một bộ điều khiển

- Một cánh tay

- Một con lắc

Trang 13

- Cơ cấu chấp hành: động cơ DC

- Cảm biến: hai encoder

Một vài hệ thống con lắc ngược trên thực tế như:

- Hệ thống con lắc ngược gồm có một cart (xe di động thẳng) và một quả lắc

Hình 2.1: Hệ con lắc dạng cart - pole

- Hệ thống con lắc ngược gồm quả lắc và cánh tay, cả hai cùng thực hiện chuyển động quay.:

Cánh tay chuyển động trong mặt phẳn ngang

Hình 2.2: Hệ con lắc ngược quay 1 (nguồn từ internet)

Trang 14

- Hệ thống con lắc ngược quay có cánh tay quay trong mặt phẳng thẳng đứng

Hình 2.3: Hệ con lắc ngược quay 2 (nguồn từ internet)

2.2 Tra cứu lý thuyết điều khiển tự động

2.2.1 Lịch sử phát triển của lý thuyết điều khiển

Lý thuyết và kỹ thuật điều khiển tự động trong những năm gần đây đã có những bước nhảy vọt nhờ sự phát triển mạnh mẽ của kỹ thuật máy tính và công nghệ thông tin

Đi từ lý thuyết điều khiển kinh điển (trước năm 1960) mô tả hệ thống trong miền tần số (phép biến đổi Fourier) và mặt phẳng s (phép biến đổi Laplace) Nó thích hợp để thiết kế hệ thống một ngõ vào - một ngõ ra (SISO), rất khó áp dụng cho các hệ thống có nhiều ngõ vào - nhiều ngõ ra (MIMO) và các hệ thống biến đổi theo thời gian Các khâu hiệu chỉnh được sử dụng trong phương pháp này là hiệu chỉnh vi tích phân tỉ lệ PID, hiệu chỉnh sớm trễ pha,

Đến lý thuyết điều khiển hiện đại (khoảng năm 1960 đến nay), lý thuyết điều khiển hiện đại dựa trên miền thời gian Mô tả toán học dùng để phân tích và thiết kế hệ thống là phương trình trạng thái Nó có ưu điểm là có thể dễ dàng áp dụng cho hệ MIMO và hệ biến đổi theo thời gian Bộ điều khiển được sử dụng trong thiết kế hệ thống điều khiển hiện đại là bộ điều khiển hồi tiếp trạng thái

Cả điều khiển kinh điển và điều khiển hiện đại (gọi chung là điều khiển thông thường) có chung một khuyết điểm là để thiết kế được hệ thống điều khiển cần phải biết được chính xác mô hình toán học của đối tượng Để khắc phục điều này thì có một trường phái điều khiển mới được ứng dụng ngày càng rộng rãi đối với những hệ thống

Trang 15

phức tạp không thể biết chính xác mô hình toán học đã ra đời, đó là lý thuyết điều khiển thông minh với điều khiển mờ và mạng thần kinh nhân tạo Một khuyết điểm của điều khiển thông minh là mang tính thử sai và chủ yếu dựa vào kinh nghiệm của các chuyên gia

2.2.2 Khái niệm điều khiển

Điều khiển là quá trình thu thập thông tin, xử lý thông tin và tác động lên hệ thống để đáp ứng của hệ thống “gần” với mục đích định trước Điều khiển tự động là quá trình điều khiển không cần sự tác động của con người

2.2.3 Các thành phần cơ bản

Các thành phần cơ bản của một hệ thống điều khiển: bắt buộc gồm có ba thành phần cơ bản là thiết bị đo lường, bộ điều khiển và đối tượng điều khiển Thiết bị đo lường có chức năng thu thập thông tin, bộ điều khiển thực hiện chức năng xử lý thông tin, ra quyết định điều khiển và đối tượng điều khiển chịu sự tác động của tín hiệu điều khiển

Hình 2.4: Sơ đồ khối hệ thống điều khiển

Trong đó: r(t) (reference input): tín hiệu vào, tín hiệu chuẩn

c(t) (controlled output): tín hiệu ra

cht(t): tín hiệu hồi tiếp

e(t) (error): sai số

u(t): tín hiệu điều khiển

2.2.4 Các nguyên tắc điều khiển

Nó được xem là kim chỉ nam để thiết kế hệ thống điều khiển đạt chất lượng cao

và có hiệu quả nhất

Trang 16

Nguyên tắc thông tin phản hồi: theo nguyên tắc này có điều khiển bù nhiễu, điều khiển san bằng sai lệch và phối hợp cả hai Các hệ thống điều khiển chất lượng cao thường là phối hợp cả điều khiển bù nhiễu và san bằng sai lệch

Nguyên tắc đa dạng tương xứng

Nguyên tắc bổ sung ngoài

Nguyên tắc dự trữ

Nguyên tắc phân cấp

Nguyên tắc cân bằng nội

Phân loại điều khiển

Có nhiều cách phân loại hệ thống điều khiển tùy theo mục đích của sự phân loại

- Phân loại theo phương pháp phân tích và thiết kế: hệ thống tuyến tính – phi tuyến, hệ thống bất biến - hệ thống biến đổi theo thời gian

- Phân loại theo tín hiệu trong hệ thống: hệ thống liên tục, hệ thống rời rạc

- Phân loại theo mục tiêu điều khiển: điều khiển ổn định hóa, điều khiển theo chương trình, điều khiển theo dõi, điều khiển thích nghi và điều khiển tối ưu

2.2.5 Mô tả toán học hệ thống điều khiển liên tục

Có hai phương pháp để mô tả toán học hệ thống tự động đó là phương pháp hàm truyền đạt và phương pháp không gian trạng thái Phương pháp hàm truyền đạt chuyển quan hệ phương trình vi phân thành quan hệ phân thức đại số nhờ phép biến đổi Laplace, trong khi đó phương pháp không gian trạng thái biến đổi phương trình

vi phân bậc cao thành hệ phương trình vi phân bậc nhất thông qua việc đặt các biến trạng thái

2.2.5.1 Hàm truyền đạt

Định nghĩa: Hàm truyền của một hệ thống là tỉ số giữa biến đổi Laplace của tín hiệu ra

và biến đổi Laplace của tín hiệu vào khi điều kiện đầu bằng 0

Hình 2.5: Tín hiệu vào và tín hiệu ra của hệ thống tự động

Trang 17

- Hiệu chỉnh thụ động gồm: khâu tích phân bậc một, khâu vi phân bậc một, khâu sớm pha, khâu trễ pha

- Hiệu chỉnh tích cực gồm: khâu tỉ lệ P, khâu tích phân tỉ lệ PI, khâu vi phân tỉ lệ

PD và khâu vi tích phân tỉ lệ PID

2.2.5.3 Đặc tính động học của hệ thống

- Đặc tính thời gian của hệ thống mô tả sự thay đổi tín hiệu ở đầu ra của hệ thống khi tín hiệu ở đầu ra của hệ thống khi tín hiệu vào là hàm xung đơn vị hay hàm nấc đơn vị

- Đặc tính tần số của hệ thống là tỉ số giữa tín hiệu ra ở trạng thái xác lập và tín hiệu vào là hình sin

2.2.6 Khảo sát tính ổn định của một hệ thống tự động

Yêu cầu đầu tiên đối với một hệ thống điều khiển tự động là hệ thống phải giữ được trạng thái ổn định khi chịu tác động của tín hiệu vào và chịu ảnh hưởng của nhiễu lên hệ thống

Ổn định là yêu cầu đầu tiên đối với một hệ thống điều khiển tự động, song chưa phải đủ để hệ thống được sử dụng trong thực tế Nhiều yêu cầu khác cũng không kém phần quan trọng là hệ thống phải thỏa mãn cùng lúc các tiêu chuẩn về chất lượng như

là độ chính xác, độ ổn định, đáp ứng quá độ, độ nhạy, khả năng chống nhiễu, Để đánh giá chất lượng hệ thống điều khiển có thể dùng các tiêu chuẩn như: sai số xác lập, độ vọt lố, thời gian đáp ứng, độ dự trữ ổn định, tiêu chuẩn tích phân

Như vậy:

Hệ con lắc ngược quay là một hệ phi tuyến, biến đổi theo thời gian, tín hiệu đặt

là vị trí zero của con lắc và zero của cánh tay Tín hiệu hồi tiếp là dạng tín hiệu số, cho nên bộ điều khiển là bộ điều khiển số chứ không phải bộ điều khiển lấy mẫu dữ liệu

Trang 18

tín hiệu hồi tiếp là góc xoay của cánh tay và góc xoay của con lắc dưới dạng lượng

xung phát ra từ encoder

2.2.7 Bộ điều khiển PID

- PID (Proportional Integral Derivative): khâu vi tích phân tỉ lệ

- Bộ điều khiển PID thì có hai loại là bộ điều khiển PID liên tục và bộ điều khiển

PID rời rạc

- Bộ điều khiển PID liên tục:

Hình 2.6: Mạch điều khiển PID liên tục

- Hàm truyền của khâu PID là:

Dựa vào biểu thức (2.1) ta thấy khâu vi tích phân tỉ lệ PID có đặc điểm là tín hiệu ra tỉ

lệ với tín hiệu vào, tích phân của tín hiệu vào và vi phân của tín hiệu vào

Hình 2.7: Sơ đồ khối hệ thống dùng bộ điều khiển PID liên tục

Trang 19

- Bộ điều khiển PI, PD, PID rời rạc:

Với T là chu kỳ lấy mẫu thì rời rạc của các khâu PI, PD, PID lần lượt là:

Hình 2.8: Sơ đồ khối hệ thống điều khiển rời rạc

1( )

1( )

Từ phương trình (2.2) ta nhận thấy với các yêu cầu thiết kế về đáp ứng quá độ

và sai số xác lập thì chúng ta có thể chọn các thông số phù hợp cho bộ điều khiển PID

số được mô tả trong phương trình này

- Tác dụng của các khâu hiệu chỉnh:

Khâu hiệu chỉnh tỉ lệ P:

Hàm truyền: G s( )=K P

Dựa vào đặc tính thời gian và đặc tính tần số thì ta nhận thấy khi hệ số khuyếch đại K Pcàng lớn thì sai số xác lập càng nhỏ, tuy nhiên khi K Ptăng thì các cực của hệ thống nói chung có xu hướng chuyển ra xa trục thực, điều đó có nghĩa là đáp ứng của

hệ thống càng dao động, độ vọt lố càng cao Nếu K Ptăng quá giá trị hệ số khuyếch đại giới hạn thì hệ thống trở nên mất ổn định Do đó nếu không thể có sai số của hệ thống bằng 0 thì cũng không thể tăng hệ số khuyếch đại lên vô cùng

Khâu hiệu chỉnh vi phân tỉ lệ PD:

Hàm truyền: G s( )=K P+K s K D = P(1+T s D )

Trong đó K D =K T P D, với T Dlà thời hằng vi phân của bộ điều khiển PD

Khâu hiệu chỉnh PD có đặc điểm của khâu hiệu chỉnh sớm pha, nghĩa là làm nhanh đáp ứng hệ thống, giảm thời gian quá độ Tuy nhiên do hệ số khuyếch đại ở tần

Trang 20

số cao của khâu hiệu chỉnh PD là vô cùng lớn nên khâu hiệu chỉnh làm cho hệ thống rất nhạy với nhiễu tần số cao

Khâu hiệu chỉnh tích phân tỉ lệ PI:

T

= , với được gọi là thời hằng tích phân của bộ điều khiển PI T I

Khâu hiệu chỉnh PI có đặc điểm của khâu hiệu chỉnh trễ pha, nghĩa là làm chậm đáp ứng quá độ, tăng độ vọt lố, giảm sai số xác lập Do hệ số khuyếch đại của khâu PI bằng vô cùng tại tần số bằng 0 nên khâu hiệu chỉnh PI làm cho sai số đối với tín hiệu vào là hàm nấc của hệ thống không có khâu vi phân lý tưởng bằng 0 Ngoài ra do khâu

PI là một bộ lọc thông thấp nên nó còn có tác dụng triệt tiêu nhiễu tần số cao tác động vào hệ thống

Vậy chúng ta có thể đi đến nhận xét như sau:

Do khâu hiệu chỉnh PID có thể xem là khâu PI mắc nối tiếp với khâu PD nên nó

có các ưu điểm của khâu PI và PD Nghĩa là khâu hiệu chỉnh PID cải thiện đáp ứng quá

độ (giảm vọt lố, giảm thời gian quá độ) và giảm sai số xác lập (nếu đối tượng không có khâu vi phân lý tưởng thì sai số xác lập đối với tín hiệu vào là hàm nấc bằng 0)

2.3 Tìm hiểu phần mềm MATLAB 6.5 mô phỏng động học cho hệ thống điều khiển

2.3.1 Phần mềm MATLAB 6.5

- MATLAB nguồn gốc từ chữ matrix laboratory, là ngôn ngữ máy tính dùng để tính toán kỹ thuật Ban đầu MATLAB được lập ra để giải quyết các phép tính trên ma trận, và điều này khiến cho MATLAB được ứng dụng rất lớn trong nhiều ngành kỹ thuật khác nhau so với các ngôn ngữ lập trình khác tính toán trên số vô hướng

- MATLAB kết hợp tính toán với lập trình và đồ họa trong môi trường phát triển tương tác, thời gian lập trình chỉ bằng một phần nhỏ so với thời gian lập trình bằng các ngôn ngữ khác nhờ vào các hàm có sẵn

- MATLAB là sản phẩm của công ty The Mathworks Inc

- Sức mạnh của MATLAB dựa trên các phần chính:

Trang 21

Môi trường phát triển: gồm các công cụ và tiện nghi giúp viết chương trình, sử dụng các hàm MATLAB và các file

Thư viện các hàm toán học của MATLAB: bao gồm từ các hàm sơ cấp như tính tổng, sin, tính số phức cho đến các hàm phức tạp như hàm nghịch đảo ma trận, tính trị riêng, biến đổi Fourier nhanh,

Ngôn ngữ MATLAB: gồm các lệnh cấp cao xử lý mảng/ ma trận, lệnh rẽ nhánh, lập vòng, xuất nhập, cấu trúc dữ liệu, lập trình đối tượng,

Xử lý đồ họa: hiển thị dữ liệu ở dạng đồ họa hai chiều, ba chiều, hoạt hình, xử

lý ảnh và đặc biệt là cho phép viết giao diện đồ họa người dùng GUI (Graphical User Interface)

Thư viện API của MATLAB: cho phép lập trình một cách dễ dàng thông qua việc có thể liên kết và gọi các chương trình lập trình một cách dễ dàng

Các hộp dụng cụ: là tập hợp các hàm MATLAB viết sẵn để giải quyết các vấn

đề thuộc về một chuyên nghành nào đó như xử lý tín hiệu, xử lý ảnh, điều khiển mờ, mạng nơrôn, Nhờ các toolbox này mà ứng dụng của MATLAB rất rộng

Hình 2.9: Cửa sổ MATLAB

Giao diện cơ bản của MATLAB gồm các thành phần sau:

- Menu Bar: các trình đơn của MATLAB

Trang 22

- Cửa sổ lệnh (Command Window): với dấu nhắc >> dùng để chạy các lệnh của MATLAB, viết chương trình, chạy chương trình

- Cửa sổ Lịch sử lệnh (Command History): liệt kê các lệnh đã sử dụng trước đó kèm theo thời gian bắt đầu Dùng cửa sổ lệnh để chép lại các lệnh vào cửa sổ Lệnh

- Cửa sổ Thư mục hiện tại (Current History): cho biết thư mục hiện tại đang sử dụng

- Cửa sổ Không gian làm việc (Workspace: cho biết các biến được sử dụng trong chương trình

Các cửa sổ này có thể tắt hay bật từ menu View

2.3.2 Một số lệnh mô tả toán học hệ thống tự động

Lệnh tf (transfer function): tạo ra hệ thống mô tả bởi hàm truyền

- Cú pháp: G=tf(TS,MS) tạo ra hàm truyền G có tử số là đa thức TS, còn mẫu số là

đa thức MS

Lệnh minreal:đơn giản hàm truyền

- Cú pháp: G = minreal(G) triệt tiêu các thành phần giống nhau ở tử số và mẫu số để được hàm truyền tối giản

Lệnh series: tìm hàm truyền hệ thống nối tiếp

- Cú pháp: G=series(G1,G2) hàm truyền G = G1*G2

Lệnh paralell: tìm hàm truyền hệ thống song song

- Cú pháp: G=paralell(G1,G2) hàm truyền G = G1+G2

Lệnh feedback: tính hàm truyền của hệ thống hồi tiếp

- Cú pháp: Gk=feedback(G,H) tính hàm truyền hệ thống nối tiếp âm

Gk = G/(1+G*H)

Lệnh ss: biến đổi mô tả toán học từ dạng hàm truyền về dạng phương trình trạng thái

- Cú pháp: PTTT=ss(G): biến đổi hàm truyền G đổi về dạng phương trình trạng thái Lệnh step: tính và vẽ đáp ứng nấc

Trang 23

2.4 Giới thiệu chương trình Bascom -AVR

Giao diện chính của chương trình:

Hình 2.10: Giao diện chính của phần mềm Bascom – AVR

- Các bước thực hiện trên Bascom để viết và nạp một chương trình cho Vi điều khiển AVR họ Atmel

Bước 1: Mở chương trình Bascom từ StartÆ ProgramÆMCS AVR ta vào được giao diện chính như hình trên

electronicsÆBascom-Bước 2: Tạo một chương trình mới bằng cách Click chuột vào biểu tượng vào Menu File Æ New một trang mới được tạo ra Có thể bắt đầu đánh các lệnh vào vùng viết chương trình Sau khi hoàn tất chương trình chuyển qua bước 3

hoặc

Bước 3: Từ cửa sổ chương trình click chuột lên biểu tượng hoặc vào menu Program Æ Syntax check để kiểm tra chương trình có lỗi hay không Sau khi kiểm tra hoàn tất không có lỗi tiếp tục thực hiện bước 4

Trang 24

Bước 4: Từ cửa sổ chương trình click chuột lên biểu tượng hoặc vào menu Program

Æ Compiler để biên dịch chương trình từ ngôn ngữ lập trình thành ngôn ngữ máy dưới dạng file.hex Ta vào Menu Options Æ Programmer một hộp thoại xuất hiện bên dưới

Hình 2.11: Hộp thoại Options

Chọn mạch nạp tương ứng với loại đang dùng Æ OK chuyển qua bước 5

Bước 5: Từ cửa sổ chương trình click chuột lên biểu tượng hoặc vào menu Program

Æ Send to chip một hộp thoại xuất hiện

Trang 25

Hình 2.12: Hộp thoại programmer

Từ cửa sổ hộp thoại click chuột lên biểu tượng để nạp cho vi điều khiển, sau

đó chương trình sẽ kiểm tra kết quả nạp nếu thấy dòng chữ Verify OK hiện lên thì đã nạp thành công

2.5 Tìm hiểu về phần mềm VISUAL BASIC 6.0 lập trình giao tiếp nhận dữ liệu

từ Vi điều khiển qua cổng nối tiếp

2.5.1 Phần mềm VISUAL BASIC 6.0

- Visual Basic là ngôn ngữ lập trình cấp cao 32 bit được sử dụng để viết các chương trình chạy trong Windows VB sử dụng kiểu lập trình hướng đối tượng, người dùng lập trình trên các đối tượng với các thuộc tính của nó

- Lập trình hướng đối tượng OOP (Object – Oriented Programming): Các thành phần được phân thành các đối tượng (object) và viết cách ứng xử riêng cho từng đối tượng sau đó kết hợp chúng lại thành chương trình

Trang 26

Hình 2.13: Giao diện Visual Basic 6.0

Giao diện cơ bản của Visual Basic bao gồm các thành phần sau:

- MenuBar: các trình đơn của Visual Basic

- ToolBar: một số chức năng cơ bản của chương trình

- Toolbox: chứa các điều khiển thông dụng

- Project Explorer: hiển thị các thành phần của ứng dụng đang thực hiện

- Properties Window: hiển thị các đặc tính của các đối tượng

- Workspace: vùng làm việc của chương trình…

Ngoài ra giao diện Visual Basic còn chứa rất nhiều thành phần khác Để hiển thị phần nào thì ta chọn trình đơn View và click chuột chọn thành phần muốn hiển thị

2.5.2 Giao tiếp qua cổng COM

Trên các máy tính thông thường có 2 cổng nối tiếp theo chuẩn RS-232, cổng thứ nhất với tên gọi COM1 thường được dùng cho chuột, còn cổng thứ 2 thường dùng cho các mục đích ghép nối khác như modem, thiết bị đo lường…

Cổng nối tiếp trên thực tế có 2 loại đầu nối: loại 25 chân và loại 9 chân Trong khi các cổng 9 chân được tìm thấy hầu hết trên các máy tính sản xuất gần đây thì cổng 25 chân rất hiếm Về mặt chức năng 2 cổng này hoàn toàn tương tự nhau

Trang 27

Loại 25 chân

(pin)

Loại 9 chân

Bảng 2.1: Chức năng của các chân ở cổng nối tiếp

Việc trao đổi dữ liệu qua cổng nối tiếp trong các trường hợp thông thường đều qua đường dẫn truyền nối tiếp TxD và đường dẫn nhận nối tiếp RxD Tất cả các đường dẫn còn lại có chức năng phụ trợ khi thiết lập và điều khiển cuộc truyền dữ liệu Các đường dẫn này gọi là đường dẫn bắt tay Ưu điểm đặt biệt của đường dẫn bắt tay là trạng thái của chúng có thể đặt hoặc điều khiển trực tiếp, điều này tạo cho ta một khả năng giao tiếp khác thông qua cổng nối tiếp

Đặc trưng điện của cổng nối tiếp:

Trạng thái LOW tương ứng với mức điện áp + 12V còn trạng thái HIGH tương ứng với điện áp -12V, các đường dẫn lối ra có thể cung cấp dòng điện từ 10mA đến 20mA Mặt khác các mạch lối vào thông thường trong máy tính PC nhận dạng một mức điện áp dưới 1V như là mức LOW, nên cổng nối tiếp cũng được phép làm việc với mức TTL (0V-5V)

Cách giao tiếp qua cổng Com được sử dụng rất rộng rãi và quen thuộc trong kỹ thuật Giao tiếp phải theo chuẩn RS-232, các bít dữ liệu nối tiếp nhau trên một đường truyền được dùng để giao tiếp giữa máy tính với các thiết bị khác như các máy công

cụ, các modem… Dữ liệu được truyền đi dưới dạng nối tiếp với 1 tốc độ cụ thể do người lập trình quy định gọi là tốc độ baud (300, 600, 1200, 2400, 4800…), chiều dài

ký tự có thể là 5,6,7,8 bit kết hợp với bit start, bit stop và bit parity (chẵn lẽ) để tạo thành 1 khung truyền

Trang 28

Ngoài các đường truyền dữ liệu, port giao tiếp này còn có các đường điều khiển thu, phát, kiểm tra lỗi Cách giao tiếp này cho phép truyền ở khoảng cách lớn vì khả năng nhiễu là khá nhỏ Mặc khác, vì đường truyền là nối tiếp nên thành viên thứ 3 không thể tham gia vào cuộc trao đổi thông tin

Ưu điểm lớn nhất của kiểu giao tiếp này là sử dụng ít đường truyền, ít nhiễu tín hiệu nên có thể truyền quãng đường xa… Nhưng mặt khác do bản chất của truyền thông là nối tiếp nên cổng nối tiếp không sử dụng cho những ứng dụng thời gian thực hay điều khiển song song…

2.6 Tra cứu tài liệu về các linh kiện điện tử

Trang 29

2.6.2 IC cổng NAND 74hc00

Bảng 2.2: Bảng khuyến cáo chế độ hoạt động của 74HC00

2.6.3 Transistor A1015

Bảng 2.3: Đặc tính dòng và áp khi hoạt động của Transistor A1015

2.7 Tìm hiểu vi điều khiển AVR

Họ vi điều khiển AVR có những đặt điểm sơ lược sau:

- Bộ nhớ Flash được tích hợp ngay trên chíp và có khả năng lập trình ngay trên

hệ thống được sử dụng làm bộ nhớ chương trình Bộ nhớ chương trình có thể được nạp mới trong khi vi điều khiển nằm trên mạch mà chúng ta không cần phải nhấc nó ra và đặt vào mạch nạp Đặc tính này cho phép cập nhật phần mềm hệ thống nhanh chóng và

dễ dàng hơn

- Các thanh ghi làm việc đa năng 32 x 8 (theo truyền thống các bộ vi xử lý RISC thực sự) Một tập hợp bao gồm rất nhiều thanh ghi có nghĩa là các biến được lưu

Trang 30

trực tiếp bên trong CPU chứ không phải lưu trữ các biến trong bộ nhớ, vì việc truy cập lên bộ nhớ thường tốn nhiều thời gian hơn Như vậy chương trình sẽ chạy nhanh hơn

- Bộ nhớ dữ liệu ngay trên chíp loại EEROM và RAM có trong hầu hết các thành viên của họ AVR

- Hoạt động với xung nhịp có tần số từ 0 đến 16 MHz tùy từng loại vi điều khiển Xung nhịp được cấp từ thạch anh bên ngoài, hoặc bộ dao động RC Đặc biệt vi điều khiển AVR tích hợp sẵn bộ dao động nội lên đến 8Mhz chúng ta không phải dùng

bộ tạo dao động mà vẫn đáp ứng được tốc độ làm việc

- Vi điều khiển họ AVR có các bộ định thời ngay trên chip và lập trình được với mạch chia tần số (prescalar) tách biệt Bộ định thời này được dùng cho các ứng dụng như Timer, Pwm, ADC…

- Có một phạm vi rộng các đặt tính của bộ xử lý(từ các bộ xử lý cỡ nhỏ với 8 chân ra đến bộ xử lý 68 chân), nhờ vậy ta có thể lựa chọn 1 bộ xử lý thích hợp với yêu cầu đề ra, cả về chi phí và tính năng kỹ thuật cũng như về các công cụ phát triển

ATMEGA 32:

Sơ đồ chân loại DIP 40

Hình 2.14: (a) Hình dáng thật bên ngoài

(b) Sơ đồ vị trí chân tương ứng

Trang 31

Kiến trúc phần cứng:

- Được chế tạo theo kiến trúc RISC, hiệu suất cao và điện năng tiêu thụ thấp

- Bộ lệnh gồm 131 lệnh, hầu hết đều thực thi chỉ trong một chu kỳ xung nhịp

- 32 x 8 thanh ghi làm việc đa dụng

- 32KB Flash ROM lập trình được ngay trên hệ thống cho phép 10.000 ghi/ xóa

- Bộ EEPROM 1024 byte, cho phép 100.000 lền ghi/xóa

- 2 bộ Timer 8 bit và 1 bộ Timer 16 bit

- Bốn kênh điều chế độ rộng xung PWM

2.8 Tra cứu encoder

Encoder là thiết bị đo lường vận tốc quay, góc quay

- Nguyên lý cấu tạo:

Nguyên lý cấu tạo cơ bản là một đĩa tròn xoay trên đó có những lỗ được sắp xếp đều theo chu vi đĩa Một bộ phận phát thu tín hiệu ánh sáng thường là led và phototransistor hoặc led và photodiode được bố trí sao cho ánh sáng từ led xuyên qua

lỗ trên đĩa quay và tới mắt nhận

Đối với encoder loại incremental thì cấu tạo gồm 3 cặp thu phát Ta sẽ có 3 ngõ

ra tương ứng là A, B, Z Cặp thu phát A và cặp thu phát B được bố trí lệch nhau sao cho tín hiệu xung ra lệch pha nhau 90 độ

Trang 32

Bằng cách thay đổi điện áp phần ứng đặt lên động cơ ta có thể điều chỉnh động

cơ quay ở một tốc độ mong muốn

- Phương pháp điều chế độ rộng xung là băm xung điện áp với tần số cao để điều chỉnh giá trị điện áp trung bình đặt lên phần ứng động cơ

Giá trị điện áp trung bình này được tính theo công thức:

Trang 33

T : thời gian xung ở mức thấp trong 1 chu kỳ băm xung

T: chu kỳ băm xung

Trang 34

Chương 3

PHƯƠNG PHÁP VÀ PHƯƠNG TIỆN

3.1 Phương pháp thực hiện đề tài

3.1.1 Chọn phương pháp thiết kế phần cứng

- Thiết kế bằng phần mềm AutoCAD, sau đó đưa ra bản vẽ chi tiết để chế tạo

- Thiết kế kết cấu yêu cầu phần thân và đế vững vàng sao cho tạo ra chuyển động ổn định cho hệ con lắc

- Thiết kế mạch dựa vào phần mềm Orcad, kiểm tra mạch bằng project board, sau đó hoàn thành mạch in

3.1.2 Chọn phương pháp giao tiếp và truyền nhận

- Giao tiếp giữa vi điều khiển và máy tính theo kiểu truyền thông nối tiếp

3.1.3 Chọn phương pháp thiết kế mạch

Mạch điều khiển gồm:

- Mạch vi điều khiển

- Mạch công suất điều khiển động cơ

- Mạch giao tiếp encoder

- Mạch giao tiếp với máy tính

- Mạch nguồn

3.1.4 Chọn phương pháp thiết kế giao diện và viết phần mềm điều khiển

- Viết chương trình điều khiển cho vi điều khiển Atmega32 bằng phần mềm BASCOM AVR

- Viết giao diện điều khiển giám sát bằng phần mềm Visual Basic 6.0

- Mô phỏng động học cho hệ thống thông qua phần mềm MATLAB

3.2 Phương tiện thực hiện đề tài

- Các dụng cụ thực hiện phần cứng: máy hàn, máy cắt, máy tiện, máy mài, dũa, khoan,

Trang 35

- Các dụng cụ thi công mạch điện tử: mỏ hàn chì, máy khoan mạch in, dây dẫn, bus nối, cable, đồng hồ VOM, máy Oscilloscope đo sóng tín hiệu, project board,

- Các linh kiện điện tử dùng trong mạch như: điện trở, tụ điện, biến trở, nút nhấn, jack cắm, domino, thanh jump, IC ATmega, cầu điốt, FET,

- Các phần mềm máy tính như AutoCAD, ORCAD, BASCOM AVR, MATLAB, VISUAL BASIC 6.0, EAGLE

- Máy tính

- Các tạp chí, sách và các website hỗ trợ trong việc tra cứu tài liệu

- Một số dụng cụ phụ trợ khác

Trang 36

CƠ CẤU CHẤP HÀNH (ĐỘNG CƠ – CÁNH TAY – CON LẮC)

Trang 37

4.1 Các bước thực hiện trong quá trình thiết kế và thực hiện đề tài

Tính toán và thiết kế phần cứng của mô hình

Chuẩn bị các linh kiện và dụng cụ cần thiết

Test mạch trên project board và thi công phần cứng cơ

khí

Kết nối mô hình với Vi điều khiển và máy tính

Kiểm tra các tín hiệu nhận từ encoder và tín hiệu từ vi

Viết chương trình và giao diện hoàn chỉnh

Hoàn tất phần cứng và phần mềm của đề tài

Hình 4.2: Hình thể hiện các công đoạn của quá trình thiết kế và thực hiện đề tài

Trang 38

4.2 Thiết kế và chế tạo cơ khí của mô hình con lắc ngược quay

4.2.1 Mô hình thiết kế bằng phần mềm AutoCAD

Hình 4.3: Mô hình thiết kế cơ khí của hệ con lắc ngược quay

Mô hình con lắc ngược gồm các phần sau:

Trang 39

4.2.2 Mô hình thực hiện thực tế

Hình 4.4: Hình ảnh mô hình sau khi đã chế tạo xong

Trang 40

Hình 4.5: Hình ảnh mô hình đã chế tạo xong theo hướng nhìn từ trên xuống

Ngày đăng: 19/07/2018, 08:12

TỪ KHÓA LIÊN QUAN

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

w