Tải bản đầy đủ (.pdf) (31 trang)

Báo Cáo Đồ Án Điều Khiển Tự Động ROBOT ĐỀ TÀI Robot Tìm Đường Mê Cung Dùng Giải Thuật PID

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (591.84 KB, 31 trang )

TRƯỜNG ĐẠI HỌC SƯ PHẠM KỸ THUẬT TP HCM
KHOA ĐIỆN – ĐIỆN TỬ
BỘ MÔN TỰ ĐỘNG ĐIỀU KHIỂN
--------o0o--------

Báo Cáo Đồ Án
Điều Khiển Tự Động ROBOT
ĐỀ TÀI:

Robot Tìm Đường Mê Cung Dùng Giải Thuật PID
SVTH: 1. Nguyễn Khánh Dương
2. Sỳ Quốc Bình
GVHD: TS. Nguyễn Văn Thái

TP HỒ CHÍ MINH, THÁNG 6/2017


NHẬN XÉT CỦA GIÁO VIÊN HƯỚNG DẪN
Giáo viên hướng dẫn: TS. Nguyễn Văn Thái
Họ và tên sinh viên:

Nguyễn Khánh Dương
Sỳ Quốc Bình

Ngành: Cơng Nghệ Kỹ Thuật Điều Khiển và Tự Động Hóa
Tên đề tài: Robot Tìm Đường Mê Cung Dùng Giải Thuật PID
Nhận xét của giáo viên hướng dẫn:
------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------TP.HCM,

tháng 5 năm 2017


TS. Nguyễn Văn Thái

MỤC LỤC
1


CHƯƠNG 1 CƠ SỞ LÝ THUYẾT……………………………………....…5
1.1 Tổng quan về bài toán bám tường của robot di động………………....5
1.1.1 Bài toán di chuyển theo tường…………………………….......….6
1.2 Giải Thuật PID………………………………………………...............7
1.2.1 Sơ Đồ Khối Nguyên Lý Hoạt Động…………………………........7
1.2.2 Lý Thuyết Thuật Toán PID……………………………………….7
CHƯƠNG 2 GIỚI THIỆU CÁC PHẦN TỬ ROBOT………………….…10
2.1 Động Cơ DC ………………………………………………………....10
2.2 Mạch Cầu H……………………………………………………..…...10
2.3 Cảm biến hồng ngoại…………………………………………….......12
2.4 Arduino Nano………………..………………………………….........13
2.5 Thiết kế Robot………………………………………………………..16
CHƯƠNG 3 THUẬT TOÁN ĐIỀU KHIỂN …………………………...…17
3.1 Xung PWM và Thuật toán điều khiển PID…… ……………..…...…17
3.2 Giải Thuật PID………………………………………………….…....20
3.2.1 Lưu Đồ Giải Thuật…………………………………..……...…20
3.2.2 Thuật Toán Bám Tường Trái Và Phải ………………….…....21
3.4 Ứng Dụng………………………………………………………..…...22
KẾT LUẬN…………………………………………………………….......23
TÀI LIỆU THAM KHẢO……………………………………………..…...24
PHỤ LỤC………………………………………………………………..…25

2



Nội dung của đề tài: bao gồm những chương sau:
Chương 1: Cơ sở lý thuyết.
Nội dung của chương này là trình bày lý thuyết về các thuật tốn tìm kiếm
đường và lý thuyết giải thuật PID
Chương 2: Giới thiệu các phẩn tử của Robot
Chương này chủ yếu trình bày sơ lược về cấu trúc hoạt động của Board mạch
Arduino, cảm biến hồng ngoại, mạch cầu H và thiết kế về phần khung xe và phần
điện cho mơ hình robot di động.
Chương 3: Thuật tốn điều khiển
Chương này trình bày giải thuật tìm đường bám tường, ứng dụng PID để
điểu khiển tốc độ động cơ.
Kết luận và hướng phát triển của đề tài.
Chương này trình bày những kết quả đạt được, các mặt hạn chế và hướng
phát triển của đề tài.

3


CHƯƠNG 1
CƠ SỞ LÝ THUYẾT
1.1 Tổng quan về bài toán bám tường của robot di động
Ngày nay, Robot học đã đạt được những thành tựu to lớn trong nền sản xuất
cơng nghiệp. Những cánh tay robot có khả năng làm việc với tốc độ cao, chính
xác và liên tục làm năng suất lao động tăng nhiều lần. Chúng có thể làm việc
trong các môi trường độc hại như hàn, phun sơn, các nhà máy hạt nhân, hay lắp ráp
các linh kiện điện tử tạo ra điện thoại, máy tính…một cơng việc địi hỏi sự tỉ mỉ,
chính xác cao. Tuy nhiên những robot này có một hạn chế chung đó là hạn chế về
không gian làm việc. Không gian làm việc của chúng bị giới hạn bởi số bậc tự do
tay máy và vị trí gắn chúng. Ngược lại, các Robot tự hành lại có khả năng hoạt

động một cách linh hoạt trong các mơi trường khác nhau.
Robot dị đường mê cung nói riêng hay robot tự hành nói chung là loại robot có
khả năng tự hoạt động, thực thi nhiệm vụ mà không cần sự can thiệp của con
người. Với những cảm biến, chúng có khả năng nhận biết về mơi trường xung
quanh. Robot tự hành ngày càng có nhiều ý nghĩa trong các ngành công nghiệp,
thương mại, y tế, các ứng dụng khoa học và phục vụ đời sống của con người. Với
sự phát triển của ngành Robot học, robot tự hành ngày càng có khả năng hoạt
động trong các môi trường khác nhau, tùy mỗi lĩnh vực áp dụng mà chúng có nhiều
loại khác nhau như robot sơn, robot hàn, robot cắt cỏ, robot thám hiểm đại dương,
robot làm việc ngoài vũ trụ. Cùng với sự phát triển của yêu cầu trong thực tế, robot
tự hành tiếp tục đưa ra những thách thức mới cho các nhà nghiên cứu. Vấn đề của
robot tự hành là làm thế nào để robot tự hành có thể hoạt động, nhận biết môi
trường và thực thi các nhiệm vụ đề ra.

4


1.1.1 Các thuật toán giải mê cung và thuật toán Bám Theo Tường dùng PID
Các thuật tốn tìm đường đi trong mê cung là những phương pháp được
tự động hóa để giải một mê cung. Mê cung khơng chứa các vịng lặp được gọi là
mê cung "tiêu chuẩn" hoặc "hoàn hảo", và nó tương đương với một cây trong lý
thuyết đồ thị. Vì vậy, nhiều thuật tốn tìm đường đi trong mê cung có liên quan
chặt chẽ với lý thuyết đồ thị. Một cách trực quan, nếu ta kéo dài các đường trong
mê cung ra một cách thích hợp, kết quả thu được có thể trơng giống như một cây.
Các thuật tốn trong mê cung:







Thuật toán chọn đường ngẫu nhiên
Thuật toán bám theo tường
Thuật toán Pledge
Thuật tốn Trémaux
Thuật tốn lấp kín đường cụt

Trong đề tài thiết kế này, chúng em sử dụng thuật toán bám theo tường dùng
phương pháp điều khiển PID.
Thuật toán bám theo tường là một quy tắc nổi tiếng nhất để vượt qua mê
cung, còn được gọi là quy tắc tay trái hoặc quy tắc tay phải. Nếu mê cung chỉ liên
thông đơn giản nghĩa là tất cả các bức tường của nó được kết nối với nhau hoặc kết
nối với đường bao quanh mê cung, thì bằng cách dị một tay lên một bức tường của
mê cung thì người đi đảm bảo khơng bị lạc và tìm được lối ra nếu có một lối ra trên
đường bao, hoặc nếu khơng có lối ra thì sẽ quay trở lại lối vào và sẽ đi qua tất cả
các đường của mê cung ít nhất 1 lần.
Nếu các bức tường được kết nối, thì có thể được kéo giãn biến dạng thành
một vòng lặp hoặc vòng trịn. Do đó, bức tường buộc người đi theo xung quanh
một vòng tròn từ điểm đầu đến cuối.

5


1.2 Giải Thuật PID
1.2.1 Sơ đồ khối

1.2.2 Lý thuyết thuật tốn PID
Một bộ điều khiển vi tích phân tỉ lệ (bộ điều khiển PID- Proportional Integral
Derivative) là một cơ chế phản hồi vòng điều khiển (bộ điều khiển) tổng quát
được sử dụng rộng rãi trong các hệ thống điều khiển công nghiệp – bộ điều

khiển PID là bộ điều khiển được sử dụng nhiều nhất trong các bộ điều khiển
phản hồi. Bộ điều khiển PID sẽ tính toán giá trị "sai số" là hiệu số giữa giá trị
đo thông số biến đổi và giá trị đặt mong muốn. Bộ điều khiển sẽ thực hiện giảm
tối đa sai số bằng cách điều chỉnh giá trị điều khiển đầu vào.  Giải thuật tính
tốn bộ điều khiển PID bao gồm 3 thông số riêng biệt, do đó đơi khi nó cịn
được gọi là điều khiển ba khâu: các giá trị tỉ lệ, tích phân và đạo hàm, viết tắt
là P, I, và D. Giá trị tỉ lệ xác định tác động của sai số hiện tại, giá trị tích
phân xác định tác động của tổng các sai số quá khứ, và giá trị vi phân xác định
tác động của tốc độ biến đổi sai số. Tổng chập của ba tác động này dùng để
điều chỉnh q trình thơng qua một phần tử điều khiển như vị trí của van điều
6


khiển hay bộ nguồn của phần tử gia nhiệt. Nhờ vậy, những giá trị này có thể
làm sáng tỏ về quan hệ thời gian: P phụ thuộc vào sai số hiện tại, I phụ thuộc
vào tích lũy các sai số q khứ, và D dự đốn các sai số tương lai, dựa vào tốc
độ thay đổi hiện tại.
Khâu tỉ lệ, tích phân, vi phân được cộng lại với nhau để tính tốn đầu ra của bộ
điều khiển PID. Định nghĩa rằng u(t)  là đầu ra của bộ điều khiển, biểu thức
cuối cùng của giải thuật PID là:

Trong đó

các thơng số

điều chỉnh là:
Độ lợi tỉ lệ,  K p
Giá trị càng lớn thì đáp ứng càng nhanh do đó sai số càng lớn, bù khâu tỉ lệ
càng lớn. Một giá gị độ lợi tỉ lệ quá lớn sẽ dấn đến quá trình mất ổn định và
dao động.

Độ lợi tích phân,  K i
Giá trị càng lớn kéo theo sai số ổn định bị khử càng nhanh. Đổi lại là độ vọt
lố càng lớn: bất kỳ sai số âm nào được tích phân trong suốt đáp ứng quá độ
phải được triệt tiêu tích phân bằng sai số dương trước khi tiến tới trạng thái
ổn định.
Độ lợi vi phân,  K d
Giá trị càng lớn càng giảm độ vọt lố, nhưng lại làm chậm đáp ứng quá độ và
có thể dẫn đến mất ổn định do khuếch đại nhiễu tín hiệu trong phép vi phân
sai số.
7


CHƯƠNG 2
GIỚI THIỆU VỀ CÁC PHẦN TỬ TRONG ROBOT
2.1 Động cơ DC giảm tốc
DC động cơ là động cơ điện hoạt động với dòng một chiều. Động cơ DC sử
dụng rộng rãi trong các ứng dụng dân cư cũng như các ngành công nghiệp. Thông
thường động cơ DC chỉ chạy ở một tốc độ khi kết nối với nguồn điện, nhưng vẫn
có thể kiểm sốt tốc độ và hướng của động cơ với sự hỗ trợ của các mạch điện tử
với phương pháp PWM.
Động cơ sử dụng trong đề tài có tên gọi là GA12 – N20 (1:50). Ý nghĩa của
thơng số 1:50 đó là tỷ số truyền của động cơ đã thông qua bộ giảm tốc (các bánh
răng), khi động cơ quay được 50 vịng (khơng có bánh răng) thì trục bên ngồi (đã
qua bộ bánh răng) thì mới quay được một vịng.
Thơng số kỹ thuật:
 Điện áp cung cấp: 1.5 ~ 12V
 Tỷ số truyền 50:1
 Tốc độ qua hộp số: 3V ~ 250rpm, 6V ~ 500rpm và 12V ~
1000rpm
Kích thước động cơ: Đường kính 12mm, chiều dài động cơ 34mm, đường

kính trục 3mm, chiều dài trục 10mm.

8


2.2 Mạch cầu H dùng IC L298N
Cầu H là một mạch điện tử cho phép điện áp được đặt lên tải theo 2 hướng ,
mạch này thường được sử dụng để thay đổi điện áp trung bình cấp cho động cơ nhờ
vào xung PWM, ngồi ra cầu H cịn được dùng để đảo chiều quay động cơ.

-

9


- Động cơ quay theo chiều thuận: transistor Q1 đóng, Q3 mở, transistor Q2 mở, Q4
đóng. Dó đó, dịng điện trong mạch có thể chạy từ nguồn 12V đến Q2, qua động cơ
đến Q3 để về GND.
Động cơ quay theo chiều nghịch: transistor Q1 mở, Q3 đóng, transistor Q2 đóng,
Q4 mở. Dó đó, dịng điện trong mạch có thể chạy từ nguồn 12V đến Q1, qua động
cơ đến Q4 để về GND.

Thông số kỹ thuật:
 Điện áp đầu vào: 5~30VDC
 Công suất tối đa: 25W/1 cầu (công suất = UI, điện áp càng cao thì
dịng càng nhỏ).
 Dịng tối đa cho mỗi cầu H: 2A
 Mức điện áp Logic: LOW -0.3~1.5V, HIGH 2.3~Vss
 Kích thước: 43x43x27mm
10



2.3 Cảm biến hồng ngoại
Nguyên lý của cảm biến này như sau : mắt phát hồng ngoại sẽ phát ra sóng ánh
sáng có bước sóng hồng ngoại , ở mắt thu bình thường thì có nội trở rất lớn
(khoảng vài trăm kilo ôm ) , khi mắt thu bị tia hồng ngoại chiếu vào thì nội trở của
nó giảm xuống ( khoảng vài chục ơm). Hình sau biểu diễn ngun lý hoạt động của
cảm biến phát hiện vật cản IR:

Sơ đồ mạch cảm biến hồng ngoại đơn giản

11


Hình ảnh cảm biến:

12


Gồm 3 chân ra: VCC (nối nguồn 5V), GND (nối 0V) và chân OUT để lấy tín hiệu
đặt vào chân Analog của Arduino để xử lí.

2.4 Board mạch Arduino NANO

13


Vì sao chọn Arduino Nano ? Arduino Nano có kích thước nhỏ gọn (1.85cm x
4.3cm), giá thành rẻ và đặc biệt sử dụng được hầu hết tất cả các thư viện arduino
nano như các dịng có giá tiền cao hơn nó.


14


Sơ đồ chân Pin-out của Arduino Nano

15


Cách lập trình cho Arduino Nano
Các board Serial Arduino có chứa một mạch chuyển đổi giữa RS232
sang TTL. Các board Arduino hiện tại được lập trình thơng qua cổng USB,
thực hiện thông qua chip chuyển đổi USB-to-serial như là FTDI FT232. Vài
biến thể, như Arduino Mini và Boarduino khơng chính thức, sử dụng một
board adapter hoặc cáp nối USB-to-serial có thể tháo rời được, Bluetooth
hoặc các phương thức khác.
Arduino Nano sử dụng chương trình Arduino IDE để lập trình, và ngơn
ngữ lập trình cho Arduino cũng tên là Arduino (được xây dựng trên ngôn
ngữ C). Tuy nhiên, nếu muốn lập trình cho Arduino Nano cần phải thực hiện
một số thao tác trên máy tính.
 Cần cài Driver của Arduino Nano và tải về bản Arduino IDE
(Intergrated Development Environment) mới nhất cho máy tính
tại arduino.cc , các bước cài đặt hồn toàn dễ dàng.
 Sau khi cài đặt, bạn sẽ thấy một thông báo dạng "Cổng COMx đã
được cài đặt thành công" (chữ "x" này sẽ được thay bằng một số
nguyên dương, bạn hãy nhớ lấy số này, vì sau này sẽ dùng cổng
COMx này để lập trình cho Arduino Nano).
 Sau đó chọn board Arduino Nano và tiến hành lập trình

16



Arduino Nano là vi điều khiển ATmega328P sử dụng thạch anh có chu kì dao động
là 16 MHz. Với vi điều khiển này, ta có tổng cộng 14 pin (ngõ) ra / vào được đánh
số từ 0 tới 13 (trong đó có 6 pin PWM, được đánh dấu ~ trước mã số của pin). Song
song đó, ta có thêm 6 pin nhận tín hiệu analog được đánh kí hiệu từ A0 - A5, 6 pin
này cũng có thể sử dụng được như các pin ra / vào bình thường (như pin 0 - 13). Ở
các pin được đề cập, pin 13 là pin đặc biệt vì nối trực tiếp với LED trạng thái trên
board.
Trên board cịn có 1 nút reset, 1 ngõ kết nối với máy tính qua cổng USB

17


2.4 Thiết Kế Robot
Phần này giới thiệu sơ lược về phần cứng của robot tìm đường.
Robot tìm đường được thiết kế như hình gồm các phần chính như sau:
- Khung xe bằng mica.
- Bánh xe đa hướng.
- Động cơ DC có hộp số dùng để truyền động cho 2 bánh xe.
- Hệ thống cảm biến được chọn sử dụng trong mơ hình này là cảm biến hồng
ngoại.
- Nguồn pin 12 VDC sử dụng pin Lipo 1500mAh, kèm theo mạch giảm áp.
- Bo mạch Arduino Nano.
- Module L298N.

18


CHƯƠNG 3

XUNG PWM VÀ THUẬT TOÁN ĐIỀU KHIỂN PID
3.1 Điều chế độ rộng xung PWM
Xung là các trạng thái cao / thấp (HIGH/LOW) về mức điện áp được lặp đi lặp lại.
Đại lượng đặc trưng cho 1 xung PWM (Pulse Width Modulation) bao gồm tần
số (frequency) và chu kì xung (duty cycle).
Điều khiển động cơ PWM phương pháp dựa trên nguyên tắc hoạt động cho động cơ
chạy bằng chuỗi xung nhanh chóng mở và đóng. Điện DC được chuyển đổi thành
tín hiệu sóng vng . Tín hiệu sóng vng này cho động cơ. Nếu tần số chuyển đổi
là đủ lớn động cơ sẽ chạy ở tốc độ ổn định phụ thuộc vào trục mô-men xoắn.
Với phương pháp PWM, điều chỉnh tốc độ động cơ thông qua điều chế độ rộng
xung, tức là thời gian "xung đầy đủ" ("on") của chuỗi xung vuông cho động cơ.
Điều chỉnh này sẽ ảnh hưởng đến công suất trung bình cho động cơ và do đó sẽ
thay đổi cần điều khiển tốc độ động cơ.

19



×