Thiết kế và thi công găng tay phát hiện vật cản cho người khiếm thị sử dụng Raspberry Pi giao tiếp với cảm biến siêu âm và báo hiệu bằng giọng nói thông qua loa. Chương trình được viết trên hệ điều hành của Raspberry Pi.
TỔNG QUAN
Lý do chọn đề tài
Hiện nay, việc áp dụng khoa học công nghệ và kỹ thuật hiện đại trong lĩnh vực y tế đang được chú trọng nhằm nâng cao chất lượng cuộc sống và tăng cường khả năng tiếp cận với xu hướng toàn cầu về bảo vệ sức khỏe.
Người khiếm thị thường gặp khó khăn trong việc di chuyển, dẫn đến việc phát triển các giải pháp hỗ trợ như gậy dò đường thông minh và mắt kính thông minh Những thiết bị này đã mang lại những tiến bộ đáng kể trong việc hỗ trợ người khiếm thị, tuy nhiên vẫn còn tồn tại một số nhược điểm như gậy dò đường chỉ có khả năng phát hiện vật cản thông qua motor rung và mắt kính thông minh có giá thành cao.
Một thiết bị hỗ trợ cho người khiếm thị như một con mắt thứ ba sẽ giúp họ điều hướng bằng cách phát hiện chướng ngại vật gần đó thông qua sóng siêu âm và thông báo khoảng cách bằng giọng nói Là sinh viên ngành Kỹ thuật Y sinh, khoa Điện – Điện tử, sau khi hoàn thành môn Vi xử lý và thực tập, chúng em quyết định nghiên cứu lập trình và áp dụng kiến thức đã học vào dự án này Đề tài nhóm em chọn tập trung vào việc phát triển thiết bị hỗ trợ cho người khiếm thị.
Nhóm chúng tôi đang thực hiện đề tài "Thiết kế và thi công găng tay phát hiện vật cản cho người khiếm thị bằng giọng nói" Để triển khai dự án này, chúng tôi đã nghiên cứu và khảo sát các phương pháp thực hiện, đặc biệt là cảm biến siêu âm và vi điều khiển Raspberry Pi.
Mục tiêu
Găng tay phát hiện vật cản cho người khiếm thị được thiết kế và thi công sử dụng Raspberry Pi, kết hợp với cảm biến siêu âm để nhận diện chướng ngại vật Hệ thống báo hiệu bằng giọng nói qua loa, với chương trình được lập trình trên hệ điều hành của Raspberry Pi.
Nội dung nghiên cứu
Trong đề tài "Thiết kế và thi công găng tay phát hiện vật cản cho người khiếm thị bằng giọng nói", chúng em đã tiến hành nghiên cứu và thực hiện các bước thiết kế, chế tạo găng tay thông minh giúp người khiếm thị nhận diện vật cản xung quanh thông qua công nghệ nhận diện giọng nói Sản phẩm này không chỉ nâng cao khả năng di chuyển an toàn cho người khiếm thị mà còn tạo ra sự độc lập trong cuộc sống hàng ngày của họ.
Nội dung 1: Tìm hiểu tổng quan về cảm biến
Nội dung 2: Hiểu được các lệnh cơ bản trong lập trình Python
Nội dung 3: Hiểu được cách kết nối hệ thống thu nhận, xử lý tín hiệu
Nội dung 4: Thiết kế sơ đồ khối của đề tài và giải thích được nguyên lý hoạt động, chức năng của các khối
Nội dung 5: Thiết kế sơ đồ mạch và mô phỏng mạch
Nội dung 6: Viết chương trình
Nội dung 7: Lựa chọn linh kiện phù hợp
Nội dung 8: Chạy thử nghiệm, thi công và hoàn thiện sản phẩm
Nội dung 9: Thực hiện viết báo cáo đồ án
Nội dung 10: Tiến hành báo cáo đề tài.
Giới hạn
- Thiết kế của thiết bị có kích thước: 14 x 10cm
- Sử dụng module cảm biến siêu âm HC-SR04 giao tiếp với Raspberry Pi
- Ứng dụng được chạy trên hệ điều hành Raspberry Pi
- Loa được kết nối với Raspberry Pi và thông báo bằng giọng nói.
Bố cục đề tài
Trong báo cáo này, chúng em đã trình bày một cách hợp lý phương pháp và cách thức hoạt động, với bố cục được chia thành 5 phần rõ ràng.
Phần 1: Tổng quan về chủ đề, mục tiêu, phạm vi và bố cục của chủ đề
Phần 2: Cơ sở lý thuyết Về kiến thức về các thành phần như vi điều khiển, cảm biến và phần mềm lập trình liên quan
Phần 3: Tính toán và thiết kế hệ thống
Phần 4: Thi công hệ thống
Phần 5: Kết luận và phát triển đề tài
CƠ SỞ LÝ THUYẾT
Cảm biến siêu âm
2.1.1 Khái niệm về sóng siêu âm
Sóng siêu âm là loại sóng âm thanh có tần số vượt quá khả năng nghe của con người, thường nằm trong khoảng từ 20 KHz đến vài GHz Mặc dù không thể nghe thấy, sóng siêu âm vẫn có những đặc điểm vật lý tương tự như âm thanh thông thường Các thiết bị siêu âm sử dụng sóng này để thực hiện nhiều ứng dụng khác nhau trong y tế và công nghiệp.
Sóng siêu âm có ứng dụng rộng rãi trong nhiều lĩnh vực, bao gồm phát hiện vật thể và đo khoảng cách Thiết bị siêu âm thường được sử dụng trong y học để tạo ra hình ảnh siêu âm Ngoài ra, trong thử nghiệm không phá hủy, siêu âm giúp phát hiện các lỗ hổng vô hình trong sản phẩm và cấu trúc.
Hình 1 Cảm biến siêu âm HC-SR04
Cảm biến siêu âm HC-SR04 là thiết bị đo khoảng cách bằng sóng âm siêu âm, sử dụng đầu dò để gửi và nhận xung siêu âm Thiết bị này chuyển tiếp thông tin về các vật thể gần kề thông qua sóng âm tần số cao, phản xạ từ các ranh giới để tạo ra các mẫu tiếng vang riêng biệt.
Cảm biến siêu âm HC-SR04 có bốn chân, bao gồm:
- Vcc: Chân Vcc cấp nguồn cho cảm biến, thường có + 5V
- Trigger: Là một pin đầu vào Pin này phải được giữ ở mức cao trong 10us để khởi tạo phép đo bằng cách gửi sóng siêu âm
- Echo: Là chân đầu ra Pin này giữ ở mức cao trong một khoảng thời gian sẽ bằng với thời gian để sóng siêu âm quay trở lại cảm biến
- Ground: Pin này được kết nối với GND của hệ thống
Bảng 1 Thông số kỹ thuật cảm biến siêu âm HC-SR04
TÊN THÔNG SỐ GIÁ TRỊ ĐƠN VỊ
Tên cảm biến HC-SR04
Mức điện áp hoạt động 5 Vdc
Mức dòng điện hoạt động 15 mA
Tần số làm việc 40 Hz
Phạm vi tối thiểu 2 cm
2.1.2.2 Cấu trúc bên trong cảm biến
Cảm biến siêu âm HC-SR04 hoạt động bằng cách phát ra sóng siêu âm theo một hướng và bắt đầu định thời khi sóng được phát Sóng siêu âm sẽ lan truyền trong không khí và quay trở lại ngay lập tức khi gặp chướng ngại vật Cuối cùng, đầu thu siêu âm dừng thời gian khi nhận được sóng phản xạ, từ đó xác định khoảng cách đến vật thể.
Như chúng ta biết rằng:
Trong đó: S là khoảng cách
Do đó, để tính khoảng cách từ HC-SR04 đến đối tượng, chúng ta cần tìm hai yếu tố: tốc độ và thời gian
HC-SR04 cung cấp tổng thời gian t tính bằng micro giây Để tính khoảng cách bằng centimet, cần thực hiện hai chuyển đổi: đầu tiên, chuyển từ mét/giây sang centimet/giây bằng cách nhân với 10², cho kết quả là 343 × 10² centimet/giây Tiếp theo, để chuyển giây thành micro giây, chúng ta nhân số lượng với 10⁻⁶.
343 × 10² × 10 −6 centimet / micro giây = 343 × 10 −4 centimet / micro giây = 0,0343 cm / micro giây
Để tính khoảng cách, chúng ta nhân số 𝑇 với 1/2 (do đây là tổng thời gian sóng âm truyền từ máy phát đến đối tượng và trở lại máy thu) và nhân với 0,0343 cm/micro giây, kết quả sẽ cho ra khoảng cách tính bằng cm.
Hình 3 Hình ảnh minh họa phát và thu tín hiệu của cảm biến siêu âm HC-SR04
Raspberry Pi 3B
Raspberry Pi 3 là một máy tính bảng nhỏ gọn do Raspberry Pi Foundation phát triển, trang bị CPU, GPU, cổng USB và chân I/O, cho phép thực hiện các chức năng cơ bản giống như máy tính thông thường Nó sử dụng chip BCM2837 với CPU 64Bit và tốc độ 1.2GHz Quad-Core ARM Cortex-A53.
Raspberry Pi OS, trước đây gọi là Raspbian, là hệ điều hành dựa trên Debian được tối ưu hóa cho máy tính Raspberry Pi Hệ thống này sử dụng nền tảng Debian Linux và bao gồm các công cụ hữu ích cho việc duyệt web, lập trình Python và giao diện máy tính để bàn GUI.
- Phần cứng: Thực hiện giao tiếp với các loại cảm biến, có các cổng giao tiếp cho phép hiển thị hình ảnh và âm thanh
Hình 4 Mặt trước-sau của Raspberry Pi 3B Bảng 2 Thông số kỹ thuật của Raspberry Pi 3B
TÊN THÔNG SỐ GIÁ TRỊ ĐƠN VỊ
Bộ nhớ 1 GB Điện áp hoạt động 5 V
Raspberry Pi 3 được trang bị bốn cổng USB tích hợp, cho phép kết nối dễ dàng với chuột, bàn phím và các thiết bị khác Việc cấp nguồn cho Raspberry Pi 3 rất đơn giản, chỉ cần sử dụng nguồn cung cấp USB cắm vào cổng micro-USB Không có nút nguồn, Pi sẽ tự động khởi động khi có nguồn điện và để tắt máy, chỉ cần ngắt nguồn Bốn cổng USB này còn hỗ trợ xuất tới 1,2A, giúp kết nối nhiều thiết bị USB tiêu tốn điện năng hơn.
Hình 5 Sơ đồ kết nối bên trong của Raspberry Pi 3B
- Sơ đồ chân và các cổng kết nối trên Raspberry Pi 3B:
Hình 6 Sơ đồ chân và cổng của Raspberry Pi 3B
Ổ cắm Ethernet 10/100 BaseT o Đầu ra video
Kết hợp RCA (PAL và NTSC) o Đầu ra âm thanh
Giắc cắm đầu ra âm thanh 3,5mm
Đầu nối USB 4 x USB 2.0 o Đầu nối GPIO
Tiêu đề mở rộng 40 chân 2,54 mm (100 triệu): dải 2x20
Cung cấp 27 chân GPIO cũng như các đường cung cấp +3.3 V, +5 V và GND o Đầu nối camera
Giao diện nối tiếp máy ảnh MIPI 15 chân (CSI-2) o Kết nối màn hình
Hiển thị Đầu nối cáp flex phẳng 15 chiều Giao diện nối tiếp (DSI) với hai làn dữ liệu và làn đồng hồ o Khe cắm thẻ nhớ
Nguồn
Pin là một thiết bị bao gồm nhiều lớp, trong đó năng lượng hóa học được chuyển đổi thành điện năng, cung cấp nguồn năng lượng cho các thiết bị.
Có hai loại pin chính: pin sơ cấp, hay còn gọi là pin dùng một lần, được thiết kế để sử dụng chỉ một lần và sau đó vứt đi; và pin thứ cấp, hay pin nạp được, cho phép người dùng sạc và sử dụng nhiều lần.
Hình 7 Hình minh họa các loại Pin
Pin Lithium-ion 3.7V – 3800mA là loại pin sạc có khả năng sử dụng nhiều lần, nổi bật với mật độ năng lượng cao và dung lượng lớn trong kích thước nhỏ Loại pin này cũng ít bị tự xả, giúp giữ năng lượng lâu hơn.
Pin Li-Ion hoạt động dựa trên nguyên tắc trao đổi ion lithium giữa hai điện cực để thực hiện quá trình sạc và xả điện, sử dụng dung dịch điện ly làm môi trường Để đảm bảo hiệu suất tối ưu, pin Li-Ion nên được sạc trong khoảng nhiệt độ từ 5 đến 45 độ C.
- Dung lượng pin: 3800 mAH (tối đa); Đánh giá hiện tại: 1.8A, điện áp đầu ra (không tải): 5,1 V ± 0,1 V
Module nguồn cho Raspberry Pi 3 Model B được thiết kế để sử dụng trong các trường hợp không có nguồn AC, cho phép Raspberry Pi hoạt động liên tục lên đến 9 giờ Nó có 2 cổng USB: một cổng cấp nguồn cho Raspberry Pi và một cổng có thể cung cấp năng lượng cho màn hình LCD Ngoài ra, module còn được trang bị 1 cổng sạc mini USB để sạc pin.
Hình 8 Sơ đồ cổng của RPi PowerPack
Trên module RPi PowerPack, có một IC đảm nhiệm chức năng sạc và tăng áp nguồn từ pin Lithium ra hai cổng USB, được gọi là chip sạc/tăng áp IC này được đặt dưới một tản nhiệt trên module.
Hình 9 Hình vị trí chip Charging/Boost và đế tản nhiệt
Khi kết nối module với nguồn 5V/ (> 1A) charging/boost chip có thể làm việc đồng thời ở 2 chế độ: chế độ sạc và step-up mode
Khi hai cổng USB đầu ra không được kết nối với tải (như Raspberry Pi), chip sạc/boost sẽ tự động chuyển sang chế độ sạc Lúc này, nguồn 5V đầu vào sẽ sạc cho pin và đồng thời cung cấp điện áp khoảng 4.6-4.7V ra hai cổng USB Đèn ON/OFF sẽ sáng khi có kết nối với nguồn 5V, không phụ thuộc vào trạng thái của công tắc nguồn Đèn CHG sẽ hiển thị khi pin đang sạc và sẽ tắt khi pin đạt điện áp cắt (Cut-off voltage) từ 4.18 đến 4.2V.
Chip sạc/boost sẽ hoạt động ở chế độ step-up khi không có nguồn 5V đầu vào Khi bật công tắc nguồn, IC sẽ nâng cao điện áp từ pin ra hai cổng USB, với điện áp đầu ra tối đa 5,2V tại mỗi cổng khi không tải Tổng công suất của hai cổng USB có thể cung cấp dòng điện tối đa lên đến 1.8A.
Loa toàn dải
Loa toàn dải là loại trình điều khiển thiết kế để tái tạo tối đa dải tần âm thanh có thể nghe được, trong giới hạn vật lý của thiết kế cụ thể Để đạt được dải tần số tối ưu, loa toàn dải thường sử dụng hình nón Whizzer cùng với các công nghệ khác.
- Cấu tạo: o Đầu cực o Nam châm o Cuộn âm o Màng loa o Khung loa o Viền loa o Màng chống bụi o Chóp hình nón (Whizzer)
Hình 10 Loa toàn dải và cấu tạo
Loa điện động hoạt động dựa trên nguyên tắc kỹ thuật điện cơ, bao gồm một cuộn dây trong từ trường mạnh của nam châm Khi dòng điện âm tần chạy qua, cuộn dây dao động, tạo ra âm thanh qua màng loa Màng rung là bộ phận quan trọng của loa, nơi âm thanh được phát ra Tùy thuộc vào loại loa, nguyên lý rung màng rung có thể khác nhau Hầu hết loa màng rung có cuộn dây gắn liền, được đặt trong khe hẹp giữa hai cực nam châm vĩnh cửu; khi dòng điện tín hiệu chạy qua, cuộn dây rung lên, làm cho màng loa chuyển động và phát ra âm thanh.
Mạch khuếch đại PAM8403
PAM8403 là bộ khuếch đại âm thanh loại D, công suất 3W, nổi bật với chỉ số THD N thấp, giúp tái tạo âm thanh chất lượng cao.
PAM8403 có hiệu suất vượt trội so với các bộ khuếch đại Class-AB, nhờ vào 23 thành phần bên ngoài, giúp mở rộng tuổi thọ pin và rất phù hợp cho các ứng dụng di động.
Hình 11 Sơ đồ chân PAM8403 Bảng 3 Sơ đồ và chức năng từng chân của mạch khuếch đại PAM8403
Số chân Tên chân Chức năng
1 +OUTPUT_L Đầu ra kênh trái
3 -OUT_L Đầu ra âm kênh trái
5 MUTE Đầu vào điều khiển tắt tiếng (mức thấp)
7 INL Đầu vào kênh trái
8 VREF Tham chiếu tương tự bên trong, kết nối một tụ điện
24 thông dải từ VREF đến GND
10 INR Đầu vào kênh phải
12 SHND Đầu vào điều khiển tắt (mức thấp)
14 -OUT_R Đầu ra âm kênh phải
16 +OUT_R Đầu ra kênh phải
Hình 12 Mạch ứng dụng của mạch khuếch đại PAM8403
TÍNH TOÁN VÀ THIẾT KẾ HỆ THỐNG
Giới thiệu hệ thống
Bộ xử lý trung tâm tiếp nhận tín hiệu từ cảm biến siêu âm, thực hiện tính toán và xử lý tín hiệu Ngoài ra, nó còn có khả năng thông báo khoảng cách bằng giọng nói thông qua loa.
Thiết kế và tính toán hệ thống
3.2.1 Thiết kế sơ đồ khối
Hình 13 Sơ đồ khối của thiết bị phát hiện vật cản và thông báo bằng giọng nói
Khối nguồn cung cấp năng lượng cho toàn bộ mạch, đảm bảo hoạt động ổn định Khối vi điều khiển nhận tín hiệu từ khối cảm biến siêu âm và chuyển tiếp tín hiệu đến loa Khối cảm biến siêu âm có nhiệm vụ phát hiện vật cản và đo khoảng cách Cuối cùng, loa đảm nhận chức năng báo hiệu bằng giọng nói, giúp người dùng nhận biết thông tin cần thiết.
Hình 14 Pin lithium được kết nối vào Module RPi PowerPack
- Pin Lithium 3.7V – 3000mAh nối vào cổng LiPo của module RPi PowerPack
- Hai cổng OUTPUT của module RPi PowerPack được sử dụng để cấp nguồn cho
Raspberry Pi với dòng ngõ ra là 1.8A/ điện áp 5V
Hình 15 RPi powerpack cấp nguồn cho RPi thông qua cổng Micro USB
- Raspberry Pi có chức năng cấp nguồn, tính toán và xử lý tín hiệu nhận được từ khối cảm biến siêu âm
Chân TRIG nối vào GPIO 23
Chân ECHO nối vào GPIO 24
Hình 16 Kết nối khối vi điều khiển và khối cảm biến siêu âm
Raspberry Pi gửi tín hiệu đầu vào tới chân TRIG để kích hoạt cảm biến siêu âm Cảm biến phát ra sóng xung, những sóng này va chạm với các vật thể gần đó và một phần sẽ phản xạ trở lại Cảm biến nhận diện các sóng phản xạ và đo thời gian giữa xung kích hoạt và xung trở lại, sau đó truyền tín hiệu 5V qua chân ECHO.
- Loa được kết nối với Raspberry Pi thông qua jack cắm audio
- Jack audio cắm vào Raspberry phải là loại 3.5mm
Hình 17 Cổng audio trên Raspberry Pi và jack 3.5mm 3.2.2.3 Khối cảm biến siêu âm
- Cảm biến siêu âm được sử dụng là HC-SR04 với 4 chân ngõ ra: VCC, TRIG, ECHO và GND
Hình 18 Kết nối khối cảm biến siêu âm trong mạch
Tín hiệu đầu ra cảm biến (ECHO) của HC-SR04 là 5V, trong khi chân đầu vào của Raspberry Pi GPIO chỉ chịu được mức 3,3V Việc gửi tín hiệu 5V vào cổng đầu vào 3,3V không được bảo vệ có thể gây hỏng chân GPIO Do đó, cần sử dụng một mạch phân chia điện áp với hai điện trở 1kΩ và 2kΩ để hạ thấp điện áp đầu ra của cảm biến xuống mức an toàn.
- Raspberry Pi cấp nguồn cho mạch khuếch đại PAM8403
- Loa 3W 4Ω được nối với mạch khuếch đại PAM8403 để khuếch đại tín hiệu âm thanh
- Tín hiệu nhận vào được tính toán và sử dụng phương pháp Text-to-speech để đọc khoảng cách phát ra loa
Hình 19 Hình mô tả khối Loa
THI CÔNG HỆ THỐNG
Giới thiệu
- Kiểm tra và sửa lỗi.
Thực thi hệ thống
4.2.1 Sơ đồ kết nối mạch
Hình 20 Sơ đồ kết nối mạch
Hình 21 Sơ đồ kết nối Loa và mạch khuếch đại PAM8403 và RPi
- Nguồn 5V và GND của Raspberry Pi cấp nguồn cho PAM8403
- Loa 3W 4Ω được nối trực tiếp vào chân Output Left của mạch khuếch đại âm thanh PAM8403
- Cổng audio của Raspberry Pi nối với chân Input Left của mạch khuếch đại PAM8403
Hình 22 Sơ đồ kết nối cảm biến siêu âm HC-SR04 và RPi
- Nguồn 5V và GND của Raspberry Pi cấp cho cảm biến siêu âm HC-SR04
- Chân ECHO của HC-SR04 được nối vào trở 1kΩ và lấy chân ngõ ra từ trở 1kΩ nối tiếp 2kΩ nối vào chân GPIO 24 của RPi
- Chân TRIG của HC-SR04 nối vào chân GPIO 23 của RPi
Bảng 4: Bảng thống kê linh kiện
STT TÊN LINH KIỆN SỐ LƯỢNG ĐẶC ĐIỂM
3 Điện trở 1K 3 Linh kiện hàn
Hình 23 Kết nối linh kiện
Hình 24 Các linh kiện được thiết kế bên trong
Mục đích của việc lập trình là:
- Khi khoảng cách > 150 cm: Không đọc khoảng cách
- Khi khoảng cách < 150.5 và >= 140.5: Đọc khoảng cách “Alert! The distance is about 145 cm"
- Khi khoảng cách < 140 và >= 130: Đọc khoảng cách "Alert! The distance is about
- Khi khoảng cách < 130 và >0: Đọc khoảng cách "Alert! The distance is about
- Khi khoảng cách 0: Đọc khoảng cách "Alert! The distance is about
- Khi khoảng cách 0: Đọc khoảng cách "Alert! The distance is about
- Khi khoảng cách : Đọc khoảng cách "Alert! The distance is about 95 cm"
- Khi khoảng cách : Đọc khoảng cách "Alert! The distance is about 85 cm"
- Khi khoảng cách p: Đọc khoảng cách "Alert! The distance is about 75 cm"
- Khi khoảng cách `: Đọc khoảng cách "Alert! The distance is about 65 cm"
- Khi khoảng cách P: Đọc khoảng cách "Alert! The distance is about 55 cm"
- Khi khoảng cách @: Đọc khoảng cách "Alert! The distance is about 45 cm! Carefully"
- Khi khoảng cách 0: Đọc khoảng cách "Alert! The distance is about 35 cm! Carefully"
- Khi khoảng cách 150 cm sẽ không thông báo bằng giọng nói qua loa
- Nếu khoảng cách < 150 cm sẽ thông báo khoảng cách bằng giọng nói qua loa
Hình 26 Hình ảnh bên ngoài của thiết bị
Hình 27 Thiết bị khi đeo lên tay
Hình 28 Kết quả đo được khi đưa vật đến gần cảm biến
- Khi đưa vật đến gần cảm biến, kết quả đo được là 9.75 cm và loa sẽ thông báo
"Alert !The distance is under 30 cm ! Stop! Stop! Stop"
Hình 29 Kết quả đo được khi đưa vật ra xa cảm biến
- Khi đưa vật ra xa cảm biến, kết quả đo được là 82.5 cm và loa sẽ thông báo "Alert! The distance is about 85 cm"