TỔNG QUAN
Giới thiệu
Theo Aristotle, kiến thức của chúng ta về thế giới xung quanh phụ thuộc vào năm cơ quan cảm giác, trong đó thị giác chiếm ưu thế với 83% thông tin nhận được Khi thị giác bị khiếm khuyết, các giác quan khác như âm thanh và cảm giác rung sẽ hỗ trợ Gậy chống và chó dẫn đường là phương tiện truyền thống giúp người khiếm thị di chuyển Họ phải sử dụng nhiều công cụ và kỹ thuật hỗ trợ để di chuyển dễ dàng hơn Một trong những kỹ thuật quan trọng là định hướng và di động, giúp người khiếm thị di chuyển độc lập và an toàn dựa vào các giác quan còn lại Gần đây, nhiều công nghệ mới đã được phát triển để cải thiện khả năng di chuyển cho người khiếm thị thông qua xử lý tín hiệu và cảm biến.
Mục tiêu đề tài
Gậy thông minh dành cho người khiếm thị được thiết kế để hỗ trợ di chuyển an toàn và dễ dàng, với các tính năng nổi bật như còi báo hiệu khi gặp vật cản, cảnh báo khi vào vùng tối, và phát tín hiệu hỗ trợ khi té ngã Ngoài ra, gậy còn có khả năng gửi tin nhắn với vị trí GPS đến người thân, gọi điện khi người dùng gặp sự cố, và tìm vị trí của gậy khi bị thất lạc trong phạm vi gần.
Giới hạn đề tài
- Đề tài chỉ tập trung nghiên cứu các module và các linh kiện có sẵn trên thị trường từ đó đưa ra thiết kế và thi công sản phẩm
Đối tượng và phạm vi nghiên cứu
Nghiên cứu tập trung vào board mạch Arduino, các cảm biến, module và thiết bị phần cứng của hệ thống, bao gồm một gậy dài 85cm với tay cầm và hộp mica chứa mạch điều khiển.
- Phạm vi nghiên cứu: Nghiên cứu dựa trên các module, thiết bị đã có sẵn
Phương ph́áp nghiên cứu
- Nghiên cứu thiết kế phần cứng phù hợp với người khiếm thị
- Phân tích ưu điểm, nhược điểm của các nghiên cứu trước từ đó hình thành ý tưởng và đưa ra giải pháp phù hợp
- Thiết kế phần mềm hoạt động của gậy
Nội dung nghiên cứu
Đề tài được thực hiện gồm có những nội dung chính sau:
- Nội dung 1: Khảo sát vấn đề thực tế cần được giải quyết để đưa ra hướng nghiên cứu
- Nội dung 2: Đọc tìm hiểu các tài liệu tham khảo, tóm tắt các hướng đề tài
- Nội dung 3: Tìm hiểu cách thức hoạt động của các linh kiện thiết bị
- Nội dung 4: Thiết kế sơ đồ khối, sơ đồ nguyên lý toàn mạch
- Nội dung 5: Thiết kế mô hình sử dụng board arduino, module và cảm biến có sẵn trên thị trường
- Nội dung 6: Thi công và chạy thử sản phẩm
- Nội dung 7: Viết báo cáo thực hiện
- Nội dung 8: Bảo vệ luận văn.
Bố cục
Trong bài viết này, chúng tôi sẽ trình bày tình hình nghiên cứu hiện tại, lý do chọn đề tài, mục tiêu nghiên cứu và nội dung chính của đề tài Bên cạnh đó, chúng tôi cũng sẽ xác định các giới hạn của đề tài và cấu trúc bố cục của đồ án, nhằm tạo nền tảng vững chắc cho việc phân tích và thảo luận sâu hơn về vấn đề nghiên cứu.
CƠ SỞ LÝ THUYẾT
Các nghiên cứu đã thực hiện
2.1.1 Cây gậy thông minh WeWALK
Hình 2 1 Gậy thông minh xác định phương hướng
Cha đẻ của gậy thông minh WeWalk là kỹ sư khiếm thị Kursat Ceylan, đồng sáng lập Học viện Young Guru tại Thổ Nhĩ Kỳ Gậy WeWalk, khác biệt so với các gậy truyền thống chỉ phát hiện vật cản từ thắt lưng trở xuống, có khả năng phát hiện vật cản cao đến ngực nhờ cảm biến siêu âm Thiết bị còn được trang bị đèn LED phía trước để hỗ trợ người mù trong điều kiện ánh sáng yếu và kết nối Bluetooth với điện thoại thông minh Người dùng có thể nhận tín hiệu điều hướng bằng giọng nói từ ứng dụng như Google Maps thông qua loa tích hợp Hiện tại, WeWalk đang hợp tác với nhiều công ty, bao gồm Microsoft, để cải tiến thêm tính năng cho sản phẩm, đang được hàng nghìn người khiếm thị sử dụng tại 59 quốc gia.
Hình 2 2 Tay cầm cây gậy thông minh WeWALK
UltraCane là cây gậy điện tử tiên tiến nhất, giúp người mù tự tin và độc lập trong việc di chuyển hàng ngày Không chỉ đơn giản là tránh vật thể, gậy còn hỗ trợ người khiếm thị định hướng khi đi ngoài đường Sử dụng hệ thống siêu âm chùm hẹp, UltraCane phát tín hiệu và rung khi phát hiện chướng ngại vật, cảnh báo người dùng về các nguy hiểm xung quanh Gậy có hai chế độ hoạt động: chế độ tầm ngắn (phát hiện vật cản trong khoảng 2m) và chế độ tầm xa (phát hiện chướng ngại vật trong khoảng 4m).
Hình 2 3 Gậy thông minh Ultra Cane
Tổng quan về hệ thống định vị GPS
GPS, hay Hệ thống Định vị Toàn cầu, sử dụng vệ tinh để xác định vị trí Được phát triển bởi Mỹ từ năm 1995, GPS hiện nay được tích hợp vào hầu hết các thiết bị điện tử di động, phục vụ cho nhiều mục đích cá nhân khác nhau.
Hình 2 4 Hệ hống định vị vệ tinh GPS
Hệ thống GPS gồm 3 thành phần:
Phần không gian là yếu tố cốt lõi với hàng chục vệ tinh bay quanh Trái Đất ở độ cao 20.000 km, được thiết kế để điều chỉnh và phủ sóng toàn bộ bề mặt trái đất Mỗi điểm trên Trái Đất đều có thể nhìn thấy ít nhất bốn vệ tinh, đảm bảo kết nối và truyền tải thông tin hiệu quả.
Phần điều khiển bao gồm các trung tâm mặt đất cố định trên toàn cầu, có nhiệm vụ theo dõi và điều khiển hoạt động của các vệ tinh.
Thiết bị sử dụng tín hiệu GPS bao gồm phần cứng để thu nhận sóng, phần mềm để giải mã và tính toán, cùng với giao diện người dùng.
2.2.3 Nguyên lý hoạt động của GPS
Theo lý thuyết, để xác định vị trí của một điểm trên mặt đất, cần tham chiếu đến vị trí của các vệ tinh và trung tâm tín hiệu không gian Khoảng cách giữa các điểm này được tính toán theo công thức (2.1).
Quảng đường = Vận tốc x thời gian (2.1)
- Trong đó: Vận tốc là tốc độ truyền tín hiệu và thời gian đo bằng đồng hồ nguyên tử với độ chính xác cực cao.
Tổng quan về các chuẩn truyền dữ liệu
2.3.1 Chuẩn truyền dữ liệu UART
UART là một phương thức truyền thông tin nối tiếp không đồng bộ, cho phép cấu hình tốc độ và thường được sử dụng trong các mạch tích hợp Giao thức UART bao gồm hai đường truyền độc lập: TX (truyền) và RX (nhận) Dữ liệu được truyền và nhận qua hai đường này dưới dạng khung dữ liệu, bao gồm một bit bắt đầu, một số bit dữ liệu, một bit kiểm tra chẵn lẻ và một bit dừng Tốc độ truyền của UART thường được thiết lập ở các chuẩn như 9600, 19200, 38400, 57600 và 115200 baud, với tốc độ này định nghĩa số bit được truyền trong một giây.
Hình 2 5 Truyền dữ liệu UART
Để bắt đầu quá trình truyền dữ liệu, Bit bắt đầu (Start Bit) trong giao thức UART kéo đường dữ liệu từ mức điện áp cao (1) xuống mức điện áp thấp (0) Sự chuyển đổi này được UART nhận biết qua đường dữ liệu, từ đó bắt đầu hiểu và xử lý dữ liệu thực.
Bit dữ liệu là các bit chứa thông tin thực được truyền từ người gửi đến người nhận Độ dài khung dữ liệu thường dao động từ 5 đến 8 bit, và nếu không sử dụng bit chẵn lẻ, chiều dài khung dữ liệu có thể lên đến 9 bit.
- Bit chẵn lẻ (Parity): Là một cách để kiểm tra dữ liệu có bị lỗi khi truyền không
Nếu bit chẵn lẻ là 0, số bit dữ liệu trong khung dữ liệu sau khi truyền phải là số chẵn để đảm bảo không bị lỗi Ngược lại, nếu bit chẵn lẻ là 1, số bit dữ liệu cần phải là số lẻ để truyền tải thành công mà không gặp lỗi.
- Bit dừng ( Stop bit): Báo hiệu sự kết thúc của gói dữ liệu, thông thường dài 2 bit nhưng thường chỉ sử dụng 1 bit
- Ưu điểm của UART : Chỉ cần 2 dây để truyền dữ liệu, có một bit chẵn lẻ để kiểm tra lỗi, sắp xếp gói dữ liệu có thể sửa đổi
- Nhược điểm của UART : Kích thước khung dữ liệu tối đa là 9 bit, tốc độ truyển phải ở mức 10% của nhau và không hỗ trợ nhiều hệ thống chủ tớ
Hình 2 6 Giao diện của UART
I2C là giao tiếp nối tiếp đồng bộ do Philips Semiconductor phát triển, cho phép truyền nhận dữ liệu giữa các IC chỉ với 2 đường tín hiệu Dữ liệu được truyền từng bit một theo khoảng thời gian đều đặn do tín hiệu đồng hồ thiết lập Bus I2C thường được sử dụng để giao tiếp với nhiều loại IC khác nhau, bao gồm vi điều khiển và cảm biến.
I2C chỉ sử dụng 2 đường tín hiệu là SCL và SDA:
SCL – Serial Clock Line: Tạo xung nhịp đồng hồ do Maser phát đi thông thường ở 100kHz và 400kHz
SDA – Serial Data Line: Đường truyền nhận dữ liệu,
Khi kết nối một thiết bị ngoại vi vào Bus I2C, chân SDA của thiết bị sẽ được nối với dây SDA của Bus, trong khi chân SCL sẽ được kết nối với dây SCL.
Hình 2 8 Truyền nhận dữ liệu I2C
- Ưu điểm của I2C: Chỉ sử dụng 2 dây, hỗ trợ nhiều thiết bị chủ tớ, Bit ACK/
NACK xác nhận mỗi khung được chuyển thành công, phần cứng ít phức tạp hơn so với UART
- Nhược điểm của I2C: Kích thước khung dữ liệu giới hạn 8 bit
Tổng quan về phần mềm lập trình cho Adruino
2.4.1 Giới thiệu về phần mềm Adruino IDE
Arduino IDE (Môi trường phát triển tích hợp Arduino) là phần mềm hỗ trợ lập trình cho Arduino bằng ngôn ngữ C và C++ Phần mềm này cung cấp hơn 300.000 bảng mạch được thiết kế sẵn, giúp người dùng dễ dàng tìm kiếm sản phẩm phù hợp với nhu cầu Ngoài ra, Arduino IDE tương thích với nhiều hệ điều hành như Mac và Windows Sau khi lập trình, người dùng có thể biên dịch thành file Hex và nạp file này vào Arduino Mỗi board Arduino đều tích hợp mạch vi điều khiển để xử lý file Hex và thực hiện các lệnh đã được lập trình.
Hình 2 9 Giao diện phần mềm Adruino IDE
2.4.2 Các tác vụ trên phần mềm Adruino IDE
Bảng 2 1.Các tác vụ trên phần mềm Adruino IDE
Verify Kiểm tra và biên dịch
Upload Dịch và tải vào mạch
New Tạo một sketch mới
Open Mở một sketch có sẵn
Serial Monitor Mở Serial Monitor
THIẾT KẾ VÀ XÂY DỰNG HỆ THỐNG
Thiết kế phần cứng cơ khí
Để giúp người dùng dễ dàng thích nghi với sản phẩm mới, cần giữ nguyên những đặc điểm quen thuộc của sản phẩm cũ và tuân thủ các nghiên cứu về người khiếm thị Sản phẩm nên được thiết kế nhỏ gọn và nhẹ để thuận tiện cho việc di chuyển Gậy sẽ bao gồm ba phần chính: tay cầm dài 20cm, thân gậy dài 85cm làm từ thanh nhôm định hình, và hộp mica kích thước 25cm x 10cm x 3cm để chứa mạch điều khiển Hộp mica sẽ được gắn dưới tay cầm và trên thân gậy Phía dưới cùng của gậy sẽ có cảm biến khoảng cách hồng ngoại và cảm biến chất lỏng không tiếp xúc, trong khi phía trên, trước tay cầm sẽ có cảm biến siêu âm chống thấm nước và mạch thu RF Hệ thống đèn LED sẽ được lắp đặt dưới cảm biến siêu âm.
Hình 3 1 Mô hình sản phầm gậy thông minh
Yêu cầu của hệ thống
- Đo được khoảng cách từ gậy đến vật cản và phát ra tín hiệu cảnh báo khi có vật cản
- Tìm vị trí của gậy khi thất lạc
- Gọi điện, nhắn tin kèm theo tọa độ vị trí khi có tín hiệu khẩn cấp hoặc té ngã
- Có tín hiệu đèn phát sáng cảnh báo khi đi vào trong tối
- Phát cảnh báo khi đi vào vùng có chất lỏng
Sơ đồ khối và chức năng từng khối của hệ thống
Dựa trên các tiêu chí đã xác định, chúng tôi đã thiết kế sơ đồ khối cho hệ thống bao gồm các thành phần chính như khối xử lý trung tâm, khối nguồn, khối cảm biến, khối phát tín hiệu cảnh báo, khối nút nhấn, khối GPS và khối thu phát RF Mối tương quan giữa các khối này được minh họa rõ ràng trong hình 3.2.
Hình 3 2 Sơ đồ khối của mô hình phần cứng gậy thông minh
Trong sơ đồ khối tổng quan, khối cảm biến là thiết bị đầu vào của hệ thống, có nhiệm vụ thu thập dữ liệu về khoảng cách vật cản, té ngã, và chất lỏng khẩn cấp Khối xử lý trung tâm, được coi là bộ não của hệ thống, nhận dữ liệu từ các khối đầu vào như khối cảm biến, GPS GSM, thu phát RF và nút nhấn Sau khi xử lý, dữ liệu được gửi đến khối phát tín hiệu cảnh báo để thực thi.
Khối nguồn: Cung cấp nguồn cho toàn bộ hệ thống, sử dụng nguồn pin Lippo 6000mAh có mạch bảo vệ sạc xả MHCD-42 có đầu ra ổn định 5V DC
Khối RF: Thiết bị thu sóng nhận sóng RF từ Remote gửi về khối xử lý trung tâm để xử lý
Khối cảm biến: Thu thập dữ liệu gửi về khối xử lý trung tâm để xử lý
Khối nút nhấn: Thu thập tín hiệu khẩn cấp gửi về khối xử lý trung tâm
Khối định vị GPS: Xác định vị trí thông qua sóng vệ tinh, gửi dữ liệu vị trí về khối xử ly trung tâm
Khối xử lý trung tâm nhận dữ liệu từ khối cảm biến, khối RF và khối nút nhấn, sau đó tiến hành xử lý thông tin và gửi dữ liệu qua khối phát tín hiệu cảnh báo.
Khối phát tín hiệu cảnh cáo: Nhận dữ liệu từ khối xử lý trung tâm sau đó đưa ra các tín hiệu cảnh báo tương ứng
Tính toán và thiết kế mạch
3.4.1 Khối xử lý trung tâm
Arduino UNO R3 là bo mạch vi điều khiển phổ biến trong dòng sản phẩm Arduino, được phát hành vào năm 2011 và là phiên bản thứ ba mới nhất.
Mạch kit này được thiết kế dựa trên vi điều khiển ATmega328P, nhằm mục đích kiểm soát và duy trì hoạt động của bộ vi điều khiển Nó có khả năng lập trình cho các ứng dụng điều khiển phức tạp nhờ vào cấu hình mạnh mẽ với các loại bộ nhớ ROM, RAM và Flash Mạch còn tích hợp nhiều ngõ vào ra digital I/O, bao gồm các ngõ có khả năng xuất tín hiệu PWM, ngõ đọc tín hiệu analog, cùng với các chuẩn giao tiếp đa dạng như UART, SPI và TWI (I2C).
Bảng 3 1 Thông số kỹ thuật Adruino Uno R3
Vi điều khiển ATmega328P(8bits) Điện áp hoạt động 5VDC
Tần số hoạt động 16MHz Điện áp đầu vào khuyên dùng 7VDC-12VDC Điện áp vào giới hạnc 6-20V DC
Số chân Digital I/O 14 (6 chân hardware PWM)
Số chân Analog 6 (độ phân giải 10bit)
Dòng tối đa trên mỗi chân I/O 30 mA
Dòng ra tối đa (5V) 500 mA
Dòng ra tối đa (3.3V) 50mA
Bộ nhớ flash 32 KB (ATmega328) với 0.5KB dùng bởi bootloader
GND (Ground) là cực âm của nguồn điện cung cấp cho Arduino UNO Khi sử dụng các thiết bị với nguồn điện riêng biệt, các chân GND cần phải được kết nối với nhau để đảm bảo hoạt động ổn định.
- 5V: cấp điện áp 5V đầu ra Dòng tối đa cho phép ở chân này là 500mA
- 3.3V: cấp điện áp 3.3V đầu ra Dòng tối đa cho phép ở chân này là 50mA
- Vin (Voltage Input): để cấp nguồn ngoài cho Arduino UNO, bạn nối cực dương của nguồn với chân này và cực âm của nguồn với chân GND
IOREF trên Arduino UNO cho phép đo điện áp hoạt động của vi điều khiển, luôn duy trì ở mức 5V Tuy nhiên, không nên sử dụng chân này để lấy nguồn 5V, vì chức năng chính của nó không phải là cung cấp điện.
- RESET: việc nhấn nút Reset trên board để reset vi điều khiển tương đương với việc chân RESET được nối với GND qua 1 điện trở 10KΩ
Vi điều khiển Atmega328 tiêu chuẩn cung cấp 32KB bộ nhớ Flash, nơi lưu trữ các đoạn lệnh lập trình Mặc dù khoảng vài KB sẽ được sử dụng cho bootloader, người dùng thường chỉ cần dưới 20KB bộ nhớ này.
SRAM (Bộ nhớ truy cập ngẫu nhiên tĩnh) có dung lượng 2KB, nơi lưu trữ giá trị các biến mà bạn khai báo trong quá trình lập trình Số lượng biến bạn khai báo càng nhiều thì yêu cầu về bộ nhớ RAM càng lớn Tuy nhiên, bộ nhớ RAM thường không phải là điều mà bạn phải lo lắng quá nhiều Lưu ý rằng dữ liệu trên SRAM sẽ bị mất khi mất điện.
EEPROM (Bộ nhớ chỉ đọc có thể lập trình và xóa điện tử) hoạt động như một ổ cứng mini, cho phép người dùng đọc và ghi dữ liệu mà không lo mất thông tin khi mất điện, khác với dữ liệu trên SRAM.
Một số lưu ý khi sử dụng Adruino Uno R3
Arduino UNO không được trang bị chức năng bảo vệ khi cắm ngược nguồn, vì vậy người dùng cần kiểm tra kỹ các cực âm và dương trước khi cấp điện Việc kết nối sai nguồn có thể làm hỏng bo mạch, khiến nó trở thành một vật vô dụng Do đó, khuyến khích sử dụng nguồn từ cổng USB khi có thể để đảm bảo an toàn cho thiết bị.
Các chân 3.3V và 5V trên Arduino được thiết kế để cung cấp nguồn cho các thiết bị khác, không phải để nhận nguồn vào Việc cấp nguồn sai vị trí có thể gây hỏng hóc cho board, điều này không được nhà sản xuất khuyến khích.
- Cấp nguồn ngoài không qua cổng USB cho Arduino UNO với điện áp dưới 6V có thể làm hỏng board
- Cấp điện áp trên 13V vào chân RESET trên board có thể làm hỏng vi điều khiển ATmega328
- Cường độ dòng điện vào/ra ở tất cả các chân Digital và Analog của Arduino UNO nếu vượt quá 200mA sẽ làm hỏng vi điều khiển
- Cấp điệp áp trên 5.5V vào các chân Digital hoặc Analog của Arduino UNO sẽ làm hỏng vi điều khiển
Cường độ dòng điện tối đa cho phép qua các chân Digital hoặc Analog của Arduino UNO là 40mA; nếu vượt quá mức này, vi điều khiển sẽ bị hỏng Để bảo vệ vi điều khiển khi không sử dụng cho việc truyền nhận dữ liệu, cần phải sử dụng điện trở hạn dòng.
Khối nguồn là phần cung cấp điện năng cho toàn bộ mạch Để thiết kế khối nguồn hiệu quả, cần thống kê điện áp và dòng điện hoạt động của từng linh kiện (theo bảng 3.1) nhằm tính toán và lựa chọn nguồn điện phù hợp với mô hình.
Bảng 3.2 Bảng thống kê thông số các linh kiện đã sử dụng trong mô hình
STT Tên linh kiện Số lượng Điện áp (V)
4 Cảm biến ánh sáng LDR 1 5 25
5 Cảm biến khoảng cách hồng ngoại E18-D80NK 1 5 300
6 Cảm biến siêu âm chống thấm nước JSN- SR04T 1 1 40
7 Module thu RF 433MHz RX480 1 5 5
8 Cảm biến gia tốc GY – 521 MPU6050 1 5 5
9 Module Điều Khiển Công Suất Mosfet IRF520 1 5 100
10 Cảm biến chất lỏng không tiếp xúc 1 5 200
Tổng dòng điện tiêu thụ 810
Dựa trên bảng thống kê tổng dòng điện tiêu thụ là 810mA
Ta tính công suất tiêu thụ theo công thức (3.4):
P = U.I (3.4) Như vậy tổng công suất của toàn mạch là : P = 0.81(A) 5(V) = 4.05 W
Do đó ta chọn sử dụng nguồn Pin Lippo 6000mAh 3.7V có công suất là 22.2Wh
Mạch bảo vệ sạc xả MHCD42 cung cấp nguồn 5VDC ổn định với dòng điện từ 0 đến 2.1A, phục vụ cho các linh kiện trong hệ thống Nguồn Pin được kết nối với tất cả linh kiện, trong khi hệ thống sạc và mạch bảo vệ đi kèm 4 đèn LED hiển thị mức Pin, giúp người dùng dễ dàng theo dõi và cắm sạc Mạch sạc sử dụng jack nguồn DC với kích thước lỗ tròn 5.5mm.
Mạch sạc Pin Lithium và cấp nguồn DC 5V 2.1A MH-CD42:
Hình 3 4 Mạch sạc Pin Lithium và cấp nguồn DC 5V 2.1A MH-CD42
Bảng 3 3.Bảng thông số kỹ thuật Mạch sạc Pin Lithium và cấp nguồn DC 5V
Dòng sạc 0-2.1A Điện áp khi đầy pin 4.2V + - 1%
Dòng xả 0-3.5A Điện áp đầu ra 5VDC
Bảng 3 4.Bảng Thông số kỹ thuật pin LIPO 6000mAh 3.7V
Dung lượng pin 6000mAh Điện thế ra 3.7V Điện áp sạc 4.2V
3.4.3.1 Cảm biến siêu âm chống thấm nước JSN- SR04T
Hình 3 6 Cảm biến siêu âm chống thấm nước JSN- SR04T
Cảm biến JSN-SR04T là thiết bị đo khoảng cách bằng sóng siêu âm, nổi bật với kích thước nhỏ gọn, dễ sử dụng, công suất thấp và độ chính xác cao Nó còn có khả năng chống nhiễu và chống thấm, mặc dù có điểm mù là 20cm Sản phẩm bao gồm một cảm biến siêu âm và một bảng mạch điều khiển, mang lại hiệu suất vượt trội trong các ứng dụng đo lường.
Bảng 3 5.Bảng thông số kỹ thuật cảm biến siêu âm chống thấm nước JSN- SR04T Điện áp hoạt động 3-5.5VDC
Tần số cảm biến 40kHz
Khoảng cách 20-600cm Độ chính xác