Đồ án hệ thống giám sát môi trường ứng dụng AWS iot và raspberry pi 3 , Đồ án hệ thống giám sát môi trường ứng dụng AWS iot và raspberry pi 3 , Đồ án hệ thống giám sát môi trường ứng dụng AWS iot và raspberry pi 3 ,Đồ án hệ thống giám sát môi trường ứng dụng AWS iot và raspberry pi 3 ,Đồ án hệ thống giám sát môi trường ứng dụng AWS iot và raspberry pi 3
Trang 2TRƯỜNG ĐẠI HỌC BÁCH KHOA HÀ NỘI
VIỆN ĐIỆN TỬ - VIỄN THÔNG
Trang 3Đá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á:
Họ và tên Sinh viên: MSSV:………
Tên đồ án:
………
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)
1
Nêu rõ tính cấp thiết và quan trọng của đề tài, các vấn đề và các giả
thuyết (bao gồm mục đích và tính phù hợp) cũng như phạm vi ứng
dụng của đồ án
1 2 3 4 5
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
4 Có kết quả mô phỏng/thưc nghiệm và trình bày rõ ràng kết quả đạt
Có khả năng phân tích và đánh giá kết quả (15)
5 Kế hoạch làm việc rõ ràng bao gồm mục tiêu và phương pháp thực
hiện dựa trên kết quả nghiên cứu lý thuyết một cách có hệ thống 1 2 3 4 5
6 Kết quả được trình bày một cách logic và dễ hiểu, tất cả kết quả đều
7
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 tương lai
1 2 3 4 5
Kỹ năng viết (10)
8
Đồ á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 đá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 chương và kết luận
chương, có liệt kê tài liệu tham khảo và có trích dẫn đúng quy định
1 2 3 4 5
9 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)
10a
Có bài báo khoa học được đăng hoặc chấp nhận đăng/đạt giải
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 phát minh
sáng chế
5
10b
Được báo cáo tại hội đồng cấp Viện trong hội nghị sinh viên
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
2
10c Không có thành tích về nghiên cứu khoa học 0
Điểm tổng quy đổi về thang 10
Trang 43 Nhận xét thêm của Thầy/Cô (giảng viên hướng dẫn nhận xét về thái độ và tinh thần làm việc của sinh viên)
Ngày: / /201 Người nhận xét
(Ký và ghi rõ họ tên)
Trang 5Đá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:
………
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)
1
Nêu rõ tính cấp thiết và quan trọng của đề tài, các vấn đề và các giả
thuyết (bao gồm mục đích và tính phù hợp) cũng như phạm vi ứng
dụng của đồ án
1 2 3 4 5
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
4 Có kết quả mô phỏng/thưc nghiệm và trình bày rõ ràng kết quả đạt
Có khả năng phân tích và đánh giá kết quả (15)
5 Kế hoạch làm việc rõ ràng bao gồm mục tiêu và phương pháp thực
hiện dựa trên kết quả nghiên cứu lý thuyết một cách có hệ thống 1 2 3 4 5
6 Kết quả được trình bày một cách logic và dễ hiểu, tất cả kết quả đều
7
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 tương lai
1 2 3 4 5
Kỹ năng viết (10)
8
Đồ á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 đá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 chương và kết luận
chương, có liệt kê tài liệu tham khảo và có trích dẫn đúng quy định
1 2 3 4 5
9 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)
10a
Có bài báo khoa học được đăng hoặc chấp nhận đăng/đạt giải
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 phát minh
sáng chế
5
10b
Được báo cáo tại hội đồng cấp Viện trong hội nghị sinh viên
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
2
10c Không có thành tích về nghiên cứu khoa học 0
Điểm tổng quy đổi về thang 10
Trang 63 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)
Trang 7LỜI NÓI ĐẦU
Với sự phát triển ngày càng nhanh chóng của công nghệ, Internet of Things trí tuệ nhân tạo (AI) và Big Data đã đang và sẽ là nòng cốt cho cuộc cách mạng công nghiệp 4.0 Các nghiên cứu, ứng dụng các công nghệ này vào cuộc sống ngày càng trở nên đa dạng hơn, mở ra nhiều hướng nghiên cứu chuyên sâu vào từng lĩnh vực ứng dụng đặc thù với những đặc trưng riêng
Đời sống con người phát triển, nhu cầu về việc kết nối tập trung các thiết
bị, cập nhật trạng thái theo thời gian thực ngày càng tăng cao Điều này đã thúc đẩy
sự phát triển của IoT
Trong nội dung môn học Đồ án tốt nghiệp này, em xin chọn tìm hiểu về
“IoT Gateways” Cụ thể, em sẽ tìm hiểu các nội dung tổng quan về IoT và đi sâu tìm hiểu hạ tầng điện toán đám mây AWS IoT, phục vụ thiết kế một hệ thống giám sát môi trường với hạ tầng này
Em xin chân thành cảm ơn PGS.TS đã tận tâm hướng dẫn chúng em qua từng tuần, thảo luận về đề tài trong quá trình em tìm hiểu và thực hiện đề tài này Mặc dù đã được thầy chỉ bảo và bản thân đã cố gắng nhưng chắc chắn không tránh khỏi những thiếu sót Em rất mong nhận được những ý kiến đóng góp của thầy để
đề tài được hoàn thiện khi em thưc hiện Đồ án tốt nghiệp
Một lần nữa, em xin chân thành cảm ơn thầy
Trang 8MỤC LỤC
LỜI NÓI ĐẦU 8
MỤC LỤC 9
DANH SÁCH HÌNH VẼ 11
TÓM TẮT ĐỒ ÁN 13
NỘI DUNG 14
Chương 1 Tổng quan 14
1.1 Đặt vấn đề 15
1.2 Mục tiêu đạt được 16
1.3 Kết luận 16
Chương 2 Kiến trúc nền tảng IoT 17
2.1 Các thành phần cấu tạo nên IoT 17
2.1.1 Kết nối và đồng bộ hóa 17
2.1.2 Quản lý thiết bị 17
2.1.3 Cơ sở dữ liệu 18
2.1.4 Quản lý và xử lý hoạt động 18
2.1.5 Phân tích 18
2.1.6 Dữ liệu trực quan 18
2.1.7 Công cụ bổ sung 18
2.1.8 Các giao diện bên ngoài 18
2.2 Các loại nền tảng IoT 19
2.2.1 Connectivity/M2M platforms 19
2.2.2 IaaS backends 19
2.2.3 Hardware-specific software platforms 19
2.2.4 Consumer/Enterprise software extensions 19
2.3 Kết luận 20
Chương 3 Điện toán đám mây AWS IoT 21
3.1 Các thành phần của AWS IoT 21
3.1.1 Device gateway 21
3.1.2 Message broker 21
3.1.3 Rules engine 21
3.1.4 Security and Identity service 21
3.1.5 Registry 21
3.1.5 Group registry 22
3.1.6 Device shadow 22
3.1.7 Device Shadow service 22
3.1.8 Device Provisioning service 22
3.1.9 Custom Authentication service 22
3.1.10 Jobs Service 22
3.2 Hoạt động của AWS IoT 23
3.3 Kết luận 24
Chương 4 Tìm hiểu về các thành phần sử dụng trong hệ thống 25
Trang 94.1.1 Giới thiệu về máy tính nhúng Raspberry Pi 25
4.1.2 Đặc điểm, tính năng của Raspberry Pi 3 Model B 26
4.1.3 Sơ đồ chân GPIO Raspberry Pi 3 Model B 28
4.2 Module cảm biến nhiệt độ độ ẩm DHT11 29
4.2.1 Đặc điểm, tính năng của Module DHT11 29
4.2.2 Cách thức truyền dữ liệu 29
4.3 Module Camera cho Raspberry Pi V2 30
4.3.1 Đặc điểm, tính năng của Module Camera cho Raspberry Pi V2 30
4.4 Các công cụ phần mềm cần sử dụng 32
4.4.1 PuTTY 32
4.4.2 VNC Viewer 33
4.4.3 Advanced IP Scanner 33
4.5 Kết luận 33
Chương 5 Thực hiện hệ thống 34
5.1 Thiết kế sơ đồ khối hệ thống 34
5.1.1 Sơ đồ khối hệ thống 34
5.1.2 Chi tiết các khối 34
5.2 Cài đặt hệ điều hành và kết nối để điều khiển Raspberry Pi 35
5.2.1 Cài đặt hệ điều hành 35
5.2.2 Kết nối để điều khiển Raspberry Pi từ máy tính Windows 36
5.3 Đọc dữ liệu từ cảm biến DHT11 và gửi lên Cloud 42
5.3.1 Kết nối DHT11 với Raspberry Pi 42
5.3.2 Tạo Cefiticate trên AWS 42
5.3.3 Đọc dữ liệu từ cảm biến và gửi lên cloud 46
5.4 Stremming video từ camera lên Cloud 48
5.4.1 Kết nối Module Camera với Raspberry Pi 48
5.4.2 Tạo luồng Stream trên Kinesis AWS 50
5.4.3 Cài đặt Kinesis video streams SDK và stream video lên Cloud 54
5.5 Hoạt động của hệ thống thực tế 60
5.5.1 Chức năng đo nhiệt độ, độ ẩm và gửi thông số lên cloud 60
5.5.2 Chức năng stream video lên cloud 61
5.6 Kết luận 61
KẾT LUẬN CHUNG 62
TÀI LIỆU THAM KHẢO 63
Trang 10DANH SÁCH HÌNH VẼ
Hình 1.1 Sơ đồ khối hoạt động của hệ thống giám sát môi trường 16
Hình 2.1 Các thành phần của một nền tảng IoT 17
Hình 2.2 Minh họa hoạt động của IoT 19
Hình 3.1 Sơ đồ khối hoạt động của hạ tầng AWS IoT 23
Hình 4.1 Cấu trúc phần cứng Raspberry Pi 3 Model B 26
Hình 4.2 Sơ đồ chân GPIO Raspberry Pi 3 Model B 28
Hình 4.3 Cảm biến nhiệt độ, độ ẩm DHT11 29
Hình 4.4 Module Camera cho Raspberry Pi V2 31
Hình 5.1 Sơ đồ khối hệ thống 34
Hình 5.2 Format thẻ nhớ 35
Hình 5.3 Ghi file ISO lên thẻ nhớ 36
Hình 5.4 Kích hoạt SSH trên Raspberry Pi 36
Hình 5.5 Kết nối mạng cho Raspberry Pi 37
Hình 5.6 Scan IP 38
Hình 5.7 PuTTY 38
Hình 5.8 Thiết lập cổng điều khiển 39
Hình 5.9 Đăng nhập vào Raspbian 39
Hình 5.10 Kích hoạt VNC server 40
Hình 5.11 Đăng nhập vào Raspbian trên VNC server 41
Hình 5.12 Giao diện đồ họa điều khiển Raspberryy Pi bằng VNC server 41
Hình 5.13 Sơ đồ kết nối Raspberry Pi 3 và DHT11 42
Hình 5.14 Truy cập AWS IoT Console 43
Hình 5.15 Creat a certificate 43
Hình 5.16 Download và lưu các file key 43
Hình 5.17 Create a policy 44
Hình 5.18 Thiết lập thông số cho Policy 44
Hình 5.19 Attach policy 45
Hình 5.20 Cài đặt AWS IoT Python SDK 46
Hình 5.21 Chương trình đọc dữ liệu và gửi lên Cloud hoạt động 47
Hình 5.22 Camera Port trên Raspberry Pi 48
Hình 5.23 Raspberry Pi Configuration 49
Hình 5.24 Enabled Camera trên Raspberry Pi 49
Hình 5.25 Truy cập Kinesis video streams 50
Hình 5.26 Creat Kinesis video stream 50
Hình 5.27 Truy cập vào IAM 51
Trang 11Hình 5.28 Add user 51
Hình 5.29 Create Policy 52
Hình 5.30 Policy đã được tạo thành công 53
Hình 5.31 Attach Policy và User 53
Hình 5.32 User được tạo thành công 53
Hình 5.33 Thiết lập để Camera hoạt động 54
Hình 5.34 Cài đặt Git 54
Hình 5.35 Cài đặt Java 55
Hình 5.36 Thiết lập môi trường Java 55
Hình 5.37 Cài đặt Cmake 56
Hình 5.38 Download SDK 57
Hình 5.39 Biên dịch SDK 57
Hình 5.40 Chương trình Stream Video từ Camera lên Cloud hoạt động 58
Hình 5.41 Thanh công cụ điều khiển luống Stream 59
Hình 5.42 Hệ thống thực tế 60
Hình 5.43 Cửa sổ Terminal đọc dữ liệu cảm biến và gửi lên Cloud 60
Hình 5.44 Dữ liệu gửi lên được truy cập trên Cloud 61
Hình 5.45 Xem Stream trên Web 61
Trang 12TÓM TẮT ĐỒ ÁN
Thiết kế hệ thống giám sát môi trường ứng dụng AWS IoT và Raspberry Pi với các chức năng:
Đo đạc và gửi các thông số môi trường (nhiệt độ, độ ẩm) lên Cloud
Stream video lên Cloud
Tóm tắt nội dung các chương:
Chương 1: Tổng quan
Nội dung chương này trình bày về vấn đề được đặt ra, mục tiêu mong muốn đạt được của đồ án
Chương 2: Kiến trúc nền tảng IoT
Nội dung chương này trình bày lý thuyết về nền tảng IoT gồm có: các thành phần cấu tạo nên IoT và các loại nền tảng IoT
Chương 3 Điện toán đám mây AWS IoT
Nội dung chương này giới thiệu về nền tảng điện toán đám mây AWS IoT: các thành phần của AWS IoT, hoạt động của AWS IoT
Chương 4 Tìm hiểu về các thành phần sử dụng trong hệ thống
Nội dung chương này trình bày về thiết bị phần cứng và các công cụ phần mềm sử dụng để thực hiện hệ thống
Chương 5 Thực hiện hệ thống
Nội dung chương này trình bày quá trình xây dựng và kiểm thử chức năng của hệ thống
Trang 13NỘI DUNG
Chương 1 Tổng quan
Trong suốt quá trình lịch sử phát triển của xã hội loài người, những cuộc cách mạng công nghiệp có vai trò vô cùng quan trọng, chúng là những bước ngoặt làm thay đổi hoàn toàn phương thức sản xuất, thay đổi cuộc sống của con người
theo hướng hiện đại hơn.Những ngày gần đây, khái niệm “Cách mạng công nghiệp 4.0” liên tục xuất hiện trên các phương tiện truyền thông, từ các báo đài cho đến các
mạng xã hội
Tại sao lại gọi là “Cách mạng công nghiệp 4.0”?
Năm 1784,James Watt đã cải tiến thành công động cơ hơi nước và đó là nền tảng cho cuộc cách mạng công nghiệp đầu tiên trên thế giới khi con người dần thay thế các biện pháp sản xuất thủ công sang sử dụng máy móc Điều này đã mang đến năng suất lao động mà xã hội loài người chưa bao giờ được chứng kiến Năm 1870, động cơ điện được phát minh với hiệu suất cao hơn rất nhiều so với động cơ hơi nước, điều này đã dẫn tới cuộc cách mạng công nghiệp lần thứ hai khi mà điện năng được đưa vào sử dụng rộng rãi trong sinh hoạt và sản xuất, mang lại cho con người rất nhiều tiện nghi, xã hội loài người từ đây có những bước tiến vượt bậc Gần 100 năm sau đó, cuộc cách mạng công nghiệp lần thứ 3 đã xảy ra khi con người phát minh ra bóng bán dẫn thay thế cho đèn điện tử Phát minh ra bóng bán dẫn là tiền đề
để con người liên tục cải tiến các thiết bị điện tử Máy tính cá nhân, mạng Internet, Smartphone lần lượt ra đời làm cuộc sống của con người thay đổi với tốc độ chóng mặt Tự động hóa, công nghệ thông tin được áp dụng vào sản xuất mang đến hiệu quả lao động rất cao Cuộc cách mạng công nghiệp 4.0 thực chất là sự kế thừa những công nghệ con người đã có được từ cuộc cách mạng công nghiệp lần thứ 3 nhưng nó sẽ đẩy mạnh sự giao tiếp giữa các thiết bị hơn nữa, kết hợp các công nghệ lại với nhau IoT cùng với trí tuệ nhân tạo (AI) và Big Data sẽ là ba mũi nhọn của cuộc cách mạng 4.0 này
IoT là gì?
“Internet of Things (IoT) là một kịch bản của thế giới, khi mà mỗi đồ vật, mỗi đồ vật, con người được cung cấp một định danh của riêng mình, và tất cả có khả năng truyền tải, trao đổi thông tin, dữ liệu qua một mạng duy nhất mà không cần đến sự tương tác trực tiếp giữa người với người, hay người với máy tính IoT đã phát triển từ sự hội tụ của công nghệ không dây, công nghệ vi cơ điện tử và Internet.”
Thực chất khái niệm IoT đã có từ lâu tuy nhiên thời gian gần đây với sự bùng nổ của mạng Internet, các công nghệ kết nối không dây thì IoT mới phát triển
và thực sự len lỏi vào mọi khía cạnh của đời sống con người, hứa hẹn cho một thế giới mà mọi vật đều được kết nối với nhau, mang lại năng suất lao động cao cũng như cải thiện cuộc sống của con người
Trang 141.1 Đặt vấn đề
Giám sát môi trường là các hoạt động thu thập các số liệu về môi trường như nhiệt độ, độ ẩm, nồng độ các chất… để từ đó có thể đưa ra những đánh giá về tác động của môi trường đối với con người cũng như của con người đối với môi trường, đưa ra những dự báo để con người đối phó với những thay đổi của môi trường Việc thu thập các số liệu này phải thực hiện bằng các phép đo lường Tuy nhiên, các phép đo lường đơn (đo lường một lần) hoặc việc đo lường cách quãng được thực hiện trực tiếp bởi con người không thể mang lại số mẫu đủ lớn để thực hiện những công tác đánh giá, dự đoán Điều này dẫn đến yêu cầu về một thiết bị điện tử cho phép thực hiện các phép đo một cách tự động, liên tục, thay thế con người thu thập các số liệu này Với xu hướng Internet of Thing như hiện nay thì các thiết bị này không chỉ làm công việc đo lường thu thập các số liệu mà còn phải kết nối với mạng Internet, truyền các số liệu này lên đám mây (Cloud) để người sử dụng có thể truy cập vào và làm việc các dữ liệu này từ những địa điểm khác, cách xa khu vực được đo đạc
Các mạch điện tử kết nối với cách mạng thực hiện việc đo đạc và truyền nhận số liệu không phải là khái niệm mới Các hệ thống M2M (Machine to Machine) cổ điển đã thực hiện điều này trong suốt những thập kỷ vừa qua Tuy nhiên, theo thời hạn các hệ thống này đã bộc lộ những điểm yếu của mình, không đáp ứng được sự phát triển của công nghệ như:
Phải tạo ra các hạ tầng mạng chuyên dụng cho mỗi loại thiết bị dẫn đến sự hạn chế trong việc trao đổi thông tin giữa các thiết bị khác nhau, không tận dụng được tối đa lợi ích của hạ tầng mạng
Mỗi thiết bị chỉ thực hiện được việc đo đạc các số liệu nhất định, dẫn đến khi có yêu cầu cần đo đạc thêm các thông số khác thì rất khó để tích hợp thêm vào hệ thống những chức năng mới
Không tận dụng được hết các dữ liệu do các thiết bị tạo ra
IoT khắc phục tất cả những điểm yếu này của các hệ thống M2M kiểu cổ điển với việc tìm kiếm, kết nối những thứ mà chúng ta tương tác vào Internet, thậm chí cả những thứ mà chúng thường không được kết nối vào mạng (network) IoT tận dụng các IP đã tồn tại trên mạng thay vì tạo ra các hạ tầng mạng chuyên dụng như cách làm thế hệ hiện tại của M2M, vì vậy chúng tạo ra một mạng lưới toàn cầu của các thiết bị (Things) Và một Cloud được tạo ra sẽ là nơi lưu trữ một lượng lớn thông tin, xử lý trích xuất cho con người những dữ liệu có giá trị nhất Tuy nhiên, IoT cũng đặt ra một thử thách đó là kết nối các thiết bị vào mạng khi mà có quá nhiều IoT node có giới hạn về bộ nhớ, khả năng lưu trữ và tính toán và không thể kết nối đến IP network một cách trực tiếp
Tạo ra IoT Gateways với khả năng làm cầu nối cho các thiết bị và mạng IP đang chính là vấn đề cần giải quyết để có thể tiến tới Internet of Things
Trang 151.2 Mục tiêu đạt được
Thiết kế một IoT Gateway phục vụ hệ thống giám sát môi trường với các chức năng:
Kết nối với IoT Cloud
Kết nối với các thiết bị như cảm biến nhiệt độ, độ ẩm, camera
Thực hiện việc giao tiếp, truyền dữ liệu từ cảm biến lên Cloud Cụ thể
ở đây là gửi các thông số như nhiệt độ, độ ẩm lên Cloud, streamming hình ảnh từ camera lên web
Cho phép người sử dụng có thể truy cập và sử dụng các dữ liệu này
Theo dõi tình hình thời tiết (nhiệt độ, độ ẩm)
Ứng dụng làm hệ thống cảnh báo cháy VD: khi nhiệt độ cao và độ
ẩm thấp, thiết bị có thể phát cảnh báo cháy bằng tín hiệu hoặc gửi lên web cảnh báo Kèm theo đó là hình ảnh cụ thể được streamming, giúp đánh giá chính xác tình hình Có thể sử dụng trong các cửa hàng, các khu vực dễ xảy ra cháy nổ, các khu vực rừng vào mùa khô,…
Có thể ứng dụng trong nông nghiệp, theo dõi điều khiển các thiết bị
để duy trì điều kiện nhiệt độ độ ẩm đảm bảo cho cây trồng, vật nuôi luôn có điều kiện phát triển tốt nhất, tăng năng suất cho việc sản xuất
Kết hợp hệ thống với một UAV, ta sẽ có một flycam với chức năng giám sát môi trường Khi đó hệ thống không chỉ hoạt động tại một địa điểm cố định mà có thể thay đổi tùy theo ý muốn của người sử dụng
Trang 16Chương 2 Kiến trúc nền tảng IoT
Trong chương này ta xem xét các lý thuyết cơ bản về IoT, các thành phần cấu tạo nên IoT, vai trò của chúng trong IoT và các loại nền tảng IoT
2.1 Các thành phần cấu tạo nên IoT
Quản lý thiết bị Kết nối vào đồng bộ hóa
Hình 2.1 Các thành phần của một nền tảng IoT
Một nền tảng IoT đơn giản có thể chỉ cho phép kết nối giữa “sự vật” hoặc thiết bị Kiến trúc cũng có thể bao gồm một nền tảng phần mềm, một nền tảng phát triển ứng dụng hoặc một nền tảng phân tích Tuy nhiên xét trên tổng thể thì một hệ thống IoT hiện đại bao gồm 8 thành phần quan trọng:
2.1.1 Kết nối và đồng bộ hóa
Thành phần này là tác nhân và thư viện để đảm bảo sự kết nối cho các thiết
bị và cơ sở dữ liệu, có chức năng tích hợp đồng bộ các giao thức khác nhau và các định dạng dữ liệu khác nhau vào một giao diện “phần mềm” đảm bảo việc truyền dữ liệu chính xác và tương tác với tất cả các thiết bị
Trang 172.1.3 Cơ sở dữ liệu
Đây là thành phần được coi quan trọng nhất của một nền tảng IoT, là nơi lưu trữ tất cả dữ liệu cho hệ thống Ngoài lưu trữ dữ liệu quan trọng của thiết bị, nó phải
có khả năng mở rộng đáp ứng các yêu cầu cho các cơ sở dữ liệu dựa trên đám mây
Cơ sở dữ liệu cần đáp ứng được yêu cầu mở rộng không gian lưu trữ, sự đa dạng, vận tốc và độ tin cậy của dữ liệu
2.1.4 Quản lý và xử lý hoạt động
Thành phần này quy định các hành động của hệ thống dựa vào dữ liệu từ cảm biến và dữ liệu thiết bị (theo thời gian thực)dựa trên nguyên tắc Event-Action-Triggers
2.1.5 Phân tích
Đây chính là những thuật toán cho việc tính toán nâng cao và tự học của hệ thống, có thể coi là bộ não của nền tảng IoT Thành phần này có chức năng thực hiện hàng loạt các phân tích phức tạp từ việc phân cụm dữ liệu cơ bản và khả năng
tự học để tự phân tích, dự đoán, trích xuất những dữ liệu giá trị nhất trong luồng dữ liệu IoT
2.1.6 Dữ liệu trực quan
Đây là công cụ cho phép con người xem xét các mẫu và quan sát các xu hướng từ bảng điều khiển trực quan, nơi dữ liệu được miêu tả sinh động qua biểu đồ đường thẳng, hình họa mô phỏng
2.1.7 Công cụ bổ sung
Thành phần này cho phép các nhà phát triển IoT thử nghiệm và trước khi đưa sản phẩm ra thị trường với các trường hợp sử dụng được biểu diễn trên hệ sinh thái
mô phỏng dùng để hiển thị, quản lý và kiểm soát thiết bị kết nối
2.1.8 Các giao diện bên ngoài
Đây là nơi cho phép tích hợp với các hệ thống của bên thứ ba và phần còn lại của hệ thống CNTT thông qua các giao diện lập trình ứng dụng (API), các bộ phát triển phần mềm (SDK) và các Gateways
Trang 18Hình 2.2 Minh họa hoạt động của IoT
2.2.2 IaaS backends
Nền tảng dịch vụ cơ sở hạ tầng cung cấp không gian lưu trữ và khả năng xử
lý cho các ứng dụng và dịch vụ Những backends được sử dụng để tối ưu hóa cho các ứng dụng dành cho máy tính để bàn và di động, tuy nhiên hiện tại nó vẫn được coi là một nền tảng IoT tập trung
2.2.3 Hardware-specific software platforms
Một số công ty sản xuất các thiết bị phục vụ kết nối đã thiết kế các phần mềm độc quyền đầu cuối của riêng họ Các sản phẩm này có phải IoT hay không vẫn đang gây tranh cãi bởi vì chúng là các nền tảng đóng
2.2.4 Consumer/Enterprise software extensions
Các gói phần mềm doanh nghiệp hiện tại và các hệ điều hành như Microsoft Windows ngày càng cho phép mở rộng, tích hợp các thiết bị IoT Tuy chưa đủ để coi chúng là một nền tảng IoT đầy đủ - nhưng trong tương lai không xa đây hoàn toàn có thể phát triển thành các nền tảng IoT phục vụ cho con người
Trang 19 Các giao diện bên ngoài
Hiện nay, các nền tảng IoT có thể chia vào 4 loại như sau:
Connectivity/M2M platforms
IaaS backends
Hardware-specific software platforms
Consumer/Enterprise software extensions
Trang 20Chương 3 Điện toán đám mây AWS IoT
AWS IoT là gì?
AWS IoT là hạ tầng điện toán đám mây cung cấp giao tiếp an toàn, hai chiều giữa các thiết bị kết nối Internet như cảm biến, thiết bị truyền động, bộ điều khiển vi
mô nhúng hoặc các thiết bị thông minh và AWS Cloud Điều này cho phép thu thập
dữ liệu từ xa từ nhiều thiết bị, và lưu trữ và phân tích dữ liệu hoặc cũng có thể tạo các ứng dụng cho phép người dùng kiểm soát những thiết bị này từ điện thoại hoặc máy tính bảng của họ
Nội dung chương này trình bày về các thành phần của AWS IoT và cơ chế hoạt động của chúng
3.1 Các thành phần của AWS IoT
AWS IoT bao gồm các thành phần sau:
3.1.1 Device gateway
Thành phần này giúp các thiết bị giao tiếp an toàn và hiệu quả với AWS IoT
3.1.2 Message broker
Cung cấp một cơ chế an toàn cho các thiết bị và ứng dụng AWS IoT để gửi
và nhận tin nhắn Sử dụng trực tiếp giao thức MQTT hoặc MQTT qua WebSocket
để gửi và đăng ký, cũng có thể sử dụng giao diện HTTP REST để gửi
3.1.3 Rules engine
Cung cấp xử lý tin nhắn và tích hợp với các dịch vụ AWS khác Sử dụng ngôn ngữ dựa trên SQL để chọn dữ liệu từ luồng dữ liệu, sau đó xử lý và gửi dữ liệu đến các dịch vụ khác, chẳng hạn như Amazon S3, Amazon DynamoDB và AWS Lambda hoặc chuyển tiếp dữ liệu đến những người đăng ký khác
3.1.4 Security and Identity service
Chịu trách nhiệm về bảo mật trong AWS Cloud Thiết bị cần có các chứng chỉ an toàn để có thể gửi dữ liệu Công cụ thông báo sử dụng các tính năng bảo mật AWS để gửi dữ liệu an toàn đến các thiết bị hoặc các dịch vụ AWS khác
3.1.5 Registry
Tổ chức các tài nguyên liên quan đến từng thiết bị trong AWS Cloud Các thiết bị được đăng ký và liên kết tối đa ba thuộc tính tuỳ chỉnh với mỗi thuộc tính Cũng có thể liên kết chứng chỉ và ID khách hàng MQTT với mỗi thiết bị để nâng cao khả năng quản lý và khắc phục sự cố của chúng
Trang 213.1.6 Device shadow
Tài liệu JSON được sử dụng để lưu trữ và truy xuất thông tin trạng thái hiện tại cho thiết bị
3.1.7 Device Shadow service
Cung cấp các cập nhật liên tục của các thiết bị trong AWS Cloud, có thể gửi thông tin trạng thái cập nhật lên cloud và thiết bị có thể đồng bộ hóa trạng thái của
nó khi nó được kết nối Thiết bị cũng có thể gửi trạng thái hiện tại của chúng vào cloud để các ứng dụng hoặc các thiết bị khác sử dụng
3.1.8 Device Provisioning service
Cho phép tạo thiết bị bằng cách sử dụng mẫu mô tả các tài nguyên cần thiết cho thiết bị của ta: một mục nhập trong registry chứa các thuộc tính mô tả một thiết
bị, một chứng chỉ và một hoặc nhiều quy tắc Thiết bị sử dụng các chứng chỉ để thẩm định với AWS IoT Các quy tắc xác định các hoạt động mà một thiết bị có thể thực hiện trong AWS IoT
Các mẫu chứa các biến được thay thế bởi các giá trị trong một từ điển (bản đồ) Có thể sử dụng cùng một mẫu để tạo nhiều thiết bị chỉ bằng cách truyền các giá trị khác nhau cho các biến mẫu trong từ điển
3.1.9 Custom Authentication service
Cung cấp khả năng xác thực và ủy quyền Người ủy quyền tuỳ chỉnh cho phép AWS IoT xác thực các thiết bị và ủy quyền cho các hoạt động sử dụng các hành động ủy quyền và xác thực
Người ủy quyền tùy chỉnh có thể thực hiện các hoạt động xác thực khác nhau (ví dụ: xác minh JWT, nhà cung cấp OAuth gọi )
3.1.10 Jobs Service
Cho phép xác định một tập hợp các hoạt động từ xa được gửi đến và thực hiện trên một hoặc nhiều thiết bị kết nối với AWS IoT Ví dụ, có thể hướng dẫn một loạt các thiết bị tải về và cài đặt cập nhật phần mềm hoặc ứng dụng, khởi động lại hoặc thực hiện các thao tác khắc phục sự cố từ xa, ta chỉ cần mô tả về các hoạt động
và một danh sách các thiết bị cần thực hiện chúng có thể là các thiết bị cá nhân, nhóm hoặc cả hai
Trang 223.2 Hoạt động của AWS IoT
AWS IoT cho phép các thiết bị kết nối Internet kết nối với đám mây AWS và cho phép ứng dụng trong đám mây tương tác với các thiết bị kết nối Internet Các ứng dụng IoT thông thường thu thập và xử lý từ xa từ thiết bị hoặc cho phép người dùng kiểm soát thiết bị từ xa
Hình 3.1 Sơ đồ khối hoạt động của hạ tầng AWS IoT
Thiết bị báo cáo trạng thái của chúng bằng cách gửi các tin nhắn, ở định dạng JSON, về các MQTT Mỗi MQTT có một tên phân cấp xác định thiết bị có trạng thái đang được cập nhật Khi một thông báo được gửi trên một MQTT, thông điệp sẽ được gửi tới AWS IoT MQTT, chịu trách nhiệm gửi tất cả các tin nhắn được gửi trên một MQTT cho tất cả các khách hàng đã đăng ký chủ đề đó
Giao tiếp giữa thiết bị và AWS IoT được bảo vệ thông qua việc sử dụng chứng chỉ X.509 AWS IoT có thể tạo ra một chứng chỉ cho người dùng hoặc người dùng có thể sử dụng riêng của mình Trong cả hai trường hợp, chứng chỉ phải được đăng ký và kích hoạt với AWS IoT, và sau đó sao chép vào thiết bị của người dùng Khi thiết bị của người dùng giao tiếp với AWS IoT, nó hiển thị chứng chỉ cho AWS IoT làm chứng chỉ
Tất cả thiết bị kết nối với AWS IoT đều có một mục trong dữ liệu đăng ký
Dữ liệu đăng ký chứa thông tin về một thiết bị và các chứng chỉ được sử dụng bởi thiết bị để bảo đảm truyền thông với AWS IoT
Người dùng có thể tạo các quy tắc xác định một hoặc nhiều hành động để thực hiện dựa trên dữ liệu trong một tin nhắn Ví dụ, người dùng có thể chèn, cập nhật, hoặc truy vấn một bảng DynamoDB hoặc gọi một hàm Lambda Rule sử dụng
để lọc tin nhắn Khi một rule phù hợp với một thông báo, hàng động sẽ được thực hiện bằng cách sử dụng các thuộc tính đã chọn Rule cũng chứa vai trò cấp phép AWS IoT cho các tài nguyên AWS được sử dụng để thực hiện hành động
Trang 23Mỗi thiết bị đều có một vùng nhớ để lưu trữ và truy xuất thông tin trạng thái Thông tin trạng thái có hai mục: trạng thái cuối cùng được báo cáo bởi thiết bị và trạng thái mong muốn được yêu cầu bởi một ứng dụng Một ứng dụng có thể yêu cầu thông tin trạng thái hiện tại cho một thiết bị AWS IoT đáp ứng yêu cầu bằng cách cung cấp tài liệu JSON với thông tin trạng thái (cả báo cáo và mong muốn), siêu dữ liệu và số phiên bản Ứng dụng có thể kiểm soát thiết bị bằng cách yêu cầu thay đổi trạng thái của thiết bị AWS IoT chấp nhận yêu cầu thay đổi trạng thái, cập nhật thông tin trạng thái, và gửi một tin nhắn cho biết thông tin trạng thái đã được cập nhật Thiết bị nhận tin nhắn, thay đổi trạng thái, và sau đó báo cáo trạng thái mới của nó
Device Shadow service
Device Provisioning service
Custom Authentication service
Trang 24Chương 4 Tìm hiểu về các thành phần sử dụng trong hệ thống
Trong chương này ta xem xét các thiết bị phần cứng sử dụng cho hệ thống (về đặc điểm, tính năng, thông số kỹ thuật, cách thức giao tiếp với thiết bị khác), các công cụ phần mềm hỗ trợ để thực hiện hệ thống
4.1 Máy tính Raspberry Pi 3 Model B
4.1.1 Giới thiệu về máy tính nhúng Raspberry Pi
Raspberry Pi là từ để chỉ các máy tính chỉ có một board mạch (hay còn gọi là máy tính nhúng) kích thước chỉ bẳng một thẻ tín dụng, được phát triển tại Anh bởi Raspberry Pi Foundation với mục đích ban đầu là thúc đẩy việc giảng dạy về khoa học máy tính cơ bản trong các trường học và các nước đang phát triển
Raspberry Pi và Raspberry Pi 2 được sản xuất theo nhiều cấu hình khác nhau thông qua các thỏa thuận cấp phép sản xuất với Newark element14 (Premier Farnell), RS Components và Egoman Các công ty này bán Raspberry Pi trực tuyến Egoman sản xuất một phiên bản phân phối duy nhất tại Đài Loan, có thể được phân biệt với Pi khác bởi màu đỏ của chúng và thiếu dấu FCC/CE Phần cứng là như nhau đối với tất cả các nhà sản xuất
Raspberry Pi ban đầu được dựa trên hệ thống trên một vi mạch (SoC) BCM2835 của Broadcom, bao gồm một vi xử lý ARM1176JZF-S 700 MHz, VideoCore IV GPU, và ban đầu được xuất xưởng với 256 MB RAM, sau đó được nâng cấp (model B và B +) lên đến 512 MB Board này cũng có socket Secure Digital (SD) (model A và B) hoặc MicroSD (model A + và B +) dùng làm thiết bị khởi động và bộ lưu trữ liên tục
Trong năm 2014, Raspberry Pi Foundation đã phát hành Compute Module, đóng gói một BCM2835 với 512 MB RAM và một flash chip eMMC vào một module để sử dụng như một phần của hệ thống nhúng
Foundation này cung cấp Debian và Arch Linux ARM để người dùng download về Các công cụ có sẵn cho Python như là ngôn ngữ lập trình chính, hỗ trợ cho BBC BASIC (thông qua RISC OS image hoặc Brandy Basic clone cho Linux), C, C++, Java, Perl và Ruby
Tính đến ngày 08/06/2015, khoảng 5-6.000.000 board Raspberry Pi đã được bán Vào đầu tháng 2 năm 2015, thế hệ tiếp theo của Raspberry Pi, Raspberry Pi 2,
đã được phát hành Board máy tính mới này đầu tiên chỉ có một cấu hình (model B)
và trang bị SoC Broadcom BCM2836, với một nhân ARM Cortex-A7 CPU 4 lõi và một VideoCore IV dual-core GPU; 1 GB bộ nhớ RAM với thông số kỹ thuật còn lại tương tự như của các thế hệ model B+ trước đó Raspberry Pi 2 vẫn giữ nguyên giá
$35 so với model B, với model A+ giá $20 vẫn còn được bán
Trang 254.1.2 Đặc điểm, tính năng của Raspberry Pi 3 Model B
Raspberry Pi 3 Model B là thế hệ thứ 3 và mới nhất tính đến thời điểm hiện tại của gia đình Raspberry Pi, ra đời vào tháng 2 năm 2016 Đặc biệt, phiên bản này không chỉ hỗ trợ đầy đủ các tính năng tương tự các thế hệ trước mà còn có thêm kết nối Wifi, Bluetooth
Hình 4.1 Cấu trúc phần cứng Raspberry Pi 3 Model B
Thông số kĩ thuật:
Bộ xử lý: Broadcom BCM2387 chipset với 4 nhân ARM Cortex-A53 1.2GHz, hỗ trợ 802.11 b/g/n Wireless LAN and Bluetooth 4.1 (Bluetooth Classic and LE)
GPU: ES 2.0, độ phân giải cao 1080p, 30fps, H.264
Bộ nhớ RAM: 1GB LPDDR2
Trang 26 Hệ điều hành: Khởi động từ thẻ Micro SD, chạy phiên bản hệ điều hành Linux hoặc Windows 10 IoT
Kích thước: 85 x 56 x 17mm
Nguồn: 5V-2,5A sử dụng chân Micro USB
Kết nối:
Ethernet:cổng Ethernet 10/100Mbps
Wifi: 802.11 b/g/n Wireless LAN
Video output: HDMI (rev 1.3 & 1.4)
Audio Output: HDMI hoặc 3.5 mm
USB: 4 x USB 2.0
GPIO: 40pin
Camera: 15-pin MIPI Camera Serial Interface (CSI-2)
Khe cắm thẻ nhớ: Micro SDIO
Ứng dụng:
Thay thế PC/tablet/laptop với chi phí thấp
Ứng dụng IoT
Điểm truy cập không dây
Quan trắc / giám sát môi trường (ví dụ: trạm thời tiết)
Web Camera
Lợi ích khi sử dụng Raspberry Pi 3 so với các thế hệ trước:
Chi phí thấp
Tốc độ xử lý cao, gấp 10 lần so với thế hệ đầu tiên
Định dạng bảng mạch hoàn toàn tương tự các thế hệ trước, dễ dàng nâng cấp phần cứng khi cần thiết
Có thêm nhiều kết nối (đặc biệt là Wifi, Bluetooth) hỗ trợ tốt hơn cho các ứng dụng IoT
Trang 274.1.3 Sơ đồ chân GPIO Raspberry Pi 3 Model B
Raspberry Pi 3 Model B là thế hệ thứ 3 và mới nhất tính đến thời điểm hiện tại của gia đình Raspberry Pi, ra đời vào tháng 2 năm 2016 Đặc biệt, phiên bản này không chỉ hỗ trợ
Hình 4.2 Sơ đồ chân GPIO Raspberry Pi 3 Model B
GPIO của Raspberry Pi 3 bao gồm:
2 chân nguồn 5V DC
2 chân nguồn 3.3V DC
8 chân GND
2 chân ID_SD hỗ trợ kết nối I2C với EEPROM
26 chân GPIO, hỗ trợ các loại kết nối khác nhau như UART, SPI, I2
C
Trang 284.2 Module cảm biến nhiệt độ độ ẩm DHT11
4.2.1 Đặc điểm, tính năng của Module DHT11
DHT11 là cảm biến nhiệt độ, độ ẩm rất thông dụng hiện nay vì chi phí rẻ và rất dễ lấy dữ liệu thông qua giao tiếp 1-wire (giao tiếp digital 1-wire truyền dữ liệu duy nhất) Cảm biến được tích hợp bộ tiền xử lý tín hiệu giúp dữ liệu nhận về được chính xác mà không cần phải qua bất kỳ tính toán nào
Hình 4.3 Cảm biến nhiệt độ, độ ẩm DHT11
Thông số kĩ thuật:
Điện áp hoạt động: 3V - 5V (DC)
Dải độ ẩm hoạt động: 20% - 90% RH, sai số ±5%RH
Dải nhiệt độ hoạt động: 0°C ~ 50°C, sai số ±2°C
Tần số lấy mẫu tối đa: 1 Hz
Khoảng cách truyển tối đa: 20m
Dữ liệu truyền về của DHT11 gồm 40bit dữ liệu theo thứ tự sau:
Trang 29 8 bit biểu thị phần nguyên của độ ẩm
8 bit biểu thị phần thập phân của độ ẩm
8 bit biểu thị phần nguyên của nhiệt độ
8 bit biểu thị phần thập phân của nhiệt độ
8 bit check sum
Ví dụ: ta nhận được 40 bit dữ liệu như sau:
00110101 00000000 00011000 00000000 01001101
Tính toán:
00110101 biểu thị phần nguyên của độ ẩm
00000000 biểu thị phần thập phân của độ ẩm
00011000 biểu thị phần nguyên của nhiệt độ
00000000 biểu thị phần thập phân của nhiệt độ
01001101 check sum
Check sum: 00110101 + 00000000 + 00011000 + 00000000 = 01001101
Độ ẩm: 00110101 = 35H = 53% (phần thập phân có giá trị 00000000, nên ta
bỏ qua không tính phần thập phân)
Nhiệt độ: 0001 1000 = 18H = 24°C (phần thập phân có giá trị 00000000, nên
ta bỏ qua không tính phần thập phân)
4.3 Module Camera cho Raspberry Pi V2
4.3.1 Đặc điểm, tính năng của Module Camera cho Raspberry Pi V2
Tháng 4/2016, Raspberry Pi Foundation ra mắt thế hệ thứ 2 của sản phẩm Module Camera với nâng cấp đáng kể nhất là sử dụng sensor Sony IMX219 8 Megapixel (so với cảm biến 5-megapixel OmniVision OV5647 trên Module Camera phiên bản cũ)
Module Camera có thể được sử dụng để quay video độ nét cao, cũng như chụp hình ảnh tĩnh Nó khá dễ dàng để sử dụng cho người mới bắt đầu, nhưng cũng
có rất nhiều giải pháp mở rộng để cung cấp cho người dùng yêu cầu cao hỗ trợ nhiều tính năng đặc biệt như: chụp Time-Lapse, Slow-Motion và rất nhiều ứng dụng khác Module Camera V2 là một bước nhảy vọt về chất lượng hình ảnh, màu sắc trung thực và hiệu suất ánh sáng thấp Đặc biệt version này hỗ trợ quay video HD 1080p 30fps, HD 720p 60fps và video mode VGA90, cũng như chế độ chụp hình Module kết nối qua cổng CSI trên Raspberry Pi và tương thích với tất cả các phiên bản của Raspberry Pi 1, 2 và 3
Trang 30Hình 4.4 Module Camera cho Raspberry Pi V2
Trang 314.4 Các công cụ phần mềm cần sử dụng
4.4.1 PuTTY
PuTTY được hiểu là phần mềm sử dụng để điều khiển server thông qua mạng internet, Nó hỗ trợ nhiều giao thức mạng, bao gồm SCP, SSH, Telnet, rlogin PuTTY ban đầu được viết dành riêng cho hệ điều hành Windows, nhưng hiện nay nó đã được viết cho nhiều hệ điều hành khác như Unix, hệ điều hành MacOS, Symbian, Windows Mobile và android PuTTY không phải chữ viết tắt nào trong tiếng anh
PuTTY được viết vào cuối năm 1998, và nó đã được công bố cho người dùng chính thức từ năm 2000 PuTTY được viết và được duy trì chủ yếu bởi Simon Tatham và hiện đang là phần mềm phiên bản beta
PuTTY hỗ trợ nhiều biến thể trên "các thiết bị đầu cuối" từ xa an toàn, và cung cấp cho người dùng trình điều khiển các SSH với khóa mã hóa, các giao thức, thuật toán mã hóa thay thế như 3DES, Arcfour, Blowfish, DES, và khóa công khai xác thực Các lớp giao tiếp mạng hỗ trợ IPv6, và các giao thức SSH hỗ trợ các chương trình nén openssh bị trì hoãn PuTTY cũng có thể được sử dụng với các kết nối cổng nối tiếp trong mạng LAN
PuTTY đi kèm với dòng lệnh SCP và SFTP khách hàng, được gọi là "PSCP"
và "psftp" tương ứng, và Plink, một công cụ kết nối dòng lệnh, được sử dụng cho các phiên không tương tác
PuTTY bao gồm một số thành phần:
PuTTY: các Telnet, rlogin, SSH client, mà cũng có thể kết nối với một cổng nối tiếp
PSCP: một SCP (Khách, tức là dòng lệnh sao chép tập tin an toàn
PSFTP: một SFTP khách hàng, tức là phiên chuyển tập tin chung giống như FTP
PuTTYtel: một khách hàng Telnet chỉ định
Plink: một giao diện dòng lệnh để các PuTTY lại đầu
Pageant: một đại lý SSH cho PuTTY, PSCP và Plink
PuTTYgen: một RSA và DSA tiện ích hệ trọng
Pterm: một mô phỏng thiết bị độc