1. Trang chủ
  2. » Giáo Dục - Đào Tạo

BÁO CÁO NGHIÊN CỨU KHOA HỌC robot IoRT

18 196 0

Đ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

Định dạng
Số trang 18
Dung lượng 1,44 MB

Các công cụ chuyển đổi và chỉnh sửa cho tài liệu này

Nội dung

Công việc thiết kế Robot hiện nay không chỉ dừng lại ở sự vận hành tự động mà phải dùng để thu thập, truyền dữ liệu từ xa gửi về cho người dùng qua Internet, cũng như tương tác trực tiếp

Trang 1

SỞ GIÁO DỤC VÀ ĐÀO TẠO TP HỒ CHÍ MINH PHÒNG GIÁO DỤC VÀ ĐÀO TẠO HUYỆN HÓC MÔN

TRƯỜNG THCS NGUYỄN AN KHƯƠNG

CUỘC THI KHOA HỌC KĨ THUẬT CẤP THÀNH PHỐ DÀNH CHO

HỌC SINH TRUNG HỌC Năm học 2018 – 2019

Tên dự án dự thi:

ROBOT IoRT THÁM HIỂM

Lĩnh vực dự thi: 20 – Robot và máy thông minh

HỌC SINH THỰC HIỆN: Đinh Quốc Huy

GIÁO VIÊN HƯỚNG DẪN: Cô Diệp Thị Thanh Thảo

NGƯỜI HƯỚNG DẪN KHOA HỌC: PGS.TS Hà Hoàng Kha

ĐỊA ĐIỂM THỰC HIỆN: 1 Trường THCS Nguyễn An Khương

2 Trường Đại Học Bách Khoa TPHCM

Tp Hồ Chí Minh, tháng 10 năm 2018

Trang 2

Mục lục

LỜI CẢM ƠN

TÓM TẮT ĐỀ TÀI 1

Chương 1 GIỚI THIỆU 1

1.1 Tổng quan về Robot IoRTthám hiểm 1

1.2 Tình hình nghiên cứu 2

1.3 Mục tiêu đề tài và phương pháp thực hiện 2

1.3.1 Mục tiêu đề tài 2

1.3.2 Mô hình thực hiện 3

1.4 Bảng phân công công việc 3

Chương 2 PHƯƠNG PHÁP THỰC HIỆN 3

2.1 Giám sát từ xa qua Web RTC 3

2.2 Thiết kế phần cứng 4

2.2.1 Sơ đồ tổng quát hệ thống 4

2.2.2 Thiết kế phần cơ khí 5

2.2.3 Lựa chọn động cơ DC và Encoder 5

2.2.4 Lựa chọn mạch cầu H 7

2.2.5 Cảm biến IMU 8

2.2.6 Kit phát triển TM4C123GXL 9

2.2.7 Kinect Xbox 360 9

2.3 Lập trình giao tiếp ngoại vi với vi điều khiển 10

Chương 3 KẾT LUẬN VÀ HƯỚNG PHÁT TRIỂN 11

3.1 Kết luận 11

3.2 Một số hình ảnh thực tế 12

3.3 Hướng phát triển 15

TÀI LIỆU THAM KHẢO 15

Trang 3

LỜI CẢM ƠN

Em xin chân thành gửi lời cảm ơn đến cô Diệp Thị Thanh Thảo đã tận tình định hướng, khơi dậy niềm đam mê khoa học và giúp đỡ trong suốt quá trình em thực hiện đề tài này

Em thật sự biết ơn thầy, cô giáo trường THCS Nguyễn An Khương

đã giảng dạy chu đáo, cung cấp những kiến thức nền tảng góp phần quan trọng để em có thể hoàn thành đề tài này Cám ơn bạn bè trong trường đã giúp đỡ và đóng góp ý tưởng

Em cũng xin gửi lời biết ơn đến những anh, chị và thầy, cô trong Khoa Điện – Điện tử trường Đại học Bách Khoa Tp Hồ Chí Minh Đặc biệt, sự hướng dẫn tận tình của hai anh Trần Minh Lợi và Hà Văn Bôn trong quá trình thực hiện đề tài

Sau cùng em xin tri ân đến gia đình luôn là động lực để vượt qua những khó khăn thử thách trong suốt quá trình học tập và rèn luyện

Tp.Hồ Chí Minh, ngày 20 tháng 10 năm 2018

Học sinh Đinh Quốc Huy

Trang 4

TÓM TẮT ĐỀ TÀI

Ngày nay cùng với sự phát triển của công nghệ 4.0, việc ứng dụng nền tảng Internet of Thing (IoT) cho các ứng dụng trong xã hội trở nên phổ biến Do đó, thiết kế Robot kết hợp với IoT cho ra đời khái niệm The Internet of Robotic Things (IoRT) trở thành xu hướng trong những năm gần đây và trong trương lai Công việc thiết kế Robot hiện nay không chỉ dừng lại ở sự vận hành tự động mà phải dùng để thu thập, truyền dữ liệu

từ xa gửi về cho người dùng qua Internet, cũng như tương tác trực tiếp từ

xa để thay thế con người thực hiện nhiệm vụ ở nhưng nơi mà con người không thể đến Những ứng dụng điển hình như các nhà thám hiểm đi vào những nơi chưa ai đến hay dò địa hình ở những nơi có chất độc hại và bom mìn, hay phục vụ cho công tác cứu hộ khi người bị kẹt trong những hang động (điển hình như việc cứu hộ đội bóng thiếu niên kẹt trong hang động ở Thái gần đây) v.v Do đó việc chế tạo các Robot IoRT thám hiểm

là điều hết sức cần thiết cho nhu cầu của xã hội

The Robot IoRT thám hiểm là loại robot có khả năng tự di chuyển, thu thập thông tin hình ảnh và vẽ lại bảng đồ địa hình từ xa cũng như livestream hình ảnh và chuyển về người dùng thông qua mạng Internet Người dùng có thể quan sát và điều khiển từ xa thông qua giao diện người dùng cùng khả năng kết nối Internet Với Robot IoRT thám hiểm, người dùng có thể tương tác với môi trường xung quanh như di chuyển, nghe và nhìn qua môi trường Internet Đề tài tập trung giải quyết những yêu cầu cơ bản của một Robot IoRT thám hiểm Đầu tiên là thiết kế phần cứng hỗ trợ khả năng di chuyển và thị giác máy tính Thứ hai là Xử lý ảnh và để nhận dạng người và vật cản Thứ ba là khả năng xây dựng bản

đồ và định vị vị trí của robot trong bản đồ đã vẽ ra Cuối cùng là streaming video và điều khiển robot từ xa qua mạng Internet thông qua giao diện người dùng

Chương 1 GIỚI THIỆU

Robot IoRT thám hiểm là một loại robot có khả năng thực hiện tác vụ dưới sự điều khiển của người sử dụng từ xa thông qua các giao thức mạng, có khả năng streaming video và hiển thị ra một màn hình giao diện gắn trên robot, từ đó robot trở thành người đại diện cho người dùng đi vào những nơi nguy hiểm để quan sát và thu thập dư liệu thay cho con người Một số sản phẩm Robot thám hiểm có mặt trên thị trường như hình 1

Trang 5

Hình 1 Một số sản phẩm Robot

Hiện nay việc nghiên cứu và chế tạo Robot khá phổ biến như cánh tay Robot, Robot tự hành, Robot điếu khiển bằng giọng nói hay sóng não… Robot IoRT thám hiểm là một hướng phát triển nghiên cứu còn khá mới mẻ ở Việt Nam Đây là một sản phẩm hứa hẹn sẽ góp phần không nhỏ cải thiện chất lượng công việc thám hiểm, làm đa dạng hóa các sản phẩm IoT được nghiên cứu chế tạo ở nước ta

1.3.1 Mục tiêu đề tài

Mục tiêu chính của đề tài là xây dựng robot RIoT với khả năng tự di chuyển đến đích và không bị va chạm cùng với khả năng giám sát và điều khiển từ xa qua mạng Internet Robot IoRT ở đây được áp dụng vào lĩnh vực thám hiểm nên đi vào những nơi nguy hiểm để thay thế con người Yêu cầu đầu tiên là khả năng tự vận hành và tránh vật cản Robot

di chuyển trong môi trường nhiều vật cản nên phải có khả năng tránh vật cản tự động Dùng camera Kinect với hệ thống các cảm biến và camera đảm nhiệm vai trò xác định vật cản và tính toán khoảng cách Để giao tiếp từ xa, Robot phải thực hiện chức năng streaming video và audio thời gian thực, một máy tính thực hiện xử lý và streaming video từ robot đến người dùng qua mạng Đồng thời máy tính này cũng nhận lệnh điều khiển từ người dùng và truyền xuống robot

Do đó nội dung chính của Robot thám hiểm:

Streaming Và Điều

khiển từ xa qua Internet Di chuyển tránh vật cản Vẽ Bản Đồ Và Định Vị

Trang 6

1.3.2 Mô hình thực hiện

Người dùng sử dụng máy tính hoặc điện thoại thông minh điều khiển robot từ xa thông qua WebRTC Trong khi điều khiển, người dùng có thể xem được luồng video stream từ robot trong thời gian thực Nhóm tự thiết kế và lắp ráp khung robot với động cơ, nguồn, vi điều khiển… Khung robot phải chịu được tải trọng của robot và có hình dạng giúp robot dễ dàng di chuyển và có Laptop kèm theo Laptop nhận dữ liệu từ camera và phát trực tiếp cho người dùng từ xa thông qua WebRTC Đồng thời laptop cũng thực hiện xử lý dữ liệu nhận được từ vi điều khiển để tính toán vị trí của robot Laptop thực hiện vẽ bản đồ môi trường từ thông tin vị trí và vật cản đo được qua Kinect Sau khi có bản đồ, robot có thể

tự di chuyển đến đích và tránh va chạm trên đường đi

Xây dựng Robot thám hiểm từ phần cứng đến phần mềm được nhóm

nghiên cứu phân công như bảng 1:

Tháng

1

Tháng

2

Tháng

3

Tháng

4

Tháng

5

Tháng

6

Thiết kế phần cứng,

lập trình hệ thống

nhúng Streaming video và

điều khiển với

WebRTC

Vẽ bản đồ và định vị

Robot

Thực nghiệm tổng

hợp báo cáo

Chương 2 PHƯƠNG PHÁP THỰC HIỆN 2.1 Giám sát từ xa qua Web RTC

Chức năng cơ bản của một Robot IoRT thám hiểm là cho phép người dùng tương tác với môi trường từ xa Người dùng có thể thấy hình ảnh thu được từ camera trang bị trên robot và điều khiển robot di chuyển theo

Hình 2 Mô hình tổng quát hệ thống Robot IoRT

Trang 7

mong muốn Streaming video thời gian thực yêu cầu độ trễ thấp, tiết kiệm băng thông Trong khi đó điều khiển từ xa yêu cầu độ tin cậy trong quá trình truyền Để giải quyết bài toán điều khiển từ xa, nhóm nghiên cứu cần xây dựng ứng dụng cho phép người dùng tương tác và tìm hiểu giao thức mạng phù hợp để truyền dữ liệu giữa người dùng và robot

WebRTC là một Web API được Google phát triển nhằm hỗ trợ streaming video trực tiếp trên trình duyệt web Một số trình duyệt web đã

hỗ trợ WebRTC là Google Chrome, Mozilla Firefox và Opera WebRTC truyền dữ liệu theo mô hình point-to-point giữa robot và người dùng theo

mô hình kết nối như hình 3 Có ba bước chính thực hiện streaming với WebRTC là xử lý luồng media ở robot, báo hiệu trao đổi thông tin cần thiết để streaming và cuối cùng là stream dữ liệu point-to-point giữa robot và người điều khiển

Hình 3 Mô hình kết nối WebRTC giữa robot và người dùng

2.2 Thiết kế phần cứng.

2.2.1 Sơ đồ tổng quát hệ thống

Robot IoRT thám hiểm yêu cầu hệ thống có khung cơ khí, các ngoại

vi và mạch điều khiển đáp ứng được yêu cầu xử lý về stream camera, tự hành tránh vật cản, điều khiển tự hành từ xa Từ những yêu cầu trên, phần cứng được sử dụng gồm: khung xe, camera Kinect, vi điều khiển giao tiếp với ngoại vi và máy tính, động cơ DC bao gồm encoder, cầu H

để điều khiển động cơ, bo mạch kết nối các ngoại vi với vi điều khiển, cảm biến IMU đo góc quay của robot, nguồn điện cấp cho hệ thống, máy tính cài đặt hệ thống ROS trên hệ điều hành Linux như hình 4

Trang 8

Hình 4 Sơ đồ khối hệ thống

2.2.2 Thiết kế phần cơ khí

Với chức năng chính của robot là tự hành tránh vật cản, phần cứng được thiết kế với hình dạng khung xe rùa như hình 5 Với hình dạng này robot có thể dựa vào bán kính khung xe và khoảng cách đến những vật cản xung quanh, sau đó máy tính thực hiện thuật toán tránh vật cản để đưa ra quyết định di chuyển cho robot Tải trọng chính của robot như bảng 1

Hình 5 Phần khung robot dạng xe rùa

PC

Nguồn cấp

Vi điều khiển

Cầu

H

Mạch đệm

Kinect

Encoder 2

Motor

2

IMU

Trang 9

Bảng 1 Tải trọng của robot

(kg)

Nguồn acquy 12V-9Ah 2.78 Kinect Xbox 360 1.5 Laptop ASUS 1.5

2.2.3 Lựa chọn động cơ DC và Encoder

Với trọng tải robot lên đến 5.78 kg trong khi không yêu cầu về tốc

độ di chuyển nhanh, động cơ DC được yêu cầu phải có hộp số giảm tốc

để tăng momen xoắn giúp việc kéo tải của động cơ điện được dễ dàng Ngoài ra để điều khiển vị trí robot dựa vào số vòng quay của bánh xe yêu cầu động cơ cần có bộ phận phản hồi thông tin về số vòng quay mà bánh

xe đã quay được, bộ phận có thể đảm nhận chức năng được gọi là encoder

Hình 5 Encoder tương đối gồm 2 kênh A và B Nhóm nghiên cứu chọn động cơ DC giảm tốc GA37-V1 kèm encoder từ như hình 6

Hình 6 Động cơ DC giảm tốc GA37-V1 kèm encoder

Trang 10

Bảng 2 Động cơ DC giảm tốc GA37-V1

Tỉ số truyền của hộp số 1:33 Điện áp hoạt động (Vdc) 6-24 Điện áp trung bình (V) 12 Tốc độ cực đại không tải (rpm) 303 Dòng điện cực đại có tải (A) 3

Bảng 3 Encoder

Điện áp hoạt động (Vdc) 3.3 Loại encoder Encoder tương đối

2.2.4 Lựa chọn mạch cầu H

Để điều khiển chiều quay, tốc độ động cơ yêu cầu cần có một mạch điện có khả năng đảo chiều dòng điện cũng như có thể điều khiển cường

độ dòng điện chảy qua động cơ Hình 7 là sơ đồ nguyên lý đơn giản của một mạch cầu H thực hiện chức năng trên:

Hình 7 Sơ đồ nguyên lý cầu H Lựa chọn cầu H thích hợp là một trong những yếu tố quyết định đến chất lượng điều khiển hệ thống motor Dựa trên dòng tải cực đại của motor GA37-V1 là 3A, ta có thể lựa chọn trên thị trường hiện nay là module cầu H VNH2SP30 như hình 8

Trang 11

Hình 8 Cầu H VNH2SP30

2.2.5 Cảm biến IMU

IMU là một thiết bị điện tử kết hợp hai loại cảm biến là cảm biến gia tốc và cảm biến con quay hồi chuyển IMU được sản xuất với công nghệ MEMS cho phép xác định góc quay, vận tốc, vị trí của các hệ thống chuyển động trong không gian ba chiều một cách hiệu quả

Hình 9 Các chiều trong không gian Nhóm sử dụng cảm biến MPU6050 như hình 10 tích hợp cảm biến con quay hồi chuyển ba trục, cảm biến gia tốc ba trục và một chip xử lý DMP thu thập và xử lý dữ liệu

Hình 10 Module cảm biến MPU6050

Trang 12

2.2.6 Kit phát triển TM4C123GXL

Tiva TM4C123GXL là kit phát triển được tích hợp sẵn vi điều khiển TM4C123GH6PM của hãng Texas Instrument Đây là dòng vi điều khiển 32 bit

𝐴𝑅𝑀® cortex𝑇𝑀- M4 80MHz

Ngoại vi được kết nối với vi điều khiển như hình 11

Hình 11 Kết nối vi điều khiển với ngoại vi Trong đó:

 PD6, PD7: được cấu hình để kết nối đến module QEI0

 PC5, PC6: được cấu hình để kết nối đến module QEI1

 PA6, PA7: được cấu hình để kết nối đến module I2C1(PA6: SCL và PA7: SDA)

 PE4, PE5: ngõ ra của module PWM0 khối tạo xung 2

 PB0, PB1: chân điều khiển chế độ hoạt động của cầu H thứ nhất VNH2SP30

 PD0, PD1: chân điều khiển chế độ hoạt động của cầu H thứ hai VNH2SP30

2.2.7 Kinect Xbox 360

Kinect Xbox 360 là một thiết bị ngoại vi thu chuyển động được hãng Microsoft nghiên cứu chế tạo dựa trên công nghệ cảm biến đo độ sâu dùng hồng ngoại của PrimeSense Kinect được ứng dụng đầu tiên trên thiết bị chơi game Xbox 360 để có thể thu được chuyển động của người chơi chuyển thành lệnh điều khiển trong game Sau đó không lâu

Trang 13

với nhu cầu phát triển những ứng dụng sâu hơn cho thiết bị mang công nghệ mới lạ này của những nhà phát triển, Microsoft đã tung ra phiên bản Kinect hỗ trợ giao tiếp PC qua cáp USB 2.0 như hình 12

Hình 12 Camera Kinect Xbox 360 Những thành phần chính của Kinect Xbox 360 gồm có:

 Camera RGB có độ phân giải 640x480 pixel và 30 khung hình/giây

 Cảm biến độ sâu gồm một máy chiếu chùm tia hồng ngoại và

camera thực hiện chức năng thu hồng ngoại có độ phân giải 320x240 pixel

 Dãy đa microphone dọc theo thân Kinect gồm bốn microphone để ứng dụng trong điều khiển bằng giọng nói

 Động cơ DC điều khiển góc ngẩng được gắn giữa thân và đế

Kinect giúp thay đổi góc quan sát của các camera

2.3 Lập trình giao tiếp ngoại vi với vi điều khiển

Giới thiệu về thƣ viện Tivaware

Tivaware là một bộ thư viện được viết bởi Texas Instrument cho phép truy cập đến những module ngoại vi của dòng vi điều khiển Tiva một cách dễ dàng Những điểm nổi bậc của bộ thư viện này là:

 Được viết hoàn toàn bằng ngôn ngữ C với cấu trúc hàm dễ hiểu, gợi nhớ

 Sách hướng dẫn chi tiết cách sử dụng các ngoại vi ở các chế độ thông dụng

 Được thiết kế để sử dụng hiệu quả về bộ nhớ và luồng xử lý

 Được cập nhật thường xuyên để có thể tối ưu hóa việc sử dụng phần cứng của dòng Tiva

Trang 14

vi của hệ thống dựa trên các hàm của thư viện Tivaware

Ví dụ code Điều khiển động cơ DC

void pid_vel_cal(pid* pid_vel_motor, float vel, float

max_response, uint16_t T_sample)

{ pid_vel_motor->pid_err = pid_vel_motor->setpoint - vel;

>p_part = >Kp *

pid_vel_motor->pid_err;

>i_part += >Ki *

pid_vel_motor->pid_err * T_sample;

pid_vel_motor->d_part = pid_vel_motor->Kd *

(pid_vel_motor->pid_err - pid_vel_motor-(pid_vel_motor->pid_err_prev) / T_sample;

pid_vel_motor->pid_result += pid_vel_motor->p_part +

pid_vel_motor-

>i_part + pid_vel_motor->d_part;

// limit output

if (pid_vel_motor->pid_result >

max_response)

pid_vel_motor->pid_result = max_response;

else if (pid_vel_motor->pid_result < -1 *

max_response) pid_vel_motor->pid_result = -1 * max_response;

pid_vel_motor->pid_err_prev = pid_vel_motor->pid_err;

}

Chương 3 KẾT LUẬN VÀ HƯỚNG PHÁT TRIỂN

3.1 Kết luận

Nhóm nghiên cứu hoàn thành thiết kế Robot thám hiểm dựa trên nền tảng IoT với các kết quả như sau:

 Về thiết kế phần cứng, nhóm đã hoàn thành thiết kế khung robot cùng với hệ thống nhúng giúp robot di chuyển trong nhà

video được stream từ robot thông qua WebRTC

 Vẽ lại được mô hình thực tế

 Robot có thể tự di chuyển tìm đường đi và tránh các vật cản để đến đích hoặc bám theo đối tượng

Ngày đăng: 25/02/2019, 19:37

TỪ KHÓA LIÊN QUAN

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

TÀI LIỆU LIÊN QUAN

w