TRƯỜNG ĐẠI HỌC BÁCH KHOA HÀ NỘI
VIỆN ĐIỆN TỬ - VIỄN THÔNG
ĐỒ ÁN
TỐT NGHIỆP ĐẠI HỌC
Đề tài:
NGHIÊN CỨU THIẾT KẾ BỘ ĐIỀU KHIỂN
MÁY BAY KHÔNG NGƯỜI LÁI AUTOPILOT
Hà Nội, 6-2018
TRƯỜNG ĐẠI HỌC BÁCH KHOA HÀ NỘI
VIỆN ĐIỆN TỬ - VIỄN THÔNG
ĐỒ ÁN
TỐT NGHIỆP ĐẠI HỌC
Đề tài:
NGHIÊN CỨU THIẾT KẾ BỘ ĐIỀU KHIỂN
MÁY BAY KHÔNG NGƯỜI LÁI AUTOPILOT
Hà Nội, 6-2018
ĐÁNH GIÁ QUYỂN ĐỒ ÁN TỐT NGHIỆP
(Dùng cho giảng viên hướng dẫn)
Giảng viên đánh giá: PGS.TS.
Họ và tên Sinh viên:
MSSV:
Tên đồ án: Nghiên cứu thiết kế bộ điều khiển máy bày không người lái autopilot
Chọn các mức điểm phù hợp cho sinh viên trình bày theo các tiêu chí dưới đây:
Rất kém (1); Kém (2); Đạt (3); Giỏi (4); Xuất sắc (5)
Có sự kết hợp giữa lý thuyết và thực hành (20)
Nêu rõ tính cấp thiết và quan trọng của đề tài, các vấn đề và
1
các giả thuyết (bao gồm mục đích và tính phù hợp) cũng như 1 2 3 4 5
phạm vi ứng dụng của đồ án
2
Cập nhật kết quả nghiên cứu gần đây nhất (trong nước/quốc tế) 1 2 3 4 5
3
Nêu rõ và chi tiết phương pháp nghiên cứu/giải quyết vấn đề
1 2 3 4 5
Có kết quả mô phỏng/thưc nghiệm và trình bày rõ ràng kết quả
4
1 2 3 4 5
đạt được
Có khả năng phân tích và đánh giá kết quả (15)
Kế hoạch làm việc rõ ràng bao gồm mục tiêu và phương pháp
5
6
7
thực hiện dựa trên kết quả nghiên cứu lý thuyết một cách có hệ 1 2 3 4 5
thống
Kết quả được trình bày một cách logic và dễ hiểu, tất cả kết
quả đều được phân tích và đánh giá thỏa đáng.
Trong phần kết luận, tác giả chỉ rõ sự khác biệt (nếu có) giữa
kết quả đạt được và mục tiêu ban đầu đề ra đồng thời cung cấp
lập luận để đề xuất hướng giải quyết có thể thực hiện trong
1 2 3 4 5
1 2 3 4 5
tương lai.
Kỹ năng viết (10)
Đồ án trình bày đúng mẫu quy định với cấu trúc các chương
logic và đẹp mắt (bảng biểu, hình ảnh rõ ràng, có tiêu đề, được
8
đánh số thứ tự và được giải thích hay đề cập đến trong đồ án,
có căn lề, dấu cách sau dấu chấm, dấu phẩy v.v), có mở đầu
1 2 3 4 5
chương và kết luận chương, có liệt kê tài liệu tham khảo và có
9
trích dẫn đúng quy định
Kỹ năng viết xuất sắc (cấu trúc câu chuẩn, văn phong khoa
học, lập luận logic và có cơ sở, từ vựng sử dụng phù hợp v.v.)
Thành tựu nghiên cứu khoa học (5) (chọn 1 trong 3 trường hợp)
1 2 3 4 5
Có bài báo khoa học được đăng hoặc chấp nhận đăng/đạt giải
10a
SVNC khoa học giải 3 cấp Viện trở lên/các giải thưởng khoa
học (quốc tế/trong nước) từ giải 3 trở lên/ Có đăng ký bằng
5
phát minh sáng chế
Được báo cáo tại hội đồng cấp Viện trong hội nghị sinh viên
10b
nghiên cứu khoa học nhưng không đạt giải từ giải 3 trở
lên/Đạt giải khuyến khích trong các kỳ thi quốc gia và quốc tế
khác về chuyên ngành như TI contest.
10c Không có thành tích về nghiên cứu khoa học
Điểm tổng
Điểm tổng quy đổi về thang 10
2
0
/50
3. Nhận xét thêm của Thầy/Cô
.......................................................................................................................................
.......................................................................................................................................
.......................................................................................................................................
.......................................................................................................................................
.......................................................................................................................................
.......................................................
Ngày:
/
/201
Người nhận xét
(Ký và ghi rõ họ tên)
ĐÁNH GIÁ QUYỂN ĐỒ ÁN TỐT NGHIỆP
(Dùng cho cán bộ phản biện)
Giảng viên đánh giá:......................................................
Họ và tên Sinh viên:
MSSV:
Tên đồ án: Nghiên cứu thiết kế bộ điều khiển máy bay không người lái autopilot
Chọn các mức điểm phù hợp cho sinh viên trình bày theo các tiêu chí dưới đây:
Rất kém (1); Kém (2); Đạt (3); Giỏi (4); Xuất sắc (5)
Có sự kết hợp giữa lý thuyết và thực hành (20)
Nêu rõ tính cấp thiết và quan trọng của đề tài, các vấn đề và
1
các giả thuyết (bao gồm mục đích và tính phù hợp) cũng như 1 2 3 4 5
phạm vi ứng dụng của đồ án
2
Cập nhật kết quả nghiên cứu gần đây nhất (trong nước/quốc tế) 1 2 3 4 5
3
Nêu rõ và chi tiết phương pháp nghiên cứu/giải quyết vấn đề
1 2 3 4 5
Có kết quả mô phỏng/thưc nghiệm và trình bày rõ ràng kết quả
4
1 2 3 4 5
đạt được
Có khả năng phân tích và đánh giá kết quả (15)
Kế hoạch làm việc rõ ràng bao gồm mục tiêu và phương pháp
5
6
7
thực hiện dựa trên kết quả nghiên cứu lý thuyết một cách có hệ 1 2 3 4 5
thống
Kết quả được trình bày một cách logic và dễ hiểu, tất cả kết
quả đều được phân tích và đánh giá thỏa đáng.
Trong phần kết luận, tác giả chỉ rõ sự khác biệt (nếu có) giữa
kết quả đạt được và mục tiêu ban đầu đề ra đồng thời cung cấp
lập luận để đề xuất hướng giải quyết có thể thực hiện trong
1 2 3 4 5
1 2 3 4 5
tương lai.
Kỹ năng viết (10)
Đồ án trình bày đúng mẫu quy định với cấu trúc các chương
logic và đẹp mắt (bảng biểu, hình ảnh rõ ràng, có tiêu đề, được
8
đánh số thứ tự và được giải thích hay đề cập đến trong đồ án,
có căn lề, dấu cách sau dấu chấm, dấu phẩy v.v), có mở đầu
1 2 3 4 5
chương và kết luận chương, có liệt kê tài liệu tham khảo và có
9
trích dẫn đúng quy định
Kỹ năng viết xuất sắc (cấu trúc câu chuẩn, văn phong khoa
học, lập luận logic và có cơ sở, từ vựng sử dụng phù hợp v.v.)
1 2 3 4 5
Thành tựu nghiên cứu khoa học (5) (chọn 1 trong 3 trường hợp)
Có bài báo khoa học được đăng hoặc chấp nhận đăng/đạt giải
10a
SVNC khoa học giải 3 cấp Viện trở lên/các giải thưởng khoa
học (quốc tế/trong nước) từ giải 3 trở lên/ Có đăng ký bằng
5
phát minh sáng chế
Được báo cáo tại hội đồng cấp Viện trong hội nghị sinh viên
10b
nghiên cứu khoa học nhưng không đạt giải từ giải 3 trở
lên/Đạt giải khuyến khích trong các kỳ thi quốc gia và quốc tế
khác về chuyên ngành như TI contest.
10c Không có thành tích về nghiên cứu khoa học
Điểm tổng
Điểm tổng quy đổi về thang 10
2
0
/50
3. Nhận xét thêm của Thầy/Cô
.......................................................................................................................................
.......................................................................................................................................
.......................................................................................................................................
.......................................................................................................................................
.......................................................................................................................................
.......................................................
Ngày:
/
/201
Người nhận xét
(Ký và ghi rõ họ tên)
MỤC LỤC
CHƯƠNG 1: TỔNG QUAN VỀ AUTOPILOT
11
1.1 Giới thiệu AutoPilot
11
1.2 Sơ đồ khối autopilot
12
1.3 Kết luận chương
12
CHƯƠNG 2: THIẾT BỊ HỆ THỐNG
14
2.1 Board Navio2
14
2.1.1 Giới thiệu về Navio và Navio2
14
2.1.2 Thông số kĩ thuật
14
2.2 Raspberry pi
17
2.2.1 Giới thiệu về Raspberry pi
17
2.2.2 Cấu tạo phần cứng
19
2.3 Cài đặt, ghép nối phần cứng
20
2.3.1 Kết nối Navio2 với Raspberry Pi
20
2.3.2 Cấp nguồn cho Navio2
21
2.3.3 Cấp nguồn cho hệ thống Servo
23
2.3.4 Ăng-ten GNSS
23
2.3.5 Kết nối với bộ thu
24
2.3.6 Kết nối đầu ra với động cơ và Servo
25
2.3.7 Module truyền nhận
27
2.3.8 Cấu hình hoàn chỉnh
28
2.5 Kết luận chương
31
CHƯƠNG 3: XÂY DỰNG FIRMWARE
32
3.1 Tổng quan dự án Ardupilot
32
3.2 Cài đặt Firmware cho Navio2 và Raspberry Pi
33
CHƯƠNG 4: PHẦN MỀM TRẠM KIỂM SOÁT MẶT ĐẤT GCS –
GROUND CONTROL STATION
37
4.1 Các phần mềm điều khiển UAV
37
4.1.1 APM Planner 2.0
37
4.1.2 MAVProxy
37
4.1.3 QGround
39
4.1.4 UGCS - Universal Ground Control Station
40
4.1.5 Mission Planner
41
4.2 Chương trình Mission Planner
41
4.2.1 Tổng quan về Mission Planner
41
4.2.2 Cài đặt Mission Planner
42
4.2.3 Giao diện làm việc của Mission Planner
43
4.2.4 Giả lập và kết nối thiết bị bay với Mission Planner
47
4.2.5 Tạo lịch trình bay tự động
48
4.2.6 Tiến hành chạy mô phỏng với máy bay ảo
48
4.3 Danh sách các lệnh hướng dẫn thực hiện nhiệm vụ
51
4.3.1 Tổng quan
51
4.3.2 Các loại câu lệnh
52
4.3.3 Các khung tham chiếu cho thông số của lệnh
52
4.3.4 Các lệnh định tuyến đường (Navigation)
53
4.3.5 Các lệnh điều kiện (Condition)
54
4.3.6 Các lệnh thực thi (DO)
54
4.4 Thiết lập, hiệu chỉnh máy bay đưa vào hoạt động
55
4.4.1 Các tham số của Mission Planner ( Parameter )
55
4.4.2 Cấu hình, hiệu chỉnh phần cứng cho máy bay
60
4.5 Kết luận chương
63
KẾT LUẬN
64
TÀI LIỆU THAM KHẢO
65
LỜI NÓI ĐẦU
Ngày nay, khi mà khoa học ngày càng phát triển và được áp dụng rất nhiều vào
đời sống thì những thiết bị có khả năng tự động hóa đang là xu hướng được quan
tâm và nghiên cứu rộng rãi. Các công nghệ này được ứng dụng trong rất nhiều
ngành và lĩnh vực nhằm tiết kiệm sức lao động của con người hoặc giảm nguy hiểm
của môi trường lao động.
Một trong những công nghệ đang được nghiên cứu và ứng dụng mạnh mẽ là
máy bay không người lái (UAV- Unmanned Aerial Vehicle). Đây là tên gọi chỉ
chung cho các loại máy bay mà không có phi công điều khiển trực tiếp, hoạt động
tự động và có thể điều khiển, giám sát từ xa. Việc sử dụng UAV có thể thay thế con
người trong rất nhiều lĩnh vực như dân dụng, quân sự… Ở các nước phát triển UAV
được ứng dụng rất nhiều trong việc do thám, quan trắc… tuy nhiên việc triển khai ở
Việt Nam còn nhiều hạn chế.
Xuất phát từ thực tế, em đã chọn đề tài “Nghiên cứu thiết kế bộ điều khiển cho
máy bay không người lái AutoPilot” làm đề tài đồ án tốt nghiệp để từng bước nắm
bắt lý thuyết và công nghệ nhằm áp dụng vào thực tiễn.
Em cảm ơn thầy – người đã giúp em định hướng, lập kế hoạch để em có thể
tiếp cận và có cái nhìn bao quát ơn về hệ thống UAV. Và em xin được cảm ơn các
thầy cô viện Điện tử - Viễn thông trong những năm qua đã truyền tải những kiến
thức, kinh nghiệm quý báu để em có những hành trang vững chắc trên con đường
học tập và nghiên cứu sau này.
Tóm tắt nội dung đồ án
●
Thiết kế, xây dựng hệ thống phần cứng, phần mềm cho thiết bị bay không
người lái
●
Xây dựng mô phỏng quá trình bày mà không cần phần cứng
●
Làm việc với phần mềm trạm kiểm soát mặt đất Mission Planner
●
Cấu hình hệ thống máy bay và đưa vào hoạt động
Mục lục bảng biểu
Bảng 1: Một số tham số chính của Mission Planner
60
Mục lục hình ảnh
Hình 1: Sơ đồ khối Autopilot
Error! Bookmark not defined.
Hình 2: Navio2 và một số tính năng nổi bật
Error! Bookmark not defined.
Hình 3: Cấu trúc cơ bản của Raspberry Pi
Error! Bookmark not defined.
Hình 4:Sau khi kết nối giữa Raspberry Pi và Navio2 Error! Bookmark not defined.
Hình 5: Cấp nguồn cho Navio2 bằng module nguồn (nguồn: Emlid)
Error!
Bookmark not defined.
Hình 6: Cấp nguồn cho servo (nguồn: Emlid)
Error! Bookmark not defined.
Hình 7: Kết nối ăng-ten GNSS (nguồn: Emlid)
Error! Bookmark not defined.
Hình 8: Kết nối máy thu RC (nguồn: Navio2)
Error! Bookmark not defined.
Hình 9: Kết nối ESC với RC đầu ra (nguồn: Emlid)
Error! Bookmark not defined.
Hình 10: Kết nối Servo với RC đầu ra (nguồn: Emlid)
27
Hình 11: Kết nối modem UART (nguồn: Emlid)
27
Hình 12: Kết nối modem USB (nguồn: Emlid)
28
Hình 13: Sơ đồ tổng thể hệ thống (nguồn: Emlid)
29
Hình 14: Mô hình tổng thể máy bay (nguồn: Emlid)
Error! Bookmark not defined.
Hình 15: Mô hình máy bay thực tế
Error! Bookmark not defined.
Hình 16: Một số mô hình Ardupilot hỗ trợ
Error! Bookmark not defined.
Hình 17: Cấu trúc hệ thống ArduPilot (nguồn: ArduPilot)
Hình 18:IP các thiết bị trong cùng một mạng sau khi quét bằng phần mềm
33
Error!
Bookmark not defined.
Hình 19: Giao diện đăng nhập thành công vào Raspbian (nguồn: Emlid)
36
Hình 20:Giao diện phần mềm APM Planner
Error! Bookmark not defined.
Hình 21: Giao diện phần mềm MAVProxy
Error! Bookmark not defined.
Hình 22: Giao diện phần mềm Qground
Error! Bookmark not defined.
Hình 23: Giao diện phần mềm UGCS
Error! Bookmark not defined.
Hình 24: Giao diện phần mềm Mission Planner
Error! Bookmark not defined.
Hình 25: Cảnh báo cài đặt
43
Hình 26: Flight Data
Error! Bookmark not defined.
Hình 27: Flight Plane
Error! Bookmark not defined.
Hình 28: Initial Setup
Error! Bookmark not defined.
Hình 29: Config
Error! Bookmark not defined.
Hình 30: Simulation
Error! Bookmark not defined.
Hình 31: Mô phỏng Autopilot với Mission Planner
47
Hình 32: Thiết lập lịch trình bay tự động
Error! Bookmark not defined.
Hình 33: Chọn TakeOff
Error! Bookmark not defined.
Hình 34: Thiết lập chiều cao
Error! Bookmark not defined.
Hình 35: Máy bay được khởi động
Error! Bookmark not defined.
Hình 36: Máy bay ảo thực hiện kế hoạch bay
51
Hình 37: Cấu hình thiết bị đo gia tốc
61
Hình 38: Cấu hình la bàn
62
Hình 39: Kiểm tra hoạt động la bàn
63
CHƯƠNG 1: TỔNG QUAN VỀ AUTOPILOT
1.1 Giới thiệu AutoPilot
Autopilot là viết tắt của của cụm từ đầy dủ automatic pilot, vốn để chỉ các thiết
bị bay tự động mà không cần phi công điều khiển trực tiếp. Song bản chất Autopilot
là một hệ thống chưa hoàn thiện và luôn đòi hỏi con người nắm quyền điều khiển.
Ý tưởng máy bay không người lái đầu tiên đã được nhà sáng chế người Mỹ
Charles Kettering đề xuất sau 7 năm chuyến bay đầu tiện được thực hiện bởi anh
em nhà Wright vào 12/1903. Vào thời điểm đó ý tưởng này được sinh ra để biến
máy bay thành “bom” hàng không. Có thể coi đây là cột mốc phát triển máy bay tấn
công không người lái. Ý tưởng tuy đơn giản nhưng về mặt kỹ thuật vào thời điểm
đó để triển khai thì là một vấn đề hết sức phức tạp.
Trong những năm 1940, tốc độ phát triển máy bay không người lái có những
bước nhảy vọt vẫn nhằm phục vụ cho chiến tranh. Các nước Anh, Mỹ, Nga đã chế
tạo ra được nhiều máy bay điều khiển bằng vô tuyến.
Ngày nay các thiết bị bay không người lái được phát triển rất mạnh mẽ, không
chỉ mục đích cho chiến tranh mà còn nhiều tính ứng dụng trong nhiều lĩnh vực nhất
là do thám,dự báo thời tiết, theo dõi, IOT, cứu hộ, vận tải... Để phát triển được như
vậy cũng là khoảng thời gian không nhỏ vì phải từng bước nắm bắt rõ cơ sở lý
thuyết, xây dựng cộng đồng thành viên lớn với các dự án mã nguồn mở để có thể
từng bước phát triển chia sẻ hết cho tất cả mọi người.
Các thành phần cốt lõi của Autopilot gồm: Hardware và Firmware
Trong đó Hardware là các thành phần phần cứng cấu tạo nên toàn bộ khung của
hệ thống. Còn Firmware là phần ROM được tích hợp sẵn trong Hardware và cần có
sự tương thích giữa 2 thành phần này
1.2 Sơ đồ khối autopilot
Sơ đồ khối các thành phần cơ bản của AutoPilot
Sau khi đã hoàn thành sau Autopilot và đã kiểm tra firmware, hardware hoạt
động ổn định và chính xác thì công việc tiếp theo là ghép nối Autopilot với máy bay
và kết nối với trạm điều khiển mặt đất để tạo thành một hệ thống máy bay không
người lái hoàn chình
1.3 Kết luận chương
Hệ thống máy bay không người lái bao gồm 2 thành phần cơ bản: máy bay và
trạm điều khiển mặt đất. Máy bay được em sử dụng bao gồm hardware và firmware.
Còn trạm điều khiển mặt đất sử dụng phần mềm chạy trên máy tính cá nhân
(Software) Tổng kết lại một hệ thống máy bay không người lái hoàn chỉnh bao gồm
hardware + firmware + software
● Hardware: Bao gồm các thành phần như thân máy bay, mạch điện tử, các
cảm biến …
● Firmware: Là thành phần được nạp sẵn trên phần cứng và tương thích
với phần cứng. Khi phần cứng reset firmware sẽ không bị ảnh hưởng.
Chúng được hiểu như là các ROM được nạp sẵn, để phần cứng có thể
khởi động đi vào hoạt động.
● Software: Phần mềm kết nối với máy bay sử dụng giao diện đồ họa
nhằm thiết lập cấu hình, các thông số và kiểm tra. Đồng thời được sử
dụng để lên kế hoạch, vận hành các nhiệm vụ, hành trình bay.
CHƯƠNG 2: THIẾT BỊ HỆ THỐNG
2.1 Board Navio2
2.1.1 Giới thiệu về Navio và Navio2
Cùng với sự phát triển của khoa học kĩ thuật thì các hệ thống bay cũng ngày
càng nhiều tính năng. Những chiếc may bay ngày nay con người tạo ra không đơn
thuần chỉ cho chúng bay bằng cách vận hành cơ khí như thời kỳ đầu mà nhu cầu đi
kèm với chúng còn là xác định các thông số như độ cao, áp suất, thăng bằng, điều
hướng… với những cảm biến có độ chính xác cao. Đối với những hệ thống bay
không người lái thì việc điều khiển, lập hành trình bay là điều tất yếu. Đi kèm với
những yêu cầu trên thì những thiết bị với đầy đủ các cảm biến cộng với hệ điều
hành thời gian thực giúp ta có thể thao tác dễ dàng thì nhiều thiết bị đã được con
người tạo ra. Trong đó có board mạch Navio2
Navio được phát triển bởi Emlid LTD. Sự phát triển của dự án Navio gắn liền
với sự phát triển của một loại máy tính nhỏ nhưng vô cùng nhiều tính năng –
Raspberry pi. Sự ra đời của Navio đã giải quyết sự thiếu gắn kết giữa các servo, các
bộ phận cảm biến cho các hệ thống lái tự động với những kết nối cần hệ thống dây
vô cùng phức tạp. Lợi dụng sức mạnh xử lý, các tính năng tuyệt vời của Raspberry
pi,Emlid đã cho ra đời dự án Navio. Không lâu sau đó Emlid đã cho ra đời Navio2
dựa trên phiên bản đầu tiên nhưng với nhiều sự cải tiến.
2.1.2 Thông số kĩ thuật
Navio được tạo ra với các thông sô kĩ thuật như sau:
● MPU9250: Đơn vị đo quán tính gồm 9 trục. Trong đó có con quay hồi
chuyển gồm 3 trục để đo vận tốc góc, gia tốc kế gồm 3 trục để đo trọng
lực và từ kế 3 trục để đo từ trường Trái Đất. Với những thuật toán phức
tạp, dữ liệu lấy từ MPU9250 có thể được lấy để sử dụng tính toán hướng
đi cho autopilot
● MS5611: Cảm biến đo nhiệt độ với độ phân giải cao
● ADS1115: là bộ ADC 4 kênh. Mỗi kênh có độ phân giải lên tới 16 bit
● PCA9685: Bộ điều khiển PWM có thể điều khiển tới 13 servo,rơle hay
led. Các đầu ra PWM đều đã được thiết kế sẵn trên board. Raspberry Pi
thiếu các đầu ra PWM và chính Navio được tạo ra để giải quyết vấn đề
này.
● M85RC FRAM: là viết tắt của Ferromagnetic RAM. Nó có chu kì
ghi/xóa lên tới 1000 tỷ lần. Nếu ứng dụng cần khả năng truy cập lại liên
tục bộ nhớ gốc, FRAM có thể tiết kiệm tài nguyên thẻ SD và mang tính
tin cậy cao
● Các cổng giao tiếp I2C,SPI,UART: Các cổng kết nối này đều đã được
thiết kế và chú thích trên board mạch. Chúng được thiết kế để Navio có
thể kết nối đến bất kì ngoại vi, module nào để có thể mở rộng nền tảng
hoạt động.
● Thiết bị thu GNSS: Navio được trang bị bộ thu GNO-6T GNSS u-blox.
U-blox nổi tiếng vì tạo ra các mô-đun GPS có độ nhạy cao và mạnh mẽ,
nhưng điều làm cho nó trở nên đặc biệt trong các thiết bị thu khác là
không chỉ là khả năng xác định tọa độ, mà còn xác định độ chính xác của
GPS thông qua bộ thời gian thực Kinematics. Tuy nhiên, u-blox không
hỗ trợ xử lý RTK ... nhưng Raspberry Pi với Navio có thể làm điều đó
thay tỏa. Người nhận có thể tạo ra các khoảng thời gian với độ chính
xác 15ns
Với Navio2 có nhiều cải tiến tích cực so với Navio:
● Dual IMU: Ở Navio chỉ có 1 chip IMU, nhưng sang phiên bản này tích hợp
2 chip giúp cải thiện hiệu năng, độ chính xác cảm biến trong quá trình bay
● Cải thiện hiệu suất hoạt động của MS5611: ở phiên bản Navio+, các cảm
biến hầu hết giao tiếp với vi xử lý qua bus I2C và MS5611 cũng vậy nên trong quá
trình chuyển đổi dữ liệu nhiễu hoàn toàn có thể xảy ra. Đó chính là lý do MS5611 là
cảm biến duy nhất trên bus I2C để khắc phục điều này
● Mạch nguồn: Phần module nguồn của Navio2 đã được cải tiến thêm với hệ
mạch 3 diode,từ đó thêm các tính năng cảnh báo vượt áp và quá dòng để bảo vệ
cổng module nguồn và cả Raspberry Pi.
● Vi điều khiển: ở phiên bản Navio+, PCA9685 là chip được chọn để phát
xung PWM. Khi điều khiển 1 động cơ thì không gặp phải vấn đề gì nhưng khi điều
khiển nhiều động cơ cùng một lúc thì giới hạn của nó là không có khả năng kiểm
soát tần số cho các kênh riêng biệt dẫn tới động cơ và servo hoạt động trên các tần
số khác nhau. Vấn đề đó được Emlid giải quyết bằng cách thay thế bởi STM32F103
● Giải mã PPM/SBUS được thực hiện bởi vi điều khiển thay vì DMA: bộ
truyền từ nguồn phát transmitter và bộ nhận tín hiệu trên Navio+ sử dụng tín hiệu
PPM/SBUS để giao tiếp. Navio+ sử dụng DMA (Direct Memory Acess) để lấy mẫu
tín hiệu PPM vốn khá nặng nề với tài nguyên hệ thống. Trên Navio2, nhiệm vụ lấy
mẫu tín hiệu được đầy cho vi xử lý còn bộ nhớ trên Raspberry Pi dùng để xử lý các
nhiệm vụ khác
● AUX SPI: Navio2 sử dụng bộ điều khiển AUXSPI trên Raspberry Pi. Việc
sử dụng 2 bộ giao tiếp SPI cho phép phân phối cảm biến hiệu quả hơn
● Cổng ADC: Các kênh ADC nằm trên Navio+ không thực sự tiện dụng cho
người dùng bởi các kênh ADC chỉ có sẵn trên các tấm nện dưới cùng của board
mạch. Trên Navio2, các kênh ADC được truy cập dễ dàng qua cổng DF13.
● Tích hợp Linux tốt hơn: Các tín hiệu PWM, ADC, SBUS và PPM cũng có
thể được xử lý trong phần code của Linux, có thể truy cập xử lý bằng bất kỳ ngôn
ngữ lập trình nào, chính vì tính mở rộng cao nên có thể dễ dàng phát triển sâu hơn ở
các dự án trong tương lai
Hình SEQHình
Hình2.1:
\* ARABIC
Navio2 và
2: Navio2
một số tính
và một
năng
số nổi
tínhbật
năng nổi bật
2.2 Raspberry pi
2.2.1 Giới thiệu về Raspberry pi
Raspberry pi và một máy tính nhỏ chạy hệ điều hành Linux. Được tạo ra với
mục tiêu chính là giảng dạy máy tính cho trẻ em. Được phát triển bởi Raspberry
Founation – tổ chức phi lợi nhuận với tiêu chí xây dựng hệ thống mà nhiều người có
thể sử dụng được trong nhiều công việc tùy biến khác nhau.
Raspberry Pi sản xuất bởi 3 OEM: Sony, Qsida, Egoman. Và được phân phối
chính bởi Element14, RS Components và Egoman.
Nhiệm vụ ban đầu của dự án Raspberry Pi là tạo ra máy tính rẻ tiền có khả năng
lập trình cho những sinh viên , nhưng Pi đã được sự quan tầm từ nhiều đối tượng
khác nhau . Đặc tính của Raspberry Pi xây dựng xoay quanh bộ xử lí SoC
Broadcom BCM2835 ( là chip xử lí mobile mạnh mẽ có kích thước nhỏ hay được
dùng trong điện thoại di động ) bao gồm CPU , GPU , bộ xử lí âm thanh /video , và
các tính năng khác … tất cả được tích hợp bên trong chip có điện năng thấp này .
Raspberry Pi không thay thế hoàn toàn hệ thống để bàn hoặc máy xách tay .
Bạn không thể chạy Windows trên đó vì BCM2835 dựa trên cấu trúc ARM nên
không hỗ trợ mã x86/x64 , nhưng vẫn có thể chạy bằng Linux với các tiện ích như
lướt web , môi trường Desktop và các nhiệm vụ khác . Tuy nhiên Raspberry Pi là
một thiết bị đa năng đáng ngạc nhiên với nhiều phần cứng có giá thành rẻ nhưng rất
hoàn hảo cho những hệ thống điện tử , những dự án DIY , thiết lập hệ thống tính
toán rẻ tiền cho những bài học trải nghiệm lập trình …
2.2.2 Cấu tạo phần cứng
Raspberry pi bao gồm 2 phiên bản là A và B nhưng model B được sử dụng thông
dụng hơn bao
gồm
phần
cứng
những
cổng
giao
tiếp:
Hình
SEQ
Hình
Hình
2.2
\* và
ARABIC
Cấu
trúc3:
cơCấu
bản
trúc
của
cơ
Raspberry
bản của Pi
Raspberry Pi
●
SoC 700MHz với 512MB RAM .
●
1 cổng HDMI cho đầu ra âm thanh / video số .
●
1 cổng video RCA cho đầu ra video Analog .
●
Jack Headphone Stereo 3.5mm cho đầu ra âm thanh Analog .
●
02 cổng USB .
●
01 đầu đọc thẻ nhớ SD để tải hệ điều hành .
●
01 cổng Ethernet LAN.
●
01 giao diện GPIO (General Purpose Input/Output) .
Model A cũng gần tương tự như Model B nhưng có sự thay đổi như sau
●
1 cổng USB
●
Không có cổng Ethernet vì thế người dùng phải thêm Adapter USB
Wi-Fi hoặc Ethernet nếu cần kết nối mạng .
●
256MB RAM .
2.3 Cài đặt, ghép nối phần cứng
2.3.1 Kết nối Navio2 với Raspberry Pi
Như đã đề cập, Navio2 sinh ra là để kết hợp với Raspberry Pi. Trong quá trình
làm đề tài, chúng em sử dụng Raspberry Pi 3 model B, quá trình kết hợp rất đơn
giản như sau:
● Kết nối Navio2 với Raspberry bằng cổng kết nối 40 chân.
● Cố định Navio2 và Raspberry bằng ốc vít.
Hìnhnguồn
SEQ Hình
\* ARABIC 4:Sau khi kết nối giữa Raspberry
2.3.2 Cấp
cho Navio2
Theo lời khuyên của nhà sản xuất, nguồn cung cấp cho Navio2 chỉ được nằm
trong khoảng từ 4.8-5.4V, nếu không có thể gây hỏng hóc cho toàn bộ mạch Navio2
cũng như Raspberry Pi
Ta có nhiều cách cấp nguồn cho Navio2. Dù là cấp nguồn bằng cách nào đi nữa
thì Navio2 đều đã được thiết lập chế độ bảo vệ bằng các diode.
● Với môi trường kiểm thử và phát triển: Ta có thể cấp nguồn cho Navio2
thông qua Raspberry Pi. Kết nối nguồn của Raspberry Pi với cổng USB 5V/1A của
máy tính hoặc sử dụng nguồn do nhà sản xuất cung cấp 5V/2.5A.
● Trên các thiết bị không người lái: Ở các thiết bị bay không người lái thì
việc lấy nguồn từ Raspberry Pi như môi trường kiểm thử dường như là không thể.
Lúc này Navio2 nên được cấp nguồn từ Pin thông qua cổng POWER được kết nối
với một module nguồn.
Hình SEQ Hình \* ARABIC 5: Cấp nguồn cho Navio2 bằng module
● Trường hợp dự phòng: Trường hợp khi nguồn chính hết điện hoặc xảy ra
sự cố với module nguồn thì Navio2 được cấp nguồn từ các servo.
2.3.3 Cấp nguồn cho hệ thống Servo
Để cung cấp điện cho servo, ta sẽ sử dụng các kết nối BEC cắm lên các kết nối
còn trống trên dải cổng kết nối dành riêng cho servo trên Navio2. Sử dụng BEC
cung cấp điện áp trong khoảng từ 4.8 – 5.3V. Do hệ thống Servo và động cơ cần
hoạt động mạnh nên ta sử dụng các BEC này có dòng đầu ra lên tới 20A
Hình SEQHình
Hình2.5:
\* ARABIC
Cấp nguồn
6: Cấp
cho nguồn
servo (nguồn:
cho servo
Emlid)
(nguồn: Emlid)
2.3.4 Ăng-ten GNSS
Ăng-ten GNSS được cắm vào cổng MCX ngay giữa bảng mạch.
2.3.5 Kết nối với bộ thu
Navio2 nhận các tín hiệu PPM và SBUS làm tín hiệu đầu vào.
Ta cần lưu ý là không kết nối servo với bộ thu RC. Bởi servo thường tiêu thụ rất
nhiều điện năng dẫn đến bộ thu kết nối với Navio2 có thể không được cung cấp
điện. Khi đó mất tín hiệu điều khiển sẽ rất nguy hiểm.
Emlid chỉ ra một số máy thu với đầu ra PPM như sau:
Với ACCST:
● Bộ thu ACCST FrSKY D4R-II 4 kênh 2.4GHz
● FrSKY V8R7-SP ACCST 7 kênh RX với PPM tổng hợp
● FrSKY D8R-XP
Với FASST
● Máy thu tương thích FASST FrSKY TFR4 4 kênh 2.4GHz
2.3.6 Kết nối đầu ra với động cơ và Servo
ESCs
ESCs được kết nối với đầu ra RC có nhãn từ 1 đến 14 trên các chân 2.54mm.
Ta chỉ kết nối chân tín hiệu của ESC tới Navio2 bởi phần nguồn ta lấy trực tiếp
từ Pin chứ không kết nối dây nguồn tới các chân nguồn của Navio2 bởi chúng
không đủ cung cấp cho ESC và còn có thể gây nhiễu