Đề xuất phương pháp điều khiển thiết bị bay không người lái bằng nhận dạng chuyển động sử dụng chip trí tuệ nhân tạo
Bài báo trình bày về thuật toán điều khiển máy
bay không người lái bằng nhận dạng cử chỉ dùng
chip AI - NM500. AI chip được phân biệt khác với
trí tuệ nhân tạo bởi cấu trúc phần cứng được tĩnh
hợp sẵn, các thuật toán song song giữa huấn
luyện và nhận dạng. Các tế bào thần kinh của
NM500 có thể học và nhận ra các mẫu được trích
xuất từ bất kỳ nguồn dữ liệu nào có ít năng lượng
và độ phức tạp hơn các bộ vi xử lý hiện đại.
Ứng dụng đề xuất có thể điều khiển các thiết bị
bay không người lái bằng nhận dạng chuyển động
từ những cử chỉ mẫu được qui định bởi người
điều khiển. Tác giả đã xây dựng một mô hình điều
khiển một UAV quy mô nhỏ để thảo luận về hiệu
quả hoạt động của hệ thống được xây dựng với
phần cứng NM500. Tận dụng lợi thế của NM500,
hệ thống chỉ đơn giản bao gồm một cảm biến
IMU (cảm biến góc quay + cảm biến gia tốc) và
một chip NM500, xử lý tín hiệu từ IMU sau đó gửi
tín hiệu điều khiển tương ứng với chuyển động
mẫu đến bộ điều khiển của UAV để thực hiện.
Trang 1
Trang 2
Trang 3
Trang 4
Trang 5
Tóm tắt nội dung tài liệu: Đề xuất phương pháp điều khiển thiết bị bay không người lái bằng nhận dạng chuyển động sử dụng chip trí tuệ nhân tạo
SỐ 63 (8-2020) KHOA HỌC - CÔNG NGHỆ 69 TẠP CHÍ ISSN: 1859-316X KHOA HỌC CÔNG NGHỆ HÀNG HẢI JOURNAL OF MARINE SCIENCE AND TECHNOLOGY ĐỀ XUẤT PHƯƠNG PHÁP ĐIỀU KHIỂN THIẾT BỊ BAY KHÔNG NGƯỜI LÁI BẰNG NHẬN DẠNG CHUYỂN ĐỘNG SỬ DỤNG CHIP TRÍ TUỆ NHÂN TẠO PROPOSE METHODS TO CONTROL UAV BY MOTION RECOGNITION USING ARTIFICIAL INTELLIGENCE CHIPS (AI CHIP) ĐỖ KHẮC TIỆP*, ĐÀO MINH QUÂN Khoa Điện - Điện tử, Trường Đại học Hàng hải Việt Nam *Email liên hệ: dokhactiep@vimaru.edu.vn Tóm tắt Bài báo trình bày về thuật toán điều khiển máy bay không người lái bằng nhận dạng cử chỉ dùng chip AI - NM500. AI chip được phân biệt khác với trí tuệ nhân tạo bởi cấu trúc phần cứng được tĩnh hợp sẵn, các thuật toán song song giữa huấn luyện và nhận dạng. Các tế bào thần kinh của NM500 có thể học và nhận ra các mẫu được trích xuất từ bất kỳ nguồn dữ liệu nào có ít năng lượng và độ phức tạp hơn các bộ vi xử lý hiện đại. Ứng dụng đề xuất có thể điều khiển các thiết bị bay không người lái bằng nhận dạng chuyển động từ những cử chỉ mẫu được qui định bởi người điều khiển. Tác giả đã xây dựng một mô hình điều khiển một UAV quy mô nhỏ để thảo luận về hiệu quả hoạt động của hệ thống được xây dựng với phần cứng NM500. Tận dụng lợi thế của NM500, hệ thống chỉ đơn giản bao gồm một cảm biến IMU (cảm biến góc quay + cảm biến gia tốc) và một chip NM500, xử lý tín hiệu từ IMU sau đó gửi tín hiệu điều khiển tương ứng với chuyển động mẫu đến bộ điều khiển của UAV để thực hiện. Từ khóa: NM500, thiết bị bay không người lái, trí tuệ nhân tạo, Neuromorphic chip, IMU. Abstract This article deals with a controller for UAV by motion recognition using newly developed neuromorphic artificial intelligent chip NM500. Neuromorphic artificial intelligence is distinguished from other AI by its particular hardware structure and parallel algorithms of learning and recognition. Thus, nơ-rons of NM500 can learn and recognize patterns extracted from any data sources with less energy and complexity than modern microprocessors. The proposed application can control the UAV by recognizing the motion which. We have built a small UAV model to discuss the real-time performance as well as hardware implementation with NM500. Taking advantages of NM500, the system simply consists of an IMU and a NM500, which processes the signal from the IMU and then send control signal to a UAV controller. Keywords: NM500, UAV, artificial intellignence, Neuromorphic chip, IMU. 1. Giới thiệu Năm 2018, Nepes, một công ty chuyên sản xuất linh kiện bán dẫn của Hàn Quốc đã phát triển và giới thiệu ra thị trường một loại chip trí tuệ nhân tạo có tên là NM500 [1-2]. Chip NM500 là một mạng lưới thần kinh có kiến trúc song song hoàn toàn, nó là một chuỗi các nơ-ron giống hệ nhau. Kiến trúc song song hoàn toàn của chip NM500 được thực hiện bởi vì tất cả các tế bào thần kinh đều giống hệt nhau và không yêu cầu bất kỳ bộ điều khiển hoặc người giám sát nào tương tác với nhau. NM500 và NeuroShield tạo thành một mạch có khả năng tự học rất phù hợp cho các ứng dụng IoT (Internet of Things) và các hệ thống thông minh. Với giao thức được xây dựng tương thích với các mạch Ardunio hoặc máy tính (Hình 1). NM500 là một phần cứng trí tuệ nhân tạo mở ra một biên giới mới cho các cảm biến thông minh, IoT, học máy (machine learning) và điện toán nhận thức (cognitive computing) [3]. Mỗi một nơ-ron của NM500 có thể họa và nhận thức được mẫu trích xuất từ bất kì nguồn dữ liệu nào như hình ảnh, sóng âm thanh, tín hiệu sinh học, dạng văn bản, với việc tiêu tốn ít năng lượng (Hình 2) và linh hoạt hơn so với các loại vi xử lý, vi điều khiển hiện đại đang có trên thị trường. Trong bài báo này, tác giả đề xuất xây dựng bộ điều khiển UAV sử dụng chip NM500. Đề xuất ứng dụng có thể điều khiển hoạt động của UAV từ các chuyển động được qui định trước bởi người điều khiển. Tác giả đã xây dựng một mô hình điều khiển một UAV quy mô nhỏ để thảo luận về hiệu suất thời gian thực cũng như triển khai phần cứng với NM500. Tận KHOA HỌC - CÔNG NGHỆ 70 SỐ 63 (8-2020) TẠP CHÍ ISSN: 1859-316X KHOA HỌC CÔNG NGHỆ HÀNG HẢI JOURNAL OF MARINE SCIENCE AND TECHNOLOGY dụng lợi thế của NM500, hệ thống chỉ đơn giản bao gồm một cảm biến IMU(cảm biến góc quay + cảm biến gia tốc) và một chip NM500, xử lý tín hiệu từ IMU sau đó gửi tín hiệu điều khiển tương ứng với chuyển động mẫu đến bộ điều khiển của UAV để thực hiện. Hình 1. Hình ảnh chip NM500 và NeuroShield Hình 2. Mức tiêu thụ năng lượng của chip NM500 2. Giới thiệu về chip trí tuệ nhân tạo NM500 Mạng lưới nơ-ron cung cấp bởi NM500 được gọi là FFNN (Feed Forward Neural Network) sử dụng RBG (Radial Basis Function). Nó có cấu trúc 3 lớp với 1 lớp đầu vào, một lớp ẩn và 1 lớp đầu ra như Hình 3. Lớp ẩn có thể được mở rộng đến số lượng nơ-ron vật lý được hỗ trợ bởi chip NM500. Một chip đơn NM500 bao gồm 576 nơ-ron và có thể tăng quy mô lên đến vài trăm triệu nơ-ron với cách ghép tầng - Brick (Hình 2) với cùng thời gian xử lý. Mỗi lớp ẩn có 256 bytes RAM. NM500 tính toán hai giá trị định mức bằng cách sử dụng phương pháp Ll (Manhattan) hoặc Lsup (Supremum) như một tiêu chí để xác định sự giống nhau giữa dữ liệu đã học và dữ liệu đầu vào trong một nơ-ron. Chế độ nhận dạng hỗ trợ bởi NM500 cung cấp thuật toán RBG và KNN (k - Nearest Neighbor) [2]. Nơ-ron có thể học và nhận dạng vecto đầu vào một cách tự động và song song. Nếu một số tế bào thần kinh nhận ra một mô hình, các phản ứng của chúng có thể được lấy tự động theo thứ tự khoảng cách tăng dần (tương đương với mức độ tin cậy giảm dần). Thông tin có thể được đọc từ một nơ-ron bao gồm khoảng cách, loại và số nhận dạng nơ-ron. Quá trình học được bắt đầu bằng việc tạo ra một danh mục, đó là nhãn xác định dữ liệu sẽ được học, sau một mẫu đầu vào. Nếu dữ liệu đầu vào có tính mới, nơ-ron tiếp theo có sẵn trong chuỗi sẽ tự động lưu mẫu và thư mục của nó. Nếu một số nơ-ron bắn ra nhận ra mẫu nhưng với một loại khác ngoài loại cần học, chúng sẽ tự động sửa các trường ảnh hưởng của chúng. Khi mạng NM500 phát ra một mẫu đầu vào mới, tất cả các nơ-ron cập nhật đồng thời khoảng cách của chúng bằng cách sử dụng kết hợp bus song song. Các nơ-ron này sẵn sàng trả lời một truy vấn ngay khi thành phần cuối cùng nhận được. Tế bào thần kinh phản ứng với một mô hình đầu vào tự sắp xếp theo độ tin cậy giảm dần. Tính năng độc đáo này liên quan đến kiến trúc song song của mạng NM500. Hình 3. Cấu trúc 3 lớp FFNN trong NM500 Bảng 1. Thông số của NM500 TT Thông số Xung nhịp 37MHz cho chip đơn; 18MHz cho chuỗi nhiều chip I/O Bus song song (26 lines) Điện áp 3,3V cho I/O; 1,2V cho chip Công suất tiêu thụ <153mW trong chế độ tích cực Đóng gói 64 pin * Kiến trúc của NM500 Chip NM500 bao gồm các modul: phần liên kết nơ-ron và chuỗi nơ-ron (Hình 4). Truyền thông liên modul và liên neuro được thực hiện bằng cách truyền trực tiếp trên các bus song song. Mỗi nơ-ron bao gồm 1 bộ nhớ, một bộ gồm có 6 thanh ghi và một vài cổng logic. Thông số kỹ thuật của NM 600 được trình bày như trong Bảng 1. Một nơ-ron có thể có 3 trạng thái trong chuỗi: IDLE (rảnh rỗi), RTL (ready to learn - sẵn sàng học) and Committed (cam kết). Nơ-ron chuyển sang trạng thái cam kết ngay khi nó thực hiện học mẫu và thư mục đăng kí của nó sẽ được ghi một giá trị là khác 0. Một trong những lợi ích của kiến trúc NM500 là người ta có thể xếp song song nhiều chip để mở rộng kích thước của mạng nơ-ron bằng cách tăng 576 nơ-ron. Hành vi của tế bào thần kinh trong một chip đơn hoặc nhiều chip vẫn giống nhau. KHOA HỌC - CÔNG NGHỆ 71 SỐ 63 (8-2020) TẠP CHÍ ISSN: 1859-316X KHOA HỌC CÔNG NGHỆ HÀNG HẢI JOURNAL OF MARINE SCIENCE AND TECHNOLOGY Hình 4. Kiến trúc của NM500 Hình 5. Cấu trúc của hệ thống điều khiển UAV bằng nhận dạng chuyển động sử dụng chip AI NM500 3. Thiết kế bộ điều khiển UAV bằng nhận dạng chuyển động sử dụng chip NM500 Để thực hiện điều khiển UAV bằng nhận dạng chuyển động sử dụng chip NM500 thì yêu cầu của hệ thống cần có 1 IMU, đây là loại la bàn con quay và gia tốc kế 6 bậc tự do. Dữ liệu nhận được từ IMU sẽ được gửi đến chip NM500 để tiến hành quá trình học và nhận dạng chuyển động tương ứng với từng lệnh điều khiển UAV được qui định bởi người điều khiển. Cấu trúc của hệ thống điều khiển UAV bằng nhận dạng chuyển động sử dụng NM500 được mô tả như Hình 5. Trong cấu trúc điều khiển Hình 5 tác giả sử dụng 1 cảm biến IMU để lấy tín hiệu từ la bàn con quay và gia tốc kế, tương ứng với mỗi chuyển động được qui ước và thực hiện bởi người điều khiển (Bảng 2) sẽ thu được các tín hiệu từ la bàn con quay và gia tốc kế. Các tín hiệu này sẽ được đưa đến chip NM500 để thực hiện quá trình học và nhận dạng (Hình 7) [4-5]. Dữ liệu dùng để cho chip học và nhận dạng như Hình 6. Hình 6. Dữ liệu đầu vào tương ứng với mỗi chuyển động: (a) chuyển động trái/ phải; (b) chuyển động trước/ sau; (c) chuyển động lên/ xuống Hình 7. Lưu đồ thuật toán cho quá trình học và nhận dạng chuyển động 4. Kết quả thực nghiệm Để thực hiện quá trình học và nhận dạng chuyển động từ người điều khiển, tác giả tiến hành xây dựng chương trình giám sát trên máy tính dùng C# (Hình 8). KHOA HỌC - CÔNG NGHỆ 72 SỐ 63 (8-2020) TẠP CHÍ ISSN: 1859-316X KHOA HỌC CÔNG NGHỆ HÀNG HẢI JOURNAL OF MARINE SCIENCE AND TECHNOLOGY Hình 8. Giao diện của chương trình học và nhận dạng chuyển động trên C# Hình 9. Quá trình học chuyển động mẫu của NM500 Tín hiệu của IMU là tín hiệu đầu vào của quá trình huấn luyện cho chip NM500. Mỗi chuyển động sẽ được tác giả thực hiện 4 lần bằng cách cầm chip NM500 được gắn trên NeuroShield cùng IMU sẽ được vẽ các chuyển động này trong không khí. Kết thúc 4 lần thực hiện chuyển động NM500 sẽ kết thúc quá trình huấn luyện và sẽ nhớ chuyển động này vào thư mục tương ứng để thực hiện cho quá trình nhận dạng (Hình 9). Kết quả thực nghiệm của quá trình huấn luyện và nhận dạng chuyển động sử dụng chip NM500 được mô tả như Hình 10. Hình 10. Kết quả thực nghiệm quá trình huấn luyện và nhận dạng chuyển động sử dụng chip NM500 Từ kết quả của quá trình huấn luyện và nhận dạng chuyển động của chip NM500 tác giả tiến hành áp dụng chương trình điều khiển này để thực hiện điều khiển UAV. Hình 11. Cấu trúc của hệ thống điều khiển UAV bằng nhận dạng chuyển động sử dụng chip NM500 Trong cấu trúc của hệ thống điều khiển UAV bằng nhận dạng chuyển động sử dụng chip NM500 (Hình 11), tác giả sử dụng 1 UAV được gắn cố định trên giá với khớp quay. Bộ điều khiển của UAV được truyền thông với NM500 và NeuroShield thông qua cổng truyền thông nối tiếp RS232. NM500 và NeuroShield được kết nối tới máy tính thông qua cổng USB. (sequence of motion: 1→2→3→4) (a) KHOA HỌC - CÔNG NGHỆ 73 SỐ 63 (8-2020) TẠP CHÍ ISSN: 1859-316X KHOA HỌC CÔNG NGHỆ HÀNG HẢI JOURNAL OF MARINE SCIENCE AND TECHNOLOGY (sequence of motion: 1→2→3→4) (b) Hình 12. Kết quả thực nghiệm của chương trình điều khiển UAV bằng nhận dạng chuyển động sử dụng chip NM500; (a): Thực hiện lệnh “Take-off”; (b) Thực hiện lệnh “Landing” Khi người điều khiển muốn thực hiện cho UAV thực hiện lệnh “Take-off” (các chuyển động tương ứng với các lệnh điều khiển được thực hiện như Bảng 2), NM500 sẽ thực hiện nhận dạng và đưa ra lệnh “Take-off” để điều khiển UAV. Lệnh này sẽ được gửi tới bộ điều khiển của UAV và sau đó UAV sẽ thực hiện quá trình cất cánh (Take-off) (Hình 12(a)). Quá trình này cũng tương tự với các lệnh khác dùng để điều khiển UAV. 5. Kết luận Bài báo đã giới thiệu 1 loại chip trí tuệ nhân tạo hoàn toàn mới trên thị trường - chip NM500. NM500 là 1 phần cứng trí tuệ nhân tạo, các nơ-ron của NM500 có thể học và nhận dạng mẫu từ bất kì nguồn dữ liệu nào với công suất tiêu thụ thấp hơn rất nhiều so với các loại vi điều khiển, vi xử lí hiện đại đang có trên thị trường. Bài báo cũng đề xuất và tiến hành thực nghiệm chương trình điều khiển UAV bằng nhận dạng chuyển động sử dụng chip NM500. Chương trình điều khiển đề xuất đã thực hiện điều khiển được hoạt động của UAV, với các lệnh được thực hiện chính xác với thời gian đáp ứng của hệ thống là nhanh. Các kết quả thử nghiệm đã chỉ ra rằng thuật toán nhận dạng và học chuyển động hoạt động tốt trong phòng thí nghiệm. Các kết quả đã chứng minh độ tin cậy và hiệu quả của phương pháp được đề xuất. Lời cảm ơn Bài báo là sản phẩm công bố kết quả nghiên cứu của đề tài Nghiên cứu khoa học cấp Trường năm học 2019-2020: “Nghiên cứu thiết kế điều khiển UAV bằng nhận dạng cử chỉ sử dụng trí tuệ nhân tạo”, được hỗ trợ kinh phí bởi Trường Đại học Hàng hải Việt Nam. TÀI LIỆU THAM KHẢO [1] Mead, C, Neuromorphic electronic system, Proc. IEEE 78(10), pp.1629 -1636, 1990. [2] General vision, NeuroMem Technology Reference Guide, 2018. [3] Schuman, C.D, Potok, T.E Patton, RM Birdwell, D Dean, Survey of Neuromorphic Computing and Neural Networks in Hardware, ArXiv 1705.06963, pp.1-88, 2017. [4] Batur, A.U, Flinchbaught, Performance analysis of face recognition algorithms on TMS320c64x, Texas intruments Application report - SPRA874, pp.1-12, 2012. [5] Sadar, S. Babu, K.A, Hardware implementation of real-time, hight performance, RCE-NN based face recognition system, 27th International Conference on VLSI design, pp.174-179, 2014. Ngày nhận bài: 06/3/2020 Ngày nhận bản sửa: 22/3/2020 Ngày duyệt đăng: 06/4/2020
File đính kèm:
- de_xuat_phuong_phap_dieu_khien_thiet_bi_bay_khong_nguoi_lai.pdf