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

Thiết kế xe điều khiển từ xa có livestream camera

75 185 1

Đ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 75
Dung lượng 2,36 MB

Nội dung

Tên đề tài: THIẾT KẾ XE ĐIỀU KHIỂN TỪ XA CÓ LIVE STREAM CAMERA GVHD TUẦN 1 Gặp GVHD nhận đề tài TUẦN 2 Viết đề cương chi tiết TUẦN 3 Tìm hiểu các đề tài đã nghiên cứu lien quan đến đ

Trang 1

Chuyên ngành: Kỹ thuật Điện - Điện tử Mã ngành: 01

I TÊN ĐỀ TÀI: THIẾT KẾ XE ĐIỀU KHIỂN TỪ XA CÓ LIVE STREAM

CAMERA

II NHIỆM VỤ

1 Các số liệu ban đầu:

- Nguyễn Đình Phú, Giáo trình kỹ thuật số, Trường ĐH Sư Phạm Kỹ Thuật, 2014

- Nguyễn Ngọc Hùng, Nguyễn Ngô Lâm, Nguyễn Văn Phúc, Giáo trình Kỹ thuật

truyền số liệu, Trường ĐH Sư Phạm Kỹ Thuật, 2011

- Nguyễn Mạnh Tiến, Điều khiển robot công nghiệp, Trường ĐH Bách Khoa

Hà Nội, 2007

- Võ Minh Huân, Phạm Quang Huy, Lập trình điều khiển với Rasberry, Nhà xuất

bản Thanh Niên

2 Nội dung thực hiện:

- Điều khiển xe robot chạy tiến ,lùi ,trái và phải

- Sử dụng camera để truyền hình ảnh trực tiếp

- Viết chương trình điều khiển cho kit raspberry pi 3

- Thiết lập web server và thực hiện truyền dữ liệu

- Thi công mô hình xe robot

- Sản phẩm cuối cùng và chạy thực tế

III NGÀY GIAO NHIỆM VỤ: 06/04/2018

IV NGÀY HOÀN THÀNH NHIỆM VỤ: 06/07/2018

V HỌ VÀ TÊN CÁN BỘ HƯỚNG DẪN: TS Nguyễn Thị Lưỡng

Trang 2

Tên đề tài: THIẾT KẾ XE ĐIỀU KHIỂN TỪ XA CÓ LIVE STREAM CAMERA

GVHD

TUẦN 1 Gặp GVHD nhận đề tài

TUẦN 2 Viết đề cương chi tiết

TUẦN 3 Tìm hiểu các đề tài đã nghiên cứu lien quan đến điều khiển tự động

TUẦN 4 Gặp GVHD để báo cáo về hướng thực hiện đề tài

TUẦN 5 Tìm hiểu về Rasberry, camera, động cơ servo, module điều khiển động cơ

TUẦN 6 Lập trình giao tiếp Rasberry với camera và điều khiển động cơ

TUẦN 7 Tìm hiểu về web server và các giao thức truyền dữ liệu

TUẦN 8 Truyền hình ảnh trực tiếp từ camera lên web server

TUẦN 9 Điều khiển xe tiến lùi trái phải từ web server

TUẦN 10 Hoàn thành mô hình, cân chỉnh hệ thống

TUẦN 11 Viết báo cáo đồ án

TUẦN 12 Chỉnh sửa và hoàn thiện báo cáo

GV HƯỚNG DẪN (Ký và ghi rõ họ và tên)

Trang 3

LỜI CAM ĐOAN

Đề tài này là do tôi tự thực hiện dựa vào một số tài liệu trước đó và không sao chép từ tài liệu hay công trình đã có trước đó

Người thực hiện đề tài

SVTH2: HÀ ĐĂNG LỘC

Trang 4

LỜI CẢM ƠN

Sau khi hoàn thành luận văn, nhóm em xin chân thành cảm ơn đến:

Cô Nguyễn Thị Lưỡng, người đã tận tình giúp đỡ và luôn quan tâm chúng em

trong suốt quá trình thực hiện luận văn Cô luôn tạo mọi điều kiện và thể hiện sự quan tâm đến nhóm chúng em Một lần nữa chúng em xin chân thành cảm ơn cô

Chúng em xin chân thành gửi lời cảm ơn đến tất cả quý thầy cô trong khoa Điện - Điện tử, những người đã truyền đạt cho chúng em những kiến thức vô cùng quý báu làm

hành trang vững chắc cho chúng em bước vào đời Và cũng cảm ơn trường đã tạo cho chúng em một môi trường học tập thật tốt trong suốt thời gian qua

Cuối cùng chúng em xin gửi lời cảm ơn đến gia đình và bạn bè đã động viên và giúp đỡ chúng em trong thời gian thực hiên luận văn này

Do hạn chế về thời gian và kinh nghiệm nên chắc chắn rằng luận văn này không tránh khỏi những sai sót nhất định Em rất mong được sự góp ý và hướng dẫn thêm ttừ quý thầy cô

Một lần nữa chúng em xin chân thành cảm ơn !

Tp Hồ Chí Minh,ngày 3 tháng 7 năm 2018

Sinh viên Sinh viên

Trang 5

MỤC LỤC

Trang bìa ……… i

Nhiệm vụ đồ án………ii

Lịch trình ……… iii

Cam đoan ……… iv

Lời cảm ơn ……… v

Mục lục ……… vi

Liệt kê hình vẽ…….……… … viii

Liệt kê bảng vẽ ……… x

Tóm tắt ……….….xi

CHƯƠNG 1 TỔNG QUAN……….……… 1

1.1 ĐẶT VẤN ĐỀ……….1

1.2 MỤC TIÊU……… 2

1.4 GIỚI HẠN………….……… 2

1.5 BỐ CỤC………… ……… 4

CHƯƠNG 2 CƠ SỞ LÝ THUYẾT……… 4

2.1 TỔNG QUAN VỀ XE ĐIỀU KHIỂN LIVE STREAM CAMERA……… 4

2.1.1 Giới thiệu sơ lược về điều khiển từ xa……….……….4

2.1.2 Giới thiệu và stream video lên trang web……….4

2.1.3 Định nghĩa……….5

2.1.4 Ưu điểm ….……… ………….5

2.2 GIỚI THIỆU PHẦN CỨNG……… 6

2.2.1 Giới thiệu Raspberry Pi ……… 6

2.2.2 Module camera ……… 10

2.2.3 Module điều khiển động cơ L298……… ……… 11

2.2.4 Động cơ servo SG90……… 11

2.2.5 Usb Tp-Link Tl-Wn725n……… 12

2.2.6 Động cơ giảm tốc DC……….… … 13

CHƯƠNG 3 TÍNH TOÁN VÀ THIẾT KẾ……… ……15

3.1 GIỚI THIỆU ……… 15

3.2 TÍNH TOÁN VÀ THIẾT KẾ HỆ THỐNG ……… 15

3.2.1 Thiết kế sơ đồ khối hệ thống ……….15

3.2.2 Tính toán và thiết kế mạch……… ……16

3.2.3 Sơ đồ nguyên lý của toàn mạch……… ………19

CHƯƠNG 4 THI CÔNG HỆ THỐNG……….20

4.1 GIỚI THIỆU……… 20

4.2 THI CÔNG HỆ THỐNG……… 20

Trang 6

a Giao thức RTSP……… ……….……….… 22

b Giao thức RTP……… ……….……….……… 25

c Giao thức RTMP - Real Time Messaging Protocol……….……….….……27

d FFMPEG - Phầm mềm xử lý audio, video hiệu quả ……….……… … 29

4.2.3 Thiết lập web server và thực hiện truyền dữ liệu……….……….31

4.2.4 Thi công phần cứng của xe robot……….…………32

4.2.5 Giao diện web server nhúng hình ảnh camera……….……… 33

4.3 LẬP TRÌNH HỆ THỐNG……… ………….….34

4.3.1 Lưu đồ giải thật điều khiển động cơ servo……… ….34

4.3.2 Lưu đồ giải thật điều khiển động cơ DC……….…… 35

4.4 HƯỚNG DẪN SỬ DỤNG, THAO TÁC……… … 37

4.4.1 Các bước để tạo một web server cho phép streaming dùng Pi-Camera…….….35

4.4.2 Cài đặt và điều khiển trên mạng Wan……….…… 40

a Kết nối với Website trung gian……… …40

b.Cài đặt phần mềm cho Raspberry Pi……….…… ……41

c.Cách kết nối Raspberry với remot3.it……….… … …42

CHƯƠNG 5 KẾT QUẢ_NHẬN XÉT_ĐÁNH GIÁ……….……… 46

5.1 KẾT QUẢ……….… …46

5.2 NHẬN XÉT VÀ ĐÁNH GIÁ……… …46

5.2.1 Khoảng cách……… 46

5.2.2 Tốc độ mạng ……… ….49

5.2.3 Frame per second……… … 52

CHƯƠNG 6 KẾT LUẬN VÀ HƯỚNG PHÁT TRIỂN……… 56

6.1 KẾT LUẬN ……… …56

6.2 HƯỚNG PHÁT TRIỂN……… 56

TÀI LIỆU THAM KHẢO………

PHU LỤC

Trang 7

LIỆT KÊ HÌNH VẼ

Hình Trang

Hình 2.1 Hình ảnh điều khiển từ xa xe robot live stream camera 5

Hình 2.2 Raspberry Pi Mode B 6

Hình 2.3 Cấu tạo của Raspberry Pi 8

Hình 2.4 Module Camera 10

Hình 2.5 Module mạch cầu H L298 10

Hình 2.6 Động cơ SG90 11

Hình 2.7 Usb tp-link tl-wn725n 12

Hình 2.8 Động cơ giảm tốc DC 13

Hình 3.1 Sơ khối của hệ thống 14

Hình 3.2 Camera kết nối Rasberry qua cáp ribbon 15

Hình 3.3 Khối điều khiển kết nối với động cơ 16

Hình 3.4 Động cơ servo SG90 16

Hình 3.5 Động cơ giảm tốc DC 17

Hình 3.6 Khối xử lý trung tâm 17

Hình 3.7 Web server giao tiếp với kit qua Usb Wifi 18

Hình 3.8 Sạc dự phòng cấp nguồn cho kit raspberry pi 3 18

Hình 3.9 Nguồn cấp cho khối điều khiển module L298N 19

Hình 3.10 Sơ đồ nguyên lý toàn mạch 19

Hình 4.1 Streaming Video 21

Hình 4.2 OPTIONS Request 22

Hình 4.3 DESCRIBE Request 23

Hình 4.4 SETUP Request 24

Hình 4.5 PLAY Request 24

Hình 4.6 PAUSE Request 25

Hình 4.7 TEARDOWN Request 25

Hình 4.8 Header của RTP Packet 26

Hình 4.9 Giao thức RTMP - Real Time Messaging Protocol 28

Hình 4.10 Tổng hợp các máy chủ trên thế giới 31

Hình 4.11 Giao diện tạo nút nhấn điều khiển 32

Hình 4.12 Kết quả phần cứng xe 32

Hình 4.13 Kết quả streaming video và điều khiển qua Web 33

Hình 4.14 Sơ đồ giải thuật điều khiển servo 34

Hình 4.15 Lưu đồ giải thuật điều khiển động cơ DC 35

Trang 8

Hình 4.18 Giao diện Putty 42

Hình 4.19 Địa chỉ hostname và port thông qua SSH 43

Hình 4.20 Hostname và port khi kết nối VNC 43

Hình 4.21 Giao diện phần mềm TightVNC 44

Hình 4.22 Giao diện nhập mật khẩu kết nối 44

Hình 4.23 Giao diện Raspberry sau khi đã kết nối 45

Hình 5.1 Ảnh hưởng khoảng cách đến quá trình stream video 47

Hình 5.2 Ảnh hưởng tốc độ mạng đến quá trình stream video 50

Hình 5.3 Ảnh hưởng Frame per second đến quá trình stream video 53

Trang 9

LIỆT KÊ BẢNG

Bảng Trang

Bảng 2.1: Tổng quan về thông số của Raspberry Pi 8

Bảng 2.2: Trạng thái của Led khi kit hoạt động ……… .9

Bảng 2.3: Thông số kĩ thuật usb tp-link tl-725n ……… 12

Bảng 4.1: So sánh giữa hai giao thức HTTP với RTMP ……… 29

Bảng 5.1 Ảnh hưởng khoảng cách đến quá trình stream video ……… 48

Bảng 5.2 Ảnh hưởng khoảng cách đến quá trình điều khiển robot ……… 48

Bảng 5.3 Ảnh hưởng tốc độ mạng đến quá trình stream video ……….………… … 51

Bảng 5.4 Ảnh hưởng tốc độ mạng đến quá trình điều khiển robot ……… …… 51

Bảng 5.5 Ảnh hưởng fps đến quá trình stream video ……… 54

Bảng 5.6 Ảnh hưởng fps đến quá trình điều khiển robot ……… 54

Trang 10

TÓM TẮT

Với sự cách mạng của nền công nghiệp 4.0, thế giới đã gần như không còn khoảng cách Chỉ cần một nút nhấn, mọi thiết bị có thể được điều khiển ở bất cứ đâu Để bắt kịp xu hướng đó, nhóm sinh viên quyết định thực hiện đề tài “Điều khiển xe từ xa có live stream camera”

Đề tài trình bày về lý thuyết của Raspberry Pi và một ứng dụng rất phổ biến trong cộng đồng từ Raspberry Pi Một ứng dụng có thể thay thế con người vào được những nơi nguy hiểm đến tính mạng

Nguyên lý hoạt động cụ thể:

 Raspberry Pi sẽ nhận lệnh từ người điều khiển thông qua webserver để thực hiện lệnh rồi truyền lệnh để điều khiển động cơ

 Camera sẽ nhận lệnh stream và phản hồi lại Raspberry

Pi rồi truyền lên webserver để cho người điều khiển biết thông tin hoạt động

hình xe hoàn chỉnh, điều khiển tiến, lùi, trái, phải ổn đinh và mượt mà, đồng thời, chất lượng hình ảnh truyền từ xe lên trình duyệt web rõ nét và có

độ trễ thấp Qua đó, nhóm sẽ phát triển đề tài và đưa sản phẩm vào thực tiễn nhằm phục vụ đời sống nâng cao của con người

Trang 11

Chương 1 TỔNG QUAN

1.1 ĐẶT VẤN ĐỀ

Thời gian qua chúng ta thường hay nghe nhắc đến nền công nghiệp 4.0 còn gọi là công nghiệp lần thứ tư Đó là sự tiến bộ công nghệ tạo ra sự kết nối thế giới thực, thế giới số và thế giới sinh vật hữu cơ tạo ra những công cụ sản xuất giữa thực

và ảo Những thành phần điển hình của nền công nghiệp 4.0 bao gồm sự xuất hiện của Internet vạn vật (IoT), thành phố thông minh, trí tuệ nhân tạo, xe tự lái, robot, máy in 3D, vật liệu mới, công nghệ nano cùng đột phá về nhận thức trong quy trình sinh học

Nói về IoT hay còn có tên đầy đủ là “Internet of Things” dịch nôm na là “Vạn vật kết nối Internet” Nó là một hệ thống với mọi thiết bị liên quan đến nhau, mọi vật được kết nối với nhau qua một giao thức chung đó là mạng truyền thông hay Internet Hiểu một cách đơn giản, bạn chỉ cần một thiết bị kết nối mạng là có thể điều khiển được nó mà bất cứ bạn đang ở bất kì đâu Điều khiển thiết bị từ xa với IoT thật đơn giản khi bây giờ bạn chỉ cần kết nối internet cho thiết bị mình cần điều khiển phải không nào?

Dựa vào các ứng dụng thực tiễn của điều khiển từ xa ta có thể chia làm 2 dạng: Điều khiển từ xa vô tuyến và điều khiển từ xa hữu tuyến

 Điều khiển từ xa vô tuyến:

Có thể điều khiển từ xa bằng tia sáng hồng ngoại hay sóng siêu âm Môi trường truyền là không khí Với tia hồng ngoại ta chỉ có thể điều khiển các thiết bị ở khoảng cách gần Vì vậy nó được ứng dụng nhiều cho các thiết bị dân dụng

 Điều khiển từ xa hữu tuyến:

Với dạng điều khiển này ta lợi dụng vào đường truyền của internet để điều khiển các thiết bị từ xa

Đối với hệ thống điều khiển xa bằng mạng không dây thì giới hạn về khoảng cách là yếu điểm của kỹ thuật này, ngược lại với mạng internet đã được mở rộng với

Trang 12

quy mô toàn thế giới thì giới hạn xa không phụ thuộc vào khoảng cách đã mở ra một lối thoát mới trong lĩnh vực tự động điều khiển

Hiện nay, do nhu cầu trao đổi thông tin của người dân ngày càng tăng đồng thời việc gắn các thiết bị internet ngày càng phổ biến rộng rãi, do đó việc sử dụng mạng internet để truyền tín hiệu điều khiển là phương thức thuận tiện nhất, tiết kiệm nhiều thời gian cho công việc, vừa đảm bảo các tính năng an toàn cho các thiết bị điện gia dụng vừa tiết kiệm được chi phí sử dụng và đảm bảo an toàn cho tính mạng và tài sản của mỗi người dân

1.2 MỤC TIÊU

 Đề tài có những mục tiêu chính như sau :

- Thiết kế sản phẩm hoàn chỉnh gồm xe điều khiển từ xa, gắn camera live stream qua web server sử dụng Raspberry Pi, dùng Wifi

- Viết chương trình điều khiển cho kit Raspberry Pi, thiết lập web server và thực hiện truyền dữ liệu

1.3 NỘi DUNG NGHIÊN CỨU

 NỘI DUNG 1: Thu thập dữ liệu quy trình thiết kế một hệ thống điều khiển xe có live stream camera

 NỘI DUNG 2: Các giải pháp thiết kế hệ thống, mô hình điều khiển xe với chức năng live stream

 NỘI DUNG 3: Lựa chọn các thiết bị trong việc thiết kế mô hình điều khiển xe live stream camera

 NỘI DUNG 4: Viết chương trình và thiết kế hệ thống điều khiển

 NỘI DUNG 5: Thiết kế mô hình

 NỘI DUNG 6: Đánh giá kết quả thực hiện

Trang 13

 Chất lượng video live stream chỉ nhìn rõ trong môi trường ánh sáng đầy đủ

 Tính bảo mật chưa cao (Các thành viên truy cập cùng một mạng đều điều khiển được khi biết IP của Raspberry Pi)

1.5 BỐ CỤC

Nội dung đề tài gồm các phần sau:

Chương 1: Tổng quan

 Đặt vấn đề

 Mục tiêu của đề tài

 Nhiệm vụ của đề tài

 Giới hạn

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

 Giới thiệu hệ điều hành Raspberry Pi

 Giới thiệu Board mạch Raspberry Pi

 Giới thiệu mạch công suất L298N

 Giới thiệu về module camera

Chương 3: Tính toán và thiết kế

Trang 14

Chương 2 CƠ SỞ LÝ THUYẾT

2.1.1 Giới thiệu sơ lược về điều khiển từ xa

Dựa vào các ứng dụng thực tiễn của điều khiển từ xa, ta có thể chia làm 2 dạng: Điều khiển từ xa vô tuyến và điều khiển từ xa hữu tuyến

 Điều khiển từ xa hữu tuyến:

Có thể điều khiển từ xa bằng tia sáng hồng ngoại hay sóng siêu âm Môi trường truyền là không khí Với tia hồng ngoại ta chỉ có thể điều khiển các thiết bị ở khoảng cách gần Vì vậy, nó được ứng dụng nhiều cho các thiết bị dân dụng

 Điều khiển từ xa hữu tuyến:

Đối với hệ thống điều khiển xa bằng mạng không dây thì giới hạn về khoảng cách là yếu điểm của kỹ thuật này, ngược lại với mạng internet đã được mở rộng với quy mô toàn thế giới thì giới hạn xa không phụ thuộc vào khoảng cách đã mở ra một lối thoát mới trong lĩnh vực tự động điều khiển

Hiện nay, do nhu cầu trao đổi thông tin của người dân ngày càng tang, đồng thời việc gắn các thiết bị internet ngày càng phổ biến rộng rãi, do đó việc sử dụng mạng internet để truyền tín hiệu điều khiển là phương thức thuận tiện nhất, tiết kiệm nhiều thời gian cho công việc, vừa đảm bảo các tính năng an toàn cho các thiết bị điện gia dụng vừa tiết kiệm được chi phí sử dụng và đảm bảo an toàn cho tính mạng

và tài sản của mỗi người dân

2.1.2 Giới thiệu và stream video lên trang web

Streaming video là một kỹ thuật được sử dụng khá phổ biến trong các ứng dụng mạng Rất nhiều các địa chỉ ứng dụng rộng rãi trong thực tế như: các phần mềm (media player, web browser, ) trên các máy khách truy cập và xem video từ các máy chủ theo mô hình server/client; các ứng dụng hội họp trực tuyến, đào tạo từ xa; giám sát, điều khiển từ xa qua hình ảnh thời gian thực, v.v Trong đó có nhiều ứng dụng sử dụng hệ thống nhúng triển khai kỹ thuật này

Streaming video sử dụng cách thức phát lại các đoạn video được lưu trữ trên các máy tính trên mạng tới người dùng đầu cuối muốn xem đoạn video mà không cần tải đoạn video đó về trên máy tính Về bản chất, streaming video là quá trình

Trang 15

chia nhỏ file video thành các frame, rồi lần lượt gửi từng frame tới một bộ đệm trên máy tính của người xem và hiển thị nội dung frame đó Và quá trình này tuân thủ chặt chẽ về ràng buộc theo thời gian, nói khác là tuân thủ chặt chẽ theo giao thức RTSP, RTP và RTCP Với đặc tính như vậy thì streaming video là kỹ thuật cũng khá phức tạp để triển khai Nhưng với những lợi ích mà kỹ thuật streaming video đem lại, chúng ta hoàn toàn có thể triển khai được kỹ thuật này trên thực tế

2.1.3 Định nghĩa

Điều khiển xe robot từ xa có live stream camera với camera được tích hợp vào

xe sẽ truyền hình ảnh trực tiếp lên hệ thống mạng internet Từ hệ thống mạng internet xem được hình ảnh trực tiếp từ xe robot truyền lên đồng thời có thể điều khiển xe di chuyển qua động cơ DC được gắn trên xe trong phạm vi nhất định Một xe robot điều khiển từ xa có live stream camera gồm các tính năng:

 Xe có thể chay tới, lui, quay trái, quay phải, dừng

 Điều khiển được camera quay trái, quay phải

Trang 16

Raspberry Pi được bắt đầu phát triển từ năm 2006, phiên bản đầu tiên dựa trên

vi điều khiển AVR Atmel ATmega644 Ngày 16 tháng 6 năm 2012, những chiếc Raspberry Pi đầu tiên được gửi đến tay người nhận Đến ngày 22/5 hơn 20.000 chiếc

đã được bán ra Ngày 16/7/2012, Quỹ Raspberry Pi thông báo có 4000 sản phẩm được phân phối mỗi ngày và bắt đầu cho phép người dùng mua “máy tính nhỏ” này với số lượng lớn Trong vòng 3 năm kể từ khi được bán ra, đã có hơn 5 triệu chiếc

Pi đã được bán ra thị trường (theo số liệu thống kê của trang chủ Raspberry Pi) Vậy điều gì làm nên thành công ngoài sức tưởng tượng của Raspberry Pi ?

Trang 17

Raspberry Pi có mức giá quá hấp dẫn: chỉ từ 25$ cho một chiếc bo mạch có thể làm hầu như mọi ứng dụng hằng ngày như lướt web, lập trình, xem phim HD đến những ý tưởng mà bạn không ngờ đến như điều khiển robot, nhà thông minh, Một điều quan trọng là nó tiết kiệm điện và khả năng chạy liên tục 24/24

Raspberry Pi chạy hệ điều hành Linux: 99% những thứ mà bạn có thể làm trên máy tính đều có thể làm trên Window và quan trọng là tất cả đều miễn phí

Raspberry Pi có kích thước tí hon: chỉ tương đương như một chiếc thẻ ATM và nặng chưa đầy 50 gram Gắn với chiếc tivi bạn có thể biến nó thành một thiết bị giải trí thông minh trong phòng khách Gắn với màn hình và bàn phím, chuột bạn có thể biến nó thành một chiếc máy tính đúng nghĩa Nhỏ gọn và tiện lợi

Cộng đồng Raspberry Pi phát triển rất nhanh trên thế giới: Hầu hết những thắc mắc của bạn đều được giải đáp rất nhanh va còn hơn thế nữa: bạn có thể tìm thấy hàng ngàn dự án đã thực hiện và vố số ý tưởng độc đáo Với những ưu điểm độc đáo trên, Raspberry đã vượt khỏi biên giới vủa trường học và trở thành thiết bị ưa thích của rất nhiều người đam mê điện tử và lập trình Sự thành công của nó đã mở

đã một bước phát triển mới cho tin học: đem máy tính và cảm hứng lập trình đến gần mọi người hơn bao giờ hết

Raspbery Pi sử dụng chip Broadcom BCM2835 SoC (System on Chip) có chứa

bộ xử lý ARM1176JZF-S 700 Mhz (có thể ép xung lên 1Ghz), GPU Video Core IV,

và bộ nhớ RAM 256 sau nâng cấp lên 512MB Nó không có ổ cứng hay SSD đi kèm mà sử dụng thẻ SD để lưu trữ dữ và khởi động hệ điều hành

Raspbery Pi sử dụng chip Broadcom BCM2835 SoC (System on Chip) có chứa bộ xử lý ARM1176JZF-S 700 Mhz (có thể ép xung lên 1Ghz), GPU Video Core IV, và bộ nhớ RAM 256 sau nâng cấp lên 512MB Nó không có ổ cứng hay SSD đi kèm mà sử dụng thẻ SD để lưu trữ dữ và khởi động hệ điều hành

Trang 18

2 Phần cứng

Bảng 2.1 Tổng quan về thông số của Raspberry Pi

Hình 2.3 Cấu tạo của Raspberry Pi

Video outputs Composite RCA hoặc HDMI

Audio outputs 3.5 mm jack , HDMI

Lưu trữ SD/MMC/SDIO Card Slot

Hệ điều hành Debian GNU/Linux, Raspian OS, Arch Linux

ARM, RIC OS, Free BSD, Plan 9…

Trang 19

- CPU: “Trái tim “ của Raspberry Pi Chip của Raspberry Pi là 32 bit, 700 Mhz

System on Chip, được xây dựng trên kiến trúc ARM11 Model B có 512MB RAM

- SD Card Slot: Raspberry không có ổ cứng Vì thế mọi thứ đều được lưu trữ trên SD

Card từ hệ điều hành đến dữ liệu

- Cổng USB: Model B có 2 cổng USB 2.0, có thể sử dụng để cắm các thiết bị ngoại vi

như bàn phím, con chuột

- Cổng Ethernet: Model B có cổng Ethernet chuẩn RJ45

- Cổng HDMI: Cổng HDMI cung cấp âm thanh và video số Có 14 chuẩn video khác

nhau được hỗ trợ, và tín hiệu HDMI có thể chuyển đổi về DVI (Digital Video Interface – Cổng truyền trực tiếp từ video số tới màn hình), cáp Composite (là loại 3 đầu dây ra 2 cho âm thanh và 1 cho hình ảnh) hoặc SCART (chuẩn giao tiếp châu Âu) với bộ chuyển đổi bên ngoài

Bảng 2.2 Trạng thái của kit khi hoạt động

- Ngõ ra Audio analog: thiết kế cắm giắc audio chuẩn 3.5mm, hướng tới lái tải có trở

kháng cao, tuy nhiên chất lượng nhõ ra kém hơn so với cổng HDMI khi bạn kết nối tới TiVi thông qua HDMI

- Ngõ ra Composite video: Cổng chuẩn loại RCA cung cấp tín hiệu video NTSC hoặc

PAL Định dạng video qua cổng này độ phân giải thấp hơn so với cổng HDMI

- Nguồn ngõ vào: Điều đầu tiên bạn nhận ra là không có cổng chuyển đổi nguồn trên

Pi Cổng micro USB chỉ được sử dụng là nguồn cho Pi

Trang 20

- Kết nối raspberry thông qua cáp ribbon đi kèm dài 15cm

- Camera Module đƣợc hỗ trợ phiên bản mới nhất của Raspbian

2.2.3 Module điều khiển động cơ L298N

Hình 2.5 Module mạch cầu H L298N

Trang 21

Module L298N có thể điều khiển 2 động cơ DC hoặc 1 động cơ bước, có 4 lỗ nằm ở 4 góc thuận tiện cho người sử dụng cố định vị trí của module

+ Có thể gắn tản nhiệt chống nóng cho IC, giúp IC có thể điều khiển với dòng đỉnh đạt 2A

+ IC L298N được gắn với các đi-ốt trên board giúp bảo vệ vi xử lý chống lại các dòng điện cảm ứng từ việc khởi động/ tắt động cơ

 Thông số kĩ thuật:

- Driver: L298N tích hợp hai mạch cầu H

- Điện áp điều khiển: +5V ~ +12 V

- Dòng tối đa cho mỗi cầu H là: 2A

- Điện áp của tín hiệu điều khiển: +5 V ~ +7 V

- Dòng của tín hiệu điều khiển: 0 ~ 36 mA

- Công suất hao phí: 20W (khi nhiệt độ T = 75 °C)

2.2.4 Động cơ servo SG90

Servo là một dạng động cơ điện đặc biệt Không giống như động cơ thông thường cứ cắm điện vào là quay liên tục, servo chỉ quay khi được điều khiển (bằng xung PWM) với góc quay nằm trong khoảng bất kì từ 0o - 180o Mỗi loại servo có kích thước, khối lượng và cấu tạo khác nhau Có loại thì nặng chỉ 9g (chủ yếu dùng trên máy bay mô mình), có loại thì sở hữu một momen lực rất lớn (vài chục Newton/m), hoặc có loại thì khỏe và nhông sắc chắc chắn…

Hình 2.6 Động cơ SG90

Trang 22

Bảng 2.3 Thông số kĩ thuật usb tp-link tl-725n

Chuẩn không dây IEEE 802.11b, IEEE 802.11g, IEEE 802.11n

Tốc độ tín hiệu

EIRP

11b: lên tới 11 Mbps (động) 11g: lên tới 54 Mbps (động) 11n: lên tới 150 Mbps (động)

< 20 dBm

Độ nhạy tiếp nhận

130M: -68 dBm@10% PER 108M: -68 dBm@10% PER 54M: -68 dBm@10% PER 11M: -85 dBm@10% PER 6M: -88 dBm@10% PER 1M: -90 dBm@10% PER Chế độ không dây Chế độ Ad-Hoc / Infrastructure

Bảo mật không dây Hỗ trợ các mã hóa: 64/128 WEP, WPA/WPA2,

WPA-PSK/WPA2-PSK(TKIP/AES), hỗ trợ IEEE 802.1X Công nghệ không dây BDPSK, DQPSK, CCK, OFDM, 16-QAM, 64-QAM

Trang 23

2.2.6 Động cơ giảm tốc DC

Động cơ giảm tốc DC đƣợc sử dụng nhiều để thiết kế các loại robot mô hình Với giá thành rẻ, dễ sử dụng và mang tính chất ƣu việt nên đƣợc ứng dụng rất nhiều

Hình 2.8 Động cơ giảm tốc DC

 Thông số kỹ thuật

- Điện áp hoạt động: 3V~9V (hoạt động tố ở 6V~8V)

- Moment xoắn cực đại: 800gf cm min 1:48 (3V)

- Tốc độ không tải: 125 vòng/ 1 phút (3V) (Với bánh xe 66mm: 26m/1p)

208 vòng/ 1 phút (5V) (Với bánh xe 66mm: 44m/1p)

- Dòng không tải: 70mA (tối đa 250mA)

Trang 24

CHƯƠNG 3 TÍNH TOÁN VÀ THIẾT KẾ

3.1 GIỚI THIỆU

Trong đề tài này nhóm thiết kế mô hình xe robot gồm một kit Raspberry Pi tích hợp camera, thông qua mạch cầu H điều khiển 2 động cơ giảm tốc DC, điều khiển góc quay camera thông qua động cơ RC Servo 9G

Mô h nh cần thiết kế như sau:

 Hệ thống điều khiển trung tâm: sử dụng board Raspberry Pi 3

 Hệ thống mạch công xuất điều khiển động cơ: sử dụng module L298N để điều khiển động cơ DC và Servo

 Hệ thống xe robot: Sử dụng 2 động cơ cho 2 bánh xe và 1 khung xe

 Hệ thống Web Server: Sử dụng giao diện Web để nhận hình ảnh truyền lên và điều khiển xe

3.2 TÍNH TOÁN VÀ THIẾT KẾ HỆ THỐNG

3.2.1 Thiết kế sơ đồ khối hệ thống

H nh 3.1 Sơ khối của hệ thống

Mạch gồm các khối chính:

KHỐI XỬ LÝ TRUNG TÂM

KHỐI NGUỒN CAMERA

KHỐI CÔNG SUẤT WEB

SERVER

Trang 25

 Khối nguồn: Cung cấp nguồn cho toàn bộ mạch hoạt động

 Web Server: Nhận hình ảnh truyền lên và gởi tín hiệu điều khiển động cơ về khối xử lý trung tâm

 Khối xử lý trung tâm: nhận tín hiệu từ Web Server từ ngõ vào để xử lý tín hiệu đưa ra khối điều khiển

 Khối công suất : nhận tín hiệu từ ngõ ra của khối xử lý trung tâm để điều khiển động cơ

 Camera: Nhận tín hiệu từ khối xử lý trung tâm để xử lý tín hiệu đưa hình ảnh

về

3.2.2 Tính toán và thiết kế mạch

a Camera

Hình 3.2 Camera kết nối Rasberry qua cáp ribbon

Camera được tích hợp trên kit Rasberry qua cáp ribbon nên sẽ dùng nguồn trên kit mà không cần sử dụng nguồn bên ngoài

Module camera có một cảm biến 8-Megapixel sử dụng để quay video với độ nét cao, cũng như chụp ảnh tĩnh Khá là đơn giản để sử dụng cho người mới bắt đầu chỉ việc kết nối với kit qua cáp ribbon Đặc biệt hỗ trợ video 1080p30, 720p60 rất thích hợp trong việc quay video ứng dụng để live stream chẳng hạn Nhóm đã khai thác đặc điểm này để chọn thiết bị ghi hình cho quá trình live stream lên web

Trang 26

b Khối công suất

Hình 3.3 Khối công suất kết nối với động cơ

Khối công suất dùng module L298N kết nối và điều khiển 2 động cơ DC, 1 động cơ RC Servo 9G

Động cơ RC Servo 9G sẽ được kết nối với nguồn 5V trên module L298N Động cơ DC sẽ được kết nối với 4 ngõ ra output của module L298N

Ngõ vào của module L298N sẽ được kết nối với 4 ngõ ra của kit Raspberry (Ở đây là ngõ ra GPIO trên kit)

Trên module L298N còn có một nguồn DC 5V rất tiện lợi cho việc cấp nguồn cho động cơ RC Servo 9G (Không cấp nguồn 5V từ kit vì gây sụt áp trên kit ảnh hưởng đến quá trình hoạt động của kit)

Module L298N tiện lợi, dễ sử dụng, công suất cấp cho mạch khi không tải chỉ 25W nên nhóm chọn module trên để làm mạch công suất điều khiển các động cơ trong hệ thống xe

 Động cơ servo SG90

Hình 3.4 Động cơ SG90

Chọn động cơ SG90 dùng để điều khiển camera xoay trái, phải hoặc giữa Vì module camera kèm phụ kiện đi kèm nặng ~10g trong khi moment xoắn của SG90

Trang 27

lên tới 1.8kg/cm Ngoài ra SG90 chỉ nặng 9g rất nhỏ gọn, tốc độ hoạt động rất nhanh 60 độ trên 0.1 giây, điều khiển dễ dàng từ kit thông qua việc điều chỉnh độ rộng xung (PWM) trên GPIO

 Động cơ giảm ốc DC

Hình 3.5 Động cơ giảm tốc DC

Chọn động cơ giảm tốc DC để điều khiển xe chạy tới, lui, xoay trái, xoay phải Động cơ giảm tốc DC với tốc độ hoạt động tối đa 44mét/1phút ở điện áp 5V có thể hoàn toàn đáp ứng đƣợc yêu cầu về hệ thống Điều khiển tốc độ bằng độ rộng xung thông qua chân GPIO trên kit rất dễ sử dụng Với thiết kế đơn giản, nhỏ gọn nên nhóm đã chọn động cơ trên để thiết kế cho phần di chuyển của xe

c Khối xử lý trung tâm

Hình 3.6 Khối xử lý trung tâm

Kit Raspberry Pi sử dụng nguồn cấp qua cổng Micro USB 5V

Trang 28

Hình 3.8 Sạc dự phòng cấp nguồn cho kit raspberry Pi

- Module điều khiển động cơ L298N có điện áp hoạt động 5V - 12V

- Động cơ DC hoạt động ở mức điện áp 3V – 9V

- Động cơ Servo RC 9G hoạt động ở điện áp 5V

 Qua trên nhóm dùng nguồn 12VDC để cấp cho module L298N bằng cách ghép 3 pin Panasonic ( Li-ion IRC18650 4.2V4200mAh ) nối tiếp với nhau Web

Server

Trang 29

Hình 3.9 Nguồn cấp cho khối điều khiển module L298N

3.2.3 Sơ đồ nguyên lý của toàn mạch

H nh 3.10 Sơ đồ nguyên lý toàn mạch

Sơ đồ nguyên lý toàn mạch gồm:

 Camera v2 kết nối với kit qua cáp ribbon

 Usb tp-link tl-725n kết nối với kit qua cổng USB 2.0

 Nguồn 5V – 2A cấp cho kit qua cổng Usb micro

 Nguồn 12V – 4A cấp cho module L298N hoạt động

 2 động cơ motor A, motor B gắn vào ngõ output trên module L298N đƣợc điều khiển bởi kit thông qua ngõ vào trên module

 Động cơ Servo RC 9G(SG90) đƣợc cấp nguồn 5V từ module L298N và đƣợc điều khiển trực tiếp từ kit

Trang 30

CHƯƠNG 4: THI CÔNG HỆ THỐNG

4.1 GIỚI THIỆU

Streaming video là một kỹ thuật được sử dụng khá phổ biến trong các ứng dụng mạng Streaming video sử dụng cách thức phát lại các đoạn video được lưu trữ trên

các máy tính trên mạng tới người dùng đầu cuối muốn xem đoạn video mà không cần tải đoạn video đó về trên máy tính Về bản chất, streaming video là quá trình chia nhỏ file video thành các frame, rồi lần lượt gửi từng frame tới một bộ đệm trên máy tính của người xem và hiển thị nội dung frame đó

4.2 THI CÔNG HỆ THỐNG

4.2.1 Tìm hiểu kỹ thuật video streaming theo mô hình server-client

Tóm tắt cơ bản về kỹ thuật streaming video, các giao thức cần thiết:

Streaming video sử dụng cách thức phát lại các đoạn video được lưu trữ trên các máy tính trên mạng tới người dùng đầu cuối muốn xem đoạn video mà không cần tải đoạn video đó về trên máy tính Về bản chất, streaming video là quá trình chia nhỏ file video thành các frame, rồi lần lượt gửi từng frame tới một bộ đệm trên máy tính của người xem và hiển thị nội dung frame đó Và quá trình này tuân thủ chặt chẽ về ràng buộc theo thời gian, nói khác là tuân thủ chặt chẽ theo giao thức RTSP, RTP và RTCP Với đặc tính như vậy thì streaming video là kỹ thuật cũng khá phức tạp để triển khai Nhưng với những lợi ích mà kỹ thuật streaming video đem lại, chúng ta hoàn toàn có thể triển khai được kỹ thuật này trên thực tế

4.2.2 Kỹ thuật streaming video

Các bước thực hiện kỹ thuật streaming video:

- Phần mềm máy khách (media player, web browser, .) cần kết nối được và xác định file video trên máy streaming server muốn xem

- Yêu cầu streaming file video đó sẽ được gửi tới streaming server để tìm file video

đó

- Chương trình thực hiện streaming chạy trên máy streaming server sẽ chia file video thành các frame rồi gửi các frame đó tới máy yêu cầu sử dụng các giao thức

Trang 31

ràng buộc về thời gian (RTSP, RTP, RTCP,RTMP)

- Khi các frame về máy khách, sẽ được lưu trữ trong vùng đệm và nội dung frame sẽ được giải mã (decode) và hiển thị thông qua các chương trình chơi video (ví dụ VLC, Strobe Media …)

Hình 4.1 Streaming Video

Một số khái niệm được sử dụng trong streaming video:

- Streaming video (luồng video) thực chất là quá trình truyền các frame của file

video tới người nhận

- Demand streaming (stream theo yêu cầu) là quá trình streaming một file video có

sẵn (đã được lưu trên ổ cứng) tới người nhận

- Live streaming (stream từ một nguồn tạo video) là quá trình streaming trực tiếp từ

các frame video được tạo ra từ các thiết bị thu nhận video (như camera) tới người nhận

- MPEG, JPEG, H.264 , VP8 là các thuật toán mã hóa cho các luồng video

- Bitstream là khái niệm ám chỉ một luồng video từ máy chủ streaming tới máy

khách nhận các frame video dựa vào giao thức MMS hay RTP

- Codec: thuật ngữ ám chỉ chung cho các thuật toán mã hóa đường truyền trong quá

trình streaming audio hay video

- RTSP (Real Time St reaming Protocol) là giao thức mạng điều khiển quá trình

streaming video hay streaming audio

- RTP (Real-time Transport Protocol) là giao thức chuẩn định dạng cho gói tin

(packet) video hay audio được truyền trên mạng

Trang 32

a Giao thức RTSP

RTSP (Real Time Streaming Protocol) là một giao thức điều khiển trên mạng được thiết kế để sử dụng giao tiếp giữa máy client và máy streaming server Giao thức này được sử dụng để thiết lập và điều khiển phiên giao dịch giữa các máy tính (end points)

Về hình thức giao thức RTSP cũng có nét tương đồng với giao thức HTTP, RTSP định nghĩa một bộ các tín hiệu điều khiển tuần tự, phục vụ cho việc điều khiển quá trình playback Trong khi giao thức HTTP là giao thức không có trạng thái thì RTSP là giao thức có xác định trạng thái Một định danh sử dụng khi cần thiết

để theo dõi giao thức hiện tại của quá trình streaming video gọi là số hiệu session Cũng giống như HTTP, RTSP sử dụng TCP là giao thức để duy trì một kết nối đầu cuối tới đầu cuối và các thông điệp điểu khiển của RTSP được gửi bởi máy client tới máy server Nó cũng thực hiện điều khiển lại các đáp trả từ máy server tới máy client Cổng mặc định được sử dụng bởi giao thức này là 554

Để thực hiện kỹ thuật streaming video theo giao thức RTSP nhất thiết máy client phải gửi lên máy server (streaming server) những request sau và phải theo một trình tự nhất định

Đầu tiên, máy client sẻ gửi yêu cầu OPTIONS kèm với đường link trỏ tới file video cần xem tới máy server, để máy server chấp nhận đường link này

Hình 4.2 OPTIONS Request

Trang 33

Nếu máy server trả về mã chấp nhận đường link trên thì máy client tiếp tục gửi yêu cầu DESCRIBE tới máy server để máy server phân tích đường link Một yêu cầu DESCRIBE bao gồm một đường link RTSP có dạng (rtsp://) và kiểu dữ liệu đáp trả từ phía server Cổng mặc định được sử dụng cho giao thức RTSP là 554 và cổng này được sử dụng cho cả giao thức của tầng giao vận UDP và TCP Thông điệp đáp lại từ máy server cho yêu cầu DESCRIBE của máy client bao gồm bản tin miêu tả chi tiết (Session Description Protocol – SDP) Ngoài ra trong thông điệp trả về từ máy server còn liệt kê các đường link thích hợp hơn tới file video cần chơi khi mà trong file video đó có trộn lẫn giữa phụ đề và âm thanh Và điều quan trọng nhất ở trong bản tin miêu tả phiên giao dịch này là streamid của luồng video và streamid của luồng âm thanh khi mà đoạn video đó có lồng âm thanh vào trong các frame

Hình 4.3 DESCRIBE Request

Trang 34

Hình 4.4 SETUP Request.

Sau khi hoàn tất yêu cầu SETUP, cấu hình được các luồng dữ liệu để chuẩn bị streaming, máy client sẽ gửi yêu cầu PLAY để thực hiện truyền các frame dữ liệu thật sự từ máy server tới máy client , và các frame dữ liệu này sẽ được lưu trong một

bộ đệm của máy client, các frame này sẽ được giải mã (decode), rồi được hiển thị bởi trình chơi file video và âm thanh (VLC) Yêu cầu PLAY bao gồm một đường dẫn trỏ tới file video cần phát giống như các yêu cầu trước đó Đường link này có thể là đường tổng hợp (để phát các luồng dữ liệu) hoặc là môt đường link đơn lẻ (chi phí một luồng dữ liệu duy nhất) Trong yêu cầu PLAY, máy client cũng sẽ chỉ ra một dải (range) chỉ rõ một cách cụ thể số hiệu frame bắt đầu được gửi và số hiệu frame kết thúc, Nếu như không chỉ rõ tham số này, thì toàn bộ các frame sẽ được gửi tới máy client Và nếu như luồng dữ liệu có bị tạm dừng (pause) thì luồng dữ liệu này cũng sẽ được phục hồi ở frame mà nó tạm dừng truyền

Hình 4.5 PLAY Request

Trong quá trình streaming video, nếu như người dùng muốn tạm dừng quá trình streaming thì sẽ gửi yêu cầu PAUSE tới máy server, yêu cầu này sẽ làm tạm dừng một hay nhiều luồng dữ liệu đang truyền các frame về máy client Máy server

sẽ tạm dừng gửi các frame dữ liệu tới máy client

Trang 35

Hình 4.6 PAUSE Request

Trong quá trình streaming video, nếu như người dùng muốn dừng hẳn quá trình streaming thì sẽ gửi yêu cầu TEARDOWN để dừng truyền và kết thúc một phiên giao dịch của giao thức RTSP Máy server sẽ đáp trả lại thông điệp xác nhận cho yêu cầu TEARDOWN và sẽ dừng gửi các frame tới máy client

b Giao thức RTP

RTP (Real-time Transport Protocol) định dạng một gói tin RTP được dùng để truyền trên luồng dữ liệu video hay audio dựa trên địa chỉ IP RTP được sử dụng trong các hệ thống giải trí hoặc giao tiếp mà có triển khai kỹ thuật streaming video như là telephone, ứng dụng hội họp từ xa, hệ thống giám sát bằng hình ảnh dựa trên IP

RTP được sử dụng kết hợp với giao thức RTCP (RTP Control Protocol) Trong

đó, RTP được sử dụng để đóng gói các frame dữ liệu (audio và video) để truyền trên luồng dữ liệu thì RTCP được sử dụng để giám sát chất lượng của dịch vụ (QoS) hoặc để thống kê theo các tiêu chí trong quá trình truyền tải Thường thì giao thức RTP sử dụng cổng có số hiệu chẵn còn giao thức RTCP sử dụng cổng có số hiệu lẻ RTP được thiết kế cho quá trình streaming theo thời gian thực từ theo kiểu điểm tới điểm Giao thức này cung cấp tiện ích để dò ra những gói tin RTP đã quá

Trang 36

hạn Trên thực tế, gói tin RTP sử dụng địa chỉ IP trên mạng để định danh các máy tính gửi và nhận RTP cũng hỗ trợ truyền dữ liệu tới nhiều điểm đích thông qua địa chỉ IP multicast

RTP được phát triển bởi tổ chức Audio/Video Transport của tổ chức tiêu chuẩn IETF RTP được sử dụng kết hợp với các giao thức khác như H.323 và giao thức RTSP Chuẩn RTP định nghĩa một cặp giao thức làm việc với nhau đó là RTP

và RTCP RTP được sử dụng để truyền tải dữ liệu đa phương tiện và giao thức RTCP được sử dụng để gửi các thông tin điều khiển với các tham số QoS

Các giao thức thành phần: RTP gồm 2 giao thức con là RTP và RTCP

Giao thức truyền, RTP quy định cách thức truyền dữ liệu theo thời gian thực Thông tin được cung cấp bởi giao thức này bao gồm thời gian đồng bộ (timestamps), số thứ tự gói tin (phục vụ cho việc tìm gói tin bị lạc) và chi phí cho việc mã hóa định dạng dữ liệu

Giao thức điều khiển, RTCP được sử dụng cho việc kiểm tra chất lượng (QoS) luồng dữ liệu và thực hiện đồng bộ giữa các luồng dữ liệu So với RTP, thì băng thông của RTCP sẽ nhỏ hơn, vào cỡ 5%

Một giao thức cho phép miêu tả dữ liệu đa phương tiện nhưng không bắt buộc phải kèm theo là giao thức miêu tả phiên (Session Description Protocol – SDP) Phiên (Session): Một phiên RTP được thiết lập cho mỗi luồng dữ liệu Một phiên bao gồm một địa chỉ IP với một cặp cổng của giao thức RTP và RTCP Ví dụ, các luồng video và audio sẽ có các phiên RTP khác nhau, bên nhận sẽ nhận một cách riêng biệt giữa dữ liệu video và audio thông qua 2 cổng khác nhau cho 2 giao thức RTP và RTCP Thường thì số hiệu cổng của RTP là một số chẵn trong khoảng

1024 tới 65535 và cổng của RTCP là một số lẻ kế tiếp

Trang 37

Hình 4.8 Header của RTP Packet

Kích thước nhỏ nhất của một header của gói tin RTP là 12 bytes Sau phần header chính, là phần header mở rộng và không cần thiết phải có phần header này Chi tiết các trường trong một header như sau:

Version (2 bits): Cho biết phiên bản của giao thức này Phiên bản hiện tại là phiên bản 2

P (Padding) (1 bit): Cho biết số các byte mở rộng cần thêm vào cuối của gói tin RTP Ví dụ trong trường hợp ta muốn sử dụng các thuật toán mã hóa, ta có thể thêm vào một số byte vào phần kết thúc của gói tin để tiến hành mã hóa frame trên đường truyền

X (Extension) (1bit): Cho biết có thêm phần header mở rộng vào sau phần header chính hay không

CC (CSRC Count) (4 bit): Chứa con số định danh CSRC cho biết kích thước

cố định của header

M (Marker) (1 bit): Cho biết mức của ứng dụng và được định nghĩa bởi một profile Nếu được thiết lập, có nghĩa là dữ liệu hiện tại đã được tính toán chi phí một cách thích hợp

PT (Payload Type) (7 bit): Cho biết định dạng của file video Đây là một đặc tả được định nghĩa bởi một profile RTP

Sequence Number (16 bits): số hiệu của frame Và sẽ được tăng lên 1 đơn vị cho mỗi gói tin RTP trước khi gửi và được sử dụng bởi bên nhận để dò ra các gói bị lạc và có thể phục hồi lại gói có số thứ tự đó

Timestamp (32 bits): Được sử dụng thông báo cho bên nhận biết để phát lại frame này trong khoảng thời gian thích hợp

SSRC (32 bits): Định danh cho nguồn streaming Mỗi nguồn cho phép streaming video sẽ định danh bởi một phiên RTP duy nhất

c Giao thức RTMP - Real Time Messaging Protocol

RTMP (Real Time Messaging Protocol) là giao thức không công khai do Adobe phát triển và giữ bản quyền, được thiết kế cho ứng dụng thời gian thực, cho phép ứng dụng sử dụng video và âm thanh với tốc độ nhanh, hạn chế bị giật hình hoặc méo tiếng

Ngày đăng: 21/05/2019, 15:26

Nguồn tham khảo

Tài liệu tham khảo Loại Chi tiết
[1] Nguyễn Đình Phú, Giáo trình kỹ thuật số, Trường ĐH Sư Phạm Kỹ Thuật, 2011 Sách, tạp chí
Tiêu đề: Giáo trình kỹ thuật số
[2] Nguyễn Việt Hùng, Nguyễn Ngô Lâm, Nguyễn Văn Phúc, Giáo trình Kỹ thuật truyền số liệu, Trường ĐH Sư Phạm Kỹ Thuật, 9.2011 Sách, tạp chí
Tiêu đề: Giáo trình Kỹ thuật truyền số liệu
[3] SIMCOM, Hardware Design, SIMCOM Datasheet, 12.2009 Sách, tạp chí
Tiêu đề: Hardware Design
[4] SIMCOM, SIM900 AT Commands Set, SIMCOM Datasheet, 1.2010 Sách, tạp chí
Tiêu đề: SIM900 AT Commands Set
[5] Kỹ thuật lập trình C cơ bản và nâng cao – Phạm Văn Ất ( NXB GTVT Hà Nội) Khác
[7] Các phần mềm hỗ trợ : Win32DiskImager, WinSCP, Putty Khác

TỪ KHÓA LIÊN QUAN

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

TÀI LIỆU LIÊN QUAN

w