Acrobot là một ví dụ tiêu biểu cho các hệ thống hụt số đầu vào điều khiển nhỏ hơn bậc của mô hình.. Vào năm 1948, nhà nghiên cứu Goertz đã nghiên cứu chế tạo loại tay máy đôi điều khiển
Trang 1ĐẠI HỌC THÁI NGUYÊN
TRƯỜNG ĐẠI HỌC KỸ THUẬT CÔNG NGHIỆP
Trang 2TRƯỜNG ĐẠI HỌC KỸ THUẬT CÔNG NGHIỆP THÁI NGUYÊN
Người hướng dẫn khoa học: TS Nguyễn Hoài Nam
Phản biện 1: PGS.TS Nguyễn Thanh Hà
Phản biện 2: PGS.TS Nguyễn Như Hiển
Luận văn này được bảo vệ trước Hội đồng chấm luận văn
Họp tại: TRƯỜNG ĐẠI HỌC KỸ THUẬT CÔNG NGHIỆP THÁI NGUYÊN
Vào hồi 8 h 30’ ngày 18 tháng 8 năm 2014
Có thể tìm hiểu luận văn tại:
- Trung tâm học liệu Đại học Thái Nguyên
- Thư viện trường Đại Học Kỹ Thuật Công Nghiệp
Trang 3MỞ ĐẦU
1 Lý do chọn đề tài
Trong công cuộc kiến thiết xây dựng đất nước đang bước vào thời kỳ công nghiệp hóa, hiện đại hóa đất nước với những cơ hội thuận lợi và những khó khăn thách thức lớn Cùng với sự phát triển của khoa học kĩ thuật, ngành tự động hóa đã có những bước tiến quan trọng Quá trình đó góp phần không nhỏ vào việc tăng năng suất lao động, giảm giá thành, tăng chất lượng và độ đồng đều về chất lượng, đồng thời tạo điều kiện cải thiện môi trường làm việc của con người, đặc biệt trong một số công việc có độ an toàn thấp hoặc có tính độc hại cao Điều này đặt ra cho thế hệ trẻ những chủ nhân tương lai của đất nước những nhiệm vụ nặng nề
Sự phát triển nhanh chóng của cách mạng khoa học kỹ thuật nói chung và trong lĩnh vực điện - điện tử nói riêng làm cho bộ mặt xã hội đất nước biến đổi từng ngày Để đáp ứng được những yêu cầu đó, chúng em những chủ nhân tương lai của đất nước cần có ý thức học tập
và nghiên cứu về chuyên môn của mình trong Trường Đại học Kỹ thuật công nghiệp một cách đúng đắn và sâu sắc
Acrobot là một ví dụ tiêu biểu cho các hệ thống hụt (số đầu vào điều khiển nhỏ hơn bậc của mô hình) Đây là một hệ thống phi tuyến và rất khó điều khiển, có thể sử dụng làm đối tượng thử nghiệm cho các thuật toán điều khiển phi tuyến mới Thấy được tầm quan trọng đó, tôi
đã chọn đề tài: “Nhận dạng hệ thống acrobot ”
2 Mục tiêu nghiên cứu
- Chế tạo một hệ thống acrobot trong phòng thí nghiệm
- Xây dựng mô hình toán học cho hệ thống acrobot
3 Đối tượng và phạm vi nghiên cứu
3.1 Đối tượng nghiên cứu
- Mô hình toán của acrobot
- Nghiên cứu các phương pháp nhận dạng cho acrobot
Trang 43.2 Phạm vi nghiên cứu
Phục vụ việc nghiên cứu trong phòng thí nghiệm tại Trường Đại học Kỹ thuật công nghiệp - Đại học Thái Nguyên
4 Ý nghĩa khoa học và thực tiễn của đề tài nghiên cứu
4.1 Ý nghĩa khoa học của đề tài
Acrobot là một ví dụ điển hình của các hệ thống hụt Đây là một
hệ thống phi tuyến rất khó điều khiển Có thể sử dụng hệ thống này như một đối tượng để thử nghiệm các lý thuyết điều khiển điển kinh điển cũng
như lý thuyết điều khiển mới
4.2 Ý nghĩa thực tiễn của đề tài nghiên cứu
Hệ acrobot là cơ sở để tạo ra các hệ thống tự cân bằng như: Xe hai bánh tự cân bằng, tháp vô tuyến, giàn khoan, công trình biển…
5 Phương pháp nghiên cứu
5.1 Nghiên cứu lý thuyết
- Xây dựng mô hình toán cho hệ thống acrobot
- Xác định tham số của mô hình cho hệ thống acrobot
5.2 Phương pháp thực nghiệm
- Xác định các thông số cơ, điện của acrobot như hệ số ma sát,
mô men quán tính, chiều dài và khối lượng của các thanh và khớp
- So sánh đầu ra của mô hình toán với đầu ra thực của acrobot
để kiểm nghiệm độ chính xác của mô hình
6 Các công cụ, thiết bị cần thiết cần thiết cho nghiên cứu
- 1 máy tính
- Phần mềm Matlab/Simulink
- 1 động cơ chấp hành
- 2 cảm biến đo tốc độ và góc
- 1 card Arduino hoặc tương đương
- Các thiết bị hỗ trợ thiết kế và chế tạo acrobot phần cơ khí
Trang 5CHƯƠNG I: TỔNG QUAN VỀ ROBOT VÀ ACROBOT
1 TỔNG QUAN VỀ ROBOT
1.1 Sơ lược quá trình phát triển
Những robot thực sự có ích được nghiên cứu để đưa vào những ứng dụng trong công nghiệp thực sự lại là những tay máy Vào năm
1948, nhà nghiên cứu Goertz đã nghiên cứu chế tạo loại tay máy đôi điều khiển từ xa đầu tiên, và cùng năm đó hãng General Mills chế tạo tay máy gần tương tự sử dụng cơ cấu tác động là những động cơ điện kết hợp với các cữ hành trình Đến năm 1954, Goertz tiếp tục chế tạo một dạng tay máy đôi sử dụng động cơ servo và có thể nhận biết lực tác động lên khâu cuối Sử dụng những thành quả đó, vào năm 1956 hãng General Mills cho ra đời tay máy hoạt động trong công việc khảo sát đáy biển Năm 1968 R.S Mosher, thuộc hãng General Electric, đã chế tạo một thiết bị biết đi có bốn chân, có chiều dài hơn 3m, nặng 1.400kg,
sử dụng động cơ đốt trong có công suất gắn 100 mã lực Cũng trong lĩnh vực này, một thành tựu khoa học công nghệ đáng kể đã đạt được vào năm 1970 là xe tự hành thám hiểm bề mặt của mặt trăng Lunokohod 1 được điều khiển từ trái đất
Năm 1952 máy điều khiển chương trình số đầu tiên ra đời tại Học Viện Công nghệ Massachusetts (Hoa Kỳ) Trên cơ sở đó năm
1954, George Devol đã thiết kế robot lập trình với điều khiển chương trình số đầu tiên nhờ một thiết bị do ông phát minh được gọi là thiết bị chuyển khớp được lập trình Joseph Engelberger người mà ngày nay thường được gọi là cha đẻ của robot công nghiệp, đã thành lập hãng Unimation sau khi mua bản quyền thiết bị của Devol và sau đó đã phát triển những thế hệ robot điều khiển theo chương trình Năm 1962, robot Unmation đầu tiên được đưa vào sử dụng tại hãng General Motors; và năm 1976 cánh tay robot đầu tiên trong không gian đã được sử dụng trên tàu thám hiểm Viking của cơ quan Không Gian NASA của Hoa Kỳ
để lấy mẫu đất trên sao Hoả
Trang 61.2 Những ứng dụng điển hình của robot
Robot được ứng dụng rộng rãi trong nhiều ngành công nghiệp:
Những ứng dụng ban đầu bao gồm gắp đặt vật liệu, hàn điểm
và phun sơn:
Một trong những công việc kém năng suất nhất của con người
là rèn kim loại ở nhiệt độ cao Các công việc này đòi hỏi công nhân di chuyển phôi có khối lượng lớn với nhiệt độ cao khắp nơi trong xưởng Việc tuyển dụng công nhân làm việc trong môi trường nhiệt độ cao như vậy là một vấn đề khó khăn đối với ngành công nghiệp này, và robot ban đầu đã được sử dụng để thay thế công nhân làm việc trong điều kiện môi trường ngặt nghèo như trong lò đúc, xưởng rèn, và xưởng hàn Đối với robot thì nhiệt độ cao lại không đáng sợ
Ứng dụng robot trong lắp ráp:
Một kỹ thuật sản xuất có mục tiêu lâu dài là nhà máy tự động hoàn toàn, ở đó một bản thiết kế được thể hiện tại một trạm thiết kế bằng máy tính, không có sự can thiệp của con người vào quá trình sản xuất Hãy thử hình dung một môi trường sản xuất tự động hoàn toàn; từ
ý tưởng sản phẩm, gồm các chỉ tiêu kỹ thuật cấp cao, người ta thiết kế
ra sản phẩm; sau đó đặt vật liệu, lập ra chương trình gia công, lập ra chiến lược đường đi của chi tiết trong nhà máy; điều khiển cung cấp chi tiết vào máy gia công, lắp ráp và kiểm tra tự động thông qua các máy gia công CNC và các robot tĩnh và robot di động
Ứng dụng robot trong nhà máy sản xuất
Trong sản xuất lớn, những robot này là những hệ thống được tự động hoá hoàn toàn: chúng đo đạc, cắt, khoan các thiết bị chính xác và còn có khả năng hiệu chỉnh các công việc của mình, hầu như ở đây không cần sự giúp đỡ của con người trừ chương trình điều khiển trong máy tính điện tử Chỉ với vài người giám sát công việc; các máy móc này có thể hoạt động suốt ngày đêm; các robot làm tất cả các công việc như vận chuyển sản phẩm từ công đoạn sản xuất này tới công đoạn sản xuất khác kể cả việc đưa và sắp xếp thành phẩm vào kho
Trang 71.3 Phân loại robot
- Robot toạ độ vuông góc (cartesian robot): robot loại này có ba bậc chuyển động cơ bản gồm ba chuyển động tịnh tiến dọc theo ba trục vuông góc
- Robot toạ độ trụ (cylindrical robot): ba bậc chuyển động cơ bản gồm hai trục chuyển động tịnh tiến và một trục quay
- Robot toạ độ cầu (spherical robot): ba bậc chuyển động cơ bản gồm một trục tịnh tiến và hai trục quay
- Robot khớp bản lề (articular robot): ba bậc chuyển động cơ bản gồm ba trục quay, bao gồm cả kiểu robot SCARA
2 TỔNG QUAN VỀ ACROBOT
Acrobot là rô bốt phẳng, hai bậc tự do nhưng chỉ có khớp thứ hai được điều khiển như hình 1 Các thông số như chiều dài, khối lượng, vị trí trọng tâm và mô men quán tính của các thanh (link) trong hình 1 được giải thích cụ thể trong phần 3.2.1 Hệ phương trình động lực học của acrobot là một hệ phi tuyến có hai bậc tự do, một đầu vào điều khiển và hai đầu ra Vấn đề đặt ra là tìm thuật toán điều khiển cho khớp thứ 2 để đưa acrobot từ điểm ban đầu bất kỳ lên vị trí thẳng đứng và điều khiển duy trì nó ở trạng thái thẳng đứng cân bằng không ổn định này
Hình 1.1: Sơ đồ cấu trúc Acrobot
Trang 8Thuật ngữ “Acrobot” được đưa ra tại Berkeley, ở đó những
nghiên cứu đầu tiên về điều khiển acrobot được thực hiện bởi Murray
và Hauser [1] Các kết quả thử nghiệm đầu tiên cho Acrobot được thực hiện bởi Bortoff [2], Nhóm R'emi và Loria [3] đã sử dụng mạng nơ ron
để đễ xấp xỉ hàm với độ chính xác cao để điều khiển acrobot
Nhóm nghiên cứu Sam Duong Châu, Hiroshi Kinjo, Eiho Uezato,
và Tetsuhiko Yamamoto [4] đã nghiên cứu điều khiển tương tự cho acrobot thông qua máy tính Scott và Kevin [5] đã phát triển bộ điều khiển thông minh cho acrobot Gần đây Mahindrakar và Banavar đã đề xuất một chiến lược điều khiển cho acrobot dựa trên nguyên lý điều khiển con lắc ngược [6] Tuy nhiên các tác giả mới chỉ đưa ra một mô hình toán của acrobot và mô phỏng hệ thống điều khiển sử dụng nguyên lý điều khiển con lắc ngược Tác giả Quân [7] đã kiểm tra những kết quả trong bài báo [6] thông qua thiết kế bộ điều khiển và mô phỏng trong Simuink/Matlab Kết quả mô phỏng cho thấy có thể áp dụng thuật toán điều khiển trong [6] cho acrobot thực Kết quả trong [7] cho thấy điều kiện chuyển từ bộ điều khiển phi tuyến sang bộ điều khiển tuyến tính lớn hơn so với [6], cụ thể là 0.5 Tác giả trên đã xây dựng một mô hình acrobot trong phòng thí nghiệm dựa vào mô hình toán trong [6] Tuy nhiên acrobot này còn có nhiều hạn chế, khó có thể dùng làm mô hình để thí nghiệm
Trong luận văn này, một mô hình acrobot trong phòng thí nghiệm sẽ được xây dựng và các phương pháp nhận dạng sẽ được sử dụng để xác định các tham số của mô hình toán của acrobot Acrobot trong [7] sẽ được nâng cấp với cấu trúc mới khả thi hơn cho quá trình nhận dạng và điều khiển
Kết luận chương 1
Trong chương 1 đã tìm hiểu về sự phát triển của robot ,ứng dụng của robot và phân loại của robot trong ngành công nghiệp Tìm hiểu về sự phát triển của Acrobot
Trang 9CHƯƠNG II: THIẾT KẾ VÀ CHẾ TẠO HỆ THỐNG ACROBOT
2.1 Lựa chọn mô hình ACROBOT
Hình 2.1: Một hệ thống acrobot trong phòng thí nghiệm
Trong việc thiết kế và chế tạo acrobot, đã có một số mô hình acrobot được chế tạo Gần đây Hà Mạnh Quân [7] đã thiết kế và chế tạo ra một
mô hình acrobot như hình 2.1
Chúng ta thấy rằng đối với mô hình này việc nhận dạng và điều khiển nó rất khó khăn Thanh 1 được thiết kế có dạng hình chữ T Một đầu gắn động cơ điều khiển khớp thứ 2 thông qua hệ thống dây đai và bánh, còn đầu kia gắn một thiết bị đối trọng Cho nên việc tính toán các thông số như là mô men và tọa độ tâm của Thanh 1 rất khó khăn Hệ thống acrobot này chưa phù hợp với mô hình toán đã được chọn Để khắc phục khó khăn này chúng tôi sẽ cải tiến Thanh 1 bằng cách chế tạo Thanh một có dạng thẳng và đồng đều như Thanh 2 và khi đó động
cơ sẽ được gắn với đầu cuối của Thanh 1 Như thế việc tính toán mô men và trọng tâm của Thanh 1 sẽ đơn giản hơn là trường hợp chữ T
2.2 Chế tạo mô hình ACROBOT
Dựa trên ý tưởng ở trên, chúng tôi đã chế tạo mô hình acrobot mới như hình 2.2 Các thanh 1 và 2 ở đây đều có cấu tạo dạng hình trụ rỗng và được làm bằng vật liệu là inox
Trang 10Mặt bên Mặt trước
Hình 2.2: Hình ảnh của mô hình Acrobot thực
Do chúng ta gắn động cơ vào đầu cuối của Thanh 1, cho nên phải có thêm hệ thống các giây nối giữa động cơ và card Arduino
2.2.1 Thanh 1
Thanh 1 được làm bằng inox với kích thước và khối lượng như sau:
- Chiều dài của thanh: 0,24 m
- Khối lượng của thanh: 0,04 kg
Thanh 1 được gắn với 2 động cơ điện một chiều Một đầu của Thanh 1 được gắn với trục của rotor của động cơ điện một chiều số 1 và đầu còn lại được gắn với stator của động cơ số 2 Trục của động cơ số 2
sẽ được gắn với Thanh 2
Ở đây chỉ có động cơ số 2 là được điều khiển, còn động cơ số 1 chúng ta chỉ sử dụng Encorder sẵn có của nó để đo tốc độ và góc của Thanh 1 Việc sử dụng động cơ số 1 cho khớp thứ nhất sẽ giảm được việc phải thiết kế hệ thống trục đỡ và cảm biến đo góc và tốc độ của Thanh 1 Động cơ này không có hộp giảm tốc
2.2.2 Encorder của động cơ số 1
Encoder có 448 xung và 2 kênh Một kênh dùng để đo góc thuận và một kênh dùng để đo góc ngược Trên cơ sở số xung phát ra từ
2 kênh chúng ta có thể xác định được góc và tốc độ của Thanh 1
Trang 112.2.3 Động cơ số 2
Động cơ số 2 là động cơ điện một chiều kích từ độc lập có gắn thiết bị đo góc và tốc độ Encoder Động cơ này sẽ được dùng để tạo
moment quay cho khớp 2
Động cơ hoạt động được với các thông số:
- Điện áp nguồn DC: 5V ÷ 12V (tối đa 31V)
- Dòng điện không tải: 35mA ÷ 42mA
- Dòng điện có tải: 0,4A ÷ 1A
- Tốc độ: 1000vg/p ÷ 4300vòng/phút
2.2.4 Encoder 334 xung
Encoder (được tích hợp với động cơ) dùng để đo góc Đồng thời chuyển đổi vị trí góc thành tín hiệu nhị phân và nhờ tín hiệu này có thể xác định được vị trí trục động cơ hoặc cánh tay máy, tín hiệu ra của Encoder cho dưới dạng tín hiệu xung Xác định tốc độ của động cơ và
đo vị trí góc của cánh tay nhờ Encoder với các thông số:
2.2.5 Thuật toán đo tốc độ động cơ
Gọi số xung xuất ra từ kênh A (kênh B) trong 1s là: n
Số xung của đĩa Encoder là: Ne (khi động cơ quay được 1 vòng thì trên kênh A hoặc B sẽ xuất ra Ne xung)
Suy ra tốc độ động cơ: v n
Ne
(vòng/giây)
Gọi thời gian lấy mẫu là: Ts
Gọi số xung Encoder xuất ra trong thời gian Ts là ns
ns v
Ne Ts
Trang 12Kinh nghiệm lấy mẫu sao cho thương 1000
dễ cho việc xử lý số liệu hơn
2.2.6 Điều khiển tốc độ và chiều động cơ
Để điều khiển tốc độ và chiều của động cơ chúng tôi sử dụng phương pháp băm xung PWM (Pulse Width Modulation) cùng phần cứng là IC L298N
2.2.7 Giới thiệu hộp số (giảm tốc)
- Chiều dài của thanh: 0,48 m
- Khối lượng của thanh: 0,08 kg
2.3 Giới thiệu Card Arduino
Card Arduino 2560 Mega là một bo mạch vi xử lý có 54 ngõ I/O có thể tương tác và điều khiển nhiều thiết bị, được dùng để lập trình tương tác với các thiết bị phần cứng như cảm biến, động cơ, đèn hoặc các thiết bị khác Đặc điểm nổi bật của Arduino là được cung cấp sẵn phần cứng và phần mềm, có thể lập trình nó trong Simulink/Matlab một cách trực quan
Kết luận chương II
Trong chương II đã tìm hiểu về lựa chọn mô hình acrobat và
đã chế tạo được mô hình acrobat trong phòng thi nghiệm
Trang 13CHƯƠNG III: NHẬN DẠNG HỆ THỐNG ACROBOT 3.1 Phương pháp nhận dạng ACROBOT
Để tạo ra bộ tín hiệu vào ra mẫu từ acrobot thực, chúng tôi sẽ tạo ra một tín hiệu điện áp mẫu gồm một chuỗi các hàm bước nhẩy ngẫu nhiên về biên độ và độ rộng của từng hàm bược nhảy Quá trình tạo tín hiệu vào mẫu được thực hiện như sau:
Bước 1:
Phát ra một chuỗi tín hiệu điện áp ngẫu nhiên (R) sử dụng file myreference.m (phụ lục 5), sau đó đưa vào động cơ điều khiển Thanh 2
- Dải điện áp là: Umin = - 12V và Umax = 12V
- Độ rộng bước nhảy được chọn ngẫu nhiên trong khoảng: Tmin
= 0.1 s và Tmax=2.2 s
- Chu kỳ lấy mẫu: Ts = 0,03s
- Thời gian chạy phát ra tín hiệu điện áp đầu vào mẫu: 4.4s
Bước 2:
Cho điện áp mẫu R tác động vào động cơ số 2 Đo vị trí góc (T) của acrobot thực Để làm được việc này chúng tôi sử dụng Card Arduino kết nối với acrobot và máy tính, sau đó sử dụng thư viện vào
ra arduino trong Simulink điều khiển thời gian thực và đo tín hiệu góc cuả acrobot
Hình 3.1: Sơ đồ hệ thống đo vị trí góc cách tay máy