Giải thuật tìm đường cho robot

Một phần của tài liệu Nghiên cứu, thiết kế và chế tạo robot vận chuyển hành lý trong khách sạn đồ án tốt nghiệp khoa đào tạo chất lượng cao ngành công nghệ kỹ thuật cơ điện tử (Trang 57)

Bộ điều khiển cấp cao nhận giá trị đặt x, y, góc cần đến. Sau đó xuất ra hai giá trí vận tốc là Vl, Vr truyền xuống cho 2 bánh xe. Bộ điều khiển cấp thấp nhận giá trị vận tốc xuất từ bộ điều khiển cấp cao và điều khiển hai bánh xe quay ổn định quanh giá trị vận tốc đó. Trong quá trình chạy thì hai encoder sẽ đọc số vòng quay trả về thông qua bài toán động học thuận sẽ tính được giá trị hiện tại của robot. Sai đó sẽ trả về bộ điều khiển cấp cao.

Hiện nay có nhiều phương pháp xác định đường đi cho robot. Nhóm đã tìm hiểu thường có 2 loại cơ bản. Thứ nhất là robot di chuyển trong môi trường đã hoạch định trước (hay các chướng ngại vật đã biết trước hoặc ở trạng thái tĩnh), thứ hai là robot di chuyển trong môi trường có chướng ngại vật di động. Trong đề tài này nhóm lựa chọn phương pháp tìm đường đi cho robot trong môi trường đã xác định được các chướng ngại vật.

Phương pháp thực hiện: thiết kế bản đồ trong khách sạn. Bản đồ sau khi tạo là một bức ảnh đen trắng hay ảnh nhị phân. Có tỉ lệ tương ứng với kích thước thật của không gian bên ngoài được tạo. Chuyển ảnh bản đồ sang ma trận tưng ứng 1 pixel là một phần tử trong ma trận. Trong đó vùng có vật cản (màu đen) sẽ có giá trị 1 và ngược lại màu trắng sẽ có giá trị là 0. Áp dụng giải thuật tìm đường để giải đường đi robot.

63

Hình 4.7: Lưu đồ giải thuật tìm đường

Nhận xét: phương pháp này có ưu điểm là đơn giản, dễ tính toán trên máy tính. Tuy nhiên có nhược điểm là quá trình chuyển đổi phức tạp. Để quỹ đạo của robot càng chính xác thì số lượng node phải lưu sẽ rất lớn, do đó khối lượng tính toán sẽ nặng nề làm giảm tốc độ xử lý của robot. Quỹ đạo di chuyển chưa thực sự tối ưu do sai số của phương pháp liên kết các node theo lân cận 8.

Quá trình thực hiện được nhóm tóm tắt trong sơ đồ sau:

64 Giải thuật điều khiển robot được nhóm mô tả trong lưu đồ sau:

65

CHƯƠNG 5: THIẾT KẾ HỆ THỐNG ĐIỆN 5.1 Tổng quan hệ thống điện

Hệ thống điện của robot được trình bày như sơ đồ ở hình 5.1.

Nguồn chính cung cấp cho robot là từ pin lipo 24v để chạy động cơ và cung cấp nguồn cho mạch điều khiển. Nguồn 5v được hạ áp từ nguồn 24v để cung cấp nguồn cho raspberry, camera, cảm biến và màn hình. Pin được sử dụng là pin Lipo có kích thước nhỏ gọn và có dung lượng 5500 mAh đủ cho robot hoạt động liên tục trong vòng 5h không cần sạc.

5.2 An toàn điện

66 Để đảm bảo an toàn điện cho hệ thống và bảo vệ cho các thiết bị điện tránh hư hỏng, nhóm bố trí nút E-stop tại đầu vào của các thiết bị điện. Khi gặp sự cố, bấm nút dừng khẩn cấp mạch tự động ngắt. Nhờ vậy đảm bảo an toàn cho hệ thống điện của robot.

5.3 Các thiết bị điện sử dụng trên robot

STT Tên thiết bị Thông số Hình ảnh 1 Vi điều khiển Vi điều khiển STM32F407 VGE,là dòng ARM có sức mạnh vừa phải thích hợp với các ứng dụng điều khiển phần cứng.

2 Động cơ Động cơ DC servo có tốc độ 100 v/p sau khi qua hợp giảm tốc, hộp giảm tốc có tỉ số 1/148, encoder đi kèm động cơ là encoder từ 13 xung.

3 Driver Dirver động cơ DC có công suất 400w, có nhiều chế độ điều khiển như pulse/dir, uart, hỗ trợ giao tiếp mạng qua RS232.

67

4 Pin Pin lipo 24V dung

lượng 5500mAh

5 Raspberry Raspberry Pi3+ kết nối được wifi

6 Camera Camera logitec C310

7 LCD LCD 7inch,độ phân

giải 800x480

8 Cảm biến

siêu âm

Cảm biến đo khoảng cách tốt từ 30mm đến 2000mm

68

CHƯƠNG 6: THIẾT KẾ HỆ THỐNG ĐIỀU KHIỂN 6.1 Hệ thống điều khiển robot

Thiết kế mạch điều khiển robot có nhiệm vụ rất quan trọng dùng để điều khiển động cơ, để xác định vị trí robot từ việc đọc tín hiệu từ encoder, đọc tín hiệu cảm biến siêu âm để phát hiện vật cản phía trước, giao tiếp với Raspberry để nhận và truyền nhận dữ liệu với máy tính. Giao diện cung cấp các tín hiệu đầu vào thông qua việc người sử dụng tương tác với robot trên màn hình hoặc từ xa bằng internet.

.

69

Máy tính raspberry sẽ gửi ba giá trị x, y, góc xuống cho mainboard. Máy tính raspberry trên robot sẽ giao tiếp với một máy tính khác thông qua wifi. Mainboard sẽ giao tiếp với hai driver bằng cách gửi giá trị vận tốc xuống cho driver qua UART, driver nhận được giá trị vận tốc đó và điều khiển động cơ theo giá trị vận tốc đã cài đặt. Về màn hình và camera được kết nối với raspberry thông qua cổng usb.

6.1.1 Điều khiển động cơ

Để điều khiển động cơ hoạt động ổn định, có thể vận tốc theo mong muốn, nhóm sử dụng hai driver cho hai động cơ. Mạch điều khiển nhận được dữ liệu từ máy tính. Bộ điều khiển sẽ tính toán ra các giá trị vận tốc (Vl,Vr). Driver nhận được dữ liệu vận tốc sẽ tiến hành xuất xung PWM điều khiển ổn định tốc độ động cơ và đọc giá trị encoder để phản hồi vận tốc. Giá trị vận tốc tính được từ encoder sẽ được mạch điều khiển đọc để tính toán vị trí robot và driver đọc để điều khiển PID cho động cơ.

70

6.1.2 Phát hiện vật cản

Robot phục vụ trong khách sạn có nhiều vật cản như người, các chậu cây cảnh,… nên cần phải có tính năng phát hiện vật cản trong quá trình di chuyển để tránh va chạm gây hư hỏng robot hoặc va chạm với con người làm tổn thương con người, giảm chất lượng phục vụ của khách sạn. Vật cản thường có 2 loại là vật cản cố định và vật cản di động. Để phát hiện các vật cản này có nhiều phương pháp có thể sử dụng như lidar, camera, cảm biến radar, cảm biến siêu âm,… Trong đề tài này nhóm sử dụng cảm biến siêu âm đề phát hiện vật cản. Cảm biến siêu âm có đặc điểm ít bị nhiễu bởi môi trường, độ chính xác ở mức độ vừa phải, dễ lập trình điều khiển. Nhóm bố trí 3 cảm biến phía trước đặt lệch nhau mộ góc 60 độ để có thể phát hiện vật các cản phía trước robot trong phạm vi 120 độ, và ba cảm biến phía sau giúp robot phát hiện vật

Hình 6.4: Sơ đồ hệ thống điều khiển động cơ

71 cản phía sau robot đang tiến đến robot. Khi phát hiện vật cản robot sẽ lựa chọn đường khác để di chuyển.

Cảm biến siêu trả về tính hiệu dạng xung. Để tính ra được khoản cách ta áp dụng công thức sau: d = . 2 v t (6.1) Với :

• d: Khoảng cách cho cảm biến đối tượng.

• T: Thời gian giữa sóng phát ra và sóng thu được. • v: Tốc độ sóng, v = 343m / s.5.2.4.

6.1.3 Hệ thống thu nhập thông tin a. Camera a. Camera

72 Yêu cầu đặt ra là robot có thể hỗ trợ người tiếp tân khách sạn quan sát tình trạng robot di chuyển từ xa và điều khiển từ xa qua internet. Nhóm lựa chọn phương án sử dụng camera. Trên robot có trang bị một máy tính nhúng để đọc dữ liệu từ camera. Dữ liệu của camera sẽ được máy tính nhúng gửi lên máy chủ qua wifi. Một máy tính khác có thể xem được dữ liệu từ camera nếu được kết nối internet và truy cập đến máy chủ.

Hình 6.6: Sơ đồ giao tiếp Camera

b. Định vị robot

Định vị robot để xác định vị trí hiện tại của robot. Định vị robot được chia làm ba phương pháp. Phương pháp thứ nhất là sử dụng các cảm biến gắn trên robot như: GPS, cảm biến gia tốc,…Đặc điểm của phương pháp này có sai số lớn thích hợp với các ứng dụng ngoài trời. Phương pháp thứ hai là sử dụng các tia Laser (RP lidar), camera,..Đặc điểm của phương pháp này là có độ chính xác cao phù hợp với các ứng dụng trong nhà nhưng chi phí cao và quá trình tính toán phức tạp. Phương pháp thứ ba là phương pháp được dùng trong hầu hết trên robot di động vì đơn giản và dễ thực hiện. Đó là sử dụng bộ mã hóa số vòng quay bánh xe (encoder). Trong phạm vi đề tài và thời gian nghiên cứu có hạn nhóm sử dụng phương pháp thứ ba để định vị robot.

73 Encoder trả về số vòng quay của bánh xe từ đó có thể tính ra được vận tốc của mỗi bánh xe. Sử dụng bài toán động học đã trình bày ở trên ta có thể tính ra được vị trí của robot từ vận tốc hai bánh xe. Nhược điểm của phương pháp này là có sai số lớn phụ thuộc vào độ phân giải của encoder và dễ bị sai số do bề mặt địa hình tác động lên robot.

74

CHƯƠNG 7: THIẾT KẾ ỨNG DỤNG ĐIỀU KHIỂN

Với yêu cầu về khả năng vận hành trong khách sạn, robot cần có 1 giao diện điều khiển đơn giản, dễ sử dụng tương thích với hành khách và phù hợp với các cơ cấu cơ khí, các thiết bị ngoại vi hoạt động đồng bộ, hợp nhất với nhau, từ đó robot mới có thể hoạt động tốt. Một màn hình giao diện điều khiển sẽ mang đến cho người dùng khả năng tương tác tốt với robot cũng như có cảm giác thân thiện khi sử dụng, đáp ứng tiêu chí thân thiện với người dùng.

7.1 Giới thiệu, tổng quan về giao diện

Ứng dụng điều khiển sẽ được xây dựng với 2 chức năng chính như sau:

Di chuyển: quan sát vị trí robot và điều khiển đến vị trí mong muốn (các phòng). Camera: hỗ trợ giám sát di chuyển từ xa.

75

7.2 Thiết kế ứng dụng điều khiển

Hình 7.2: Giao diện chính robot.

76 Việc thiết kế ứng dụng điều khiển để cho hành khách có thể trực tiếp điều khiển, giao tiếp với robot thực hiện mong muốn.

7.3 Thiết kế các chức năng của ứng dụng điều khiển robot 7.3.1 Chức năng điều khiển robot đến điểm đích 7.3.1 Chức năng điều khiển robot đến điểm đích

7.3.1.1 Giới thiệu

Để có được sự di chuyển linh hoạt trong địa hình khách sạn, robot cần có khả năng biết được vị trí hiện tại khách sạn và tự di chuyển đến các vị trị phòng. Nhờ khả năng này, robot có thể hỗ trợ dẫn đường và vận chuyển hành lý cho con người đến các phòng giúp tiết kiệm thời gian và công sức.

7.3.1.2 Nguyên lý điều khiển đến phòng trong khách sạn a. Lưu đồ giải thuật a. Lưu đồ giải thuật

77

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

Hình 7.5: Giao diện điều khiển đến vị trí.

- Khi người dùng chọn vào biểu tượng di chuyển, một giao diện sẽ hiện ra và khởi tạo 1 kết nối Websocket-client với Websocket server.

- Sau khi khởi tạo thành công, giao diện sẽ nhận dữ liệu từ Raspberry gửi lên bao gồm tọa độ x, y và góc quay của robot.

- Một hàm Javascript sẽ tiếp nhận các dữ liệu đó, vẽ ra bản đồ và vị trí robot (được vẽ bằng chấm tròn) trên bản đồ.

7.3.2 Chức năng camera giám sát 7.3.2.1 Giới thiệu 7.3.2.1 Giới thiệu

Để hỗ trợ cho việc di chuyển từ xa, robot tích tích hợp thêm chức năng camera giám sát. Nhờ chức năng này tiếp tân có thể quan sát robot từ xa thông qua máy tính

78 cá nhân mà không cần trực tiếp đi đến hoặc có thể giám sát hành trình của robot và có thể điều khiển thông qua internet.

7.3.2.2 Nguyên lý hoạt động a. Lưu đồ giải thuật a. Lưu đồ giải thuật

79

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

Hình 7.7: Sơ đồ giao tiếp camera robot.

Camera kết nói với raspberry để thu hình ảnh, trang web trên raspberry nếu được kết nối wifi sẽ gửi hình ảnh đó sang cho trang web trên máy tính của tiếp tân nếu máy tính của tiếp tân cũng được kết nối wifi. Một webserver được xây dựng để làm trung gian vận chuyển.

80

81

CHƯƠNG 8: KẾT QUẢ VÀ THỰC NGHIỆM

Trong chương này, nhóm sẽ trình bày về kết quả của quá trình nghiên cứu, thiết kế, chế tạo robot hỗ trợ vận chuyển hành lý và các kết quả thực nghiệm mà nhóm khảo sát khả năng vận hành của robot.

8.1Kết quả

Sau quá trình nghiên cứu, thiết kế và chế tạo, robot đã đạt được những kết quả nhất định và sẽ được trình bày cụ thể sau đây:

8.1.1 Kết cấu cơ khí

- Hoàn thành kết cấu khung, nắp và vỏ robot, đáp ứng được yêu cầu về độ bền, khả năng chịu tải và kích thước hợp lý.

- Hệ thống truyền động của robot hoạt động ổn định, không xãy ra các hiện

82 tượng trượt đai, kiêu và đáp ứng được yêu cầu về khả năng vận hành trong khách sạn.

- Kết cấu bên ngoài của robot tương đối đơn giản.

8.1.2 Hệ thống điện và điều khiển

- Việc thiết kế thêm Board giúp cho hệ thống điện được thiết kế gọn gàng, hợp lý, đáp ứng yêu cầu về an toàn điện.

- Nguồn năng lượng (Pin) ổn định cho robot hoạt động trong thời gian hành chính làm việc của tiếp tân.

- Hệ thống xử lý và điều khiển vận hành ổn định.

8.1.3 Giao diện điều khiển

- Giao diện được thiết kế các tính năng mang tính thẩm mỹ, đơn giản, dễ sử dụng.

- Khả năng tương tác với hành khách và phản hồi tốt. - Các chức năng hiển thị giao diện rõ ràng và hoạt động tốt.

8.1.4 Thông số robot

Sau quá trình nghiên cứu, thiết kế và chế tạo, robot được hoàn thành với các thông số được trình bài trong bảng 8.1:

STT Thông số Đề xuất Đạt được

1 Chiều cao 1000 – 1100 mm 1000 mm

2 Khối lượng 20 – 30 kg 25kg

3 Vật liệu Thép CT3 Thép CT3, nhựa

4 Không gian chiếm dụng 0.3136 3

m 0.3136m3

5 Màn hình LCD cảm ứng, 7inch LCD cảm ứng, 7 inch,

phân giải 800x480 px

6 Độ phân giải camera 720 px 720px

7 Nguồn cấp Pin lipo 24 V Pin lipo 24 V

8 Tốc độ di chuyển 0.5 – 1 m/s 0.8 m/s

9 Cơ cấu chuyển động 2 bánh vi sai chủ động, 2 bánh tự lựa

2 bánh vi sai chủ động, 2 bánh tự lựa

10 Thời gian hoạt động 5 giờ (5,5 Ah) 5 giờ (5,5 Ah)

11 Thời gian sạc 1 giờ 1giờ

83

8.2 Thực nghiệm và đánh giá

8.2.1 Thực nghiệm về khả năng tìm đường của robot

Để đánh giá được khả năng tìm đường cũng như độ sai lệnh vi trí điểm đến của robot trong khách sạn trước hết nhóm chia ra thực nghiệm thử với di chuyển điểm điểm sau đó di chuyển ổn định mới chạy theo hoạch định ban đầu đề ra.

8.2.1.1 Điều khiển điểm đến điểm

Đường quỹ đạo của robot được chia ra thành nhiều đoạn để điều khiển robot. Số đoạn chia càng nhỏ thì robot chuyển động càng giống với đường thực tế, sai số càng ít. Bộ điều khiển sẽ giúp robot đạt đến các điểm trên quỹ đạo.

Về điều khiển robot di chuyển điểm đến điểm, nhóm thử nghiệm 3 trường hợp và quỹ đạo chuyển động được minh họa trên biểu đồ bên dưới (với đường đứt gãy là lý thuyết và đường liền nét là thực tế).

Hình 8.3: Quỹ đạo chuyển động minh họa

84 Cho robot di chuyển từ vị trí (0; 0) đến vị trí (2500; 0), đo 5 lần và kết quả đạt

Một phần của tài liệu Nghiên cứu, thiết kế và chế tạo robot vận chuyển hành lý trong khách sạn đồ án tốt nghiệp khoa đào tạo chất lượng cao ngành công nghệ kỹ thuật cơ điện tử (Trang 57)

Tải bản đầy đủ (PDF)

(85 trang)