Việc sử dụng giọng nói để điều khiển thiết bị không chỉ mang lại tiện ích trong sinh hoạt mà còn nâng cao khả năng của công nghệ hiện đại.. Một lĩnh vực nổi bật trong ứng dụng công nghệ
Trang 1BỘ CÔNG THƯƠNG
TRƯỜNG ĐẠI HỌC CÔNG NGHIỆP THÀNH PHỐ HỒ CHÍ MINH
KHOA CÔNG NGHỆ ĐIỆN TỬ
PHAN NGUYỄN TẤN THÀNH NGUYỄN ĐÌNH THĂNG
THIẾT KẾ, THI CÔNG XE MÔ HÌNH ĐIỀU KHIỂN BẰNG GIỌNG NÓI THÔNG QUA MÁY
Trang 2THÔNG TIN CHUNG
Họ và tên sinh viên:
1) Phan Nguyễn Tấn Thành MSHV: 19440191
2) Nguyễn Đình Thăng MSHV: 19432461
Lớp : DTVT15ATT Khóa: 2019-2023
Chuyên ngành : ĐIỆN TỬ VIỄN THÔNG - Mã chuyên ngành: 751302
SĐT : 0963681854 0899905432 – Email :tanthanh812001@gmail.com
:s5nguyendinhthang@gmail.com
Địa chỉ liên hệ :14, Phan Văn Trị, P7, Gò Vấp, Tp.HCM
Tên đề tài : Thiết kế , thi công xe mô hình điều khiển bằng giọng nói thông qua máy tính
Người hướng dẫn TS Nguyễn Hoàng Việt :
SĐT : 0943863333
Email : Vietnguyendhcn@gmail.com
Cơ quan công tác : Trường ĐH Công Nghiệp TP HCM
Tp Hồ Chí Minh, ngày 7 tháng 11 năm 2023….… Người hướng dẫn (Ký và ghi rõ họ tên) Sinh viên (Ký và ghi rõ họ tên) Phan Nguyễn Tấn Thành
Trang 3MỤC LỤC
MỤC LỤC 3
DANH MỤC HÌNH ẢNH 5
MỞ ĐẦU 6
1 Đặt vấn đề 6
2 Mục tiêu của đề tài 6
3 Đối tượng và phạm vi nghiên cứu 7
4 Ý nghĩa thực tiễn của đề tài 7
5 Ý nghĩa khoa học của đề tài 7
CHƯƠNG 1 TỔNG QUAN VỀ Đ Ề TÀI 8
1.1 Tổng quan đề tài xe điều khiển bằng giọng nói 8
1.2 Sơ đồ khối của đề tài: 8
CHƯƠNG 2 CƠ SỞ LÝ THUYẾT 9
2.1 Giới thiệu phần cứng : 9
2.1.1 Giới thiệu STM32F103C8T6 là gì ? 9
2.1.2 Thông số kỹ thuật 10
2.1.3 Cảm biến siêu âm HC-SR04 13
2.1.4 Module điều khiển động cơ L298N 14
2.1.5 Mạch thu phát RF UART 433Mhz HC-12 16
2.2 Giới thiệu phần mềm 17
2.2.1 Công nghệ nhận dạng giọng nói 17
CHƯƠNG 3 PHÂN TÍCH VÀ THIẾT KẾ HỆ THỐNG 20
3.1 Cấu tạo mô hình 20
3.2 Thiết kế hệ thống và Tính toán: 20
3.2.1 Thiết kế sơ đồ khối của hệ thống: 20
3.2.2 Sơ đồ nguyên lý: 21
3.2.3 Phân tích hệ thống: 21
Trang 4CHƯƠNG 4 CÀI ĐẶT PHẦN MỀM 23
4.1 Cài đăt phần mềm: 23
4.2 Phần mềm STM32CubeMX: 23
4.3 Phần mềm KeilC v5: 26
4.4 Cài đặt phần mềm Microsoft Visual Studio : 27
4.5 Code cho STM32F103C8T6: 30
4.6 Viết chương trình nhận dạng giọng nói trên máy tính: 32
4.7 Lưu đồ giải thuật: 33
CHƯƠNG 5 THỰC NGHIỆM VÀ ĐÁNH GIÁ 35
5.1 Các bước vận hành 35
5.2 Đánh giá kết quả: 39
5.2.1 Về phần mềm: 39
5.2.2 Về phần cứng: 39
CHƯƠNG 6 TỔNG KẾT VÀ PHƯƠNG HƯỚNG PHÁT TRIỂN 40
6.1 Kết quả đạt được: 40
6.2 Hạn chế của mô hình: 40
6.3 Hướng phát triển: 40
TÀI LIỆU THAM KHẢO 42
Too long to read on your phone? Save
to read later on your computer
Save to a Studylist
Trang 5DANH MỤC HÌNH ẢNH
Hình 1 Sơ đồ khối của đề tài 8
Hình 2 Vi xử lý STM32F103C8T6 9
Hình 3 Sơ đồ chân STM32F103C8T6 12
Hình 4 Nguyên lý hoạt động HC SR04 14
Hình 5 Module điều khiển động cơ L298N 15
Hình 6 Mạch thu phát RF UART 433Mhz HC-12 17
Hình 7 Thư viện C# trong nhận dạng giọng nói 17
Hình 8 Công nghệ nhận dạng giọng nói gắn liền với trí tuệ nhân tạo 19
Hình 9 Sơ đồ lắp đặt phần cứng 20
Hình 10 sơ đồ nguyên lý mô hình 21
Hình 11 Mô hình sau khi lắp 22
Hình 12 giao diện khởi động STM32CubeMX 23
Hình 13 Lựa chọn vi điều khiển 24
Hình 14 STM32F103C8T6 trong CubeMX 25
Hình 15 kết thúc setting và chọn phần mềm viết code 25
Hình 16 Chọn phần mềm KeilC để viết code 26
Hình 17 Hoàn thành code và build thành công 27
Hình 18 cài đặt phần mềm Microsoft Visual Studio 27
Hình 19 tạo project để viết chương trình 28
Hình 20 code chương trình 29
Hình 21 bắt đầu chạy mô phỏng 29
Hình 22 Lưu đồ giải thuật 33
Hình 23 khởi động phần mềm 35
Hình 24 Mạch thu sóng RF HC12 trên mô hình 35
Hình 25 ra lệnh “Hi” 36
Hình 26 Ra lệnh “Run” 36
Hình 27 ra lệnh “ Left” 37
Hình 28 Ra lệnh “Right” 37
Hình 29 Ra lệnh “Stop” 38
Hình 30 Ra lệnh “Manual” 38
Hình 31 Ra lệnh “Back” 39
Trang 6MỞ ĐẦU
1 Đặt vấn đề
Trong kỷ nguyên hiện đại, sự phát triển của công nghệ nhận dạng giọng nói
đã đánh dấu bước tiến vượt bậc trong lĩnh vực AI và tự động hóa Việc sử dụng giọng nói để điều khiển thiết bị không chỉ mang lại tiện ích trong sinh hoạt mà còn nâng cao khả năng của công nghệ hiện đại
Công nghệ điều khiển bằng giọng nói đang dần thay thế nút bấm và thiết bị điều khiển truyền thống Từ nhà thông minh đến xe hơi, từ đèn thông minh đến các thiết bị gia dụng, tất cả đều hướng tới việc giảm thiểu sự tương tác vật lý và tăng cường sự tiện lợi
Một lĩnh vực nổi bật trong ứng dụng công nghệ này là xe hơi điều khiển bằng giọng nói, cho phép người dùng điều khiển xe mà không cần chạm vào bất kỳ bộ phận nào, mở ra một kỷ nguyên mới trong ngành công nghiệp AI
2 Mục tiêu của đề tài
Mục tiêu của đề tài là thiết kế và thi công một hệ thống xe mô hình có khả năng điều khiển được bằng giọng nói qua máy tính Sử dụng các thành phần chính như:
Viết chương trình cho STM32F103C8T6
Module điều khiển động cơ L298N
Mạch thu phát RF UART 433Mhz HC-12
Cảm biến HC-SR04
Công nghệ nhận dạng giọng nói
Trang 73 Đối tượng và phạm vi nghiên cứu
Đối tượng của dự án này bao gồm những người muốn tìm hiểu về kết hợp giữa công nghệ giọng nói và điều khiển xe tự động Phạm vi nghiên cứu tập trung vào việc phát triển phần mềm và phần cứng để tạo ra một hệ thống hoạt động linh hoạt, chính xác và ổn định
4 Ý nghĩa thực tiễn của đề tài
Hệ thống điều khiển xe bằng giọng nói không chỉ hỗ trợ người dùng với khả năng di chuyển tự động mà còn có thể sử dụng rộng rãi trong các ngành như hệ thống giao thông thông minh và các ứng dụng giải trí khác
5 Ý nghĩa khoa học của đề tài
Đề tài này góp phần vào lĩnh vực trí tuệ nhân tạo và điều khiển tự động bằng cách nghiên cứu và phát triển các phương pháp điều khiển xe thông qua giọng nói
Nó mở ra những cánh cửa mới cho việc ứng dụng công nghệ giọng nói trong các hệ thống điều khiển tự động
Trang 8CHƯƠNG 1 TỔNG QUAN VỀ ĐỀ TÀI
1.1 Tổng quan đề tài xe điều khiển bằng giọng nói
Tín hiệu giọng nói được nhận từ micro cắm vào máy tính rồi được xử lý và gửi sang STM32F103C8T6, sau đó gửi tín hiệu điều khiển động cơ đến module điều khiển động cơ L298N Tùy thuộc vào lệnh điều khiển được nhận, động cơ được kích hoạt để thực hiện các hành động tương ứng Mạch thu phát RF UART 433Mhz HC-
12 nhận lệnh từ máy tính và điều khiển xe từ khoản cách xa Cảm biến HC-SR04 nhận biết vật cản ( tối đa 20 cm)
1.2 Sơ đồ khối của đề tài:
Hình 1 Sơ đồ khối của đề tài
PC nhận tín hiệu giọng nói và chuyển thành tín hiệu RF thông qua Module
RF Sau đó phát tín hiệu cho mạch thu RF rồi chuyển về khối xử lý trung tâm Khối trung tâm STM32: chịu trách nhiệm xử lý thông tin từ module RF và chuyển dữ liệu đến hệ thống điều khiển
Khối cảm biến: gửi và nhận thông tin tín hiệu để truyền đến khối trung tâm
xử lý, từ đó quản lý động cơ
Khối công suất L298N: thu nhận chỉ thị từ khối trung tâm STM32 để quản lý hoạt động của động cơ
Trang 9CHƯƠNG 2 CƠ SỞ LÝ THUYẾT
2.1 Giới thiệu phần cứng :
2.1.1 Giới thiệu STM32F103C8T6 là gì ?
STM32F103C8T6 là bộ vi xử lý 32-bit, nằm trong dòng F1 của các chip STM32 sản xuất bởi ST
Vi xử lý sử dụng lõi xử lý ARM Cortex M3 với tốc độ xử lý lên đến 72 MHz- ,
đi kèm với bộ nhớ Flash lên đến 64 KB để lưu trữ chương trình ứng dụng Bộ nhớ RAM tích hợp là 20 KB, giúp vi xử lý có đủ không gian để thực hiện các tác vụ nhúng phức tạp
MCU này hỗ trợ nhiều giao tiếp, bao gồm USART, SPI, I2C, CAN, và nhiều chân GPIO để kết nối với nhiều thiết bị và cảm biến khác nhau Cổng USB 2.0 có sẵn cho việc kết nối với máy tính hoặc các thiết bị khác
Vi điều khiển này hoạt động từ nguồn cung cấp điện từ 2.0V đến 3.6V, hỗ trợ
hệ thống ngắt và nhiều chế độ tiêu thụ năng lượng để tối ưu hóa hiệu suất và tiêu thụ điện năng Nó cũng có bộ đồng hồ thời gian thực (RTC) và khả năng tạo xung PWM
Hình 2 Vi xử lý STM32F103C8T6
Trang 102.1.2 Thông số kỹ thuật
Kích cỡ: 53.34 x 15.24 mm
Trang bị bộ xử lý 32-bit, lõi ARM COTEX M3, với tốc độ tối đa lên đến 72Mhz
Bộ nhớ bao gồm: 64 Kb bộ nhớ Flash và 20 Kb SRAM
Điện áp 5VDC được cung cấp qua cổng Micro USB và chuyển đổi sang 3.3VDC bởi IC nguồn, phục vụ cho vi điều khiển chính
Sử dụng thạch anh 8Mhz và thạch anh 32Khz cho các ứng dụng liên quan đến RTC
Được trang bị đầy đủ các chân GPIO và các giao tiếp như: CAN, I2C, SPI, UART, USB, v.v
Tích hợp đèn LED chỉ báo trạng thái nguồn, LED PC13, và nút Reset
STM32F103C8T6 được trang bị giao thức truyền thông SPI, một loại giao thức phổ biến dùng trong giao tiếp kiểu chủ-tớ
Trang 11Nó thường được áp dụng để thiết lập giao tiếp giữa bộ điều khiển và các thiết
bị ngoại vi, bao gồm thanh ghi dịch chuyển và cảm biến, thông qua các chân như SPI1_NSS, SPI1_SCK, SPI1_MISO, và SPI1_MOSI
Chân I2C :
STM32F103C8T6 hỗ trợ giao thức truyền thông I2C, đi kèm với hai chân kết nối chính là SDA và SCL
SCL hoạt động như là đường dẫn tín hiệu đồng hồ nối tiếp, đảm bảo sự đồng
bộ trong quá trình truyền dữ liệu qua bus I2C SDA là chân dữ liệu nối tiếp, chịu trách nhiệm chuyển vận dữ liệu Giao thức này đặc biệt nhấn mạnh vào sự tương tác chủ-
tớ giữa các thiết bị liên kết
Các chân ngoại vi khác:
TIMx_CHx: Chân đầu ra PWM từ bộ đồng hồ thời gian (TIM Timer) để điều khiển -
độ sáng, vận tốc độ, hoặc các ứng dụng điều khiển khác
ADCx_INx: Chân đầu vào cho bộ chuyển đổi ADC để đo giá trị analog
CANx_RX, CANx_TX: Chân liên quan đến giao tiếp CAN
USB_DM, USB_DP: Chân liên quan đến giao tiếp USB
NRST: Chân thiết lập lại vi điều khiển
BOOT0, BOOT1: Chân để chọn chế độ khởi động và cấu hình
Trang 12SWDIO, SWCLK: Chân cho giao tiếp và lập trình thông qua giao diện nối tiếp nhanh (SWD - Serial Wire Debug)
Thiết bị đo lường, điều khiển
Thiết bị giao tiếp mạng
Điều khiển motor và các thiết bị công nghệ
Hệ thống giám sát năng lượng và hệ thống solar
Hệ thống an ninh và điều khiển bảo mật
Trang 13Máy in và các thiết bị ngoại vi
2.1.3 Cảm biến siêu âm HC SR04
-a. Cấu tạo
Bộ phát: Được làm từ chất liệu gốm, có kích thước khoảng 15mm, dùng để phát ra sóng siêu âm Hoạt động dựa trên cơ chế rung động của máy rung, truyền sóng siêu âm vào không khí
Bộ thu: Gồm các thiết bị rung động cơ học, điều chỉnh để phù hợp với sóng siêu âm, chuyển đổi chúng thành năng lượng tại đầu ra của bộ thu
Bộ điều khiển: Được thiết kế để quản lý việc truyền sóng siêu âm từ bộ phát, thông qua mạch điện tích hợp Điều này cho phép thu nhận tín hiệu và xác định kích thước của vật thể bởi bộ thu
Nguồn điện DC: Hoạt động ở mức điện áp PCB ± 10%, 24V ± 10%
b Nguyên lý hoạt động:
Cảm biến siêu âm HC-SR04 đi kèm với bốn chân cơ bản: chân Vcc, chân Trigger, chân Echo và chân Ground Cảm biến này được sử dụng chủ yếu để đo khoảng cách trực tiếp giữa chính nó và vật cản phía trước Khi được cấp năng lượng, module này tạo ra sóng âm thanh siêu âm, phát đi trong không khí và phản xạ lại khi gặp vật cản Sóng phản xạ này sau đó được thu lại bởi bộ phận thu của cảm biến HC-SR04 là loại cảm biến siêu âm không tiếp xúc, hoạt động dựa trên nguyên
lý tiệm cận siêu âm Nguyên lý làm việc của nó giống với cách thức định vị bằng tiếng vang ở một số loài động vật như cá da trơn Trong đó, một máy phát sẽ gửi ra một chùm sóng siêu âm với vận tốc xác định (v) và sau đó đo thời gian (t) mà sóng này mất để phản xạ trở lại từ vật thể Khoảng thời gian này tỷ lệ thuận với khoảng cách (R) giữa cảm biến và đối tượng, và từ đó khoảng cách có thể được tính toán dựa trên phương trình liên quan
Trang 14Hình 4 Nguyên lý hoạt động HC SR04
𝑆 =(𝑣 ×𝑡)2Trong đó:
S là khoảng cách từ cảm biến đến vật thể
v là tốc độ truyền âm thanh trong không khí
t là thời gian mà sóng âm thanh cần để quay trở lại cảm biến sau khi phản xạ
Jump A Enable và B Enable: Dùng để kích hoạt và điều khiển các chức năng của động cơ A và B Khi jumper được gắn, nó cho phép điều khiển động cơ tương ứng
Trang 15Các chân Input: IN1, IN2, IN3, IN4: Được sử dụng để nhận tín hiệu điều khiển
từ vi điều khiển hoặc bộ điều khiển khác Chúng xác định hướng và tốc độ quay của động cơ
Output A: Dùng để kết nối với động cơ A Cần chú ý kết nối đúng cực âm và dương để đảm bảo động cơ quay đúng hướng Nếu sử dụng động cơ bước, cần đấu nối các pha một cách phù hợp để đảm bảo hoạt động chính xác của động cơ
Hình 5 Module điều khiển động cơ L298N
b Nguyên lý:
Chân enableA và enableB được sử dụng để điều khiển hoạt động của mạch cầu H Khi chân này ở mức logic "1", mạch cầu H hoạt động Khi chân này ở mức logic "0", mạch cầu H không hoạt động
Khi ENA (enableA) ở mức logic "0", động cơ sẽ ngừng quay với bất kỳ tín hiệu đầu vào nào
Khi ENA ở mức logic "1":
Nếu INT1 ở mức logic "1" và INT2 ở mức logic "0", động cơ sẽ quay cùng chiều
Nếu INT1 ở mức logic "0" và INT2 ở mức logic "1", động cơ sẽ quay ngược chiều
Trang 16Nếu cả INT1 và INT2 đều ở mức logic giống nhau (cả hai đều "0" hoặc cả hai đều "1"), động cơ sẽ ngừng hoạt động
2.1.5 Mạch thu phát RF UART 433Mhz HC-12
a. Cấu tạo mạch RF:
Là một mạch thu phát RF với khả năng truyền dẫn trong khoảng cách lên đến
1 km, nó sử dụng giao thức UART để giao tiếp từ xa và được tích hợp vào các thiết
bị điều khiển từ xa, xe điều khiển từ xa, cũng nhưthuthập thông tin từ cáccảm biến
từ xa Mạch này hoạt động ở tần số 433MHz và có thể hoạt động ở mức điện áptừ3.2V đến 5.5V Nó bao gồm các chân: VCC, GND, TXD, RXD, chân Set và chân Wake
b Nguyên lý hoạt động:
Mạch phát: dữ liệu từ vi điều khiển được đưa vào chân TXD, sau đó chuyển đổi thành sóng RF Tín hiệu modul hóa được phát ra dưới dạng sóng radio ở tần số 433MHz thông qua anten
Mạch thu: Mô-đun thu HC-12 nhận sóng RF từ mô-đun phát hoặc từ các thiết
bị khác tương thích ở tần số 433MHz Tín hiệu RF được demodul hóa để khôi phục lại dữ liệu ban đầu Dữ liệu được truyền từ mô đun thu vào chân RXD, được đọc và -
xử lý bởi vi điều khiển
Trang 17Hình 6 Mạch thu phát RF UART 433Mhz HC-12
2.2 Giới thiệu phần mềm
2.2.1 Công nghệ nhận dạng giọng nói
Hình 7 Thư viện C# trong nhận dạng giọng nói
Trang 18Thư viện C# hỗ trợ nhận diện giọng nói là một bộ công cụ, gói phần mềm, hoặc API (Interface Lập trình Ứng dụng) được thiết kế để giúp ứng dụng C# có khả năng nhận diện và xử lý giọng nói từ người dùng Điều này thường được sử dụng trong các ứng dụng như trợ lý ảo, hệ thống điều khiển giọng nói, hoặc các ứng dụng ghi âm
Dưới đây là một giải thích về một số khái niệm chính và tính năng của các thư viện C# hỗ trợ nhận diện giọng nói:
Speech Recognition Engine (Động cơ nhận diện giọng nói): Thư viện thường cung cấp một động cơ nhận diện giọng nói, một thành phần chính để xử lý và phân tích tín hiệu âm thanh từ microphone hoặc nguồn âm thanh khác
âm thanh, chẳng hạn như microphone, để đảm bảo rằng hệ thống có thể thu âm và xử
lý âm thanh một cách hiệu quả
Dưới đây là một số ví dụ về các thư viện C# phổ biến trong lĩnh vực nhận diện giọng nói:
System.Speech.Recognition: Là một phần của NET Framework, cung cấp các lớp để thực hiện nhận diện giọng nói trong ứng dụng C#
Microsoft Speech SDK: Một bộ công cụ mạnh mẽ của Microsoft cung cấp các tính năng nhận diện giọng nói và tổng hợp giọng nói
Trang 19Google Cloud Speech-to-Text API: Cho phép tích hợp dịch vụ nhận diện giọng nói
từ Google Cloud vào ứng dụng C#
Hình 8 Công nghệ nhận dạng giọng nói gắn liền với trí tuệ nhân tạo
Trang 20CHƯƠNG 3 PHÂN TÍCH VÀ THIẾT KẾ HỆ THỐNG
3.1 Cấu tạo mô hình
Mô hình xe điều khiển được thiết kế với các thành phần sau:
Trung tâm điều khiển: STM32F103C8T6
Module phát hiện vật càn: module cảm biến siêu âm SR04
Mạch thu phát : RF HC-12
Mạch công suất: mạch cầu H ( L298N )
Khung xe: gồm 2 động cơ ,1 bánh đa hướng, tấm khung xe
3.2 Thiết kế hệ thống và Tính toán:
3.2.1 Thiết kế sơ đồ khối của hệ thống:
Hình 9 Sơ đồ lắp đặt phần cứng