tìm hiểu và xây dựng phần mềm hỗ trợ bài toán tìm đường đi ngắn nhất tránh vật cản cho xe tự hành trong không gian 2d

80 637 0
tìm hiểu và xây dựng phần mềm hỗ trợ bài toán tìm đường đi ngắn nhất tránh vật cản cho xe tự hành trong không gian 2d

Đ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ÁI QUỐC THẮNG BỘ GIÁO DỤC VÀ ĐÀO TẠO TRƢỜNG ĐẠI HỌC LẠC HỒNG * * *  LUẬN VĂN THẠC SĨ CÔNG NGHỆ THÔNG TIN THÁI QUỐC THẮNG TÌM HIỂU VÀ XÂY DỰNG PHẦN MỀM HỖ TRỢ BÀI TOÁN TÌM ĐƢỜNG ĐI NGẮN NHẤT TRÁNH VẬT CẢN CHO XE TỰ HÀNH TRONG KHÔNG GIAN 2D LUẬN VĂN THẠC SĨ CÔNG NGHỆ THÔNG TIN  KHÓA 3 Đồng Nai - Năm 2013 BỘ GIÁO DỤC VÀ ĐÀO TẠO TRƢỜNG ĐẠI HỌC LẠC HỒNG * * * THÁI QUỐC THẮNG TÌM HIỂU VÀ XÂY DỰNG PHẦN MỀM HỖ TRỢ BÀI TOÁN TÌM ĐƢỜNG ĐI NGẮN NHẤT TRÁNH VẬT CẢN CHO XE TỰ HÀNH TRONG KHÔNG GIAN 2D Chuyên ngành: CÔNG NGHỆ THÔNG TIN Mã ngành: 60 48 02 01 LUẬN VĂN THẠC SĨ CÔNG NGHỆ THÔNG TIN NGƢỜI HƢỚNG DẪN KHOA HỌC: TS. VŨ ĐỨC LUNG Đồng Nai - Năm 2013 LỜI CẢM ƠN Tôi xin gởi lời cảm ơn chân thành và sâu sắc nhất đến TS. Vũ Đức Lung, ngƣời Thầy đã tận tình hƣớng dẫn tôi trong suốt quá trình thực hiện luận văn cao học và tạo mọi điều kiện để tôi có thể hoàn thành luận văn này. Tôi xin gởi lời cảm ơn đến khoa Khoa Công Nghệ Thông Tin, Đại Học Lạc Hồng; cùng Khoa Kỹ Thuật Máy Tính của Đại học Công Nghệ Thông Tin thuộc Đại học Quốc Gia TP.HCM và Thầy cô trong khoa trong thời gian qua đã góp ý, hỗ trợ cũng nhƣ tạo điều kiện thuận lợi cho tôi trong suốt thời gian làm luận văn. Tôi xin cảm ơn gia đình đã động viên và tạo điều kiện tốt nhất để tôi có thể theo đuổi việc học tập và nghiên cứu. Tôi gởi lòng tri ân đến tất cả bạn bè, những ngƣời đã động viên, thăm hỏi cũng nhƣ đã giúp đỡ thiết thực giúp tôi hoàn tất luận văn này LỜI CAM ĐOAN Tôi cam đoan: Quyển luận văn tốt nghiệp này ngoại trừ các kết quả tham khảo từ các công trình nhƣ đã ghi rõ trong luận văn, các công việc trình bày trong luận văn này là công trình nghiên cứu thực sự của cá nhân, đƣợc thực hiện trên cơ sở nghiên cứu lý thuyết, kiến thức kinh điển, nghiên cứu khảo sát tình hình thực tiễn và dƣới sự hƣớng dẫn khoa học của Tiến sĩ Vũ Đức Lung. Một lần nữa, tôi khẳng định về sự trung thực của lời cam kết trên. Đồng Nai, ngày 25 tháng 10 năm 2013 Ngƣời cam đoan Thái Quốc Thắng TÓM TẮT LUẬN VĂN Trong những năm gần đây, robot tự hành (hoạt động không cần sự trợ giúp của con ngƣời, có thể đƣợc điều khiển hoặc theo dõi từ xa thông qua máy tính) đã và đang rất phát triển từ quân sự tới dân sự, giúp giảm thiểu đáng kể nguy hại và công sức cho con ngƣời. Một trong những vấn đề chính của robot tự hành là làm nhƣ thế nào để xử lý thông tin về môi trƣờng xung quanh và đƣa ra hành vi đúng đắn nhất. Một robot có thể có rất nhiều hành vi khi hoạt động tự hành, và hành vi cụ thể mà luận văn này hƣớng đến là hoạch định đƣờng đi ngắn nhất cho robot trong môi trƣờng có nhiều vật cản từ một điểm đầu đến một điểm đích mong muốn nào đó. Sau khi đƣờng đi tốt nhất đã đƣợc hoạch định, trong quá trình di chuyển robot có thể gặp một số tác động ngoại gây cho việc bám đƣờng di chuyển thiếu chính xác. Vì vậy, luận văn cũng trình bày một phƣơng pháp giúp robot di chuyển một cách chính xác theo một đƣờng đi đã định trƣớc. Về mặt lý thyết, luận văn tìm hiểu tổng quan các phƣơng pháp tìm đƣờng đi ngắn nhất cho robot, trong đó phƣơng pháp tìm đƣờng đi ngắn nhất cho robot dựa việc xây dựng một đồ thị tầm nhìn (visibility graph) với độ phức tạp O(n 2 logn) kết hợp với thuật toán Dijkstra đƣợc mô tả chi tiết. Thêm vào đó việc điều khiển robot di chuyển chính xác theo đƣờng đi này đƣợc hiện thực dựa vào lý thuyết bộ điều khiển vi tích phân tỷ lệ (Proportional Integral Derivative - PID), một trong những lý thuyết đƣợc sử dụng rộng rãi trong lĩnh vực điều khiển tự động. Về mặt hiện thực, một môi trƣờng kiểm thử đƣợc xây dựng để kiểm tra tính khả thi của lý thuyết bao gồm những vật cản giả lập và một robot Lego Mindstorm NXT đƣợc điều khiển thông qua máy tính. Kết quả thực nghiệm cho thấy robot có thể di chuyển từ một điểm đầu đến một điểm đích mong muốn theo đƣờng đi ngắn nhất mà không va chạm vào các vật cản một cách chính xác. Đồng thời trong mô hình kiểm thử một camera quan sát cũng đƣợc lắp đặt trên robot, ghi nhận lại những hình ảnh quan sát trên đƣờng đi và gởi về cho máy tính điều khiển nhằm mục đích phục vụ cho việc xử lý thông tin và phát triển luận sau này. MỤC LỤC Trang Trang phụ bìa Lời cảm ơn Lời cam đoan Tóm tắt luận văn Mục lục Danh mục các chữ cái viết tắt Danh mục bảng Danh mục hình Lời mở đầu 1 Chƣơng 1: GIỚI THIỆU ĐỀ TÀI 2 1.1. Lý do thực hiện đề tài 2 1.2. Nội dung đề tài 4 1.3. Tóm lƣợc những kết quả đạt đƣợc 4 1.4. Cấu trúc luận văn 5 Chƣơng 2: CÁC CƠ SỞ LÝ THUYẾT LIÊN QUAN 7 2.1. Tổng quát bài toán hoạch định đƣờng đi (path planning) 7 2.1.1. Giới thiệu bài toán hoạch định đƣờng đi 7 2.1.2. Các vấn đề liên quan khi giải quyết bài toán path planning 8 2.1.2.1. Không gian làm việc (Work space): 8 2.1.2.2. Không gian cấu hình (Configuration space): 8 2.1.2.3. Không gian tự do (Free space): 9 2.1.2.4. Vật di chuyển: 9 2.1.2.5. Vật cản (Obstacle): 10 2.1.2.6. Đƣờng cong đƣợc rút ngắn nhất: 10 2.2. Tổng quan các giải pháp cho bài toán path planning theo visibility graph 12 2.3 Tìm hiểu giải thuật tìm đƣờng đi ngắn nhất với độ phức tạp O(n 2 logn) 14 2.4. Tìm đƣờng đi ngắn nhất trong visibility graph với giải thuật Dijkstra 18 Chƣơng 3: TÌM HIỂU LEGO MINDSTORM NXT, MICROSOFT ROBOTICS DEVELOP STUDIO 22 3.1. Tìm hiểu Lego Mindstorm NXT 22 3.1.1. Giới thiệu 22 3.1.2. Lego Mindstorm NXT 23 3.1.3. Intelligent Brick NXT 25 3.1.4. Bluetooth trên Brick NXT 26 3.1.5. Lập trình với Brick NXT 27 3.1.5.1. NXT-G 27 3.1.5.2. C# và Microsoft Robotics Developer Studio 28 3.1.5.3. Các ngôn ngữ khác 28 3.2. Microsoft robotics develop studio 29 3.2.1. Giới thiệu 29 3.2.2. Lập trình 31 3.2.3.1. Các ngôn ngữ lập trình dạng viết code 31 3.2.3.2. Visual Programming Language (VPL) 31 3.2.3. Các robot đƣợc hỗ trợ 31 Chƣơng 4: TÌM HIỂU BỘ ĐIỀU KHIỂN PID CHO ROBOT LEGO MINDSTORMS 32 4.1. Giới thiệu tổng quan về Bộ điều khiển PID 32 4.2. Các khâu chức năng trong bộ điều khiển PID 35 4.2.1. Khâu tỷ lệ “P” trong PID 35 4.2.1.1. Các mức công suất từ P đến mô tơ thực tế 39 4.2.1.2. Code mã giải cho bộ điều khiển P 39 4.2.1.3. Tóm tắt bộ điều khiển tỷ lệ “P” 42 4.2.2. Khâu tích phân “I” trong bộ điều khiển PID 42 4.2.2.1. Tổng thời gian chạy của error. 43 4.2.2.2. Code mã giải cho bộ điều khiển PI 44 4.2.3. Khâu vi phân “D” của bộ điều khiển PID 45 4.2.3.1. Code mã giải cho bộ điều khiển PID 47 4.2.3.2. Điều chỉnh bộ điều khiển PID 48 4.3. Kết luận: 49 Chƣơng 5: HIỆN THỰC VÀ ĐÁNH GIÁ KẾT QUẢ 50 5.1. Mục tiêu kiểm tra 50 5.2. Tổng quan thiết kế 51 5.3. Hiện thực các hoạt động của xe tự hành trên mô hình thật 53 5.3.1. Chƣơng trình tính đƣờng đi ngắn nhất của xe tự hành: 53 5.3.2. Chƣơng trình điều khiển, giao tiếp với xe tự hành 55 5.3.3. Xây dựng chức năng bám đƣờng đi chính xác cho robot Lego Mindstorm NXT dựa trên PID: 59 5.3.4. Xây dựng chức năng xác định vị trí hiện tại của xe tự hành 61 5.3.5. Xây dựng chức năng ghi hình ảnh trên đƣờng đi của xe tự hành 63 5.4. Kết luận 64 Chƣơng 6: KẾT QUẢ ĐẠT ĐƢỢC VÀ HƢỚNG PHÁT TRIỂN 65 6.1. Kết quả đạt đƣợc 65 6.2. Hƣớng phát triển đề tài 66 TÀI LIỆU THAM KHẢO DANH MỤC CÁC CHỮ CÁI VIẾT TẮT AI Artificial Intelligent CCR Concurrency and Coordination Runtime DOF Degrees Of Freedom DSS Decentralized Software Services MRDS Microsoft Robotics Develop Studio PID Proportional Integral Derivative SOA Service Oriented Architecture VLSI Very Large Scale Integrated VPL Visual Programming Language VSE Visual Simulation Environment DANH MỤC BẢNG Bảng 3.1. Một số ngôn ngữ có thể lập trình với Lego Mindstorm NXT 28 Bảng 4.1. Code mã giải cho bộ điều khiển P 40 Bảng 4.2. Code mã giải cho bộ điều khiển PI 44 Bảng 4.3. Code mã giải cho bộ điều khiển PID 47 Bảng 4.4. Giá trị K’ của phƣơng pháp Ziegler-Nichols 49 Bảng 5.1. Chƣơng trình điều khiển Lego Mindstorm NXT bằng C# 57 Bảng 5.2. PID theo phƣơng pháp điều chỉnh Ziegler–Nichols 60 [...]... chƣa xây dựng các ứng dụng hỗ trợ một xe tự hành thật Từ những lý do trên, luận văn Tìm hiểu và xây dựng phần mềm hỗ trợ bài toán tìm đƣờng đi ngắn nhất tránh vật cản cho xe tự hành trong không gian 2D này sẽ tập trung tìm hiểu lý thuyết của bài toán tìm đƣờng theo hƣớng combinatorialplanning, cụ thể là phƣơng pháp dùng visibility graph với độ phức tạp giải thuật là 0(n2logn) Và trên cơ sở kế thừa từ... tính trong đó có: + Khối chức năng đi u khiển xe tự hành di chuyển chính xác theo đƣờng đi ngắn nhất từ phần mềm + Khối chức năng truyền hình ảnh trên đƣờng đi về máy tính đi u khiển - Xe tự hành nhận lệnh và đƣờng đi ngắn nhất mà mình sẽ đi và di chuyển theo đƣờng đi đó - Một xe tự hành thật và một sân trên đó có chứa các vật cản sẽ đƣợc xây dựng để kiểm thử kết quả trong thực tế  Về mặt xe tự hành: ... lồi Hình 2.1 - Vật cản dạng đa giác lõm [9] Khi xây dựng bài toán tìm đƣờng đi thì hình dạng của các vật cản cũng đƣợc quan tâm đến, nghĩa là hình dạng vật cản có đƣợc chỉ rõ trƣớc trong input hay không Ví dụ, vật cản có là đa giác không, nếu là đa giác thì là đa giác lồi hay lõm 2.1.2.6 Đường cong được rút ngắn nhất: Mục tiêu chính là tìm đƣờng đi ngắn nhất tránh va chạm vào vật cản từ đi m bắt đầu... tƣơng tự nhƣ một vật cản P trong không gian làm việc đƣợc ánh xạ tới một tập các đi m p trong không gian cấu hình sao cho (p) cắt nhau với P Tập kết quả đó đƣợc gọi là không gian cấu hình vật cản hay Cobstacle của P 2.1.2.3 Không gian tự do (Free space): Không gian dùng để thiết lập các cấu hình tránh va chạm với những vật cản đƣợc gọi là Cfree hay còn gọi không gian tự do Phần bù của Cfree trong C... không gian cấu hình và bất kỳ đi m nào trong không gian cấu hình đều tƣơng ứng với một số vị trí của robot trong không gian làm việc Nhƣ vậy, không phải tất cả vị trí của robot trong không gian làm việc thì đều có thể đi đƣợc (nơi mà các robot giao nhau với một trong những vật cản trong tập S) Do đó, đi m tƣơng ứng trong không gian cấu hình không thể xảy ra Phần của không gian cấu hình bao gồm những đi m... đến không gian làm việc Tuy nhiên, nó đƣợc dùng để phân biệt hai khái niệm: không gian làm việc và không gian cấu hình Không gian làm việc là không gian mà trong đó các robot có thể xoay tròn và di chuyển đƣợc trong phạm vi đã đƣợc xác định trƣớc; Không gian cấu hình là không gian chứa các tham số của robot Robot đƣợc xem là đi m hình tròn trong không gian làm việc, tƣơng ứng bởi 9 một đi m trong không. .. là không gian cấu hình vùng cấm hay không gian vùng cấm Không gian vùng cấm đƣợc ký hiệu là Cforb(R, S) Phần còn lại của không gian cấu hình, bao gồm những đi m tƣơng ứng với những vị trí tự do nơi mà các robot không cắt bất kỳ vật cản nào thì đƣợc gọi là không gian cấu hình tự do hay không gian tự do và nó đƣợc ký hiệu là Cfree(R,S) Những vị trí của robot đƣợc ánh xạ đến những đi m trong không gian. .. đƣợc xây dựng để kiểm tra tính khả thi của giải thuật 2 Chƣơng 1: GIỚI THIỆU ĐỀ TÀI 1.1 Lý do thực hiện đề tài Các xe tự hành không ngƣời lái rất hữu ích không chỉ trong các hoạt động quân sự mà còn trong đời sống dân sự, giúp giảm nguy cơ và tiết kiệm năng lƣợng cho con ngƣời một cách đáng kể Phần quan trọng nhất trong xe tự hành không ngƣời lái là làm thế nào để xe tự hành tự động tìm một đƣờng đi. .. khiển xe tự hành di chuyển chính xác theo đƣờng đi ngắn nhất từ phần mềm + Xây dựng chức năng truyền hình ảnh trên đƣờng đi về máy tính đi u khiển 1.3 Tóm lƣợc những kết quả đạt đƣợc Với những nội dung và phƣơng pháp thực hiện đƣợc liệt kê trên, sau thời gian tìm hiểu và hiện thực, đề tài sẽ đạt đƣợc các kết quả:  Về lý thuyết: - Hệ thống hóa các lý thuyết về bài toán tìm đƣờng đi ngắn nhất trong. .. động trong đó cũng nhƣ sinh ra một tập các hành vi cần cho một mục tiêu cụ thể nào đó Trong luận văn này, xe tự hành di chuyển với mục tiêu là xuất phát từ đi m đầu đến đi m đích nào đó cho trƣớc với khoảng cách ngắn nhất và không va chạm vào các vật cản trên đƣờng đi Một chƣơng trình máy tính sẽ nhận lƣợng tri thức biết trƣớc về môi trƣờng, xử lý và sinh ra một tập các đƣờng đi dự đoán trƣớc cho xe tự . * * * THÁI QUỐC THẮNG TÌM HIỂU VÀ XÂY DỰNG PHẦN MỀM HỖ TRỢ BÀI TOÁN TÌM ĐƢỜNG ĐI NGẮN NHẤT TRÁNH VẬT CẢN CHO XE TỰ HÀNH TRONG KHÔNG GIAN 2D Chuyên ngành: CÔNG NGHỆ THÔNG. Tìm hiểu và xây dựng phần mềm hỗ trợ bài toán tìm đƣờng đi ngắn nhất tránh vật cản cho xe tự hành trong không gian 2D này sẽ tập trung tìm hiểu lý thuyết của bài toán tìm đƣờng theo hƣớng combinatorial- planning,. đã tìm hiểu và áp dụng lý thuyết của bài toán path planning vào các thiết bị tự hành trong thực tế. Luận văn cao học “Nghiên cứu và xây dựng các giải thuật tìm đƣờng đi ngắn nhất tránh vật cản

Ngày đăng: 28/11/2014, 09:43

Từ khóa liên quan

Tài liệu cùng người dùng

Tài liệu liên quan