1. Trang chủ
  2. » Luận Văn - Báo Cáo

Đồ án tốt nghiệp Công nghệ kỹ thuật điều khiển và tự động hóa: Quadcopter nhận dạng tụ sứ lỗi sử dụng kĩ thuật học sâu ứng dụng trong giám sát thông minh

104 0 0
Tài liệu đã được kiểm tra trùng lặp

Đ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ông tin cơ bản

Tiêu đề Quadcopter Nhận Dạng Tụ Sứ Lỗi Sử Dụng Kĩ Thuật Học Sâu Ứng Dụng Trong Giám Sát Thông Minh
Tác giả Lê Quang Huy, Nguyễn Đình Khôi
Người hướng dẫn PGS. TS. Vũ Văn Phong
Trường học Trường Đại Học Sư Phạm Kỹ Thuật Thành Phố Hồ Chí Minh
Chuyên ngành Công Nghệ Kỹ Thuật Điều Khiển Và Tự Động Hóa
Thể loại Đồ án tốt nghiệp
Năm xuất bản 2024
Thành phố Thành Phố Hồ Chí Minh
Định dạng
Số trang 104
Dung lượng 5,7 MB

Cấu trúc

  • CHƯƠNG 1: TỔNG QUAN (18)
    • 1.1. Đặt vấn đề (18)
    • 1.2. Mục tiêu đề tài và giới hạn đề tài (18)
    • 1.3. Phương pháp nghiên cứu (19)
    • 1.4. Giới thiệu nội dung (20)
  • CHƯƠNG 2: CƠ SỞ LÝ THUYẾT (22)
    • 2.1. Xử lý ảnh (22)
    • 2.2. Học sâu và trí tuệ nhân tạo (22)
    • 2.3. Mạng thần kinh tích chập (23)
    • 2.4. Các phương pháp nhận dạng đối tượng (26)
    • 2.5. Giới thiệu về drone (31)
    • 2.6. Động lực học và ma trận chuyển đổi trục của drone (33)
    • 2.7. Bộ lọc Kalman (35)
    • 2.8. Bộ điều khiển PID (36)
    • 2.9. Bộ điều khiển bay (38)
    • 2.10. Máy tính NVIDIA Jetson Nano (40)
      • 2.10.1. Máy tính nhúng (40)
    • 2.11. Tổng quan về MySQL (45)
  • CHƯƠNG 3: HỌC SÂU TRONG NHẬN DẠNG SỨ ĐIỆN (48)
    • 3.1. Tầm quan trọng của nhận dạng sứ điện (48)
    • 3.2. Nhận dạng sứ bằng SSD-Mobilenet-v1 (48)
      • 3.2.1. Giới thiệu về SSD-Mobilenet-v1 (48)
      • 3.2.2. Cách thức hoạt động của SSD-Mobilenet-v1 (50)
      • 3.2.3. Kiến trúc mạng SSD-Mobilenet-v1 (52)
      • 3.2.4. Các hàm Loss của SSD (Loss function) (52)
  • CHƯƠNG 4: GIẢI PHÁP NHẬN DẠNG TỤ SỨ (54)
    • 4.1. Tổng quan giải pháp (54)
    • 4.2. Giải pháp chi tiết (55)
  • CHƯƠNG 5: THIẾT KẾ PHẦN CỨNG (59)
    • 5.1. Yêu cầu thiết kế và quy trình vận hành của hệ thống (59)
    • 5.2. Lựa chọn, thiết kế phần cứng của Quadcopter (60)
      • 5.2.1. Lựa chọn, lắp ráp khung quadcopter (60)
      • 5.2.2. Thiết kế, tính toán lựa chọn động cơ (61)
      • 5.2.3. Tính toán lựa chọn bộ điều khiển tốc độ động cơ (ESC) (62)
      • 5.2.4. Tính toán lựa chọn cánh quạt (63)
      • 5.2.5. Lựa chọn pin cho hệ quadcopter (64)
      • 5.2.6. Lựa chọn bộ điều khiển từ xa cầm tay (64)
      • 5.2.7. Lựa chọn camera (65)
      • 5.2.8. Lựa chọn bộ điều khiển bay phù hợp (66)
      • 5.2.10. Lựa chọn máy tính nhúng phù hợp (70)
    • 5.3. Sơ đồ nối dây của hệ thống (70)
    • 5.4. Thiết mô hình hệ thống (72)
  • CHƯƠNG 6: THIẾT KẾ PHẦN MỀM (74)
    • 6.1. Thiết kế chương trình điều khiển (74)
      • 6.1.1. Yêu cầu thiết kế (74)
      • 6.1.2. Mô tả chương trình điều khiển (74)
      • 6.1.3. Lưu đồ giải thuật điều khiển (76)
      • 6.1.4. Xây dựng chương trình theo dõi tụ sứ (77)
  • CHƯƠNG 7: KẾT QUẢ ĐẠT ĐƯỢC (79)
    • 7.1. Mô hình (79)
    • 7.2. Đánh giá mô hình học sâu (80)
    • 7.3. Đánh giá khả năng vận hành của mô hình (89)
  • CHƯƠNG 8: KẾT LUẬN VÀ HƯỚNG PHÁT TRIỂN (92)
    • 8.1. Kết luận (92)
      • 8.1.1. Hiện trạng của hệ thống (92)
      • 8.1.2. Hạn chế của mô hình (93)
    • 8.2. Hướng phát triển của đề tài (93)
  • TÀI LIỆU THAM KHẢO (94)

Nội dung

Học sâu là một nhánh của trí tuệ nhân tạo sử dụng các mạng nơ-ron nhân tạo ANN được đào tạo trên một lượng lớn dữ liệu để học hỏi và thực hiện các nhiệm vụ phức tạp.. - Sự bất biến của v

TỔNG QUAN

Đặt vấn đề

Biến đổi khí hậu và nhu cầu điện tăng cao đòi hỏi phải đảm bảo hoạt động ổn định của lưới điện Sự xuống cấp của các sứ điện gây ra mối đe dọa nghiêm trọng, làm giảm hiệu quả cách điện và gia tăng nguy cơ cháy nổ Trong bối cảnh tiêu thụ điện ngày càng gia tăng, duy trì sự ổn định và tin cậy của hệ thống điện là rất quan trọng Do đó, bảo vệ sứ điện trở thành nhiệm vụ hàng đầu Kiểm tra và bảo trì thường xuyên các sứ điện là cần thiết để đảm bảo hiệu suất tối ưu và giảm thiểu nguy cơ hư hỏng.

Phương pháp kiểm tra truyền thống đòi hỏi nhân viên phải leo lên cột điện cao áp, gây ra nhiều rủi ro Với sự phát triển của cách mạng công nghiệp 4.0, việc tích hợp học sâu vào hệ thống giám sát thông minh đã trở nên cần thiết Để giải quyết những thách thức này, chúng tôi đã phát triển "QUADCOPTER NHẬN DẠNG SỨ LỖI BẰNG KĨ THUẬT HỌC SÂU ỨNG DỤNG TRONG GIÁM SÁT THÔNG MINH", giúp cải tiến quy trình kiểm tra đường dây điện, tiết kiệm thời gian và nguồn nhân lực.

Mục tiêu đề tài và giới hạn đề tài

Các mục tiêu và giới hạn thực hiện đề tài được đặt ra trước khi tiến hành:

Mục tiêu đề tài Đề tài được thực hiện với những mục tiêu cụ thể như sau:

- Tạo ra hệ thống sát với thực tế, hoạt động ổn định dựa trên những yêu cầu thực tế của hệ thống

- Lập mô hình AI với tỉ lệ chính xác trên 90%

- Thông tin về lỗi sẽ được hiển thị khi có lỗi xảy ra với hệ thống ĐỒ ÁN TỐT NGHIỆP 2

- Giám sát và vận hành ở chế độ manual thông qua GUI điều khiển

- Quản lý các dự liệu bằng cơ sở dữ liệu MySql để cung cấp khả năng nhập liệu và kiểm tra kết quả từ xa

Mô hình quadcopter được thiết kế với bộ điều khiển bay Pixhawk, giúp duy trì thăng bằng và điều hướng đến tụ sứ để ghi nhận dữ liệu Khung máy bay gắn 4 động cơ không chổi than, trong khi camera phía trước đảm nhiệm việc nhận diện và đánh giá trạng thái của tụ sứ Lidar được sử dụng để giới hạn khoảng cách giữa drone và tụ sứ, và Jetson Nano đóng vai trò là bộ xử lý trung tâm, khởi chạy mô hình AI và truyền đạt chỉ thị đến Pixhawk.

Chương trình điều khiển được lập trình bằng ngôn ngữ Python, sử dụng mô hình học sâu Single Shot Multibox Detector (SSD) trên Jetson Nano Hệ thống giao tiếp với Pixhawk thông qua thư viện Dronekit Jetson Nano gửi thông tin và dữ liệu về cơ sở dữ liệu MySQL, trong khi giao diện lập trình C# lấy thông tin từ cơ sở dữ liệu để cung cấp trực quan cho người dùng.

Phương pháp nghiên cứu

Việc kết hợp phương pháp nghiên cứu thực nghiệm với phương pháp phân tích và tổng hợp là rất quan trọng để sử dụng mô hình SSD trong việc nhận dạng sứ điện một cách chính xác và đáng tin cậy.

Phương pháp thực nghiệm bao gồm việc thu thập dữ liệu thực tế qua camera để ghi lại hình ảnh của sứ điện, từ đó xây dựng tập dữ liệu huấn luyện cho mô hình SSD Hình ảnh được chụp từ nhiều góc độ và điều kiện ánh sáng khác nhau, nhằm xác định và đánh dấu các điểm ảnh có vấn đề như khuyết tật, hư hỏng hoặc vết bẩn Các vùng quan tâm sẽ được gán nhãn với thông tin chi tiết về loại vấn đề và mức độ nghiêm trọng Tập dữ liệu này sẽ được sử dụng để huấn luyện mô hình SSD trong việc nhận dạng và phân loại các vấn đề liên quan đến sứ điện.

Phương pháp nghiên cứu phân tích và tổng hợp được áp dụng để đánh giá hiệu suất của mô hình SSD sau khi đã được huấn luyện Mô hình này được sử dụng để phân tích các hình ảnh sứ điện mới, từ đó thu thập và tổng hợp kết quả nhận dạng Đánh giá độ chính xác và độ tin cậy của mô hình SSD trong việc nhận dạng các vấn đề trên sứ điện là bước quan trọng trong nghiên cứu.

Giới thiệu nội dung

Nội dung của bài báo cáo được trình bày thành các chương như sau:

Giới thiệu tổng quan về đề tài, mục tiêu và giới hạn, phương pháp nghiên cứu và tóm tắt nội dung báo cáo

Chương 2: Cơ sở lý thuyết

Chương này giới thiệu các phương pháp nhằm đáp ứng yêu cầu của hệ thống, từ đó giúp lựa chọn phương pháp tối ưu nhất.

Chương 3: Thiết kế phần cứng hệ thống Ở chương này trình bày về các yêu cầu về đáp ứng của phần cứng hệ thống Và từ đó, phần cứng được thiết kế để đáp ứng những yêu cầu đã đưa ra và trình bày thông số kĩ thuật của các thiết bị đã lựa chọn

Chương 4: Thiết kế phần mềm

Chương này trình bày các yêu cầu thi công phần mềm hệ thống nhằm đảm bảo hoạt động hiệu quả Đồng thời, việc thiết kế phần mềm điều khiển và giám sát cần được thực hiện một cách đơn giản, dễ sử dụng và phù hợp với các yêu cầu thực tế của hệ thống.

Chương 5: Kết quả ĐỒ ÁN TỐT NGHIỆP 4

Chương này trình bày các kết quả đạt được của hệ thống so với mục tiêu ban đầu, đồng thời đánh giá hiệu suất làm việc của hệ thống.

Chương 6: Kết luận và hướng phát triển

Chương này tổng hợp các kết quả đạt được từ việc thực hiện đề tài và đề xuất các hướng phát triển cho hệ thống trong tương lai.

CƠ SỞ LÝ THUYẾT

Xử lý ảnh

Xử lý ảnh là một lĩnh vực quan trọng trong khoa học máy tính, tập trung vào thao tác, phân tích và biến đổi hình ảnh kỹ thuật số Lĩnh vực này có ứng dụng rộng rãi trong nhiều ngành như nhiếp ảnh, y tế, an ninh, sản xuất và giải trí.

Quá trình xử lý ảnh có nhiệm vụ chính là nâng cao thông tin và chất lượng hình ảnh, đồng thời xử lý dữ liệu để phục vụ cho các ứng dụng, bao gồm cả việc ứng dụng thị giác máy tính trong điều khiển.

Xử lý ảnh là một công cụ mạnh mẽ, có nhiều ứng dụng thực tiễn, giúp cải thiện chất lượng hình ảnh và trích xuất thông tin từ chúng Công nghệ ngày càng phát triển, khiến xử lý ảnh trở nên phổ biến và quan trọng trong nhiều lĩnh vực khác nhau, đồng thời tự động hóa các tác vụ phức tạp.

Học sâu và trí tuệ nhân tạo

Học sâu và trí tuệ nhân tạo (AI) đang phát triển nhanh chóng trong lĩnh vực khoa học máy tính, mang lại những đột phá đáng kể Sự bùng nổ ứng dụng AI trong cuộc sống hàng ngày thể hiện rõ qua các công nghệ như nhận dạng khuôn mặt, xe tự lái, trợ lý ảo và dịch máy.

Học sâu, một nhánh của trí tuệ nhân tạo, sử dụng mạng nơ-ron nhân tạo (ANN) để học hỏi từ lượng lớn dữ liệu và thực hiện các nhiệm vụ phức tạp Khác với mô hình học máy truyền thống, học sâu áp dụng nhiều lớp mạng nơ-ron xếp chồng, giúp mô hình nhận diện các đặc trưng trừu tượng và cấp cao hơn từ dữ liệu.

Trí tuệ nhân tạo (AI) là lĩnh vực nghiên cứu đa dạng, tập trung vào việc phát triển các hệ thống máy tính có khả năng mô phỏng trí thông minh của con người AI bao gồm nhiều lĩnh vực con như học máy, học sâu, xử lý ngôn ngữ tự nhiên và thị giác máy tính.

Học sâu đóng vai trò quan trọng trong trí tuệ nhân tạo, cho phép các mô hình học hỏi từ dữ liệu một cách hiệu quả và chính xác Công nghệ này giúp giải quyết những vấn đề phức tạp mà các phương pháp truyền thống không thể xử lý, từ đó nâng cao khả năng của hệ thống AI Nhờ vào học sâu, các hệ thống AI ngày càng trở nên thông minh hơn và có khả năng thực hiện nhiều nhiệm vụ tương tự như con người.

Học sâu và trí tuệ nhân tạo đang tạo ra những biến đổi mạnh mẽ cho xã hội và nền kinh tế, với ảnh hưởng rõ rệt trong nhiều lĩnh vực như giao thông, sản xuất, y tế, giáo dục và giải trí.

Hình 2 1 Mối quan hệ giữa học sâu và trí tuệ nhân tạo [1].

Mạng thần kinh tích chập

Trong lĩnh vực trí tuệ nhân tạo (AI), mạng nơ-ron tính chập (CNN) là công nghệ then chốt cho xử lý hình ảnh và nhận dạng đối tượng Được phát triển dựa trên cấu trúc và chức năng của thị giác con người, CNNs cho thấy khả năng vượt trội trong việc trích xuất đặc trưng và phân loại các mẫu phức tạp từ hình ảnh.

Tích chập là một kỹ thuật quan trọng trong xử lý ảnh, thường được áp dụng trong các phép toán như làm mịn, làm sắc nét và trích xuất biên cạnh ảnh.

Cơ chế của tích chập được miêu tả như sau: ĐỒ ÁN TỐT NGHIỆP 7

Hình 2 2 Hình ảnh minh họa về tính chập [2]

Bức ảnh có thể được hình dung như một ma trận điểm ảnh, trong đó mỗi điểm ảnh được biểu thị bằng 0 (màu đen) hoặc 1 (màu trắng) Ma trận kernel, hay còn gọi là bộ lọc, là một ma trận nhỏ (ví dụ: 3x3) chứa các giá trị trọng số và được áp dụng lên ảnh đầu vào để thực hiện phép tích chập Điểm neo xác định vị trí trung tâm của ma trận kernel trên ảnh, thường được đặt tại tâm để đảm bảo tính đối xứng Phép tích chập được thực hiện bằng cách di chuyển ma trận kernel qua ảnh đầu vào, tại mỗi vị trí, các giá trị trong ma trận kernel được nhân với các giá trị điểm ảnh tương ứng Kết quả của phép nhân được cộng lại và lưu trữ tại vị trí trung tâm của ma trận kernel trong ma trận đặc trưng Sau khi hoàn thành, ta thu được một ma trận đặc trưng nhỏ hơn ảnh đầu vào, với mỗi giá trị thể hiện mức độ kích hoạt của các đặc trưng cục bộ tại vị trí tương ứng.

Mạng thần kinh tích chập (CNN) là một loại mạng nơ-ron tiến truyền có từ 20 đến

Mạng nơ-ron tích chập (CNN) gồm 30 lớp, sử dụng hàm kích hoạt ReLU để đảm bảo tính phi tuyến cho dữ liệu, giúp duy trì các đặc điểm quan trọng Ở cuối mạng, lớp kết nối đầy đủ thực hiện phân loại dữ liệu Điểm nổi bật của CNN so với các mạng nơ-ron khác là sự hiện diện của các lớp tích chập và lớp gộp, tạo ra khả năng xử lý hình ảnh hiệu quả hơn.

Hình 2 3 Kiến trúc của mạng CNN [2]

Lớp tích chập là lớp đầu tiên trong mạng nơ-ron tích chập, có nhiệm vụ trích xuất đặc trưng từ hình ảnh đầu vào bằng cách áp dụng bộ lọc lên các vùng điểm ảnh Lớp này duy trì mối quan hệ giữa các điểm ảnh bằng cách học các đặc trưng từ các ô vuông nhỏ trong dữ liệu Quá trình trích xuất sử dụng hai đầu vào: ma trận hình ảnh và bộ lọc, để tạo ra ma trận đặc trưng Ma trận này được hình thành từ bộ lọc trượt qua từng điểm ảnh của lớp trước, kích hoạt các nơ-ron và thu thập kết quả vào ma trận đặc trưng.

Lớp gộp trong mạng nơ-ron tích chập (CNN) giúp giảm kích thước bản đồ đặc trưng và tối ưu hóa tốc độ xử lý bằng cách giảm số lượng tham số mà mạng cần xử lý Hai khía cạnh quan trọng của CNN là sự bất biến của vị trí, cho phép mạng nhận diện đối tượng bất kể vị trí của chúng, và tính tổng hợp, giúp mạng kết hợp thông tin từ nhiều đặc trưng khác nhau để cải thiện độ chính xác trong nhận diện.

Sự bất biến của vị trí trong nhận dạng đối tượng cho phép xác định sự hiện diện của đối tượng trong hình ảnh mà không bị ảnh hưởng bởi vị trí của nó Khi bộ lọc được trượt qua toàn bộ hình ảnh, vị trí trở nên không quan trọng Hơn nữa, lớp gộp còn cung cấp tính bất biến đối với các biến đổi như dịch chuyển, xoay và chia tỷ lệ, giúp cải thiện hiệu quả trong việc nhận diện đối tượng.

Tính tổng hợp trong mạng nơ-ron tích chập (CNN) cho phép mỗi bộ lọc tạo ra các bản vá cục bộ từ các đặc trưng cấp thấp, chuyển đổi chúng thành các biểu diễn cấp cao hơn Điều này có nghĩa là CNN xây dựng các cạnh từ pixel, hình dạng từ các cạnh, và cuối cùng hình thành các đối tượng phức tạp hơn từ các hình dạng.

Các phương pháp nhận dạng đối tượng

Nhận dạng đối tượng, hay còn gọi là nhận dạng vật lý, là quá trình nhận biết và phân biệt các đối tượng dựa trên các đặc điểm vật lý đặc trưng Trong lĩnh vực khoa học máy tính và trí tuệ nhân tạo, nhận dạng đối tượng đã trở thành một lĩnh vực nghiên cứu quan trọng, đặc biệt trong việc phát triển các hệ thống tự động nhận dạng hình ảnh và video.

Nhận dạng đối tượng là yếu tố thiết yếu trong thị giác máy tính, giúp máy móc "nhìn" và "hiểu" thế giới xung quanh Các thuật toán đóng vai trò quan trọng, tạo nền tảng cho hệ thống nhận dạng đối tượng hoạt động hiệu quả.

Các phương pháp nhận dạng đối tượng phổ biển hiện nay: a) R-CNN (Region-based Convolutional Neural Networks)

R-CNN là một dạng mở rộng của CNN, nơi các vùng đáng chú ý trong hình ảnh được xác định trước bằng các kỹ thuật phát hiện vùng (ví dụ như Selective Search) Sau đó, các vùng này được áp dụng các lớp tích chập để trích xuất đặc trưng và lớp kết nối đầy đủ để phân loại R-CNN cải thiện khả năng nhận dạng và tăng tốc quá trình bằng cách giảm số lượng vùng cần xử lý so với phương pháp truyền thống ĐỒ ÁN TỐT NGHIỆP 10

R-CNN kết hợp mạng thần kinh tích chập (CNN) để trích xuất đặc trưng và kỹ thuật phát hiện vùng (region proposal) nhằm xác định các vùng đối tượng trong hình ảnh Quá trình hoạt động của R-CNN diễn ra qua nhiều bước, bắt đầu từ việc tạo ra các đề xuất vùng, sau đó sử dụng CNN để trích xuất đặc trưng từ các vùng này, và cuối cùng áp dụng các phương pháp phân loại để nhận diện đối tượng.

R-CNN sử dụng kỹ thuật Selective Search để tạo ra các đề xuất vùng ứng viên trên hình ảnh trước khi áp dụng CNN Những đề xuất này xác định các khu vực có khả năng chứa đối tượng, giúp cải thiện hiệu quả của quá trình nhận diện.

Trích xuất đặc trưng là quá trình cắt các vùng đã được đề xuất từ hình ảnh gốc và đưa chúng vào mạng CNN để lấy các đặc trưng Những đặc trưng này sẽ đại diện cho các đối tượng trong từng vùng.

Phân loại và định vị trong R-CNN sử dụng các đặc trưng trích xuất từ mạng CNN, được đưa vào các lớp kết nối đầy đủ để phân loại đối tượng và dự đoán vị trí của chúng trên hình ảnh Sau khi hoàn tất quá trình phân loại, R-CNN thực hiện điều chỉnh vị trí của các hộp giới hạn (bounding boxes) dựa trên các dự đoán ban đầu nhằm nâng cao độ chính xác.

R-CNN kết hợp giữa các đề xuất vùng và mạng CNN, cho phép xử lý hình ảnh có nhiều đối tượng với kết quả phân loại và định vị chính xác Tuy nhiên, nhược điểm lớn nhất của R-CNN là tốc độ chậm do phải tính toán riêng cho từng đề xuất vùng Điều này đã được cải thiện với sự ra đời của các phiên bản nhanh hơn như Fast R-CNN và Faster R-CNN.

YOLO là một phương pháp tiên tiến trong việc nhận dạng đối tượng thời gian thực

YOLO sử dụng một mạng nơ-ron đơn giản nhưng hiệu quả để dự đoán hộp giới hạn và lớp của các đối tượng trong toàn bộ bức ảnh chỉ với một lần chạy Với khả năng đáp ứng nhanh, YOLO rất phù hợp cho các ứng dụng yêu cầu nhận diện nhanh chóng như xe tự lái và giám sát video.

YOLO là một phương pháp nhận dạng đối tượng nổi bật với khả năng dự đoán các vùng đối tượng và lớp của chúng chỉ trong một lần chạy mạng, khác với các phương pháp truyền thống như R-CNN cần nhiều lần chạy cho từng vùng đề xuất Ưu điểm của YOLO bao gồm độ chính xác cao trong việc nhận dạng đối tượng trên ảnh và video.

YOLO cho phép nhận dạng đối tượng trong thời gian thực nhờ vào việc chỉ cần một lần chạy mạng cho toàn bức ảnh, điều này rất phù hợp cho các ứng dụng như giám sát video và xe tự lái.

YOLO tối ưu hóa hiệu suất bằng cách giảm số lượng tham số và lượng tính toán so với các phương pháp truyền thống như R-CNN, mang lại giải pháp tính toán hiệu quả hơn Bên cạnh đó, kiến trúc của YOLO đơn giản và dễ hiểu, giúp việc triển khai và sử dụng trong các ứng dụng thực tế trở nên thuận tiện.

Kể từ khi ra mắt, YOLO đã trải qua nhiều phiên bản nâng cấp như YOLOv2, YOLOv3 và YOLOv4, mỗi phiên bản đều cải thiện đáng kể về độ chính xác và tốc độ YOLO vẫn là một trong những công cụ mạnh mẽ và được ứng dụng phổ biến trong cộng đồng nghiên cứu và thực tiễn của Thị giác máy tính hiện đại.

Mask R-CNN là một phiên bản nâng cao của R-CNN, được thiết kế để nhận diện và phân đoạn đối tượng hiệu quả hơn Nó không chỉ xác định các khu vực của đối tượng mà còn tạo ra mặt nạ cho từng đối tượng, từ đó nâng cao độ chính xác trong quá trình phân đoạn.

Hình 2 6 Kiến trúc cơ bản của mạng Mask R-CNN [5] Đặc điểm chính của Mask R-CNN:

Phân đoạn đối tượng (Instance Segmentation) là tính năng nổi bật của Mask R-CNN, cho phép không chỉ dự đoán vị trí và phân loại đối tượng mà còn tạo ra mặt nạ chi tiết cho từng đối tượng trong hình ảnh Điều này giúp phân biệt các đối tượng gần nhau hoặc chồng lấn trong cùng một bức ảnh, nâng cao độ chính xác trong việc nhận diện và phân tích hình ảnh.

Giới thiệu về drone

Drone tứ cánh, hay quadcopter, là máy bay không người lái (UAV) với bốn cánh quạt đối xứng, cho phép bay linh hoạt Thiết kế đơn giản và khả năng điều khiển ổn định giúp quadcopter ngày càng được ưa chuộng trong nhiều lĩnh vực như giải trí, nhiếp ảnh, công nghiệp và nghiên cứu khoa học.

Nguyên lý hoạt động của quadcopter bao gồm 3 yếu tố sau:

- Lực nâng: Khi các cánh quạt quay, chúng tạo ra lực nâng theo hướng ngược chiều, giúp quadcopter bay lên

- Mô-men: Tốc độ quay khác nhau của các cánh quạt tạo ra mô-men, giúp quadcopter xoay theo các hướng mong muốn (như trái, phải, tiến, lùi)

Bộ điều khiển bay của quadcopter sử dụng dữ liệu từ các cảm biến để điều chỉnh liên tục tốc độ động cơ, đảm bảo máy bay không người lái bay ổn định và cân bằng.

Drone được xem như một đối tượng tự do với 6 bậc tự do, điều này có nghĩa là có

Trong việc mô tả vị trí của Drone trong không gian, 6 biến x, y, z, φ, θ, ψ đóng vai trò thiết yếu trong việc điều chỉnh chuyển động tịnh tiến và xoay của Quadcopter Các biến x, y, z thể hiện khoảng cách từ trung tâm của Drone đến gốc tọa độ ban đầu theo các trục tương ứng, trong khi các góc Euler ϕ, θ, ψ mô tả các góc quay của Drone: góc ϕ là góc roll (quay theo trục x), góc θ là góc pitch (quay theo trục y), và góc ψ là góc yaw (quay theo trục z) Góc roll và pitch thường được gọi là góc nghiêng của Drone, trong khi góc yaw xác định hướng mũi của Drone Trong tình huống chuyển động thẳng, độ cao của Drone so với mặt đất được xác định, trong khi x và y xác định vị trí của Drone trong không gian.

Hình 2 8 Mô tả chuyển động của quadcopter [7]

Động lực học và ma trận chuyển đổi trục của drone

Nguyên tắc hoạt động cơ bản của quadcopter là sử dụng sức đẩy từ luồng không khí do cánh quạt tạo ra để di chuyển lên và xuống Bằng cách điều chỉnh tốc độ của từng động cơ, quadcopter có thể thay đổi hướng di chuyển Để mô tả chuyển động của quadcopter khung cứng, cần sử dụng 2 hệ quy chiếu với 6 bậc tự do.

𝑒 𝑒 là hệ quy chiếu quán tính của trái đất và 𝑒 𝑞 là hệ quy chiếu của khung quadcopter

Hình 2 9 Hệ quy chiếu [8] ĐỒ ÁN TỐT NGHIỆP 17

Quadrocopter được định hướng bởi 3 góc Euler qua ma trận xoay R:

Các góc Euler giữa hệ vật và hệ quán tính 𝜙, 𝜃, 𝜓:

Lực sinh ra cho các rotor là 𝐹 𝑖 = 𝑏 𝜔 𝑖 2 , i=1,2,3,4 (tượng đương với 4 motor) Khi đó lực nâng cho cả quadcopter là:

Mô hình miêu tả gia tốc:

Ma trận quán tính 𝐼 𝑅 = (𝐼 𝑋 , 𝐼 𝑌 , 𝐼 𝑍 ), moment quay M và moment quay 𝑀 𝑞 :

Momen xoay 𝑀 𝑞 được xác định bởi các vận tốc quay 𝑢 1 = 𝑇, 𝑢 2, 𝑢 3, 𝑢 4, tương ứng với các đơn vị momen xoắn của roll, pitch, yaw Vận tốc quay tổng quát 𝑢 𝑇 = (𝑢 1, 𝑢 2, 𝑢 3, 𝑢 4) cùng với vận tốc góc 𝜔 𝑖 sẽ cho phép chúng ta tính toán momen xoay một cách chính xác.

Từ (2.3), (2.4), (2.5), ta có phương trình động lược của quadcopter:

Tính toán khí động học mô tả tác động quay của cánh quạt trong việc nâng trọng lượng của quadcopter Công thức lực đẩy được xác định bởi các thông số: 𝑇 𝑃 (lực đầy của cánh quạt), S (diện tích cánh quạt, tính bằng m²), D (mật độ không khí, tính bằng kg/m³) và V1 (vận tốc dòng khí của cánh quạt, tính bằng m/s).

Mà lực đẩy 𝑇 𝑃 bằng trọng lượng của một cánh quạt WP = 𝑚𝑔

Bộ lọc Kalman

Bộ lọc Kalman là công cụ thiết yếu trong việc điều khiển và ước lượng trạng thái của quadcopter và các hệ thống UAV khác Nhờ khả năng xử lý nhiễu hiệu quả, bộ lọc Kalman đã được áp dụng rộng rãi trong các ứng dụng thời gian thực và điều khiển tự động, giúp cải thiện độ chính xác của dự đoán.

Quadcopters sử dụng nhiều cảm biến để theo dõi vị trí, hướng và tốc độ, nhưng dữ liệu từ các cảm biến thường bị nhiễu và không chính xác do nhiều yếu tố như dao động của cơ thể và tác động từ môi trường Bộ lọc Kalman giúp cải thiện độ chính xác của dự đoán vị trí và hướng bay của quadcopter bằng cách tích hợp dữ liệu từ cảm biến với mô hình dự đoán chuyển động.

The Kalman filter integrates data from GPS, IMU (Inertial Measurement Unit), and other sensors to estimate the position and orientation of a quadcopter It effectively reduces noise and errors in measurement data, thereby enhancing the accuracy of the estimates.

Bộ lọc Kalman đóng vai trò quan trọng trong việc dự đoán và ước lượng trạng thái của quadcopter trong quá trình điều khiển tự động, từ đó điều chỉnh tốc độ quay của các động cơ và duy trì sự ổn định cho quadcopter trong không gian.

Vector trạng thái của quadcopter tại thời điểm k, ký hiệu là x 𝑘, bao gồm các thông số như vị trí, vận tốc, gia tốc và góc quay Vector điều khiển tại thời điểm k được ký hiệu là 𝑢 𝑘 Ma trận chuyển đổi trạng thái 𝐴 𝑘 mô tả sự chuyển đổi từ thời điểm k-1 đến k, trong khi ma trận điều khiển 𝐵 𝑘 giúp dự đoán trạng thái tiếp theo Công thức dự đoán trạng thái tiếp theo được thể hiện qua phương trình: x 𝑘 = 𝐴 𝑘 𝑥 𝑘−1 + 𝐵 𝑘 𝑢 𝑘.

Hình 2 10 Sơ đồ bộ lọc Kalman trong quadcopter

Bằng một số phương pháp đo lường, tại thời điểm k, một quan sát 𝑍 𝑘 về trạng thái thực 𝑥 𝑘 được thực hiện theo:

H là ma trận biến đổi ánh xạ các tham số vectơ trạng thái, 𝑄 𝑘 là nhiễu quá trình

Bộ điều khiển PID

Bộ điều khiển PID là một trong những giải pháp phản hồi phổ biến nhất, được ứng dụng rộng rãi trong điều khiển quadcopter nhờ vào thiết kế đơn giản và dễ triển khai Nó đã chứng minh hiệu quả cao qua cả mô phỏng và thử nghiệm thực tế Lợi thế lớn nhất của bộ điều khiển này là không yêu cầu kiến thức sâu về động lực học, chỉ cần dựa vào phương pháp phản hồi để xác định và điều chỉnh sai số giữa giá trị mong muốn và giá trị đo được thông qua các công thức tính toán phù hợp.

Với Err là sai số, Setpoint là giá trị mong muốn và Feedback là phản hồi thực tế của hệ thống

Hình 2 11 Sơ đồ khối của bộ PID

Bộ điều khiển PID là yếu tố then chốt trong việc duy trì sự ổn định bay cho quadcopter Các thành phần chính của nó bao gồm: tỉ lệ (P) - phản hồi theo sai lệch hiện tại giữa giá trị mong muốn và giá trị thực tế, với hệ số KP, độ lợi lớn giúp phản hồi mạnh mẽ nhưng dễ gây dao động; tích phân (I) - phản hồi theo tích lũy sai lệch theo thời gian, ký hiệu là Ki, giúp loại bỏ sai lệch ổn định nhưng cần điều chỉnh hợp lý để tránh tích lũy quá mức; và vi phân (D) - dự đoán sai lệch trong tương lai dựa trên tốc độ thay đổi sai lệch hiện tại, ký hiệu là Kd, giúp phản ứng nhanh với thay đổi đột ngột nhưng có thể gây nhiễu cao tần Thông số điều khiển u(t) của hệ thống và sai số e(t) giữa giá trị mong muốn và thực tế được mô tả qua công thức bộ điều khiển PID cho quadcopter.

Hiện nay, nhiều bộ điều khiển bay đã tích hợp bộ điều khiển PID để điều khiển và thăng bằng cho quadcopter và các loại drone khác Các công nghệ tự động tinh chỉnh độ lợi của PID, như chế độ bay Autotune của bộ điều khiển bay Pixhawk, giúp tự động thích ứng với đặc tính môi trường và điều chỉnh các thông số của PID một cách hiệu quả.

Bộ điều khiển bay

Bộ điều khiển bay, hay còn gọi là "Flight Controller", là bộ phận trung tâm và được coi là "bộ não" của quadcopter, chịu trách nhiệm quản lý mọi hoạt động của máy bay không người lái Nó hoạt động như một trung tâm xử lý thông tin, tiếp nhận dữ liệu từ các cảm biến, xử lý thông tin và phát tín hiệu điều khiển để quadcopter thực hiện các thao tác bay như cất cánh, hạ cánh, di chuyển, xoay, tiến và lùi.

Hình 2 12 Bộ điều khiển bay Dshot ĐỒ ÁN TỐT NGHIỆP 22

Hình 2 13 Bộ điều khiển bay Pixhawk 2.4.8

Bộ điều khiển bay bao gồm các thành phần chính sau:

Cảm biến của drone bao gồm gia tốc kế, con quay hồi chuyển, áp kế, GPS và nhiều loại cảm biến khác, giúp thu thập thông tin quan trọng về vị trí, hướng, tốc độ và độ cao trong suốt quá trình bay Người dùng có thể lựa chọn sử dụng cảm biến mua ngoài hoặc tận dụng các cảm biến có sẵn trong bộ điều khiển.

Bộ xử lý, được coi là "trái tim" của bộ điều khiển bay, đóng vai trò quan trọng trong việc xử lý dữ liệu từ các cảm biến Nó thực hiện các thuật toán điều khiển và phát ra tín hiệu điều khiển phù hợp, quyết định các hoạt động của drone.

Bộ điều khiển động cơ nhận tín hiệu từ bộ xử lý để điều chỉnh tốc độ quay của động cơ, qua đó quyết định và điều chỉnh các chuyển động của drone theo yêu cầu Chức năng này sử dụng tín hiệu băm xung gửi đến các driver ESC nhằm kiểm soát hoạt động của động cơ.

Giao tiếp giữa drone và bộ điều khiển từ xa, máy tính hoặc thiết bị di động khác là rất quan trọng, giúp người điều khiển giám sát và điều khiển các hoạt động bay một cách hiệu quả và an toàn Kết nối này thường sử dụng các chuẩn radio hoặc wifi để đảm bảo sự liên lạc ổn định với máy tính.

Hình 2 14 Cấu tạo của 1 bộ điều khiển bay KK2.1.5 cơ bản

Bộ điều khiển bay là thiết bị quan trọng điều khiển mọi hoạt động của drone, bao gồm cất cánh, hạ cánh và di chuyển theo lệnh người dùng Nó đảm bảo sự ổn định trong quá trình bay, kháng cự lại nhiễu động môi trường, giúp drone bay mượt mà và chính xác Ngoài ra, bộ điều khiển còn tích hợp các tính năng tự động như bay theo GPS, quay trở lại điểm xuất phát và hạ cánh khẩn cấp Cuối cùng, nó cho phép cập nhật phần mềm nhằm cải thiện hiệu suất và bổ sung tính năng mới, tạo điều kiện thuận lợi cho người dùng trong quá trình điều khiển drone.

Máy tính NVIDIA Jetson Nano

Máy tính nhúng (Embedded Computer) là thiết bị được thiết kế đặc biệt để thực hiện các chức năng cụ thể trong các hệ thống hoặc thiết bị khác Khác với máy tính thông thường, máy tính nhúng không có giao diện người dùng đầy đủ như màn hình, bàn phím hay chuột, mà thay vào đó, nó giao tiếp trực tiếp với các phần cứng khác trong hệ thống.

Cấu tạo cơ bản của một máy tính nhúng như sau:

Vi xử lý, bao gồm Microprocessor và Microcontroller, là thành phần cốt lõi của máy tính nhúng, đảm nhiệm vai trò thực hiện các phép tính và xử lý dữ liệu Microprocessor thường được lựa chọn cho các ứng dụng cần hiệu suất cao và khả năng đa nhiệm, trong khi Microcontroller thường được sử dụng cho các ứng dụng nhúng đơn giản hơn, với khả năng xử lý thấp hơn và tiêu thụ điện năng tiết kiệm hơn.

Memory consists of RAM (Random Access Memory) for temporarily storing data during program execution, and Flash or EEPROM (Electrically Erasable Programmable Read-Only Memory) for long-term storage of programs and data.

Giao diện kết nối rất quan trọng trong việc liên kết các thiết bị ngoại vi như cảm biến, mạch điều khiển và màn hình thông qua các giao thức như UART, SPI và I2C Bên cạnh đó, các giao diện Ethernet, Wi-Fi và Bluetooth cũng đóng vai trò thiết yếu trong việc kết nối với mạng và giao tiếp hiệu quả với các thiết bị khác.

Các thiết bị ngoại vi bao gồm cảm biến như cảm biến nhiệt độ, áp suất và gia tốc, giúp thu thập dữ liệu từ môi trường Ngoài ra, bộ điều khiển như motor driver và LED driver được sử dụng để điều khiển các thiết bị hoặc thực hiện các hành động cụ thể.

- Nguồn cấp: Điện áp và dòng điện cung cấp cho máy tính nhúng thông qua nguồn ngoài hoặc pin nội bộ

Hình 2 16 Cấu tạo của máy tính nhúng [9]

Jetson Nano là máy tính nhúng mạnh mẽ do NVIDIA phát triển, hỗ trợ phát triển ứng dụng trí tuệ nhân tạo (AI) và hệ thống nhúng thông minh Với khả năng xử lý GPU vượt trội và tích hợp AI, Jetson Nano trở thành lựa chọn lý tưởng cho nhà phát triển, học sinh và sinh viên trong việc xây dựng các mô hình ứng dụng IoT AI phổ biến.

Hình 2 17 NVIDIA Jetson Nano ĐỒ ÁN TỐT NGHIỆP 26

Jetson Nano được phát triển nhằm đơn giản hóa việc xây dựng và triển khai các ứng dụng AI phức tạp Với GPU NVIDIA Maxwell và 128 lõi CUDA, thiết bị này mang lại hiệu suất tính toán mạnh mẽ, hỗ trợ huấn luyện mô hình và xử lý dữ liệu AI trong một kích thước nhỏ gọn.

Hình 2 18 Cấu tạo của Jetson nano [10]

Nền tảng này hỗ trợ nhiều framework AI phổ biến như TensorFlow, PyTorch, Caffe và MXNet, giúp các nhà phát triển dễ dàng triển khai mô hình AI và ứng dụng nhúng thông minh Jetson Nano nổi bật với khả năng xử lý video và hình ảnh 4K, tạo điều kiện thuận lợi cho việc phát triển ứng dụng nhận diện hình ảnh, xử lý video và xe tự lái.

Jetson Nano sở hữu nhiều kết nối I/O đa dạng như USB 3.0, Ethernet, HDMI và GPIO, cho phép tích hợp và tương tác với nhiều thiết bị ngoại vi khác nhau Điều này biến Jetson Nano thành một nền tảng linh hoạt và mở rộng, phù hợp cho nhiều ứng dụng từ robotics đến IoT và AI edge computing.

Hình 2 19 Sơ đồ chân của Jetson nano

Jetson Nano của NVIDIA là một nền tảng mạnh mẽ cho trí tuệ nhân tạo (AI) và hệ thống nhúng thông minh, với nhiều ứng dụng đa dạng trong các lĩnh vực khác nhau Một số ứng dụng chính của Jetson Nano bao gồm phát triển robot, xử lý hình ảnh, tự động hóa và các giải pháp IoT thông minh.

Jetson Nano là nền tảng lý tưởng cho việc phát triển các hệ thống nhận diện và phân loại hình ảnh Với khả năng nhận dạng khuôn mặt, biển số xe, và ứng dụng trong giám sát an ninh cũng như quản lý kho, Jetson Nano mang lại giải pháp hiệu quả cho nhiều lĩnh vực.

Jetson Nano là lựa chọn lý tưởng cho hệ thống giám sát thông minh nhờ khả năng xử lý video 4K Thiết bị này có khả năng phát hiện chuyển động, theo dõi đối tượng và nhận diện các sự kiện đặc biệt như hành vi nghi ngờ.

Học máy và AI edge computing với Jetson Nano mang đến nền tảng mạnh mẽ cho huấn luyện mô hình và triển khai AI tại biên mạng Thiết bị này lý tưởng cho các ứng dụng cần xử lý dữ liệu nhanh và phản hồi thời gian thực, như xe tự lái, robot di động và IoT.

Jetson Nano là một nền tảng mạnh mẽ cho robotics và xe tự lái, cho phép điều khiển các thiết bị tự động di chuyển Với khả năng xử lý đồ họa vượt trội, nó có thể thực hiện các nhiệm vụ phức tạp như điều khiển robot, xe tự lái và máy bay không người lái (UAV).

Jetson Nano là lựa chọn lý tưởng cho các ứng dụng IoT và nhúng thông minh nhờ khả năng tích hợp mạnh mẽ với cảm biến và thiết bị ngoại vi qua các giao tiếp như GPIO, I2C, và SPI.

Hình 2 20 Một số ứng dụng của Jetson nano vào thực tế

Tổng quan về MySQL

MySQL is an open-source relational database management system (RDBMS) that operates on a client-server model As a software or service, RDBMS is designed to create and manage databases by overseeing the relationships between them.

MySQL là một trong những phần mềm quản lý cơ sở dữ liệu quan hệ (RDBMS)

Với sự phổ biến vượt trội của MySQL, nhiều người dễ nhầm lẫn giữa RDBMS và MySQL Các ứng dụng web lớn như Facebook, Twitter, YouTube, Google và Yahoo! đều sử dụng MySQL để lưu trữ dữ liệu Ban đầu, MySQL chỉ được sử dụng hạn chế, nhưng hiện nay nó đã tương thích với nhiều hệ điều hành quan trọng như Linux, macOS, Microsoft Windows và Ubuntu.

Cơ sở dữ liệu (database) là tập hợp dữ liệu được tổ chức theo cấu trúc nhất định, tương tự như thư viện lưu trữ ảnh mà bạn sử dụng khi chụp ảnh tự sướng Dữ liệu trong cơ sở dữ liệu được sắp xếp thành bộ dữ liệu chung, giống như bảng tính, với các "bảng" có mối liên hệ với nhau Điều này giải thích cho thuật ngữ "Relational" trong RDBMS, chỉ ra rằng dữ liệu có sự kết nối Ngược lại, nếu phần mềm không hỗ trợ mô hình dữ liệu liên kết, nó được gọi là DBMS.

Hình 2 22 Cơ sở dữ liệu của MySql (hình ảnh minh họa) [11] ĐỒ ÁN TỐT NGHIỆP 30

Mã nguồn mở cho phép mọi người sử dụng và chỉnh sửa phần mềm theo nhu cầu cá nhân Người dùng có thể cài đặt và tùy chỉnh phần mềm, nhưng phải tuân theo các quy định của giấy phép GPL (GNU Public License) Bên cạnh đó, cũng có phiên bản thương mại của phần mềm, cung cấp quyền linh hoạt và hỗ trợ cao cấp cho người dùng.

Máy tính sử dụng phần mềm RDBMS được gọi là client, và để truy cập dữ liệu, chúng kết nối với máy chủ RDBMS, tạo thành mô hình "client-server".

MySQL Server là một hệ thống máy tính được cài đặt phần mềm MySQL, cho phép lưu trữ và quản lý dữ liệu, đồng thời cung cấp khả năng truy cập cho các máy khách.

Dữ liệu trong MySQL Server được tổ chức thành các bảng có mối quan hệ chặt chẽ với nhau MySQL Server nổi bật với tốc độ nhanh, tính an toàn và độ tin cậy cao Phần mềm MySQL hoàn toàn miễn phí và được phát triển, phân phối, cũng như hỗ trợ bởi Oracle Corporation.

MySQL client không chỉ là phần mềm MySQL của Oracle mà còn có thể là bất kỳ phần mềm nào có khả năng truy vấn MySQL server và nhận kết quả Một ví dụ điển hình của MySQL client là đoạn mã PHP script chạy trên máy tính hoặc cùng server để kết nối với cơ sở dữ liệu MySQL Ngoài ra, PhpMyAdmin cũng được xem là một MySQL client với giao diện người dùng thân thiện.

HỌC SÂU TRONG NHẬN DẠNG SỨ ĐIỆN

Tầm quan trọng của nhận dạng sứ điện

Hiện nay, IoT, trí tuệ nhân tạo AI và máy bay không người lái UAV đang được áp dụng rộng rãi trong nhiều lĩnh vực, từ văn phòng, cơ quan hành chính đến giám sát nông nghiệp và thiên tai Đường dây tải điện, hệ thống truyền tải năng lượng từ nguồn phát đến thiết bị tiêu thụ, thường được kiểm tra thủ công, gây nguy hiểm cho nhân viên do điện áp cao và yêu cầu chuyên môn cao Thay vào đó, UAV có thể tuần tra đường dây điện, phát hiện và chụp hình ảnh của sứ điện, giúp các chuyên gia đánh giá tình trạng và cần bảo trì Sứ điện, thiết bị quan trọng trong mạng lưới truyền tải, đảm bảo an toàn và khoảng cách giữa các đường dây và cột điện, với nhiều loại như gốm, polymer và thủy tinh.

Sứ cách điện là thiết bị quan trọng trong mạng lưới điện truyền tải, giúp cố định đường dây tải điện và tạo khoảng cách an toàn giữa các đường dây và cột Việc sử dụng sứ cách điện đảm bảo an toàn cho hệ thống điện, giảm thiểu rủi ro chạm điện và ngăn ngừa cháy nổ.

Nhận dạng sứ bằng SSD-Mobilenet-v1

3.2.1 Giới thiệu về SSD-Mobilenet-v1

SSD-Mobilenet-v1 là một mô hình phát hiện đối tượng kết hợp giữa SSD (Single ĐỒ ÁN TỐT NGHIỆP 32

Shot MultiBox Detector) và MobileNet v1, được thiết kế để đạt hiệu suất cao trên các thiết bị có tài nguyên tính toán hạn chế, như điện thoại di động

MobileNet v1 is a lightweight convolutional neural network designed for efficient operation on mobile devices It employs depthwise separable convolutions to reduce the number of parameters and computations compared to traditional CNNs.

SSD (Single Shot MultiBox Detector) là phương pháp phát hiện đối tượng hiệu quả, không cần bước đề xuất vùng Phương pháp này tận dụng nhiều cấp độ bản đồ đặc trưng từ mạng cơ sở để nhận diện các đối tượng với kích thước đa dạng.

Các tính năng chính của SSD-Mobilenet-v1

Phát hiện chỉ với một lần quan sát (Single Shot Detection - SSD) là một phương pháp tiên tiến trong nhận diện đối tượng, loại bỏ giai đoạn đề xuất vùng như trong các mô hình R-CNN và Faster R-CNN SSD dự đoán trực tiếp các đối tượng thông qua điểm tương thích lớp và độ lệch của hộp cho một tập hợp các hộp giới hạn mặc định, thực hiện tất cả trong một lượt duy nhất, từ đó mang lại tên gọi "Single Shot".

Bản đồ đặc trưng đa tỷ lệ trong SSD cho phép phát hiện hiệu quả các vật thể có kích thước khác nhau bằng cách sử dụng nhiều bản đồ từ các lớp mạng khác nhau Các lớp thấp hơn tập trung vào chi tiết của các đối tượng nhỏ, trong khi các lớp cao hơn cung cấp bối cảnh cho các đối tượng lớn hơn.

Hộp mặc định (Default Boxes) là các hộp neo với tỷ lệ khung hình và tỷ lệ khác nhau, được gán cho từng ô trong bản đồ đặc trưng Trong quá trình đào tạo, các hộp này được khớp với các hộp nhãn (Ground truth boxes) dựa trên sự chồng chéo Jaccard và các điều chỉnh học được để phù hợp hơn với hình dạng của đối tượng.

Khai thác tiêu cực cứng (Hard Negative Mining) là phương pháp giúp xử lý sự mất cân bằng giữa mẫu dương và mẫu âm trong các bài toán nhận diện Bằng cách chọn những mẫu âm tính khó khăn nhất, SSD có thể huấn luyện mô hình một cách hiệu quả hơn, từ đó nâng cao độ tin cậy và độ chính xác của nó.

Tăng cường dữ liệu là một kỹ thuật quan trọng trong SSD, giúp cải thiện độ chính xác của mô hình bằng cách sử dụng các phương pháp như cắt xén ngẫu nhiên, thay đổi kích thước và biến dạng trắc quang SSD-Mobilenet-v1 nổi bật với khả năng mạnh mẽ nhờ vào những kỹ thuật này.

• Tốc độ: SSD được biết đến với tốc độ và hiệu quả, khiến nó phù hợp với các ứng dụng thời gian thực

• Tính đơn giản: Cách tiếp cận một giai đoạn giúp đơn giản hóa quy trình phát hiện, giảm độ phức tạp và thời gian suy luận

Bằng cách kết hợp dự đoán từ nhiều bản đồ tính năng và sử dụng các hộp mặc định, SSD đạt được độ chính xác cao cho nhiều kích thước và hình dạng đối tượng khác nhau.

Hình 3 1 Ví dụ về các mô hình nhận dạng một giai đoạn và hai giai đoạn [12]

3.2.2 Cách thức hoạt động của SSD-Mobilenet-v1 ĐỒ ÁN TỐT NGHIỆP 34

SSD sử dụng mạng MobileNet để trích xuất đặc trưng từ ảnh đầu vào, với các feature maps được lấy từ các lớp khác nhau Các lớp gần đầu vào có độ phân giải cao, giúp phát hiện đối tượng nhỏ, trong khi các lớp gần đầu ra có độ phân giải thấp hơn nhưng chứa các đặc trưng trừu tượng, phù hợp cho việc phát hiện đối tượng lớn.

SSD sử dụng các feature maps từ nhiều lớp khác nhau để dự đoán bounding boxes và class scores, với mỗi feature map chịu trách nhiệm phát hiện đối tượng ở một kích thước cụ thể Các lớp tích xử lý các feature maps này, và tại mỗi vị trí trong feature map, SSD đặt các default boxes với nhiều tỷ lệ và kích thước khác nhau Những default boxes này giúp dự đoán vị trí và kích thước của các đối tượng trong ảnh Trong quá trình huấn luyện, các default boxes được so khớp với các hộp nhãn dựa trên độ chồng lấn (IoU - Intersection over Union).

Hình 3 2 Cách thức phân chia feature map để nhận diện các hình ảnh với những kích thước khác nhau [14]

Khi thực hiện suy luận, SSD áp dụng thuật toán Non-Maximum Suppression (NMS) để loại bỏ các bounding boxes trùng lặp, giữ lại những box có độ tin cậy cao nhất cho mỗi đối tượng Với kiến trúc tối ưu và chiến lược huấn luyện hiệu quả, SSD-Mobilenet-v1 mang đến giải pháp phát hiện đối tượng nhanh chóng và hiệu quả, phù hợp cho các ứng dụng thời gian thực trên thiết bị di động.

3.2.3 Kiến trúc mạng SSD-Mobilenet-v1

Hình 3 3 Kiến trúc của SSD-Mobilenet-v1 [15]

Mạng SSD gồm ba phần chính:

• Xương (Backbone): Một mạng nơ-ron tích chập tổng hợp và tạo thành các đặc điểm hình ảnh ở các mức độ chi tiết khác nhau

• Cổ (Neck): Một loạt các lớp để trộn và kết hợp các tính năng hình ảnh để chuyển chúng tới dự đoán

Sử dụng các tính năng từ cổ và thực hiện các bước dự đoán hộp, lớp, kiến trúc SSD-Mobilnet-v1 bao gồm 46 lớp tích chập (convolutional layer).

Mạng nền tảng Mobilenet bao gồm 28 lớp tích chập, trong đó có 13 lớp tích chập chiều sâu (Depthwise Convolution) thực hiện phép tích chập độc lập trên từng kênh đầu vào, và 13 lớp tích chập điểm (Pointwise Convolution) sử dụng phép tích chập 1x1 để kết hợp các kết quả từ bước depthwise convolution Ngoài ra, mạng còn có 2 lớp đầu vào và đầu ra.

• 6 lớp tích chập bổ sung đặc trưng (extra feature layer) SSD: Conv11 (32x32), Conv13 (16x16), Conv14 (8x8), Conv15 (4x4), Conv16 (2x2), Conv17(1x1)

The SSD architecture consists of 12 convolutional layers that generate feature maps, each of which is supplemented by two prediction layers: location heads for bounding box offsets and classification heads for label scores.

3.2.4 Các hàm Loss của SSD (Loss function)

Hàm mất mát SSD bao gồm: ĐỒ ÁN TỐT NGHIỆP 36

• Localization loss chỉ xét trên các positive matching(iPos)giữa predicted bounding box với ground truth bounding box

 − chính là tổng khoảng cách giữa predicted box ( )p và ground truth box ( )g trên 4 offsets x y w h, , , x y ,

( , ) log( ) log( ) k k i i conf ij i Pos i Neg

• Việc dự báo nhãn sẽ tương đồng như một bài toán classification với log( ) k k i ij i Pos x c

Trong trường hợp dự đoán không chứa vật thể (negative match prediction), vùng dự báo sẽ chỉ có một nhãn duy nhất là 0 Điều này cho thấy rằng bounding box đã được xác định không có vật thể, do đó xác suất xảy ra nhóm này là rất cao.

0 là x ij 0 =1 Do đó hàm softmax có dạng

- Loss: Loss là tổng của Localization loss và Confidence loss:

Trong đó: N là số lượng default box trùng với ground truth box, là weight của localization loss. ĐỒ ÁN TỐT NGHIỆP 37

GIẢI PHÁP NHẬN DẠNG TỤ SỨ

Tổng quan giải pháp

Để giải quyết bài toán nhận dạng sứ điện, có nhiều phương pháp khác nhau, bao gồm học máy truyền thống với SVM+HOG và các kỹ thuật học sâu như SSD, R-CNN, Faster R-CNN, và YOLO Trong báo cáo này, chúng tôi đã phát triển một giải pháp nhận dạng sứ điện bằng cách phân tích và cải tiến các phương pháp để tìm ra phương pháp tối ưu Chúng tôi đã lựa chọn mô hình SSD nhờ vào tốc độ và độ chính xác vượt trội so với YOLO và R-CNN Để tối ưu hóa hiệu suất của mô hình SSD, chúng tôi đã áp dụng các nền tảng tối ưu hóa và suy luận hiệu quả từ các nhà sản xuất trên máy tính nhúng.

Hệ thống giám sát sứ điện bắt đầu bằng việc đưa dữ liệu vào Roboflow để gán nhãn và điều chỉnh các tính năng như xoay ảnh, thay đổi độ phân giải và độ sáng Sau khi hoàn tất việc chuẩn bị dữ liệu huấn luyện và kiểm tra, mô hình huấn luyện sẽ được tích hợp vào drone Drone này có khả năng phát hiện sứ điện hư hại trên đường dây điện, đánh dấu vị trí GPS của sứ và đưa ra gợi ý như thay sứ mới hoặc làm sạch bụi bẩn.

Giải pháp chi tiết

Quá trình xử lý là nhận dạng sử có thể được thể hiện như sau:

Chúng tôi đã hợp tác với Tập đoàn Điện lực Việt Nam (EVN) để thu thập dữ liệu về sứ điện và sứ điện bị hư hỏng, bao gồm cả hình ảnh tự thu thập từ các đường dây điện.

Tiền xử lý dữ liệu và gán nhãn cho ảnh là bước quan trọng trong quy trình phát triển mô hình học máy Các bước tiền xử lý như xoay ảnh và điều chỉnh độ sáng tối được thực hiện trên nền tảng Roboflow, giúp cải thiện chất lượng dữ liệu đầu vào Gán nhãn chính xác cho ảnh cũng là yếu tố quyết định để đạt được kết quả tốt trong các ứng dụng nhận diện hình ảnh.

- Phân chia dữ liệu thành tập huấn luyện và tập kiểm tra

- Huấn luyện mô hình sử dụng dữ liệu trong tập huấn luyện

- Kiểm tra và đánh giá mô hình sử dụng ảnh chứa sứ điện bị hư hỏng, bẩn

Mô hình SSD-Mobilnet-v1 512x512 được áp dụng để phân loại tụ sứ từ khoảng cách xa, với độ phân giải hình ảnh 512x512, nhằm cải thiện khả năng nhận dạng tụ sứ.

Nhãn được phân thành ba loại: Su_22kV, Diry_Su22kV và Broken_Su22kV Sau khi hoàn tất việc dán nhãn, chúng ta sẽ chia tỉ lệ dữ liệu cho huấn luyện, xác thực và kiểm tra với tỉ lệ 80%-10%-10% Đặc biệt, ảnh dùng cho kiểm tra phải là những ảnh chưa từng xuất hiện trong tập huấn luyện và tập xác thực.

Hình ảnh sẽ trải qua quá trình tiền xử lý, bao gồm các bước như xoay ảnh, điều chỉnh kích thước, chuyển đổi sang grayscale, tự động điều chỉnh độ tương phản, và cắt ảnh thành các mảnh nhỏ.

Hình 4 2 Thông số tiền xử lý cho bộ dataset

Sau khi hoàn tất quá trình gán nhãn, dữ liệu sẽ được xuất ra theo định dạng Pascal VOC Dữ liệu này sẽ được tổ chức theo cấu trúc cây, đảm bảo tính logic và dễ dàng truy cập.

Hình 4 3 Cấu trúc dữ liệu của bộ dữ liệu sau khi xuất từ RoboFlow

Dữ liệu sẽ sau đó sẽ được đưa lên Google Drive, và mô hình sẽ được huấn luyện trên Google Collab

ImageSets Main train.txt trainval.txt val.txt test.txt JPEG Images anhtusu1.jpg anhtusu2.jpg

Annotations anhtusu1.xml anhtusu2.xml lables.txt ĐỒ ÁN TỐT NGHIỆP 40

Hình 4 5 Cấu hình của Google Collab (GPT T4, Ram 16gb Disk 78gb)

TensorRT là thư viện do NVIDIA phát triển, giúp tăng tốc độ suy luận và giảm độ trễ trên các GPU của NVIDIA Thư viện này có khả năng cải thiện tốc độ inference từ 2 đến 4 lần trong thời gian thực và nhanh hơn 30 lần so với hiệu suất của CPU.

TensorRT sẽ thực hiện 5 loại tối ưu để tăng hiệu suất inference:

• Precision Calibration: điều chỉnh độ chính xác các tham số về dạng số nguyên để giảm độ chính xác nhưng tăng tốc độ ĐỒ ÁN TỐT NGHIỆP 41

• Layer & Tensor Fusion: giảm số lớp bằng cách kết hợp các lớp theo chiều dọc hoặc chiều ngang

Kernel auto-tuning là quá trình tối ưu hóa, tự động điều chỉnh các tham số và cấu hình của hạt nhân, nhằm đạt hiệu suất tối ưu cho ứng dụng hoặc khối lượng công việc cụ thể Quá trình này liên quan đến việc điều chỉnh các quy trình tính toán cốt lõi được thực thi trên GPU hoặc bộ xử lý song song khác.

Dynamic Tensor Memory tối ưu hóa việc sử dụng bộ nhớ bằng cách chỉ phân bổ dung lượng cần thiết cho mỗi tensor trong suốt thời gian sử dụng của nó Điều này không chỉ giúp giảm dung lượng bộ nhớ mà còn cải thiện khả năng tái sử dụng bộ nhớ hiệu quả hơn.

Multiple Stream Execute cho phép xử lý song song nhiều luồng đầu vào Sau khi hoàn thành quá trình huấn luyện với số lượng epoch nhất định, mô hình nhận dạng sẽ được xuất sang TensorRT với định dạng onnx, dùng để thực hiện các tác vụ nhận dạng hình ảnh.

Hình 4 7 Đổi định dạng train sang định dạng TensorRT

Mô hình sau khi được chuyển đổi sang TensorRT sẽ được triển khai trên Jetson Nano để thực hiện nhận dạng video và hình ảnh, cũng như nhận dạng thời gian thực thông qua camera.

THIẾT KẾ PHẦN CỨNG

Yêu cầu thiết kế và quy trình vận hành của hệ thống

Các trục roll và pitch là những yếu tố quan trọng trong việc kiểm soát sự cân bằng của drone Để đảm bảo quá trình bay ổn định, cần thiết phải có bộ điều khiển bay, điều này tạo điều kiện thuận lợi cho việc nhận dạng và đánh giá tụ sứ diễn ra một cách suôn sẻ.

Để đảm bảo quá trình nhận dạng tụ sứ diễn ra hiệu quả, việc lựa chọn một bộ xử lý mạnh mẽ là rất quan trọng, giúp khởi chạy mô hình AI một cách mượt mà.

Giám sát điều khiển hệ thống là yếu tố quan trọng, yêu cầu một giao diện hiệu quả để quản lý và theo dõi hoạt động của drone trên bản đồ và hình ảnh Quá trình nhận dạng tụ sứ của quadcopter cũng cần được tích hợp để nâng cao khả năng hoạt động và độ chính xác trong giám sát.

Hình 5 1 Quy trình vận hành của hệ thống ĐỒ ÁN TỐT NGHIỆP 43

Lựa chọn, thiết kế phần cứng của Quadcopter

Cấu trúc cơ bản của một hệ quadcopter bao gồm khung, động cơ, cánh quạt, bộ điều khiển bay, bộ điều tốc điện tử (ESC), bộ thu phát, pin, cảm biến, camera và hệ truyền dữ liệu Để quadcopter có khả năng tự động bay, cần thiết kế thêm một máy tính nhúng, đóng vai trò là "bộ não" điều khiển toàn bộ hệ thống, từ đó tạo thành một máy bay tự điều khiển (Autonomous quadcopter).

5.2.1 Lựa chọn, lắp ráp khung quadcopter

Hình 5 2 Khung F450 phổ biến hiện nay

Khung của quadcopter là bộ phận chính, giữ tất cả các thành phần lại với nhau Thường được làm từ vật liệu nhẹ nhưng bền như sợi carbon, nhôm hoặc nhựa, khung có cấu trúc hình chữ X hoặc hình chữ H để tối ưu hóa sự cân bằng và phân bố trọng lượng.

Khung quadcopter F450 là lựa chọn phổ biến cho những người đam mê DIY và các nhà phát triển drone, đặc biệt trong các dự án nghiên cứu và học tập Với thiết kế bền bỉ và tính năng linh hoạt, khung F450 đáp ứng tốt nhu cầu của người dùng, từ việc lắp ráp đến việc tùy chỉnh cho các ứng dụng khác nhau.

- Thường được làm từ vật liệu composite như sợi thủy tinh và nhựa, cung cấp sự cân bằng giữa độ bền và trọng lượng nhẹ ĐỒ ÁN TỐT NGHIỆP 44

- Kích thước: khoảng 450 mm (từ tâm của motor đến tâm của motor đối diện)

- Tương đối nhẹ, thường khoảng 280 – 300gram không bao gồm các thành phần điện tử và pin

- Các phần của khung được thiết kế để dễ dàng lắp ráp và thay thế, phù hợp cho cả người mới bắt đầu và những người có kinh nghiệm

- Khung F450 có thể tích hợp nhiều loại thiết bị điện tử khác nhau như ESC, flight controller, pin và các cảm biến khác

5.2.2 Thiết kế, tính toán lựa chọn động cơ

Hình 5 3 Động cơ A2212 không chổi than 930kv

Quadcopter hoạt động với bốn động cơ không chổi than, mang lại hiệu suất cao và độ bền Hai động cơ quay theo chiều kim đồng hồ (CW) và hai động cơ quay ngược chiều kim đồng hồ (CCW) giúp tạo ra lực nâng cân bằng và kiểm soát chuyển động hiệu quả Động cơ A2212 có thông số 930kv, hoạt động với điện áp từ 6-12V và dòng điện tối đa 15A, là một trong những lựa chọn phổ biến cho các mô hình quadcopter.

Động cơ DC có momen xoắn lớn hơn khi số vòng trên phút giảm, đồng thời có khối lượng nhẹ, rất thích hợp cho việc nâng các loại máy bay nặng.

5.2.3 Tính toán lựa chọn bộ điều khiển tốc độ động cơ (ESC)

ESCs đóng vai trò quan trọng trong việc kết nối bộ điều khiển bay với các động cơ, giúp điều chỉnh tốc độ quay của từng động cơ theo tín hiệu từ bộ điều khiển Chúng đảm bảo rằng các động cơ hoạt động một cách đồng bộ và hiệu quả Để đáp ứng yêu cầu tải nặng và dòng điện lớn, chúng tôi đã lựa chọn ESCs có khả năng đáp ứng dòng tối đa 40A, tương thích với pin từ 2-4 cells và được tích hợp công nghệ UBEC.

Hình 5 4 Bộ điều khiển tốc điện từ (ESC)

ESCs điều khiển tốc độ động cơ không chổi than (Brushless DC motor) bằng cách điều chỉnh dòng điện và tần số cung cấp cho động cơ, giúp tối ưu hóa hiệu suất hoạt động.

ESCs nhận tín hiệu từ bộ điều khiển trung tâm và chuyển đổi chúng thành xung điện để điều khiển động cơ Một trong những ưu điểm nổi bật của ESCs là khả năng tích hợp UBEC, giúp cung cấp nguồn điện ổn định cho các thiết bị khác trong hệ thống.

Tích hợp UBEC vào ESC mang lại sự tiện lợi, giảm thiểu số lượng linh kiện và dây dẫn cần thiết, từ đó giúp lắp ráp trở nên gọn gàng và nhẹ nhàng hơn.

- Hiệu suất cao: ESCs với UBEC thường có hiệu suất cao, giúp tiết kiệm năng lượng và kéo dài thời gian bay của drone ĐỒ ÁN TỐT NGHIỆP 46

- Bảo vệ thiết bị: UBEC bảo vệ các thiết bị điện tử nhạy cảm khỏi dao động điện áp và nhiễu điện từ, đảm bảo hoạt động ổn định

5.2.4 Tính toán lựa chọn cánh quạt

Cánh quạt trên động cơ tạo lực đẩy khi quay và được phân loại thành hai loại: CW (chiều kim đồng hồ) và CCW (ngược chiều kim đồng hồ) Chiều dài và hình dạng của cánh quạt đóng vai trò quan trọng trong việc nâng cao hiệu suất bay và khả năng điều khiển của quadcopter.

Hình 5 5 Kích thước cánh quạt

Tổng khối lượng của quadcopter được dự đoán tính toán là 2kg kích thước 450 x

450 x 250mm, trong điều kiện ở nhiệt độ 25 0 C và áp suất không khí tại mặt đất là 1atm, ta có:

- Diện tích mỗi cánh quạt: 𝑆 = 𝜋 𝑑 2

Từ các thông tin trên ta có được tổng lực nâng của 4 động cơ bằng công thức (2.7) như sau:

𝑇 𝑃 = 4 × 2𝐷𝑆𝑉 1 2 Tổng lực nâng phải lớn hơn trọng lượng của drone, trọng lượng của drone là:

Từ đó ta suy được diện tích tối thiểu của 4 cánh quạt: ĐỒ ÁN TỐT NGHIỆP 47

Để đảm bảo quadcopter bay ổn định và tránh các vấn đề liên quan đến lực nâng, chúng tôi quyết định chọn cánh quạt có đường kính 10 inch (khoảng 25 cm), thay vì các loại cánh quạt lớn hơn 20 cm hoặc 8 inch.

5.2.5 Lựa chọn pin cho hệ quadcopter

Pin là nguồn năng lượng chính cho tất cả các thành phần của quadcopter, với pin lithium polymer (LiPo) được ưa chuộng nhờ vào khả năng cung cấp dòng điện cao và trọng lượng nhẹ Dung lượng và điện áp của pin ảnh hưởng trực tiếp đến thời gian bay và hiệu suất hoạt động của quadcopter.

Để đảm bảo duy trì hành trình bay và cung cấp đủ điện cho máy tính nhúng, việc lựa chọn dung lượng và khả năng cấp dòng cho hệ thống là rất quan trọng Qua phương pháp thử sai, chúng tôi đã quyết định chọn pin lipo với dung lượng 2200mAh, 60C, 4 cells 14.8V, vì pin này có khả năng xả lên đến 2.2x60.

= 132A trong 1 phút đủ để cấp cho 4 động cơ bay khoảng 30 phút

5.2.6 Lựa chọn bộ điều khiển từ xa cầm tay

Bộ thu nhận tín hiệu từ bộ phát do người điều khiển cầm truyền đến bộ điều khiển bay, trong khi bộ phát là bộ điều khiển từ xa sử dụng sóng radio để điều khiển quadcopter Để kiểm tra độ ổn định và khả năng di chuyển của quadcopter, cũng như đảm bảo xử lý các tình huống khẩn cấp, chúng tôi đã trang bị bộ thu phát tín hiệu điều khiển từ xa, giúp can thiệp kịp thời khi gặp sự cố.

Bộ điều khiển cầm tay chủ yếu được sử dụng để kiểm tra tiệm cận và ngăn chặn các tình huống nguy cấp, vì vậy chúng tôi không quá chú trọng đến chất lượng của thiết bị này.

Hình 5 7 Bộ thu phát tính hiệu MC6C

Sơ đồ nối dây của hệ thống

Hệ thống được thiết kế và lắp ráp từ các thiết bị tích hợp sẵn, giúp đơn giản hóa quy trình lắp ráp và nối dây, từ đó chứng minh tính khả thi của dự án.

Dưới đây là sơ đồ nối dây của hệ thống:

Để cung cấp nguồn 5V cho máy tính nhúng NVIDIA Jetson Nano và bộ điều khiển bay Pixhawk trong hệ Quadcopter, chúng tôi đã sử dụng mạch hạ áp LM2596 Mạch này nhỏ gọn, tiện lợi và có công suất đủ đáp ứng các tác vụ bay thông thường.

Hình 5 13 Mạch hạ áp LM2569

LM2569 là bộ điều chỉnh chuyển mạch hạ áp hiệu suất cao, cung cấp giải pháp chuyển đổi điện áp linh hoạt từ 0.8V đến 50V, phù hợp cho nhiều ứng dụng Với khả năng cung cấp dòng điện đầu ra lên đến 3A, LM2569 đáp ứng nhu cầu của các tải lớn Hiệu suất cao, thường đạt 90% hoặc hơn, giúp giảm tổn thất năng lượng và nhiệt Tần số chuyển mạch có thể điều chỉnh trong khoảng 100 kHz đến 500 kHz, tối ưu hóa kích thước thành phần và hiệu suất.

Thiết mô hình hệ thống

Mô hình hệ thống được thiết kế, lắp ráp trên phần mềm Soliworks ĐỒ ÁN TỐT NGHIỆP 56

Hình 5 14 Thiết kê mô hình hệ thống ĐỒ ÁN TỐT NGHIỆP 57

THIẾT KẾ PHẦN MỀM

Thiết kế chương trình điều khiển

Với tính thực tế và khả năng làm việc cao thì hệ quadcopter tự động nhận dạng tụ sứ phải đạt những yêu cầu sau:

- Quá trình tự động cất cánh phải diễn ra một cách trơn tru

- Khả năng di chuyển của drone không được có quá nhiều chuyển động thừa

- Có thể điều khiển bằng chế độ Manual khi hệ thống không hoạt động ở một khâu nào đó

- Khả năng nhận dạng và độ chính xác phải trên 80%

- Chương trình phải được viết rõ ràng và gọn gàng để dễ quản lí và bảo trì

- Dừng hệ thống khi phát hiện lỗi

6.1.2 Mô tả chương trình điều khiển

Sau khi bật nguồn, chúng ta kết nối máy tính với Jetson Nano qua WiFi phát từ một module gần đó và bắt đầu khởi chạy chương trình.

Hiện tại hệ thống chỉ có một chế độ điều khiển Auto, khởi chạy tổ hợp lệnh (Python scripts) quá trình quadcopter sẽ thực hiện như sau:

Trước khi bắt đầu hoạt động, người dùng cần chọn điểm xuất phát trên giao diện GUI của hệ thống Sau khi đặt quadcopter xuống đất, người dùng sẽ khởi động hệ thống bằng nút START, và quadcopter sẽ tự động cất cánh, đạt đến độ cao nhất định trước khi di chuyển đến vị trí đã được chọn trước của cột hạ thế.

Sau khi đến vị trí chỉ định, quadcopter sẽ sử dụng hình ảnh từ camera để nhận dạng tụ sứ thông qua model phát hiện tụ ở xa Tiếp theo, nó áp dụng thuật toán theo dõi để tiếp cận gần hơn với tụ sứ Khi đạt đến khoảng cách định sẵn, chương trình sẽ ngừng model phát hiện tụ và khởi động model đánh giá tụ sứ để có kết quả chính xác hơn Cuối cùng, tình trạng của tụ sẽ được đánh giá và báo về máy chủ, từ đó người dùng có thể lấy thông tin từ máy chủ qua giao diện trên máy khách.

- Trong quá trình di chuyển quadcopter có thể xuất dữ liệu hình ảnh về giao diện, tiện lợi cho việc giám sát hoạt động của drone

- Trong quá trình tự động bay, nếu xảy ra sự cố, ta có thể dừng chương trình bằng cách nhấn phím “q” ĐỒ ÁN TỐT NGHIỆP 59

6.1.3 Lưu đồ giải thuật điều khiển

Hình 6 1 Lưu đồ giải thuật điều khiển hệ thống ĐỒ ÁN TỐT NGHIỆP 60

6.1.4 Xây dựng chương trình theo dõi tụ sứ

Lập trình trên Nvidia Jetson Nano hỗ trợ nhiều ngôn ngữ và framework, đặc biệt là các công cụ phổ biến trong lĩnh vực học máy và trí tuệ nhân tạo như Python, TensorFlow, PyTorch và OpenCV.

Hình 6 2 Lập trình trên Jetson nano bằng Python

Sử dụng các thư viện như dronekit và simple-pid, bạn có thể điều khiển và khởi chạy mạng học sâu tích hợp trong Docker Jetson-inference Giải pháp này hoàn toàn tương thích với máy tính nhúng Jetson Nano, được thiết kế để chạy các mô hình AI từ đơn giản đến phức tạp hiện nay.

Hình 6 3 Bộ công cụ jetson-inference [18] ĐỒ ÁN TỐT NGHIỆP 61

Thuật toán theo dõi tụ sứ của chúng tôi được phát triển từ công nghệ điều khiển drone theo phương pháp điểm với điểm Trong hệ thống này, điểm đỏ trên camera được cố định trên màn hình, trong khi điểm xanh đại diện cho các cần điều khiển được thiết lập ảo.

Hình 6 4 Thuật toán điều khiển điểm đến điểm [19]

Giữa hai điểm đỏ và xanh, một đường thẳng được vẽ, và thuật toán sẽ cung cấp các tham số để điều khiển drone thông qua Jetson Nano, sau đó xử lý và gửi đến Pixhawk Quá trình này giúp rút ngắn khoảng cách và kết nối hai điểm thành một.

Chúng tôi đã thiết lập một điểm cố định trên camera và điểm còn lại là trung tâm của hình hộp mà model học sâu SSD đã nhận dạng Lidar sẽ điều khiển việc tiến lại, trong khi thuật toán sẽ quản lý chuyển động trái phải của drone.

KẾT QUẢ ĐẠT ĐƯỢC

Mô hình

Hệ thống “QUADCOPTER NHẬN DẠNG TỤ SỨ BẰNG KĨ THUẬT HỌC SÂU ỨNG DỤNG TRONG GIÁM SÁT THÔNG MINH” đã được hoàn thiện phần cứng như sau:

Hình 7 1 Quadcopter sau khi hoàn thiện ĐỒ ÁN TỐT NGHIỆP 63

Hình 7 2 Hình ảnh drone hoạt động thử nghiệm

Mô hình hoàn thiện của chúng tôi đã được kiểm tra khả năng bay và thăng bằng, tuy nhiên trong quá trình thử nghiệm, đã xảy ra một số tai nạn khiến một số bộ phận bị hư hại, dẫn đến việc giảm tính thẩm mỹ của drone.

Đánh giá mô hình học sâu

Một số tham số được sử dụng khi huấn luyện:

- Base net learning rate (tốc độ học của tầng mạng nền tảng): Tốc độ học tập của tầng mạng nền tảng Mobilenet

- Extra layer learning rate (tốc độ học của tầng bổ sung): Tốc độ học tập của tầng mạng bổ sung đặc trưng SSD

- Learning rate: Tốc độ học tập của toàn bộ các tầng, nếu các tầng nào có quy định tốc độ thì sẽ bỏ qua

- Momentum: momentum cao hơn có thể giúp mô hình thoát khỏi cực tiểu cục bộ (local minima) và cải thiện độ chính xác của quá trình huấn luyện

- Weight decay: càng cao có thể ngăn quá khớp (overfitting) nhưng cũng có thể ảnh hưởng đến độ chính xác nếu luôn được cài đặt quá cao

Gamma được sử dụng để điều chỉnh tốc độ học trong quá trình huấn luyện mạng nơ-ron theo một lịch trình nhất định Kỹ thuật này không chỉ cải thiện khả năng hội tụ của mô hình mà còn giúp tránh hiện tượng dao động quá mức và rơi vào vùng cực tiểu cục bộ.

Bảng 7 1 Tham số được sử dụng khi huấn luyện cho cả 2 mô hình nhận dạng

Variable Default base-net-lr 0.001 extra-layers-lr None momentum 0.9 weight_decay 0.0005 gamma 0.1

Trong quá trình huấn luyện, sẽ có hai mô hình được phát triển: một mô hình nhận dạng tụ sứ từ xa để drone xác định vị trí và bay tới, và một mô hình nhận dạng lỗi trên tụ từ hình ảnh gần.

Quá trình huấn luyện mô hình nhận diện xa:

Quá trình huấn luyện diễn ra trong 150 epoch, với số lượng ảnh đầu vào lớn được tạo ra sau khi trải qua các bước tiền xử lý và biến đổi ảnh trên Roboflow.

24 000 tấm ảnh) nên thời gian huấn luyện cũng tương đối lâu (khoảng hơn 12 tiếng)

Bảng 7 2 Dữ liệu thực nghiệm phát hiện sứ điện từ xa

Tổng 2544 ĐỒ ÁN TỐT NGHIỆP 65

Hình 7 3 Qúa trình huấn luyện

Bảng 7 3 Thống kê kết quả nhận dạng tụ sứ ở khoảng cách xa (từ 94 ảnh thuộc bộ dữ liệu Test)

Số lượng ảnh Ảnh nhận diện đúng 85 Ảnh không nhận diện được 9

Tỉ lệ nhận dạng được tụ sứ từ xa

SSD-Mobilenet-V1 nhận dạng tụ sứ từ xa precision recall mAP50 mAP50-95 ĐỒ ÁN TỐT NGHIỆP 66

Hình 7 4 Ảnh nhận diện đúng

Hình 7 5 Ảnh nhận diện đúng ĐỒ ÁN TỐT NGHIỆP 67

Hình 7 6 Ảnh nhận diện đúng

Hình 7 7 Ảnh không nhận diện được ĐỒ ÁN TỐT NGHIỆP 68

Mô hình nhận diện tụ sứ từ xa đạt độ chính xác cao nhờ vào bộ dữ liệu huấn luyện lớn, chủ yếu tập trung vào việc nhận dạng một loại nhãn duy nhất.

Quá trình huấn luyện mô hình nhận diện tụ sứ từ khoảng cách gần – tụ lỗi:

Quá trình huấn luyện diễn ra với 150 epoch và sử dụng khoảng 12.000 ảnh đã được tiền xử lý và biến đổi trên Roboflow, với tổng thời gian huấn luyện khoảng 7 tiếng.

Bảng 7 4 Dữ liệu thực nghiệm phát hiện sứ điện từ khoảng cách gần

Hình 7 8 Qúa trình huấn luyện

SSD-Mobilenet-V1 nhận dạng tụ sứ từ gần precision recall mAP_0.5 mAP_0.5:0.95 ĐỒ ÁN TỐT NGHIỆP 69

Bảng 7 5 Thống kê kết quả nhận dạng tụ sứ ở khoảng cách gần (từ 100 ảnh thuộc bộ dữ liệu Test)

Nhận dạng tụ dơ Ảnh bình thường

Tỉ lệ nhận dạng đúng

Tụ dơ 7 1 40 83.33% Ảnh bình thường

Hình 7 9 Ảnh nhận diện đúng ĐỒ ÁN TỐT NGHIỆP 70

Hình 7 10 Ảnh nhận diện đúng

Hình 7 11 Ảnh nhận diện đúng ĐỒ ÁN TỐT NGHIỆP 71

Hình 7 12 Ảnh không nhận diện được (tụ dơ)

Hình 7 13 Ảnh không nhận diện được (tụ vỡ) ĐỒ ÁN TỐT NGHIỆP 72

Hình 7 14 Ảnh không nhận diện được (tụ vỡ)

Nhận diện tụ sứ từ khoảng cách gần gặp khó khăn do bộ dữ liệu huấn luyện hạn chế và độ phức tạp của các loại nhãn Cụ thể, việc nhận dạng tụ sứ vỡ trở nên khó khăn vì vùng bị vỡ nhỏ, làm cho việc phân biệt với toàn bộ tụ sứ, đặc biệt là khi so với tụ dơ, trở nên thử thách hơn.

Đánh giá khả năng vận hành của mô hình

Trong quá trình kiểm tra khả năng vận hành của drone, nhóm đã phát hiện rằng mô hình nhận dạng có khả năng nhận diện tốt các vật thể chuyển động Mô hình này có thể xác định khoảng cách đến tâm camera nhờ vào công nghệ Lidar, thông qua việc tính toán các giá trị x_delta và y_delta.

Hình 7 15 Hình ảnh thu được từ camera thể hiện khoảng cách giữa tâm của vật và tâm của camera so với vật

Khi cho drone bay đến tụ sứ được treo trên mỏm đá để giả lập, mô hình cho thấy khả năng nhận dạng rất tốt.

Hình 7 16 Hình ảnh thực tế khi drone bay tự động ĐỒ ÁN TỐT NGHIỆP 74

Hình 7 17 Hình ảnh thu được từ camera nhận diện tụ sứ để bay tự động

Mặc dù mô hình nhận dạng của drone hoạt động hiệu quả và có khả năng bay tự động, nhưng drone vẫn gặp vấn đề về ổn định trong quá trình bay, với hiện tượng rung lắc đáng kể Cần có sự đánh giá và phát triển thêm để cải thiện khả năng bay của thiết bị này.

Ngày đăng: 19/12/2024, 14:32

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN