CHƯƠNG 1 GIỚI THIỆU CHI TIẾT BỘ PHẬN XỬ LÝ GIỌNG NÓI 1.1 Giới thiệu nguyên lý IC HM2007 [2] IC HM 2007 là một thiết bị đơn chip CMOS, xử lí giọng nói dưới dạng mạch LSI điều chế tín hiệu tương tự, điều chế phổ âm, nhận lệnh và điều khiển chức năng các hệ thống. Theo tiêu chuẩn, thì ic HM2007 có thể nhận tới 40 lệnh, việc truyền và nhận lệnh được thực hiện bẳng micro đưa tín hiệu vào, cùng một bàn phím, một ic nhớ SRAM và nhiều bộ phận khác. Từ đây tín hiệu được xử lý và xây dựng thành một hệ thống thông minh trong việc nhận diện giọng nói.1 Tổng quan IC HM 2007 [2] 1.1 Đặt tính - Thiết bị đơn chip nhận biết âm thanh dạng CMOS LSI - Tiếng nói được nhận vào hệ thống theo một chuẩn riêng biệt. - IC nhớ SRAM có thể được kết nối trực tiếp.
- Một chip HM 2007 có thể nhận được 40 từ. - Thời gian tối đa mỗi từ phù hợp mà ic có thể xử lý là 1. - Kết cấu phức tạp. - Một micro đi kèm thiết bị.
- Có hai chế độ sử dụng: chế động thường, và chế độ CPU. 01/12/2009 TRANG 12 SVTH: PHẠM NGỌC ĐĂNG KHOA NGHIÊN CỨU KHOA HỌC 2009 GVHD: Th.S NGUYỄN VŨ QUỲNH - Thời gian đáp ứng: chưa tới 300ms - Nguồn cấp 5VDC - Bao gồm hai loại: loại thường 48 chân, và loại dán 52 chân.2 Sơ đồ chân 2 loại IC HM2007 Hình 1.2 Sơ đồ chân các loại IC HM2007 1.3 Chức năng các chân của IC HM 2007 (loại 48 chân) Tên chân Số chân Chức năng WAIT 15 Tín hiệu điều khiển ngõ vào, hoạt động ở mức thấp. Khi chân này ở mức thấp thì ic HM2007 ở chế độ nghỉ, không chấp nhận bất cứ âm thanh nào đưa vào xử lý Khi chân Wait ở mức cao thì ta có thể bắt đầu huấn luyện ic nhận biết giọng nói thu vào. DEN 16 Khả năng nhận tín hiệu Khi tín hiệu được đưa vào hoàn tất, chip sẽ bắt đầu xử lý và đưa vào các chân D0 – D7, dữ liệu sẽ được xử lý bởi ic chốt 74LS373.
SA0 , SA1 17 , 18 Bus địa chỉ cho bộ nhớ ngoài SA2 – SA7 19 – 24 Bus này được dùng như một đường địa chỉ cho SA8 – 27 - 31 bộ nhớ ngoài khi chân Me hoạt động. SA12 VDD 25, 47 Chân cấp nguồn (5VDC) GND 26 Chân nối nguồn âm NC 32,33 Không kết nối 01/12/2009 TRANG 13 SVTH: PHẠM NGỌC ĐĂNG KHOA NGHIÊN CỨU KHOA HỌC 2009 GVHD: Th.S NGUYỄN VŨ QUỲNH ME 34 Chân điều khiển bộ nhớ, chân này sẽ gởi tín hiệu sang SRAM và được lưu lại để thực hiện lệnh. (Chân này nối trực tiếp với chân CE của SRAM) MR/MW 35 Chân thiết lập và phản hồi tín hiệu đến bộ nhớ D0 – D6 36 - 42 Đường dữ liệu cho bộ nhớ ngoài D7 43 Được dùng như bus I/O của bộ nhớ khi chân ME tích cực, đây là tín hiệu ngõ vào cho bộ chốt dữ liệu khi chân DEN hoạt động. Vref 44 Điện áp cấp cho bộ biến đổi tương tự sang số Line 45 Chân kiểm tra Micin 46 Chân nối với micro.
Đươc hoạt động kèm theo tụ và điện trở. AGND 48 Mát tương tự GND 1 Cấp nguồn âm X2,X1 2,3 Chân nối với thạch anh 3.58M S1, S2, S3 4,5,6 Chân nối với bàn phím ở chế độ thường, và là chân đọc ghi dữ liệu ở chế độ xử lí. RDY 7 Thông báo tín hiệu giọng nói ngõ vào. Khi HM 2007 sẵn sàng nhận âm thì sẽ có một tín hiệu mức thấp gửi đi.
Nếu ic không nhận thì gửi tín hiệu mức cao. K1- K4 8 - 11 Chân nối với bàn phím 1.4 Chức năng làm việc Có hai chế độ hoạt động trong IC HM2007 1.1 Chế độ thường Ở chế độ này ic đươc kết nối với một bàn phím, một SRAM, và các thiết bị ngoại vi để thiết lập một môi trường làm việc bằng giọng nói. SRAM có thể dùng loại dung lượng 8K. Mở nguồn HM2007 hoạt động khi có nguồn cấp vào, khi chân WAIT ở mức thấp thì ic bắt đầu kiểm tra bộ nhớ.
Khi chân WAIT ở mức cao, HM2007 sẽ bỏ qua việc kiểm tra bộ nhớ, sẽ bắt đầu xử lý tín hiệu nhận giọng nói. 01/12/2009 TRANG 14 SVTH: PHẠM NGỌC ĐĂNG KHOA NGHIÊN CỨU KHOA HỌC 2009 GVHD: Th.S NGUYỄN VŨ QUỲNH Thu tín hiệu Khi chân WAIT nhận mức cao thì chân RDY được đưa xuống mức thấp và HM2007 sẵn sàng nhận âm vào để kiểm tra giọng nói. Khi có tín hiệu giọng nói đưa vào, chân RDY sẽ lên mức cao và HM2007 bắt đầu làm việc. Đó là lệnh mà người điều khiển cài đặt cho bộ nhớ, kết quả sẽ được hiển thị trên 2 led 7 đoạn.
Tín hiệu được xử lý và đưa đến Bus ngõ ra tín hiệu. Tín hiệu xuất ra dưới dạng mã nhị phân. Khi chân WLEN được đưa lên mức cao, độ dài của từ là 1,92s, và nếu chân WLEN ở mức thấp, thì độ dài từ đưa vào là 0,92s. Khi chân WAIT ở mức thấp, âm ngõ vào sẽ không được nhận cho tới khi chân WAIT trở lại trạng thái mức cao.
Cách sử dụng thiết bị - Khi ta muốn xóa các dữ liệu đã được nạp trước đó thì từ bàn phím ma trận ta nhập số 99 rồi nhấn vào nút CLR. Mọi dữ liệu về giọng nói lúc này sẽ bị xóa và ta phải cài đặt lại khi muốn tiếp tục sử dụng, việc cài đặt này khá đơn giản, chỉ cần một vài thao tác là chúng ta có thể cài đặt giọng nói vào một cách dễ dàng. - Để cài tín hiệu giọng nói, trên bàn phím ta nhấn các giá trị mặc định từ 00-99 rồi nhấn vào nút TRAIN, lúc đó HM 2007 sẽ bắt đầu xử lý để đưa tín hiệu vào. Lúc bắt đầu cài từ, nếu chân WAIT ở mức cao, HM2007 sẽ gởi tín hiệu mức thấp ra chân RDY để báo rằng HM2007 sẵn sàng nhận âm vào.
Nếu chân WAIT mức thấp, âm sẽ không được nhận cho tới khi chân WAIT báo mức cao. Chi tiết các thiết bị đi kèm board mạch chính. * Key board phím ma trận và mạch hiển thị Hình 1.3 Bàn phím ma trận [6] Hình 1.4 Bản vẽ mạch hiển thị Hai ic 74LS47 sẽ giải mã tín hiệu xuất ra từ HM2007 và hiển thị trạng thái huấn luyện, khi cấp nguồn HM2007 kiểm tra SRAM (Ram tĩnh). Nếu Ram kiểm tra xong, mạch hiển thị "00" trên 2 Led bảy đoạn.
Trạng thái "00" báo hiệu mạch đã sẵn sàng và chờ lệnh. 01/12/2009 TRANG 15 SVTH: PHẠM NGỌC ĐĂNG KHOA NGHIÊN CỨU KHOA HỌC 2009 GVHD: Th.S NGUYỄN VŨ QUỲNH Một ví dụ chi tiết về cách huấn luyện IC HM2007 [6] Cấp nguồn, màn hình hiển thị "00" trên 2 Led bảy đoạn, và Led trên main board sáng ==> sẵn sàng chờ lệnh. Nhấn phím 1 ==> màn hình hiển thị "01" và Led tắt. Sau đó nhấn TRN(Training - huấn luyện), và Led sáng trở lại.
Nói vào 'microphone' một từ hoặc 1 cụm từ có độ dài < 0. Ví dụ: Đi quét nhà : ngay lập tức màn hình hiển thị "55" (ý nó bảo: từ quá dài) Làm lại: “Quét nhà” thì ngay lập tức Led trên main board nhấp nháy (chấp nhận), từ “Quét nhà” bây giờ được lập trình là "01". Mỗi khi nghe đúng từ này, màn hình sẽ hiển thị đúng mã số "01". Tiếp tục huấn luyện các từ mới: Nhấn "02" rồi nhấn TRN để huấn luyện từ thứ 2.
cứ thế, cứ thế. Tối đa huấn luyện được 40 từ. Cách xóa các từ đã huấn luyện Muốn xóa từng từ riêng lẻ trong bộ nhớ ==> nhập số của từ muốn xóa và nhấn CLR (clear - xóa). Muốn xóa tất cả các từ trong bộ nhớ ==> nhập "99" rồi nhấn CLR.2 Chế độ điều khiển bởi Vi xử lí ngoài (chế độ CPU) Chế độ này bao gồm các chức năng: nhận dạng âm, cài âm vào, báo kết quả, nhận và cấp dữ liệu.
K –bus được dùng như một dữ liệu nhị phân giữa bộ điều khiển ngoài và HM2007. Các chân từ S1 đến S3 xem như là chân điều khiển đọc ghi dữ liệu. Có ba thanh ghi trong HM2007, một thanh ghi bộ đệm ngõ vào, một thanh ghi trạng thái và một thanh ghi bộ đệm ngõ ra. Đầu tiên là thanh ghi chỉ ghi và cuối cùng là thanh ghi chỉ đọc.
Nếu chân S1 mức cao, dữ liệu đọc từ K-BUS sẽ lấy từ thanh ghi bộ đệm ngõ ra. Nếu S1 mức thấp, dữ liệu K – Bus sẽ lấy từ thanh ghi trạng thái. S2 và S3 là tín hiệu để điều khiển đọc ghi. Đó là lúc đang đọc, bộ điều khiển ngoài có thể lấy dữ liệu từ K – Bus.
Chú ý S2 và S3 không thể đồng thời là mức cao và trạng thái của S1 sẽ không được nhận trong quá trình ghi. [4] Nguyên lí hoạt động ở chế độ CPU Khi có nguồn cấp thì HM2007 bắt đầu hoạt động giống như ở chế độ thường và sau đó thanh ghi trạng thái sẽ có giá trị 10 để chờ lệnh. Sau khi nhận lệnh Recog, thì ic sẽ bắt đầu cho xử lý nhận biết âm. Thiết bị ngoài có thể hiển thị trạng thái của HM2007.
Khi trạng thái hoạt động chuyển sang 01, và chân WAIT mức thấp, HM2007 sẽ trở về trạng thái hoạt động 10 và sau đó sẵn sàng nhận lệnh mới. Khi trạng thái hoạt động chuyển sang 01 và chân WAIT mức cao, đó là lúc sẵn sàng nhận âm vào và sau đó xử lý nhận biết âm. Khi trạng thái hoạt động trở về 01 một lần nữa, thì sau đó việc xử lý nhận biết hoàn tất HM 2007 đang đợi lệnh khác. 01/12/2009 TRANG 16 SVTH: PHẠM NGỌC ĐĂNG KHOA NGHIÊN CỨU KHOA HỌC 2009 GVHD: Th.S NGUYỄN VŨ QUỲNH Sau khi nhận biết âm.
Kết quả nhận biết được đưa vào trong bộ đệm, thiết bị ngoài có thể gửi lệnh RESULT dạng cơ số 10 để lấy kết quả nhận biết. Khi dữ liệu đã được đọc trạng thái hoạt động sẽ trở về 10 và đợi lệnh kế. Sau khi lệnh RESULT được gửi, việc đọc được thực hiện bởi CPU và kết quả được gửi bởi HM2007. Khi HM2007 nhận mã lệnh TRAIN, ic sẽ cần thêm thông tin để biết vị trí khung được cài đặt.
Từ đầu tiên là bốn bít thấp của giá trị vị trí, từ thứ hai là hai bit cao của giá trị vị trí của từ. Nếu một số vị trí khung từ được chấp nhận và chân WAIT là mức cao, HM2007 bắt đầu xử lý cài đặt khung từ. Nếu chân WAIT mức thấp HM2007 sẽ bỏ qua việc xử lý cài đặt. Sau khi xử lý cài đặt, trạng thái hoạt động sẽ trở về 10 và đợi lệnh kế tiếp.