LỜIMỞĐẦU..............................................................................................................1 PHẦNMỞĐẤU.........................................................................................................2 1. Tính cấp thiết của đềtài:.......................................................................................2 2. Mục tiêu nghiên cứu:............................................................................................2 3. Đối tượng phạm vi, phương pháp nghiên cứu:......................................................2 CHƯƠNG 1: TỔNG QUAN VỀĐỀTÀI....................................................................4 1.1. Giới thiệu chung vềhệthống định vịcho robot trong nhà:.................................4 1.2.1 Phương pháp deadreckoning:......................................................................5 1.2.2 Hệthống dẫn đường cột mốc chủđộng:........................................................5 1.2.3 Phương pháp định vịsửdụng bản đồ:.................................................6 1.3. Ưu nhược điểm của các hệthống hiện nay:........................................................7 1.3.1. Ưu điểm:.....................................................................................................7 1.3.2. Nhược điểm:................................................................................................7 1.4. Vấn đềtồn tại liên quan đến hệthống hiện nay:.................................................7 1.4.1. Phân tích vềyếu tốkĩ thuật của các hệthống:..............................................7 1.4.2 Phân tích vềđiều kiện triển khai:..................................................................8 CHƯƠNG 2: THIẾT KẾHỆTHỐNG ĐỊNH VỊCHO ROBOT TRONG NHÀ........10 2.1 Thiết kếhệthống:.............................................................................................10 2.1.1 Sơ đồkhối của hệthống:............................................................................10 2.1.2 Phân tích chức năng các khối:.....................................................................10 2.1.3. Nguyên lí hoạt động của hệthống:.............................................................11 2.2. Thiết kếphần cứng ( xây dựng mô hình robot dò đường ):...............................12 2.2.1 Cấu trúc cơ khí của robot:...........................................................................12 2.2.2. Tính toán lựa chọn linh kiện:.....................................................................14 2.3. Thiết kếphần mềm:.........................................................................................30 2.3.1 Lưu đồthuật toán của hệthống:..................................................................30 2.3.2 Mô tảthuật toán:........................................................................................31 2.3.3 Mô tảngôn ngữlập trình:...........................................................................35 CHƯƠNG 3: THỬNGHIỆM VÀ THẢO LUẬN......................................................36 3.1 Mô tảmôi trường thửnghiệm:..........................................................................36 3.2. Các kịch bản thửnghiệm:.............................................................................36 3.3. Mô tảcác thông sốđo:.....................................................................................36 3.4. Kết quảthửnghiệm và thảo luận:...................................................................37 KẾT LUẬN VÀ THẢO LUẬN HƯỚNG PHÁT TRIỂN..........................................47 TÀI LIỆU THAM KHẢO..........................................................................................48 PHỤLỤC..............49
Tính cấp thiết của đề tài
Hiện nay hầu hết các thiết bị robot và dây chuyền tự động hoá được sử dụng trong các ngành công nghiệp sản xuất và chế biến đều được nhập từ nước ngoài rất đắt tiền Trong khi nhu cầu ở nước ta đang rất cao và trong nước có khả năng chế tạo sản xuất để phù hợp với điều kiện làm việc ở Việt Nam Lĩnh vực thiết kế, chế tạo robot và các thiết bị điều khiển tự động rất mới mẻ và có tiềm năng rộng lớn không những ở trong nước mà còn cả trên thế giới Việc thâm nhập, nghiên cứu và chế tạo một số mô hình điều khiển tự động như robot thông minh, robot thăm dò, robot sản xuất là một hướng cần thiết nhằm rút ngắn khoảng cách giữa khoa học công nghệ trong nước và trên thế giới trong lĩnh vực này
Có một số sự khác biệt quan trọng giữa các yêu cầu của việc lắp đặt robot cố định truyền thống với các yêu cầu của các hệ thống robot di động Một trong những mối quan tâm hàng đầu là sự không biết trước môi trường vận hành của robot di động Đối với các hệ thống robot cố định, người ta thường xây dựng (thiết kế) một không gian làm việc nhỏ để thực hiện công việc và robot cố định thường thực hiện các công việc lặp đi lặp lại trong môi trường xác định trước Đối với các hệ thống robot di động, việc nhận biết được môi trường làm việc là một yếu tố quyết định tới các “hành động” của robot, chỉ khi nhận biết được đầy đủ các thông tin về môi trường xung quanh thì robot di động mới có thể thích ứng được trong các môi trường làm việc khác nhau Theo khái niệm, robot di động phải có một số bộ phận chuyển động Chuyển động có thể dưới dạng bánh xe, chân, cánh hoặc một số cơ cấu khác Việc lựa chọn cơ cấu chuyển động là dựa vào chức năng của robot và các công việc của robot cần phải thực hiện Trong nhiều môi trường làm việc công nghiệp, bánh xe là dạng chuyển động thích hợp nhất Đối với các hệ thống nghiên cứu ứng dụng khác, chân hoặc cánh có thể giúp cho robot di động chuyển động được trên địa hình mà robot không có khả năng đi qua Vì vậy đề tài “ Thiết kế hệ thống định vị cho robot trong nhà ” mang tính cấp thiết và có ý nghĩa rất quan trọng điều kiện tình hình kinh tế - xã hội ở Việt Nam hiện nay.
Mục tiêu nghiên cứu
Xây dựng một hệ thống giúp robot định vị khi di chuyển trong tòa nhà
Thử nghiệm và đánh giá kết quả trên robot dò đường ( hoặc mô phỏng trên phần mềm matlab)
Mô hình mang tính thực tế.
Đối tượng phạm vi, phương pháp nghiên cứu
Hệ thống định vị cho robot trong nhà.
Hệ thống định vị được nghiên cứu nhằm mục đích: Nghiên cứu về hệ thống định vị cho robot trong nhà
3.3 Phương pháp nghiên cứu: Để giải quyết được những vấn đề của đề tài đặt ra, sử dụng các phương pháp nghiên cứu sau đây:
Tìm hiểu về nghiên lý hoạt động của robot di chuyển trong nhà
Tìm hiểu về các phương pháp định vị cho robot trong nhà
Thiết kế và lắp đặt mạch điện tử cho khung robot dò đường
Lập trình điều khiển và giải thuật tìm đường đi cho robot
Tính toán đo đạc các thông số nghiên cứu và thông số thực tế
Đánh giá hiệu quả của giải thuật
4 Kế hoạch thực hiện: Từ ngày 20/08/2022 đến ngày 30/11/2022
Bước 1: Tìm hiểu về phương pháp định vị cho robot trong nhà
Bước 2: Thu thập các dữ liệu liên quan
Bước 3: Tìm hiểu về nguyên lí làm việc
Bước 4: Lên ý tưởng về thiết kế mạch điều khiển cho robot
Bước 5: Thi công lắp đặt mạch điện tử
Bước 6: Vận hành, thử nghiệm đánh giá giải thuật thực tế
Bước 7: Thu thập dữ liệu thực tế
Bước 8: Chỉnh sửa và hoàn thành hệ thống định vị
5 Nội dung thực hiện: Đồ án được chia làm 3 chương với các nội dung sau:
Chương 1: Tổng quan về đề tài: trình bày tổng quan khái niệm và các phương pháp tổng phương pháp định vị robot ở môi trường trong nhà
Chương 2: Thiết kế hệ thống định vị: trình bày về quá trình thiết kế hệ thống và chế tạo một robot dò đường
Chương 3: Thử nghiệm và thảo luận về hệ thống định vị cho robot trong nhà: Thử nghiệm cho robot hoạt động, đo đạc thông số kĩ thuật giữa hệ thống so với thực tế và đưa ra kết luận
TỔNG QUAN VỀ ĐỀ TÀI
Giới thiệu chung về hệ thống định vị cho robot trong nhà
Trong những năm gần đây, robot di động được nghiên cứu và ứng dụng vào nhiều lĩnh vực đa dạng khác nhau như: vận chuyển hàng hóa, cứu hộ, thám hiểm Sự phát triển của lĩnh vực robot không chỉ dựa trên sự phát triển các giải pháp về phần cứng mà còn phụ thuộc vào khả năng tương thích của phần mềm Ngày nay, với sự phát triển của các hệ thống thông minh, việc ứng dụng các mã nguồn mở để phát triển hệ thống có ý nghĩa quan trọng, phát huy được sức mạnh của cộng đồng khoa học nhờ đặc tính kế thừa khi cần cầu tái sử dụng lại các thông tin đã tạo trước đó Do đó, hệ điều hành dành cho robot đang được phát triển và ứng dụng rộng rãi trong những năm gần đây Hệ điều hành ROS hay hệ điều hành dành cho robot, là một giải pháp dành cho robot bao gồm các thư viện và công cụ để điều khiển, có các quy định chung trong việc thiết lập hay giao tiếp giữa các chương trình lần nhau ROS là một hệ điều hành mã nguồn mở được phát triển và cập nhật trong nhiều năm qua, nhằm mục đích phát triển công đồng robot, do đó giúp người dùng có thể khai thác những mã nguồn được chia sẻ để phát triển các thuật toán hay tích hợp xây dựng robot Ngôn ngữ lập trình được sử dụng là các ngôn ngữ phổ biến như C và Python Trong ROS, hệ thống được tổ chức gồm nhiều node hoạt động cùng nhau và có cơ chế giao tiếp được quy định để truyền nhận dữ liệu Bên cạnh đó, mỗi node có thể được lập trình với các ngôn ngữ khác nhau, cho phép người dùng có thể sử dụng đa ngôn ngữ phù hợp với hệ thống thiết kế
Các bài toán định vị cho robot là xác định vị trí và hướng của robot so với môi trường làm việc, các thông tin về vị trí phải đủ tin cậy để robot hoạt động chính xác và ổn định Do đó định vị cho robot đóng vai trò làm tiền đề thực hiện các nhiệm vụ tiếp theo Các phương pháp định vị cho robot có thể chia làm hai nhóm chính: định vị tương đối và định vị tuyệt đối Định vị tương đối là xác định vị trí của robot so với vị trí ban đầu tính toán Phương pháp phổ biến thường được sử dụng trong định vị tương đối là odometry, đây là phương pháp sử encoder đo số vòng quay di chuyển của bánh xe, kết hợp phương trình động học của robot để tính toán vị trí hiện tại so với vị trí ban đầu Phương pháp này cho phép việc tính toán định vị nhanh, tuy nhiên dao động lớn về vị trí khi hoạt động trong thời gian dài do tích lũy của các lỗi theo thời gian (do độ trượt bánh xe, chu vi bánh) Định vị tuyệt đối là việc xác định vị trí của robot so với với hệ trục tọa độ trong môi trường làm việc Một trong những phương pháp định vị tuyệt đối là sử dụng các hoa tiêu như các gương phản xạ hay các Barcode gắn cố định trên tường Trong nghiên cứu của Pierlot đã đề xuất việc sử dụng các góc tương ứng giữa các hoa tiêu, sau đó thiết lập ba đường tròn để tìm ra giao điểm là vị trí hiện tại của robot
1.2 Giới thiệu về một số hệ thống định vị cho robot trong nhà hiện nay
Dead-reckoning là phương pháp dẫn đường được sử dụng rộng rãi nhất đối với robot di động Phương pháp này cho độ chính xác trong thời gian ngắn, giá thành thấp và tốc độ lấy mẫu rất cao Tuy nhiên do nguyên tắc cơ bản của phương pháp dead- reckoning là tích luỹ thông tin về gia tốc chuyển động theo thời gian do đó dẫn tới sự tích luỹ sai số Sự tích luỹ sai số theo hướng sẽ dẫn đến sai số vị trí lớn tăng tỉ lệ với khoảng cách chuyển động của robot Tuy nhiên hầu hết các nhà nghiên cứu đều đồng ý rằng dead-reakoning là một phần quan trọng trong hệ thống dẫn đường robot, các lệnh dẫn đường sẽ được đơn giản hoá nếu độ chính xác của phương pháp dead-reckoning được cải thiện Phương pháp dead-reakoning dựa trên phương trình đơn giản và thực hiện được một cách dễ dàng, sử dụng dữ liệu từ bộ mã hoá số vòng quay bánh xe Dead-reckoning dựa trên nguyên tắc là chuyển đổi số vòng quay bánh xe thành độ dịch tuyến tính tương ứng của robot Nguyên tắc này chỉ đúng với giá trị giới hạn Có một vài lý do dẫn đến sự không chính xác trong việc chuyển từ số gia vòng quay bánh xe sang chuyển động tuyến tính Tất cả các nguồn sai số này được chia thành 2 nhóm: sai số hệ thống và sai số không hệ thống Để giảm sai số dead-reckoning cần phải tăng độ chính xác động học cũng như kích thước tới hạn
Hình 1.1 Định vị cho robot sử dụng bộ lập mã quang, cảm biến gia tốc, vận tốc góc và cảm biến từ
1.2.2 Hệ thống dẫn đường cột mốc chủ động:
Hệ thống dẫn đường cột mốc chủ động là hệ thống dẫn đường được sử dụng phổ biến nhất trên tàu biển và máy bay Hệ thống này cung cấp thông tin vị trí rất chính xác với quá trình xử lý tối thiểu Hệ thống cho phép tốc độ lấy mẫu và độ tin cậy cao nhưng đi kèm với nó là giá thành cao trong việc thiết lập và duy trì Cột mốc được đặt tại các vị trí chính xác sẽ cho phép xác định toạ độ chính xác của vật thể Có 2 phương pháp đo dùng trong hệ thống cột mốc chủ động, đó là phép đo 3 cạnh tam giác và phép đo 3 góc tam giác Phép đo 3 cạnh tam giác Phép đo 3 cạnh tam giác xác định
6 vị trí vật thể dựa trên khoảng cách đo được tới cột mốc biết trước Trong hệ thống dẫn đường sử dụng phép đo này thông thường có ít nhất là 3 trạm phát đặt tại các vị trí biết trước ngoài môi trường và 1 trạm nhận đặt trên robot Hoặc ngược lại có 1 trạm phát đặt trên robot và các trạm nhận đặt ngoài môi trường Sử dụng thông tin về thời gian truyền của chùm tia hệ thống sẽ tính toán khoảng cách giữa các trạm phát cố định và trạm nhận đặt trên robot GPS (Global Positionings Systems) - hệ thống định vị toàn cầu hoặc hệ thống cột mốc sử dụng cảm biến siêu âm là các ví dụ khi sử dụng phép đo
3 cạnh tam giác Phép đo 3 góc tam giác
Hình 1.2 Định vị sử dụng vật mốc
1.2.3 Phương pháp định vị sử dụng bản đồ:
Robot sử dụng các cảm biến được trang bị để tạo ra một bản đồ cục bộ môi trường xung quanh Bản đồ này sau đó so sánh với bản đồ toàn cục lưu trữ sẵn trong bộ nhớ Nếu tương ứng, robot sẽ tính toán vị trí và góc hướng thực tế của nó trong môi trường
Hình 1.3 Định vị và dẫn đường cho robot chuyển động sử dụng bản đồ
Ưu nhược điểm của các hệ thống hiện nay
- Phương pháp dead-reckoning là phương pháp định vị tương đối chủ yếu dựa trên bài toán dead-reckoning (tính số vòng quay của bánh xe để suy ra vị trí tương đối của robot sau một khoảng thời gian chuyển động) Phương pháp này đơn giản, rẻ tiền và hầu như được sử dụng trong tất cả các mobile robot
- Phương pháp sử dụng hệ thống dẫn đường cột mốc chủ động là phương pháp định vị tuyệt đối dùng thêm các cảm biến khác ngoài encoder như dùng cột mốc, so sánh các bản đồ cục bộ và bản đồ toàn cục, định vị bằng vệ tinh (GPS)… Trong mỗi phương pháp định vị tuyệt đối, người ta sử dụng các thuật toán và cảm biến khác nhau, nhưng đều là những phương pháp chủ yếu dùng cho mobile robot ngày nay, phương pháp này có độ chính xác cao và ít sai số
- Nhược điểm của phương pháp dead-reckoning là bán kính sai số lớn, nguyên nhân gây bởi sai số tích luỹ
-Nhược điểm của hệ thống sử dụng cột mốc chủ động là giá thành cho thiết bị khá cao và nhiều chi tiết gây khó khăn cho việc lắp đặt Phương pháp sử dụng cột mốc chỉ thích hợp dùng trong nhà; phương pháp so sánh bản đồ thường dùng cho các robot tự trị phức tạp; phương pháp định vị dùng GPS thì chỉ thích hợp dùng ngoài trời, và cũng cho sai số rất lớn (lên đến hàng mét), một số phương pháp định vị khác thì dùng cảm biến la bàn hoặc con quay để định hướng cho robot nhờ vào từ trường trái đất….
Vấn đề tồn tại liên quan đến hệ thống hiện nay
1.4.1 Phân tích về yếu tố kĩ thuật của các hệ thống:
- Về phương pháp dead-reconing: phương pháp dead-reakoning dựa trên phương trình đơn giản và thực hiện được một cách dễ dàng, sử dụng dữ liệu từ bộ mã hoá số vòng quay bánh xe Dead-reckoning dựa trên nguyên tắc là chuyển đổi số vòng quay bánh xe thành độ dịch tuyến tính tương ứng của robot Nguyên tắc này chỉ đúng với giá trị giới hạn Có một vài lý do dẫn đến sự không chính xác trong việc chuyển từ số gia vòng quay bánh xe sang chuyển động tuyến tính Tất cả các nguồn sai số này được chia thành 2 nhóm: sai số hệ thống và sai số không hệ thống Để giảm sai số dead-reckoning cần phải tăng độ chính xác động học cũng như kích thước tới hạn
Phương pháp này đơn giản chỉ sử dụng cảm biến mã trục quay ( encoder) nên việc lắp đặt thiết bị dễ dàng và không phức tạp
- Về phương pháp dẫn sử dụng cột mốc chủ động: đây là phương pháp mà một robot có thể nhận biết từ chính cảm biến đầu vào của nó Các vật mốc có thể có dạng hình học như hình chữ nhật, hình vuông, đường thẳng …, và có thể bao gồm nhiều
8 thông tin Thông thường các vật mốc có các vị trí cố định và biết trước để robot có thể xác định được vị trí của chính nó Các vật mốc được lựa chọn cẩn thận để dễ dàng nhận biết Trước khi robot có thể sử dụng các vật mốc để định vị, đặc trưng của các vật mốc phải được biết trước và lưu trữ trong bộ nhớ của robot Các lệnh chính trong việc định vị sau đó nhận biết các vật mốc và tính toán vị trí robot Để đơn giản việc nhận biết vật mốc giả sử bằng vị trí và hướng hiện tại của robot là biết trước, vì vậy robot chỉ cần tìm kiếm các vật mốc trong vùng diện tích giới hạn Phương pháp thực hiện được chỉ ra ở sơ đồ khối trên hình 1.4
Có 2 loại vật mốc là vật mốc nhân tạo và vật mốc tự nhiên Vật mốc tự nhiên là các vật thể hay đặc điểm đã tồn tại từ trước ngoài môi trường Vật mốc nhân tạo là các vật thể hay dấu hiệu được thiết kế với mục đích duy nhất là cho phép robot định vị
Hình 1.4 Phướng pháp định vị dựa vào vật mốc
- Về phương pháp định vị dựa trên bản đồ: là kỹ thuật mà robot sử dụng các cảm biến của nó để tạo ra một bản đồ môi trường cục bộ xung quanh nó Bản đồ này sau đó được so sánh với bản đồ toàn cục được lưu trữ từ trước trong bộ nhớ Nếu sự tương ứng được nhận ra, robot sẽ tính toán vị trí và hướng thực tế của nó trong môi trường Bản đồ được lưu trữ từ trước có thể là mô hình CAD của môi trường hoặc đực xây dựng từ dữu liệu cảm biến trước đó
Hình 1.5 Phương pháp định vị dựa vào bản đồ
1.4.2 Phân tích về điều kiện triển khai:
- Đối với phương pháp dead-reckoning; việc triển khai thiết kế hệ thống ít chi tiết, giá thành cho phương pháp này rẻ và các linh kiện dễ kiếm phương pháp này thường sử dụng cảm biến encoder là chủ yếu nên việc lắp đặt sẽ không phức tạp như các phương pháp khác
Thông tin từ cảm biến
Phát hiện và phân đoạn các điểm mốc
Xác lập sự tương ứng giữa số liệu thu được và bản đồ được lưu trữ
Thông tin từ cảm biến
Xây dựng bản đồ cục bộ
Xác lập sự tương ứng giữa bản đồ cục bộ và bản đồ toàn cục được lưu
- Đối với phương pháp dẫn đường cột mốc chủ động thì hệ thống này cung cấp thông tin rất chính xác với quá trình xử lí tối thiểu, hệ thống cho phép tốc độ lấy mẫu và độ tin cậy cao nhưng đi kèm với nó là giá thành cao trong việc thiết lập và duy trì Cột mốc được đặt tại các vị trí chính xác sẽ cho phép xác định chính xác tọa độ của vật thể Hạn chế của phương pháp này ở chỗ máy phát tại cột mốc phải có công suất cực kỳ lớn để đảm bảo phát theo mọi hướng trên khoảng cách lớn
Hệ thống xác định vị trí bằng vật mốc tự nhiên thường gồm các thành phần cơ bản như:
+ Cảm biến để dò tìm tránh các vật mốc
+ Phương pháp liên kết các dấu hiệu quan sát được với bản đồ vật mốc đã biết + Phương pháp tính toán vị trí và xác định sai số trong việc liên kết
- Đối với phương pháp dựa vào bản đồ: phương pháp này có các ưu điểm như:
+ Sử dụng các cấu trúc tự nhiên xuất hiện ở môi trường ngoài để thu được thông tin về vị trí mà không làm thay đổi môi trường
+ Bản đồ vị trí có thể được sử dụng để tạo ra bản đồ cập nhật của môi trường Bản đồ môi trường rất quan trọng đối với các nhiệm vụ khác của robot di động như tìm đường hay tránh vật cản
+ Bản đồ vị trí cho phép robot khảo sát một cách tỉ mỉ về môi trường xung quanh
THIẾT KẾ HỆ THỐNG ĐỊNH VỊ CHO ROBOT TRONG NHÀ
Thiết kế hệ thống
2.1.1 Sơ đồ khối của hệ thống: Để thực hiện được thiết kế hệ thống định vị cho robot dò đường em đưa ra sơ đồ thiết kế như sau:
Hình 2.1 Sơ đồ khối của hệ thống
2.1.2 Phân tích chức năng các khối:
Khối cấp nguồn: Khối cấp nguồn 5VDC có chức năng cấp nguồn 5V cho các khối có thể hoạt động được
Khối cấp nguồn 12VDC có chức năng cấp nguồn 12V cho khối điều khiển động cơ có thể hoạt động được
Khối cảm biến: Sử dụng cảm biến encoder để tính toán bằng phương pháp odometry để truyền dữ liệu cho khối điều khiển trung tâm
Khối điều khiển trung tâm: Sử dụng Arduino Uno R3, nhận tín hiệu từ khối cảm biến rồi tinh toán để xác định trạng thái robot đang di chuyển và xuất ra tín hiệu xung chuyển qua khối điều khiển động cơ
Khối điều khiển động cơ: Sử dụng module VNH2SP30A để nhận tín hiệu từ khối điều khiển trung tâm rồi xử lý tín hiệu để điều hướng xe di chuyển đúng
Khối hiển thị: Nhận tín hiệu từ khối điều khiển trung tâm và hiển thị lên màn hình lcd tọa độ của robot trên trục x y
2.1.3 Nguyên lí hoạt động của hệ thống:
Tín hiệu từ cảm biến được đưa qua mạch điều khiển chính, dựa vào tín hiệu từ khối cảm biến, khối điều khiển trung tâm sẽ tính toán để xác định trạng thái robot đang di chuyển và xuất ra tín hiệu xung PWM để điều khiển các động cơ thông qua mạch điều khiển động cơ VNH2SP30A Việc đó sẽ giúp robot tự di chuyển theo quỹ đạo xác định trước Điều này giúp cho robot có khả năng định vị một cách chính xác và hiệu quả
Hiện nay, thị trường có rất nhiều loại cảm biến khác nhau Chúng giúp cho robot có khả năng định vị một cách chính xác và hiệu quả như, cảm biến la bàn điện từ, cảm biến tiếp xúc, cảm biến quang, bộ giải mã encoder, hệ thống định vị toàn cầu GPS, camera quan sát kết hợp công nghệ xử lý ảnh… Trong đề tài này em sử dụng cảm biến encoder vì dễ tính toán, giá thành hợp lí và thích hợp để định vị được robot ở môi trường trong nhà
Nguyên lí hoạt động của cảm biến encoder:
Cảm biến được gắn trực tiếp với trục quay mô-tơ, dùng để đo vận tốc 2 bánh xe robot
Bộ mã trục quay như trình bày trên hình dưới đây về cơ bản là một đĩa quay làm đóng- ngắt chùm tia sáng đi qua các khe Cùng bộ phận điện tử chuyển đổi quang điện (optron), cơ cấu này phát ra số xung điện lối ra tương ứng với một vòng quay của trục mô-tơ
Nếu đường kính của bánh xe và tỷ số truyền lực (tỷ số truyền bánh răng từ trục mô-tơ ra bánh xe robot) đã biết thì vị trí góc và tốc độ quay của bánh xe có thể xác định được bằng việc đếm số xung ánh sáng chiếu qua các khe hẹp của đĩa lập mã
Việc xác định vị trí của robot bằng bộ lập mã này là phương pháp phổ biến trên thế giới có tên gọi là phương pháp Odometry Phương pháp này có ưu điểm đơn giản dễ sử dụng để đo vận tốc của bánh xe Tuy nhiên nó có nhược điểm là mắc phải sai số tích lũy, gây nên sự bất định của vị trí ước tính bởi hệ thống odometry tăng theo thời gian trong khi robot di chuyển Thường phải triệt sai số tích lũy này một cách định kỳ bằng hỗ trợ bởi một cảm biến khác Trong hệ thống của em đĩa encoder có 100 rãnh/1 đĩa
Sau khi đọc dữ liệu từ cảm biến và tính toán, dữ liệu sẽ đường hiển thị lên màn hình LCD để so sánh với vị trí thực tế Dữ liệu tính toán được cũng sẽ hiển thị đường đi của robot lên màn hình máy tính thông qua truyền nhận dữ liệu ở cổng Serial của arduino uno R3 Cổng serial sẽ được kết nối trực tiếp với máy tính và thông qua phần mềm Streamer data for excel, dữ liệu định vị sẽ được hiển thị dưới dạng các đường đứt quãng trên hệ tọa độ X Y.
Thiết kế phần cứng ( xây dựng mô hình robot dò đường )
Để phục vụ việc nghiên cứu các phương pháp định vị cho dẫn đường robot trong nhà ta cần có một mô hình robotdò đường Với mục đích này chúng tôi đã thiết kế chế tạo được một robot dò đường có cấu trúc đặc điểm sau: ngoài bộ điều khiển và bộ chấp hành, bộ cảm nhận của robot sẽ được chọn lựa cảm biến phù hợp để hệ thống truyền tin giữa các bộ phận phải có tốc độ đủ đáp ứng với yêu cầu thời gian thực Từ xuất phát điểm như vậy các cảm biến đã được lựa chọn trang bị cho robot là: cảm biến mã trục quay (encoder)
Nội dung chương này sẽ trình bày các bước thiết kế và chế tạo mô hình robot di động đa cảm biến tại phòng thí nghiệm
2.2.1 Cấu trúc cơ khí của robot:
Cấu trúc cơ khí và cơ cấu của robot được thể hiện trên hình 2.3 Robot chuyển động được với 2 bánh xe vi sai, mỗi bánh được gắn với một động cơ 24VDC có kèm theo bộ chuyền động
Hình 2.3 Chi tiết bản vẽ cơ khí của robot dò đường
13 Đặc điểm về cơ khí của robot:
+ Kích thước đáy: Đáy hình tròn với đường kính 0,36m
+ Đặc điểm về điện tử:
+ Hệ thống điều khiển động cơ 2 bánh xe
Hình ảnh thực tế của robot như hình 2.4 và 2.5:
Hình 2.4 Hình ảnh thực tế của robot
Hình 2.5 Hình ảnh mặt dưới của robot
2.2.2 Tính toán lựa chọn linh kiện:
Phần 1: Giới thiệu chung về arduino:
Arduino đã và đang được sử dụng rất rộng rãi trên thế giới, và ngày càng chứng tỏ được sức mạnh của chúng thông qua vô số ứng dụng độc đáo của người dùng trong cộng đồng nguồn mở (open- source)
Arduino cơ bản là một nền tảng mẫu mở về điện tử (open-source electronic sprototyping platform) được tạo thành từ phần cứng lẫn phần mềm Về mặt kỹ thuật có thể coi Arduino là 1 bộ điều khiển logic có thể lập trình được Đơn giản hơn, Arduino là một thiết bị có thể tương tác với ngoại cảnh thông qua các cảm biền và hành vi được lập trình sẵn Với thiết bị này, việc lắp ráp và điều khiển các thiết bị điện tử sẽ dễ dàng hơn bao giờ hết Arduino được phát triển nhằm đơn giản hóa việc thiết kế, lắp ráp linh kiện điện tử cũng như lập trình trên vi xử lí và mọi người có thể tiếp cận dễ dàng hơn với thiết bị điện tử mà không cần nhiều về kiến thức điện tử và thời gian Sau đây là nhưng thế mạnh của Arduino so với các nền tảng vi điều khiển khác:
Chạy trên đa nền tảng: Việc lập trình Arduino có thể thể thực hiện trên các hệ điều hành khác nhau như Windows, Mac Os, Linux trên Desktop, …
Ngôn ngữ lập trình đơn giản dễ hiểu
Nền tảng mở: Arduino được phát triển dựa trên nguồn mở nên phần mềm chạy trên Arduino được chia s dễ dàng và tích hợp vào các nền tảng khác nhau
Mở rộng phần cứng: Arduino được thiết kế và sử dụng theo dạng module nên việc mở rộng phần cứng cũng dễ dàng hơn
Đơn giản và nhanh: Rất dễ dàng lắp ráp, lập trình và sử dụng thiết bị
Dễ dàng chia sẽ: Mọi người dễ dàng chia s mã nguồn với nhau mà không lo lắng về ngôn ngữ hay hệ điều hành mình đang sử dụng
Arduino có rất nhiều module, mỗi module được phát triển cho một ứng dụng
Về mặt chức năng, các bo mạch Arduino được chia thành hai loại, loại bo mạch chính có chip Atmega và loại mở rộng thêm chức năng cho bo mạch chính Các bo mạch chính về cơ bản là giống nhau về chức năng, tuy nhiên về mặt cấu hình như số lượng I/O, dung lượng bộ nhớ, hay kích thước có sự khác nhau Một số bo có trang bị thêm các tính năng kết nối như Ethernet và Bluetooth Các bo mở rộng chủ yếu mở rộng thêm một số tính năng cho bo mạch chính Ví dụ như tính năng kết nối Ethernet, Wireless, điều khiển động cơ
Phần 2: Bo mạch Arduino Uno R3:
Sử dụng chip AVR Atmega328 của Atmel Mạch arduino được lắp ráp từ các linh kiện dễ tìm và hướng đến đối tượng người dùng đa dạng
Arduino UNO có thể sử dụng 3 vi điều khiển họ 8bit AVR là Atmega8, Atmega168, Atmega328 Bộ não này có thể xử lí những tác vụ đơn giản như điều khiển đèn LED nhấp nháy, xử lí tín hiệu cho xe điều khiển từ xa, làm một trạm đo nhiệt độ, độ ẩm và hiển thị lên màn hình LCD,… hay những ứng dụng khác
Arduino UNO có thể được cấp nguồn 5V thông qua cổng USB hoặc cấp nguồn ngoài với điện áp khuyên dùng là 7-12V DC và giới hạn là 6-20V Thường thì cấp nguồn bằng pin vuông 9V là hợp lí nhất nếu không có sẵn nguồn từ cổng USB Nếu cấp nguồn vượt quá ngưỡng giới hạn trên, sẽ làm hỏng Arduino UNO
Bảng chức năng các chân của Arduino Uno R3:
Vi điều khiển Atmega328 (họ 8bit) Điện áp hoạt động 5V – DC (chỉ được cấp qua cổng USB)
Tần số hoạt động 16 MHz
Dòng tiêu thụ 30mA Điện áp vào khuyên dùng 7-12V – DC Điện áp vào giới hạn 6-20V – DC
Số chân Digital I/O 14 (6 chân PWM)
Số chân Analog 6 (độ phân giải 10bit)
Dòng tối đa trên mỗi chân
Dòng ra tối đa (5V) 500 mA
Dòng ra tối đa (3.3V) 50 mA
Bộ nhớ flash 32 KB (Atmega328) với 0.5KB dùng bởi bootloader
Bảng 2.1 Bảng chức năng các chân của Arduino Uno R3 Chức năng các chân:
GND (Ground): Khi dùng các thiết bị sử dụng những nguồn điện riêng biệt thì những chân này phải được nối với nhau
5V: cấp điện áp 5V Dòng tối đa cho phép ở chân này là 500mA
3.3V: cấp điện áp 3.3V Dòng tối đa cho phép ở chân này là 50mA
Vin (Voltage Input): để cấp nguồn ngoài cho Arduino UNO, nối cực dương của nguồn với chân này và cực âm của nguồn với chân GND
IOREF: điện áp hoạt động của vi điều khiển trên Arduino UNO có thể được đo ở chân này Và dĩ nhiên nó luôn là 5V Mặc dù vậy không được lấy nguồn 5V từ chân này để sử dụng bởi chức năng của nó không phải là cấp nguồn
RESET: việc nhấn nút Reset trên board để reset vi điều khiển tương đương với việc chân RESET được nối với GND qua 1 điện trở 10KΩ
Các cổng vào/ra: Arduino UNO có 14 chân digital dùng để đọc hoặc xuất tín hiệu Chúng chỉ có 2 mức điện áp là 0V và 5V với dòng vào/ra tối đa trên mỗi chân là 40mA Ở mỗi chân đều có các điện trở pull-up từ được cài đặt ngay trong vi điều khiển Atmega328 (mặc định thì các điện trở này không được kết nối) Một số chân digital có các chức năng đặc biệt như sau:
2 chân Serial: 0 (RX) và 1 (TX): dùng để gửi (transmit – TX) và nhận (receive – RX) dữ liệu TTL Serial Arduino Uno có thể giao tiếp với thiết bị khác thông qua 2 chân này Kết nối bluetooth thường thấy nói nôm na chính là kết nối Serial không dây Nếu không cần giao tiếp Serial, không nên sử dụng 2 chân này nếu không cần thiết
Chân PWM (~): 3, 5, 6, 9, 10, và 11: cho phép xuất ra xung PWM với độ phân giải 8bit (giá trị từ 0 → 28-1 tương ứng với 0V → 5V) bằng hàm analogWrite() Nói một cách đơn giản, có thể điều chỉnh được điện áp ra ở
17 chân này từ mức 0V đến 5V thay vì chỉ cố định ở mức 0V và 5V như những chân khác
Chân giao tiếp SPI: 10 (SS), 11 (MOSI), 12 (MISO), 13 (SCK) Ngoài các chức năng thông thường, 4 chân này còn dùng để truyền phát dữ liệu bằng giao thức SPI với các thiết bị khác
LED 13: trên Arduino UNO có 1 đèn led màu cam (k hiệu chữ L) Khi bấm nút Reset, sẽ thấy đèn này nhấp nháy để báo hiệu Nó được nối với chân số
13 Khi chân này được người dùng sử dụng, LED sẽ sáng
Arduino UNO có 6 chân analog (A0 → A5) cung cấp độ phân giải tín hiệu 10bit (0 đến 210-1) để đọc giá trị điện áp trong khoảng 0V → 5V Với chân AREF trên board, có thể để đưa vào điện áp tham chiếu khi sử dụng các chân analog Tức là nếu cấp điện áp 2.5V vào chân này thì có thể dùng các chân analog để đo điện áp trong khoảng từ 0V đến 2.5V với độ phân giải vẫn là 10bit
Đặc biệt, Arduino UNO có 2 chân A4 (SDA) và A5 (SCL) hỗ trợ giao tiếp I2C/TWI với các thiết bị khác
Thiết kế phần mềm
2.3.1 Lưu đồ thuật toán của hệ thống:
Sau đây là lưu đồ khái quát quá trình robot trong nhà di chuyển và định vị vị trí, ta có thể tóm lược như sau:
Hình 2.24 Lưu đồ thuật toán cuả hệ thống
2.3.2.1 Giới thiệu về phương pháp định vị odometry:
Odometry là việc sử dụng dữ liệu cảm biến để ước tính thay đổi vị trí theo thời gian Odometry được sử dụng bởi một số dòng robot có chân hoặc bánh xe để ước tính(không xác định) vị trí của chúng hiện tại liên quan đến vị trí bắt đầu Phương pháp này dễ sinh lỗi do việc tích hợp các phép đó vận tốc theo thời gian để đư ra ước tính vị trí
Giả sử một robot có bộ mã hóa quanh bánh xe hoặc trên các khớp chân Nó di chuyển về phía trước và sau đó muốn biết đã đi được một đoạn bao nhiêu Nó có thể đo số vòng quay của các bánh xe, dựa vào chu vi của bánh xe để tính ra đoạn đường đã đi được
Một ví dụ phúc tạp hơn Giả sử rằng, có một robot có hai bánh xe có thể di chuyển về phái trước và ngược lại, chúng được đặt song song với nhau và cách đều từ tâm của robot Hơn nữa, giả sử mỗi động cơ có một bộ mã hóa quay, từ đó chúng ta có thể xác định được robot đã di chuyển một “đơn vị” về phía trước hay ngược lại dọc theo sàn Đơn vị này tỉ lệ với chu vi bánh xe và độ phân giải của bộ mã hóa
Nếu bánh xe bên trái di chuyển về phía trước và bánh xe bên phải giữ cố định tại chỗ thì robot sẽ quay sang vòng sang bên trái theo chiều kim đồng hồ Vì đơn vị của khoảng cách này thường rất nhỏ, nên chúng ta có thể giả sử rằng vòng cung này là một đường thẳng Như vậy, vị trí ban đầu của bánh xe bên trái, vị trí cuối cùng bánh xe bên trái và vị trí của bánh xe bên phải tạo thành một hình tam giác, gọi là A
2.3.2.2 Phân tích về thuật toán:
Khi ta sử dụng nút điều khiển joystick để kích hoạt cho xe chạy thì tín hiệu từ cảm biến được đưa qua mạch điều khiển chính, dựa vào tín hiệu từ khối cảm biến, khối điều khiển trung tâm sẽ tính toán để xác định trạng thái robot đang di chuyển và xuất ra tín hiệu xung PWM để điều khiển các động cơ thông qua mạch điều khiển động cơ VNH2SP30A
Hình 2.25 Sơ đồ nối chân của hệ thống
Hình 2.26 Hình thực tế của hệ thống Phương pháp điều chế độ rộng xung (PWM):
Tốc độ quay của động cơ một chiều tỉ lệ thuận với điện áp đầu vào Do đó, cách đơn giản nhất để điều khiển tốc độ quay của rotor là thay đổi mức điện áp đặt vào động cơ
Nguyên tắc cơ bản để thay đổi tốc độ quay động cơ của phương pháp PWM là giữ nguyên giá trị điện áp vào và thay đổi thời gian đặt điện áp vào động cơ Điều này có nghĩa, thời gian mức cao Ton trong một chu kỳ của xung ngõ vào động cơ càng lớn thì điện áp trung bình đặt vào động cơ càng cao, ngược lại thời gian mức thấp Toff trong một chu kỳ của xung ngõ vào động cơ càng lớn điện áp trung bình đặt vào động cơ càng thấp Đại lượng mô tả mối quan hệ giữa khoảng thời gian Ton và Toff được gọi là độ rộng xung (duty_cycle), được tính theo công thức:
(a) Giản đồ độ rộng xung
(b) Giản đồ xung với theo duty_cycle
Hình 2.27 Giản đồ thời gian của xung PWM
Thí dụ: Trong hình 2.27 (b), nếu chu kỳ xung 1kHz; thời gian xung mức cao Ton là 0.3ms và thời gian xung mức thấp Toff là 0.7ms Biên độ xung là 12Vdc Tốc độ quay của rotor là 1500 vòng/phút Theo công thức: duty_cycle = 30% và điện áp trung bình đặt vào động cơ là 12 x 30% = 3.6Vdc Tốc độ quay của rotor là 1500 x 30% = 450 vòng/phút
Phân tích về phương pháp định vị Odometry:
Khoảng cách giữa hai bánh xe là L v l và vr là tốc độ tịnh tiến của hai bánh xe trái và phải Gọi v, ꞷ là vận tốc tịnh tiến và vận tốc góc của robot Từ mô hình cấu trúc của robot trên hình ta có:
Tương ứng ta có: Định vị là việc xác định tọa độ và hướng của robot trong môi trường Hình 2.28 biểu diễn hệ toạ độ và ký hiệu các thông số của robot di động được thiết kế trong Đề tài có thể di chuyển trên mặt sàn phẳng trong phòng, trong đó (XG,YG) là các trục hệ tọa độ toàn cục của phòng, (XR,YR) là các trục hệ tọa độ cục bộ gắn với tâm robot a) b)
Hình 2.28 a) Tư thế và các thông số của robot trong hai hệ tọa độ; b) Mô hình chuyển động
Robot có hai bánh xe chủ động được gắn trên một trục và hai bánh xe bị động được đặt ở phía trước và phía sau để cân bằng đế robot Hai bánh bị động này được thiết kế đủ linh động để không ảnh hưởng gì đến trạng thái động học của robot Kết quả là trạng thái chuyển động của robot chỉ phụ thuộc vào 2 bánh xe chủ động Các bánh chủ động có cùng bán kính R và cách nhau một khoảng L Chúng được điều
34 khiển độc lập bằng các mô tơ điện cho phép robot chuyển động theo hướng bất kỳ (nếu tốc độ quay 2 bánh bằng nhau thì robot sẽ đi thẳng, nếu tốc độ quay khác nhau thì robot sẽ quay hướng về phía bánh xe có tốc độ thấp hơn) Vì lý do trên nên loại robot kiểu này thường được gọi là robot có bánh xe được điều khiển vi sai (differential drive wheeled robot)
Bài toán được đặt điều kiện robot là một vật rắn chuyển động trên mặt sàn phẳng Tâm của robot (trọng tâm) nằm tại điểm giữa của trục hai bánh xe chủ động
Gọi x, y là tọa độ của robot, θ là góc giữa hướng của robot với trục OX Trạng thái của robot được biểu diễn bởi véc tơ
Tại thời điểm k và thời điểm k-1 ta có trạng thái của robot là:
Hình 2.29 Hình ảnh chuyển động của robot
Với khoảng thời gian lấy mẫu Δt đủ ngắn ta có quãng đường dịch chuyển của 2 bánh xe:
s R và s L được xác định bởi encoder
Từ đây có quãng đường dịch chuyển và độ lệch góc của tâm robot:
Khi đó X được tính theo công thức sau:
Các số dịch chuyển s R và s L tỉ lệ với tốc độ đặt của 2 bánh xe R và L và được đo bởi các encoder) là các biến đầu vào chịu ảnh hưởng của các sai số hệ thống và sai số ngẫu nhiên
Các sai số hệ thống thường được sinh ra bởi sự không hoàn hảo về thiết kế và chế tạo cơ khí Ngoài sai số độ phân giải của encoder, tốc độ lấy mẫu tín hiệu không đồng nhất, v.v…; hai nguồn sai số hệ thống điển hình nhất là số đo bán kính R của các bánh xe không đồng đều và sự không xác định độ dài trục L Độ dài trục xe, nói chính xác chính là khoảng cách giữa hai điểm chạm của các bánh xe với mặt sàn, thực ra còn chịu sai số bởi các nhân tố ngẫu nhiên khác như sự gồ ghề của mặt sàn, lốp bánh xe không đủ cứng, v.v…
THỬ NGHIỆM VÀ THẢO LUẬN
Mô tả môi trường thử nghiệm
Để khảo sát hệ thống, robot được xây dựng đầy đủ chức năng của hệ thống định vị và hiển thị thông số tọa độ vị trí của robot Robot sẽ được thử nghiệm ở môi trường trong nhà cụ thể là phòng nghiên cứu khoa Điện điện tử đại học Duy tân
Hình 3.1 Môi trường thử nghiệm
Các kịch bản thử nghiệm
Trên cơ sở robot đã được thiết kế chế tạo em đã tiến hành khảo sát độ chính xác chuyển động của robot
Kịch bản 1: Robot với khoảng cách giữ 2 bánh xe L30 (mm), đường kính bánh xe R = 49,5( mm) Cho robot tiến về phía trước với thời gian là 5s
Kịch bản 2: Robot với khoảng cách giữ 2 bánh xe L30 (mm), đường kính bánh xe R = 49,5( mm) Cho robot tiến về phía trước với thời gian là 5s, quay qua phải khoảng 90 độ, đi thẳng tiếp với thời gian 3s
Mô tả các thông số đo
Thông số Đơn vị Chú thích
O độ góc của hướng của robot
Bảng 3.1 Bảng thông số đo
Hình 3.2 Thông số hiển thị trên LCD (đơn vị mm) Thông số đọc Encoder:
Hình 3.3 Thông số encoder hiển thị trên màn hình
Tuy nhiên thông số đọc encoder này đã được sử dụng để tính toán trong phần định vị sử dụng phương pháp Odometry nên em sẽ không hiển thị thông số này trên LCD.
Kết quả thử nghiệm và thảo luận
Kịch bản 1: Robot với khoảng cách giữ 2 bánh xe L30 (mm), đường kính bánh xe R = 49,5( mm) Cho robot tiến về phía trước với thời gian là 5s
Lần thực hiện Tọa độ X (mm) Thực tế đo(mm) Sai số (mm)
Bảng 3.2 Bảng kết quả đo Hình ảnh vẽ đường đi của robot trên Excel:
Nhận xét về kết quả thử nghiệm kịch bản 1:
- Vị trí của robot hiển thị trên LCD so với thực tế chênh lệch xấp xỉ 100mm Lí do vì thiết kế của bánh xe được làm bằng chất liệu nhựa cứng nên khi di chuyển robot sẽ có độ trượt trên mặt phẳng
- Quãng đường di chuyển của robot đúng, tuy nhiên robot đi không thẳng vì các sai số hệ thống thường được sinh ra bởi sự không hoàn hảo về thiết kế và chế tạo cơ khí Ngoài sai số độ phân giải của encoder, tốc độ lấy mẫu tín hiệu không đồng nhất, v.v…; hai nguồn sai số hệ thống điển hình nhất là số đo bán kính R của các bánh xe không đồng đều và sự không xác định độ dài trục L Độ dài trục xe, nói chính xác chính là khoảng cách giữa hai điểm chạm của các bánh xe với mặt sàn, thực ra còn chịu sai số bởi các nhân tố ngẫu nhiên khác như sự gồ ghề của mặt sàn, lốp bánh xe không đủ cứng, v.v…
Kịch bản 2: Robot với khoảng cách giữ 2 bánh xe L30 (mm), đường kính bánh xe R = 49,5( mm) Cho robot tiến về phía trước với thời gian là 5s, quay qua phải khoảng 90 độ, đi thẳng tiếp với thời gian 3s
Góc quay của robot (độ)
Hình 3.4 Bảng kết quả đo Hình ảnh vẽ đường đi của robot trên Excel:
Nhận xét về kết quả thử nghiệm kịch bản 2:
Quãng đường di chuyển của robot đã đi thẳng và quay sang phải, tuy nhiên robot đi không thẳng và góc quay của robot chưa đúng 90 độ vì các sai số hệ thống
46 thường được sinh ra bởi sự không hoàn hảo về thiết kế và chế tạo cơ khí Ngoài sai số độ phân giải của encoder, tốc độ lấy mẫu tín hiệu không đồng nhất, v.v…; hai nguồn sai số hệ thống điển hình nhất là số đo bán kính R của các bánh xe không đồng đều và sự không xác định độ dài trục L Độ dài trục xe, nói chính xác chính là khoảng cách giữa hai điểm chạm của các bánh xe với mặt sàn, thực ra còn chịu sai số bởi các nhân tố ngẫu nhiên khác như sự gồ ghề của mặt sàn, lốp bánh xe không đủ cứng, v.v…
KẾT LUẬN VÀ THẢO LUẬN HƯỚNG PHÁT TRIỂN
Sau thời gian làm đề tài với sự hướng dẫn tận tình của Thầy Hà Đắc Bình, trong đề tài này em đã thực hiện được những vấn đề sau:
Tổng quan về hệ thống định vị robot
Thuật toán định vị Odometry sử dụng trong robot
Thiết kế và chế tạo robot dò đường Đồ án tốt nghiệp được thực hiện dưới sự cố gắng nỗ lực của bản thân và sự chỉ bảo tận tình của giáo viên hướng dẫn, tuy nhiên những thiếu sót và khiếm khuyết là không thể tránh khỏi Em rất mong nhận được các ý kiến đóng góp của thầy cô giáo trong hội đồng cùng toàn thể các bạn để đồ án của em được hoàn thiện hơn
Việc thiết kế robot sử dụng hệ thống đã hoàn thành và đã đi vào hoạt động, đã hiển thị tọa độ lên trên màn hình LCD và vẽ đường đi cho robot trên máy tính Trong quá trình làm đồ án em có tìm hiểu thêm chức năng của cảm biến IMU để việc di chuyển của robot ổn định hơn nhưng do điều kiện chưa cho phép nên em chưa thể áp dụng vào đồ án này Nếu có điều kiện em sẽ tiếp tục phát triển hệ thống hơn nữa đáp ứng nhu cầu ngày càng cao của con người Em hy vọng có thể ứng dụng hệ thống định vị này có thể ứng dụng ngay trong đời sống hàng ngày chứ không đơn thuần chỉ là trên mô hình