Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 106 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
106
Dung lượng
4,83 MB
Nội dung
BỘ GIÁO DỤC VÀ ĐÀO TẠO TRƯỜNG ĐẠI HỌC SƯ PHẠM KỸ THUẬT TP HỒ CHÍ MINH KHOA ĐÀO TẠO CHẤT LƯỢNG CAO KHĨA LUẬN TỐT NGHIỆP NGÀNH CƠNG NGHỆ KỸ THUẬT CƠ ĐIỆN TỬ THIẾT KẾ GIẢI THUẬT ÐIỀU KHIỂN ROBOT TỰ HÀNH TRONG MƠI TRUỜNG TINH CĨ VẬT CẢN GVHD: ThS VÕ LÂM CHƯƠNG SVTH: HỒ HUY CUỜNG 12146020 CAO NGUYỄN KHÁNH TRÌNH 12146205 SKL 0 Tp Hồ Chí Minh, tháng 07 năm 2016 an TRƯỜNG ĐẠI HỌC SƯ PHẠM KỸ THUẬT THÀNH PHỐ HỒ CHÍ MINH KHOA ĐÀO TẠO CHẤT LƯỢNG CAO ĐỒ ÁN TỐT NGHIỆP THIẾT KẾ GIẢI THUẬT ĐIỀU KHIỂN ROBOT TỰ HÀNH TRONG MƠI TRƯỜNG TĨNH CĨ VẬT CẢN SVTH: HỒ HUY CƯỜNG 12146020 CAO NGUYỄN KHÁNH TRÌNH 12146205 KHỐ: 2012 NGÀNH: CƠNG NGHỆ KỸ THUẬT CƠ ĐIỆN TỬ GVHD: ThS VÕ LÂM CHƯƠNG Tp.Hồ Chí Minh – tháng năm 2016 an TRƯỜNG ĐẠI HỌC SƯ PHẠM KỸ THUẬT THÀNH PHỐ HỒ CHÍ MINH KHOA ĐÀO TẠO CHẤT LƯỢNG CAO ĐỒ ÁN TỐT NGHIỆP THIẾT KẾ GIẢI THUẬT ĐIỀU KHIỂN ROBOT TỰ HÀNH TRONG MÔI TRƯỜNG TĨNH CÓ VẬT CẢN SVTH: HỒ HUY CƯỜNG 12146020 CAO NGUYỄN KHÁNH TRÌNH 12146205 KHỐ: 2012 NGÀNH: CƠNG NGHỆ KỸ THUẬT CƠ ĐIỆN TỬ GVHD: ThS VÕ LÂM CHƯƠNG Tp.Hồ Chí Minh – tháng năm 2016 an CỘNG HOÀ XÃ HỘI CHỦ NGHĨA VIỆT NAM Độc lập – Tự – Hạnh Phúc ******* NHIỆM VỤ ĐỒ ÁN TỐT NGHIỆP Giảng viên hướng dẫn: ThS VÕ LÂM CHƯƠNG Họ tên sinh viên 1: HỒ HUY CƯỜNG Họ tên sinh viên 2: CAO NGUYỄN KHÁNH TRÌNH Ngành: Công Nghệ Kỹ Thuật Cơ Điện Tử Ngày nhâ ̣n đề tài: 3/2016 MSSV: 12146020 MSSV: 12146205 Lớp: 12146CLC Ngày nộp đề tài: 15/07/2016 Tên đề tài: Thiết kế giải thuật điều khiển robot tự hành môi trường tĩnh có vật cản Nhiệm vụ nội dung: Nhiệm vụ: Thiết kế thi công mô hình mơ hình robot tự hành Ứng dụng Arduino Mega2560 để điều khiển robot Sử dụng phần mềm Microsoft Visual Studio để điều khiển trình hoạt động robot Nội dung: Thiết kế hệ thống khí hệ thống điện mơ hình Thiết kế giải thuật tự hành tránh vật cản Vẽ lại sơ đồ đường thông qua giao diện phần mềm Tp.HCM, ngày….tháng….năm 2016 Giáo viên hướng dẫn ThS Võ Lâm Chương an Tp.HCM, ngày….tháng… năm 2016 Chủ nhiệm ngành CỘNG HOÀ XÃ HỘI CHỦ NGHĨA VIỆT NAM Độc lập – Tự – Hạnh Phúc ******* PHIẾU NHẬN XÉT CỦA GIÁO VIÊN HƯỚNG DẪN Giáo viên hướng dẫn: ThS VÕ LÂM CHƯƠNG Sinh viên thực hiện: HỒ HUY CƯỜNG MSSV: 12146020 Chuyên ngành: Công Nghệ Kỹ Thuật Cơ Điện Tử Tên đề tài: Thiết kế giải thuật điều khiển robot tự hành mơi trường tĩnh có vật cản NHẬN XÉT Về nội dung đề tài & khối lượng thực hiện: Đề tài nghiên cứu hoạch định đường cho mobile robot môi trường tĩnh đồng thời vẽ đồ môi trường hoạt động dạng 2D suốt q trình di chuyển Đề tài có tính ứng dụng cao thực thấu đáo Nhóm làm đồ án tìm hiểu phương pháp hoạch định đường đi, thi cơng mơ hình mobile robot trang bị cảm biến siêu âm tránh vật cản di chuyển, truyền nhận liệu vẽ đồ dạng 2D robot hoạt động Ưu điểm: Đề tài có tính ứng dụng phát triển tiếp tục Robot tránh vật cản thành công, vẽ đồ dạng 2D Khuyết điểm: Chuyển động robot cịn cứng nhắc, thiếu tính liên tục Giải thuật hoạt động đơn giản, cần phát triển thêm Đề nghị cho bảo vệ hay không? Cho phép bảo vệ Đánh giá loại: Khá Điểm: (Bằng chữ: Tám) Tp Hồ Chí Minh, ngày 18 tháng năm 2016 Giáo viên hướng dẫn ThS Võ Lâm Chương an CỘNG HOÀ XÃ HỘI CHỦ NGHĨA VIỆT NAM Độc lập – Tự – Hạnh Phúc ******* PHIẾU NHẬN XÉT CỦA GIÁO VIÊN HƯỚNG DẪN Giáo viên hướng dẫn: ThS VÕ LÂM CHƯƠNG Sinh viên thực hiện: CAO NGUYỄN KHÁNH TRÌNH MSSV: 12146205 Chun ngành: Cơng Nghệ Kỹ Thuật Cơ Điện Tử Tên đề tài: Thiết kế giải thuật điều khiển robot tự hành môi trường tĩnh có vật cản NHẬN XÉT Về nội dung đề tài & khối lượng thực hiện: Đề tài nghiên cứu hoạch định đường cho mobile robot môi trường tĩnh đồng thời vẽ đồ môi trường hoạt động dạng 2D suốt trình di chuyển Đề tài có tính ứng dụng cao thực thấu đáo Nhóm làm đồ án tìm hiểu phương pháp hoạch định đường đi, thi công mơ hình mobile robot trang bị cảm biến siêu âm tránh vật cản di chuyển, truyền nhận liệu vẽ đồ dạng 2D robot hoạt động Ưu điểm: Đề tài có tính ứng dụng phát triển tiếp tục Robot tránh vật cản thành công, vẽ đồ dạng 2D Khuyết điểm: Chuyển động robot cứng nhắc, thiếu tính liên tục Giải thuật hoạt động cịn đơn giản, cần phát triển thêm Đề nghị cho bảo vệ hay không? Cho phép bảo vệ Đánh giá loại: Khá Điểm: (Bằng chữ: Tám) Tp Hồ Chí Minh, ngày 18 tháng năm 2016 Giáo viên hướng dẫn ThS Võ Lâm Chương an CỘNG HOÀ XÃ HỘI CHỦ NGHĨA VIỆT NAM Độc lập – Tự – Hạnh Phúc ******* PHIẾU NHẬN XÉT CỦA GIÁO VIÊN PHẢN BIỆN Giáo viên phản biện: TS BÙI HÀ ĐỨC Sinh viên thực hiện: HỒ HUY CƯỜNG MSSV: 12146020 CAO NGUYỄN KHÁNH TRÌNH MSSV: 12146205 Ngành: Cơng Nghệ Kỹ Thuật Cơ Điện Tử Tên đề tài: Thiết kế giải thuật điều khiển robot tự hành môi trường tĩnh có vật cản NHẬN XÉT Về nội dung đề tài & khối lượng thực hiện: Ưu điểm: Khuyết điểm: Đề nghị cho bảo vệ hay không? Đánh giá loại: Điểm:……………….(Bằng chữ: ) Tp.Hồ Chí Minh, ngày tháng Giáo viên phản biện TS Bùi Hà Đức an năm 2016 LỜI NÓI ĐẦU Ở Việt Nam hầu phát triển giới hướng đến việc cơng nghiệp hóa, đại hóa đất nước Với phát triển nhanh chóng khoa học kỹ thuật nên việc áp dụng thành tựu vào q trình sản xuất từ lâu khơng cịn xa lạ với người Chính cơng nghiệp, tự động điều khiển đóng vai trị quan trọng, nâng dần tính đại hóa cơng nghiệp đẩy cơng nghiệp từ thô sơ lên đại công nghiệp mà đỉnh cao tự động hóa cách hồn tồn Nhờ việc ứng dụng cơng nghệ tự động công nghiệp mà sức lao động người giảm nhiều nhờ mà suất lao động tăng lên nhiều Con người phải quan tâm đến vấn đề phụ nhấn nút, canh thời gian hoạt động … Và người làm cơng việc nhiều người Sau bốn năm học tập ngành công nghệ kỹ thuật Cơ Điện Tử trường Đại học sư phạm kỹ thuật TP Hồ Chí Minh, bảo giúp đỡ tận tình q thầy nhu cầu thiết thực thực tế nên đồ án tốt nghiệp chúng em định chọn đề tài: “Thiết kế giải thuật điều khiển cho robot tự hành” Mô hình chúng em xây dựng dựa mục đích đề tài Vì kiến thức, hiểu biết cơng nghệ cịn hạn chế thời gian tìm hiểu, thực nên chúng em chưa thể phát huy tưởng vào mơ hình Chúng em mong nhận thông cảm quý thầy cô i an LỜI CÁM ƠN Trong suốt quãng thời gian làm đồ án thầy cô tạo điều kiện, hướng dẫn bảo cho chúng em với tận tụy nhiệt huyết Các thầy khơng ngại khó khăn dành thời gian quý báu để hướng dẫn chúng em Chính điều động lực để chúng em khơng ngừng học hỏi, phấn đấu, trau dồi kiến thức thời gian qua Đồ án “Thiết kế giải thuật cho robot tự hành mơi trường tĩnh có vật cản” vận dụng tổng hợp kiến thức mà chúng em học giảng dạy thầy cô Hơn đồ án cho em thấy hiểu phần công việc người cử nhân môi trường làm việc tương lai Tuy nhiên với kiến thức hạn chế nên q trình làm đồ án chắn khơng tránh khỏi thiếu sót, sai phạm kính mong q thầy góp ý, bảo để chúng em hồn thiện Bên cạnh nỗ lực, cố gắng, ý thức thân người nhóm để hoàn thành tốt đồ án chúng em nhận giúp đỡ thầy cô, bạn đồng nghiệp đặc biệt thầy Võ Lâm Chương Thầy tận tình, hướng dẫn, bảo sai sót kinh nghiệm quý báu thực tế để giúp chúng em hoàn thành đề tài cách tơt Do lời cảm ơn chúng em xin chân thành gửi đến thầy Võ Lâm chương Kế đến chúng em xin cảm ơn quý thầy ngành Cơ Điện Tử nói riêng tồn thể quý thầy cô trường đại học sư phạm kỹ thuật TP Hồ Chí Minh nói chung truyền đạt kiến thức cho chúng em để chúng em hoàn thành đồ án cách tốt Một lần chúng em xin chân thành cảm ơn! ii an TĨM TẮT ĐỒ ÁN Trong thời đại cơng nghiệp ngày nay, Robot ngày sử dụng phổ biến sản xuất sống người Robot có vị trí quan trọng khó thay được, giúp người để làm việc điều kiện nguy hiểm, khó khăn Ngồi ra, Robot cịn dùng vào lĩnh vực thám hiểm khơng gian, qn sự, giải trí… Mobile Robot ngày chiếm quan tâm nhà nghiên cứu xã hội Từ tình hình thực tế đó, việc xây dựng chương trình hoạt động cho Robot điều thiết yếu đặc biệt Mobile Robot Trong đề tài “Robot tự hành tránh vật cản”, Robot hoạt động môi trường tĩnh có vật cản cho trước Robot xây dựng hồn chỉnh có khả tự hành tránh chướng ngại vật quãng đường di chuyển Robot di chuyển độc lập mơi trường mà khơng có can thiệp từ bên ngồi Robot có ba cảm biến siêu âm sử dụng để dò đường phát thông tin vật cản môi trường Robot sau có liệu vật cản mơi trường truyền liệu lên máy tính thông qua module bluetooth kết hợp với giao diện Visual Studio để điều khiển truyền nhận liệu đến Robot iii an Sơ đồ 4.1 Sơ đồ giải thuật tránh vật cản robot 75 an 4.2.2 Kết điều khiển Trường hợp robot di chuyển từ bên trái phòng: Sơ đồ 4.2 Sơ đồ phòng robot di chuyển từ bên trái Trong đó: + Vật cản đánh số 1-4 + Diện tích phịng kích thước vật cản theo đại lượng cm 76 an Hình 4.6 Mơ hình robot môi trường giả định di chuyển từ bên trái Robot di chuyển phía trước – gặp vật cản số – tránh di chuyển lên gặp vật cản số – tránh di chuyển lên gặp tường – tránh di chuyển sang phải gặp góc trường – tránh di chuyển xuống gặp vật cản số – tránh di chuyển xuống gặp vật cản số – tránh di chuyển xuống – kết thúc hành trình Trong trình di chuyển, robot thu thập số liệu khoảng cách từ cảm biến, từ vẽ lại sơ đồ đường robot hiển thị chúng dạng ảnh tập hợp pixel 77 an Hình ảnh thu thập từ phần mềm robot kết thúc hành trình: Hình 4.7 Hình ảnh thu thập từ phần mềm Từ hình ảnh trả về, thấy hướng di chuyển robot (các pixel màu trắng) biên dạng vật cản (các pixel màu vàng) 78 an Trường hợp robot di chuyển từ bên phải phòng: Sơ đồ 4.3 Sơ đồ phòng robot di chuyển từ bên phải Robot di chuyển phía trước – Gặp vật cản số – Rẽ tránh di chuyển lên gặp tường – Rẽ tránh di chuyển sang trái gặp góc tường – Rẽ tránh di chuyển xuống gặp vật cản số – Rẽ tránh di chuyển xuống – Kết thúc hành trình 79 an Hình 4.8 Mơ hình robot mơi trường di chuyển từ bên phải Hình ảnh thu thập từ phần mềm robot kết thúc hành trình Hình 4.9 Hình ảnh thu thập từ phần mềm Ta thấy robot di chuyển lướt qua vật cản số số nên biên dạng vật cản thể mặt bên vật cản số số biểu mặt bên 80 an Trường hợp vị trí Trường hợp robot khơng xuất phát từ bên trái hay bên phải phịng robot di chuyển thẳng phát vật cản, lúc robot lựa chọn hướng di chuyển ưu tiên khoảng cách lớn từ cảm biến trái phải Nếu d2>d3: rẽ phải Nếu d2 2*PI) heading -= 2*PI; // Convert radians to degrees for readability float headingDegrees = heading * 180/M_PI; curr_heading=(int)headingDegrees; delay(30); } 85 an Code chương trình đọc xung encoder #define phase_a // kênh A encoder nối với chân PWM 02 Mega2560 #define phase_b // kênh B encoder nối với chân PWM 03 Mega2560 #define interrupt0 // định nghĩa ngắt tương ứng Mega2560 /* Khai bao xung encoder */ volatile int pulse = 0; // biến đếm số xung/vòng void setup() { Serial.begin(9600); // Encoder -// pinMode(phase_a, INPUT_PULLUP); // digitalWrite(phase_a, HIGH); pinMode(phase_b, INPUT_PULLUP); digitalWrite(phase_b, HIGH); // interrupt -// attachInterrupt(interrupt0, int_, RISING); // gọi hàm int_ trạng thái chân digital chuyển từ mức điện áp thấp sang mức điện áp cao } // void-interrupt dem xung encoder -// void int_() { if (digitalRead (phase_a)==HIGH) { pulse++; } else { pulse ; } } void loop() { Serial.println(pulse); //hiển thị số xung qua cổng Serial delay(10); } 86 an Code chương trình điều khiển PID volatile float V = 0; //biến chứa giá trị vận tốc ban đầu volatile float V_sp = 200.0 ; //vận tốc mà ta mong muốn Vsetpoint = 200v/p /* Thong so bo PID */ volatile float del_err,sum_err =0; volatile float Kp=2.2,Ki = 0.0005,Kd =0.000125; volatile float error,pre_error; volatile float p_part,i_part,i_part_last,d_part; volatile int PWM; volatile float rpm;// biến chứa giá trị vận tốc thực thời điểm mà ta xét volatile float sampletime = 0.001; // -PID // int PID_control () { error = V_sp - V; //tính toán sai số p_part = Kp * error; i_part = i_part_last + Ki * error * sampletime; d_part = Kd *(error - pre_error) / sampletime; i_part_last = i_part; pre_error = error; //khâu p //khâu i //khâu d //reset lại sai số giá trị lien quan đến PWM = (int)(p_part + i_part + d_part); //output xung PWM if (PWM >= 255) PWM = 255; if (PWM 30) d2 = 30; if (d3 > 30) d3 = 30; if (hd == 'n') { bt.SetPixel((width / 2) - d2, (height / 2), System.Drawing.Color.Yellow); bt.SetPixel((width / 2) + d3, (height / 2), System.Drawing.Color.Green); bt.SetPixel((width / 2), (height / 2), System.Drawing.Color.White); if (height > 5) height = height - 5; } if (hd == 'e') { bt.SetPixel((width / 2), (height / 2) - d2, System.Drawing.Color.Yellow); bt.SetPixel((width / 2), (height / 2) + d3, System.Drawing.Color.Green); bt.SetPixel((width / 2), (height / 2), System.Drawing.Color.White); width = width + 5; } if (hd == 'w') { bt.SetPixel((width / 2), (height / 2) + d2, System.Drawing.Color.Yellow); bt.SetPixel((width / 2), (height / 2) - d3, System.Drawing.Color.Green); bt.SetPixel((width / 2), (height / 2), System.Drawing.Color.White); if (width > 5) width = width - 5; } if (hd == 's') { 88 an bt.SetPixel((width / 2) + d2, (height / 2), System.Drawing.Color.Yellow); bt.SetPixel((width / 2) - d3, (height / 2), System.Drawing.Color.Green); bt.SetPixel((width / 2), (height / 2), System.Drawing.Color.White); height = height + 5; } bt.RotateFlip(RotateFlipType.Rotate180FlipXY); ImageSource img = Bitmap2ImageSource(bt); imbox.Source = img; bt.Save("E:\\Image.bmp"); } btd.Content = "Drawing"; this.Close(); } private ImageSource Bitmap2ImageSource(Bitmap bitmapImage) { using (MemoryStream outStream = new MemoryStream()) { MemoryStream ms = new MemoryStream(); bitmapImage.Save(ms, ImageFormat.Bmp); ms.Seek(0, SeekOrigin.Begin); BitmapImage bi = new BitmapImage(); bi.BeginInit(); bi.StreamSource = ms; bi.EndInit(); bi.Freeze(); return bi; } } 89 an ... cho Robot điều thiết yếu đặc biệt Mobile Robot Trong đề tài ? ?Robot tự hành tránh vật cản? ??, Robot hoạt động mơi trường tĩnh có vật cản cho trước Robot xây dựng hoàn chỉnh có khả tự hành tránh... hình robot tự hành có khả tự định hướng vẽ lại sơ đồ đường biên dạng vật cản Ngoài khả tự định hướng, robot phải tránh vật cản có quãng đường di chuyển Giải thuật tránh vật cản cho robot. ..TRƯỜNG ĐẠI HỌC SƯ PHẠM KỸ THUẬT THÀNH PHỐ HỒ CHÍ MINH KHOA ĐÀO TẠO CHẤT LƯỢNG CAO ĐỒ ÁN TỐT NGHIỆP THIẾT KẾ GIẢI THUẬT ĐIỀU KHIỂN ROBOT TỰ HÀNH TRONG MƠI TRƯỜNG TĨNH CĨ VẬT CẢN SVTH: