TÊN ĐỀ TÀI: Robot tự hành - Chương trình điều khiển và mô hình​​

Từ các thông tin trên các diễn đàn Internet và các trung tâm học tập thực hành, cho thấy nhu cầu học tập và nghiên cứu cũng như tự tìm hiểu về nhiều lĩnh vực trong ngành điện – điện tử nói chung, tự động hóa nói riêng là rất cao. Trong đó, có một lĩnh vực về vi điều khiển được quan tâm rất nhiều hiện nay đó là vi điều khiển PIC. Việc tìm hiểu và ứng dụng hết khả năng của nhiều loại PIC là cả một quá trình dài lý thú và hữu ích, vì sự thuận tiện, tinh gọn, khả năng phát triển cũng như sự đa dạng các dòng sản phẩm phù hợp nhiều quy mô ứng dụng của nó.

Một lĩnh vực khác được quan tâm đông đảo trên các diễn đàn học tập ngành điện tử và tự động hóa, nhưng chưa có một tài liệu chính thống phổ biến hướng dẫn hay cung cấp thông tin về nó, cũng như chưa được giảng dạy ở nhiều trung tâm đó là ứng dụng PIC 16F877 điều khiển ROBOT và thể hiện một sự linh hoạt mà trong thực tế rất phù hợp với nhu cầu sản xuất đa dạng trong các hệ thống từ công nghiệp cho đến dân dụng, nhất là ở những nơi có điều kiện khắc nghiệt thì vai trò của những chú Robot rất quan trọng.

Lựa chọn PIC trong đề tài này là một bước đi phù hợp với những yêu cầu giới hạn cần có của một đề tài tốt nghiệp cũng như đáp ứng những nhu cầu ứng dụng thực tế trong các lĩnh vực của ngành điện tử và tự động hóa đã theo học. Trong giới hạn của đề tài, chúng em sẽ đi sâu vào việc nghiên cứu, ứng dụng vi điều khiển PIC 16F877A và chế tạo Robot tự hành dùng hệ thống bánh xe đa hướng sẽ giúp cho Robot có thể di chuyển linh hoạt theo các hành trình định trước.

ã Tìm hiểu vi điều khiển PIC 16F877A phần cứng và tập lệnh.

ã Tìm hiểu về màn hình LCD, phần cứng và lập trình.

ã Tìm hiểu ngôn ngữ lập trình và biên dịch CCS, MPLAP, viết chương trình và biên dịch ra file.hex nạp cho vi điều khiển PIC. Viết chương trình điều khiển cho động cơ một chiều (cũng là điều khiển bánh xe đa hướng) thực hiện các hành trình đã định.

ã Tìm hiểu về bánh xe đa hướng

ã Thiết kế phần cơ khí và chế tạo Robot.

ã Thiết kế mạch điều khiển, mạch Driver cho 4 động cơ điều khiển 4 bánh xe đa hướng cho Robot di chuyển.

ã Chế tạo mạch, lắp ráp và thử nghiệm cho Robot chạy theo hành trình đã được lập trình.











Information

MỤC LỤC

TÓM TẮT ĐỒ ÁN iv

SUMMARY v

Chương 1: GIỚI THIỆU CHUNG 1

1.1. Mở đầu 1

1.2. Lý do lựa chọn đề tài 1

1.3. Mục tiêu nghiên cứu 2

1.4. Phạm vi nghiên cứu 2

1.5. Cấu trúc đồ án 3

Chương 2: TỔNG QUAN VỀ ROBOT TỰ HÀNH 3

2.1. Lịch sử ra đời của Robot 3

2.2. Tình hình phát triển Robot trên thế giới 3

2.3. Tình hình học tập, nghiên cứu, ứng dụng Robot tại Việt Nam 4

2.4. Giới thiệu về Robot tự hành 4

2.5. Các kiểu mô hình Robot 5

2.5.1. Kiểu mô hình thứ bậc 5

2.5.2. Kiểu mô hình phản hồi 6

2.5.3. Kiểu mô hình tổng hợp 6

2.5.4. Kiểu mô hình xác suất 6

2.6. Tổng quan về các bài toán của Robot di động 6

Chương 3: GIỚI THIỆU VỀ VI ĐIỀU KHIỂN PIC 16F877 VÀ TRÌNH BIÊN DỊCH 7

3.1. Vi điều khiển PIC 16F877A 7

3.1.1. Giới thiệu chung 7

3.1.2. Cấu trúc tổng quát PIC16F877A 7

3.1.3. Mạch dao động cho vi điều khiển PIC 8

3.1.4. Chân Reset PIC (MCLR – Master Clear) 8

3.1.5. Nguồn cấp cho PIC16F877A 8

3.1.6. Tổ chức bộ nhớ trong PIC 16F877A 8

3.1.7. Các Port x và thanh ghi TRISx [ x={A,B,C,D,E} ] 8

3.1.8. Bộ CCP (Capture – Compare – PWM) 10

3.1.9. Các bộ Timer của chip 10

3.1.10. Các ngắt của PIC 16F877 11

3.1.11. Bộ chuyển đổi tương tự sang số (ADC) 11

3.2. Trình biên dịch cho PIC 16F877A 12

3.2.1. Tổng quan về ngôn ngữ lập trình C và CCS 12

3.2.2. Sự kết hợp CCS với MPLAP 12

3.3. Tập lệnh C cho PIC 12

3.3.1. Mẫu chương trình chuẩn cho PIC 12

3.3.2. Các kiến thức cơ bản về tập lệnh cho PIC 13

3.3.3. Các hàm delay 15

3.3.4. Xử lý ADC 15

3.3.5. Truyền thông với PC qua cổng COM – xử lý chuỗi 16

3.3.6. Giao tiếp SPI – I2C 16

3.3.7. Module PWM - Capture - Compare 16

3.3.8. Ngắt 16

Chương 4: SƠ LƯỢC VỀ ĐỘNG CƠ MỘT CHIỀU 17

4.1. Đặc điểm động cơ một chiều 17

4.2. Cấu tạo 17

4.3. Nguyên lý hoạt động 17

4.4. Mở máy (khởi động) động cơ một chiều 18

4.5. Điều khiển tốc độ động cơ một chiều 18

4.6. Họ các phương pháp điều chỉnh điện áp phần ứng 18

4.7. Phương pháp điều khiển độ rộng xung (PWM) 18

Chương 5: GIỚI THIỆU VỀ ENCODER VÀ LCD 19

(LIQUID CRYSTAL DISPLAY) 19


5.1. Encoder 19

5.1.1. Giới thiệu chung về Encoder 19

5.1.2. Nguyên lý hoạt động cơ bản của encoder 19

5.2. LCD. 21

5.2.1. Giới thiệu chung về LCD 21

5.2.2 Modul LCD hiển thị ký tự theo dòng LMB162ABC 21

Chương 6: THIẾT KẾ PHẦN CỨNG CHO ROBOT 23

6.1. Thiết kế cơ khí 23

6.1.1. Bánh xe Omni 23

6.1.2. Thiết kế mô hình Robot 23

6.2. Thiết kế mạch 24

6.2.1. Khối nguồn 25

6.2.2. Khối vi điều khiển 25

6.2.3. Khối cách ly 26

6.2.4. Khối điều khiển động cơ 27

6.2.5. Khối ENCODER 30

6.2.6. Khối nút bấm 31

6.2.7. Khối hiển thị LCD 32

6.2.8. Một số linh kiện khác được sử dụng trong mạch 32

6.3. Sơ đồ khối toàn mạch và mạch in. 33

6.3.1. Sơ đồ nguyên lý 33

6.3.2. Mạch in 35

6.4. Hình ảnh các mạch và Robot hoàn thiện 37

Chương 7: LẬP TRÌNH ĐIỀU KHIỂN ROBOT 39

7.1. Lưu đồ giải thuật cho vi điều khiển 39

7.1.1. Chế độ quét bàn phím 42

7.1.2. Hành trình hỗn hợp, ziczac 45

7.1.3. Hành trình: tiến, lùi, sang trái, sang phải, quay trái, quay phải, xiên trái, xiên phải. 45

7.1.4. Hiển thị xung trên LCD: 45

Chương 8: KẾT QUẢ THÍ NGHIỆM 46

8.1. Quá trình test mạch 46

8.1.1. Test từng khối. 46

8.1.2. Test toàn bộ Robot và chạy thử 46

8.2. Vận hành 47

8.3. Bảo dưỡng 47

Chương 9: KẾT LUẬN VÀ HƯỚNG PHÁT TRIỂN ĐỀ TÀI 48

9.1. Kết quả thực hiện 48

9.1.1. Kết quả đạt được. 48

9.1.2. Kết quả chưa đạt được. 48

9.2. Hướng phát triển. 48

9.3. Những thuận lợi và khó khăn 49

9.3.1. Những thuận lợi khi thực hiện đề tài 49

9.3.2. Những khó khăn của đề tài 49

9.4. Kết luận 49

TÀI LIỆU THAM KHẢO 50

PHỤ LỤC 50