Chương 1: Giới thiệu chung Chương này trình bày tình hình nghiên cứu hiện nay, tính cấp thiết của đề tài, mục đích nghiên cứu, phương pháp nghiên cứu, đối tượng và phạm vi nghiên cứu, phương phán 2 nghiên cứu và bố cục đồ án, nguyên nhân và động lực để hoàn thành đề tài và các phương pháp nghiên cứu. Chương 2: Cơ sở lý thuyết Chương này trình bày cơ sở lý luận và những vấn đề thực tiễn liên quan đến đề tài. Chương 3: Thiết kế và thi công hệ thống. Chương này trình bày chi tiết ý tưởng thiết kế, lựa chọn và tính toán giải pháp thiết kế hệ thống, sơ đồ khối, lưu đồ giải thuật, thiết kế ứng dụng trên phần mềm Visual Studio Code, viết chương trình cho hệ thống, thiết kế sơ đồ mạch in PCB và dựng mô hình ổ khóa xe đạp thông minh.
Chương 4: Kết quả và đánh giá. Chương này trình bày các kết quả đã đạt được trong đề tài sau khi hoàn thành khảo sát, giải thích các chức năng hoạt động của hệ thống, kèm với hình ảnh thực tế để minh họa. Chương 5: Kết luận và hướng phát triển. Chương này trình bày các vấn đề đã được giải quyết của đề tài, đồng thời đề ra các hướng phát triển xa hơn và hoàn thiện hơn cho đề tài.
3 CHƯƠNG 2: CƠ SỞ LÝ THUYẾT 2.1 Giới thiệu về IoT Internet of Things 2. Giới thiệu về IoT IoT (Internet of Things) được dịch là Internet kết nối vạn vật, hiện nay IoT đang ảnh hưởng đến chúng ta rất nhiều từ nhiều khía cạnh và từ nhiều mức độ khác nhau, từ chiếc đồng hồ thông minh đang theo dõi các hoạt động hằng ngày hoặc thậm chí là đa số các thiết bị được đặt ở trong nhà mà chúng ta có thể điều khiển qua điện thoại thông minh. IoT là một mạng lưới khổng lồ để các thiết bị có thể kết nối với nhau thông qua Internet. Các thiết bị này có khả năng thu thập và chia sẻ dữ liệu cho nhau.
Tất cả các dữ liệu được thu thập bằng các cảm biến được gắn trong mọi thiết bị mà ta sử dụng. Một bóng đèn mà chúng ta bật bằng ứng dụng điện thoại thông minh, cũng được gọi là một thiết bị IoT hay là bật quạt bằng điện thoại thông minh cũng gọi là một thiệt bị IoT. Một thiết bị IoT có thể đơn giản như đồ chơi của trẻ em hoặc lớn hơn là một chiếc xe không người lái, phức tạp hơn là một động cơ phản lực chứa hàng ngàn con cảm biến thu thập và truyền dữ liệu, để đảm bảo nó hoạt động một cách hiệu quả. Ở những dự án lớn hơn, thì các thành phố thông minh đang được lắp đầy các cảm biến để giúp chúng ta hiểu và kiểm soát môi trường.
Như vậy, IoT đã đưa ra ngôn ngữ chung để các thiết bị có thể giao tiếp với nhau. Cấu trúc của hệ thống IoT Cấu trúc của một hệ thống IoT gồm có 4 phần chính: Thiết bị (Things), trạm kết nối(Gateways), hạ tầng mạng (Network and Cloud), dịch vụ (Services). Cấu trúc của hệ thống IoT Thiết bị: Ở tầng thiết bị, tầng này có các thiết bị rất quen thuộc với chúng ta như bóng đèn, quạt, máy lạnh, đồng hồ, máy in, ổ khóa, máy hút bụi, camera, thiết bị đo, công tắc, … Nhưng các thiết bị này đều được gắn các cảm biến để làm các nhiệm vụ thu thập dữ liệu từ môi trường xung quanh chúng ta. Trạm kết nối: Các trạm kết nối ở đây đóng vai trò trung gian cho việc kết nối các thiết bị với điện toán đám mây để đảm bảo an toàn và thuận tiện hơn trong việc kết nối.
Hạ tầng mạng và điện toán đám mây: Hạ tầng mạng bao gồm những thiết bị định tuyến, các dữ liệu từ các tầng bên dưới như thiết bị, muốn gửi qua Internet phải qua các bộ định tuyến để gửi đúng vị trí của máy chủ nằm trong trung tâm dữ liệu. Dịch vụ: Các ứng dụng do các công ty công nghệ hoặc chính người dùng tạo ra để giúp việc tối ưu hóa việc sử dụng các sản phẩm IoT dễ dàng hơn và tận dụng tối đa chức năng của chúng mang lại. Cấu trúc của hệ thống IoT Ưu điểm: ● Các dữ liệu được lưu trữ trong cơ sở dữ liệu để tiết kiệm thời gian, tiền bạc và tăng tính linh hoạt của dữ liệu. 5 ● Việc kiểm soát giao tiếp giữa các thiết bị được cải thiện hơn, có thể thực hiện thuận tiện mọi lúc mọi nơi thông qua mạng Internet.
● Iot là giải pháp giúp tự động hóa mọi thứ để nâng cao chất lượng cuộc sống của con người. Nhược điểm: ● Do kết cấu của hệ thống luôn có mối quan hệ mật thiết với nhau nên khi hệ thống gặp sự cố nào đó thì sẽ có khả năng gây hư hỏng các thiết bị kết nối với nhau. ● Với sự tiện lợi của việc kết nối và chia sẻ thông tin trên Internet, khi nhiều thiết bị kết nối với nhau, việc đánh cắp thông tin có thể xảy ra.2 Tổng quan về phần mềm để lập trình vi điều khiển 2. Giới thiệu về phần mềm Arduino IDE Arduino IDE là phần mềm dùng để lập trình vi điều khiển.
Phần mềm hỗ trợ tương thích đa nền tảng, phần mềm có các phiên bản cho các hệ điều hành phổ biến như Windows, Mac, Linux,…với các chức năng và lệnh tích hợp để chỉnh sửa và biên dịch mã. Phần mềm thường lập trình bởi các ngôn ngữ lập trình C và C ++ nên phổ biến với sinh viên để lập trình nhúng một cách dễ dàng hơn. Phần mềm Arduino IDE hỗ trợ nhiều module Arduino như Arduino Mega, Arduino Uno,.Không những có Arduino phần mềm còn hỗ trợ lập trình các module ESP như ESP8266 ESP32. Mỗi module sẽ chứa vi điều khiển được lập trình trên bảng thông tin ở dạng mã (còn được gọi là bản phác thảo) bao gồm các nền tảng IDE.
Sau đó, nó sẽ tạo một tệp hex để chuyển và tải lên bộ điều khiển 6 của bảng. Như vậy, phần mềm Arduino IDE giúp chúng ta sử dụng các cảm biến, linh kiện một cách linh hoạt đúng với mục đích sử dụng. Trình biên dịch Arduino IDE Tuy phần mềm Arduino IDE có mã nguồn mở nhưng khả năng bảo mật thông tin của Arduino IDE là vô cùng tuyệt vời. Khi phần mềm phát hiện ra lỗi thì nhà phát hành sẽ sửa nó lại và cập nhật một cách nhanh chóng khiến thông tin của người dùng không bị mất hay là rò rỉ ra bên ngoài.
Arduino có một module quản lý bo mạch, nơi người dùng có thể chọn bo mạch mà họ muốn sử dụng nó và có thể thay đổi bo mạch thông qua Menu. Quá trình sửa đổi lựa chọn cũng liên tục tự động cập nhật để các dữ liệu có sẵn trong bo mạch và dữ liệu sửa đổi đồng nhất với nhau. Không những thế, Arduino IDE cũng giúp bạn tìm ra lỗi từ code mà bạn viết, qua đó giúp bạn sửa lỗi kịp thời tránh tình trạng bo mạch Arduino làm việc với code lỗi quá lâu dẫn đến hư hỏng hoặc tốc độ xử lý bị giảm. Sự đa dạng về thư viện Arduino IDE tích hợp với hơn 700 thư viện, được viết và chia sẻ bởi các nhà xuất bản Phần mềm Arduino và các thành viên của cộng đồng Arduino.
Mọi người đều có thể sử dụng chúng cho các dự án của riêng mình mà không tốn bất kỳ chi phí hay khoản tiền nào. Các thao tác cơ bản trên phần mềm lập trình Arduino IDE Hình 2. Một số tính năng thường được sử dụng trên phần mềm 8 Bảng 1. Thao tác trên Arduino IDE Kiểm tra lỗi code chuẩn bị truyền Verify xuống bo mạch Upload Nạp đoạn code vào bo mạch New Tạo một sketch mới Open Mở một sketch có sẵn Save Lưu sketch vào IDE Serial Monitor Mở Serial Monitor 2.3 Tổng quan về phần mềm lập trình Visual Studio Code 2.1 Giới thiệu về phần mềm lập trình Visual Studio Code hay được viết tắt là VS Code.
Visual Studio Code là một ứng dụng cho phép biện tập, soạn thảo các đoạn code để hỗ trợ trong quá trình xây dựng và thiết kế website.Visual Studio Code có trình soạn thảo vận hành mượt mà trên nhiều nền tảng như Window, Linux, macOS. Không những thế, VS Code còn có khả năng tương thích với những thiết bị máy tính có cấu hình tầm trung vẫn có thể sử dụng một cách dễ dàng hoặc cũng có thể responsive để người dùng điện thoại có thể xem được. Visual Studio Code có hỗ trợ đa dạng các chức năng Debug, đi kèm với Github, có Syntax Highlighting. Đặc biệt, nó có thể tự hoàn thành mã thông minh và có khả năng cải tiến nguồn.
Nhờ có tính năng tùy chỉnh như vậy Visual Studio Code cho phép lập trình viên thay đổi Theme, phím tắt và các tùy chỉnh khác. 9 Visual Studio Code dù mới được phát hành nhưng Visual Studio Code là một trong những Code Editor mạnh mẽ và phổ biến nhất dành cho những lập trình viên. Nhờ được hỗ trợ nhiều ngôn ngữ lập trình phổ biến và tích hợp đầy đủ các tính năng nên VS Code đã trở nên quá phổ biến với những lập trình viên. Logo của phần mềm Visual Studio Code 2.2 Những ưu điểm nổi bật của Visual Studio Code ● VS Code có đa dạng ngôn ngữ lập trình giúp cho lập trình viên thỏa sức sáng tạo như HTML, CSS, Javascript, C++, … ● VS Code có các tiện ích mở rộng rất đạ dạng, ngôn ngữ, giao diện than thiện giúp cho người dùng dễ dàng định hình được nội dung.
● Có tích hợp những tính năng quan trọng như tính năng bảo mật (Github), khả năng tăng tốc xử lý (Debug), khả năng nhắc lệnh,… ● Đơn giản hóa các code đã lưu trên hệ thống.3 Giới thiệu về HTML, CSS, Javascript [1] HTML: HTML là viết tắt của cụm từ Hypertext Markup Language. HTML được sử dụng để tạo và cấu trúc các thành phần trong trang web hoặc ứng dụng, phân chia các đoạn văn, heading, titles, blockquotes, HTML là một khung xương của một trang web. Thông thường các thẻ html, chúng ta có thể định được hình hài của một trang web sẽ 10 trông như thế nào và tổ chức sao cho hợp lý. Nếu không có HTML, trang web của chúng ta không thể hoạt động, HTML đóng vai trò là nền móng của một trang web.
Nói ngắn gọn hơn là ngôn ngữ tạo phong cách cho trang web.