Đồ án Thiết kế và thi công hệ thống Audio kĩ thuật số

BỘ GIÁO DỤC & ĐÀO TẠO TRƯỜNG ĐẠI HỌC SƯ PHẠM KỸ THUẬT TP. HỒ CHÍ MINH KHOA: ĐIỆN – ĐIỆN TỬ BỘ MÔN: ĐIỆN TỬ CÔNG NGHIỆP – Y SINH --------------------------------- ĐỒ ÁN TỐT NGHIỆP NGÀNH CÔNG NGHỆ KỸ THUẬT ĐIỆN TỬ TRUYỀN THÔNG ĐỀ TÀI: THIẾT KẾ VÀ THI CÔNG HỆ THỐNG AUDIO KĨ THUẬT SỐ GVHD: ThS. Nguyễn Trường Duy SVTH: Đỗ Hồng Phúc MSSV:13141239 Hoàng Gia Huy MSSV: 13141112 Tp. Hồ Chí Minh – 12/2019 BỘ GIÁO DỤC & ĐÀO TẠO TRƯỜNG ĐẠI HỌC SƯ PHẠM KỸ THUẬT TP.

pdf152 trang | Chia sẻ: huong20 | Ngày: 13/01/2022 | Lượt xem: 388 | Lượt tải: 0download
Tóm tắt tài liệu Đồ án Thiết kế và thi công hệ thống Audio kĩ thuật số, để xem tài liệu hoàn chỉnh bạn click vào nút DOWNLOAD ở trên
HỒ CHÍ MINH KHOA: ĐIỆN – ĐIỆN TỬ BỘ MÔN: ĐIỆN TỬ CÔNG NGHIỆP – Y SINH --------------------------------- ĐỒ ÁN TỐT NGHIỆP NGÀNH KỸ THUẬT ĐIỆN TỬ TRUYỀN THÔNG ĐỀ TÀI: THIẾT KẾ VÀ THI CÔNG HỆ THỐNG AUDIO KĨ THUẬT SỐ GVHD: ThS. Nguyễn Trường Duy SVTH: Đỗ Hồng Phúc MSSV: 13141239 Hoàng Gia Huy MSSV: 13141112 Tp. Hồ Chí Minh – 12/2019 TRƯỜNG ĐH SPKT TP. HỒ CHÍ MINH CỘNG HÒA XÃ HỘI CHỦ NGHĨA VIỆT NAM KHOA ĐIỆN-ĐIỆN TỬ ĐỘC LẬP - TỰ DO - HẠNH PHÚC BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH ----o0o---- Tp. HCM , ngày 3 tháng 12 năm 2019 NHIỆM VỤ ĐỒ ÁN TỐT NGHIỆP Họ tên sinh viên 1: Đỗ Hồng Phúc MSSV: 13141239 Họ tên sinh viên 2: Hoàng Gia Huy MSSV: 13141112 Chuyên ngành: Kỹ thuật Điện - Điện tử Mã ngành: 01 Hệ đào tạo: Đại học chính quy Mã hệ: 1 Khóa: 2013 Lớp : 13141DT I. TÊN ĐỀ TÀI: THIẾT KẾ VÀ THI CÔNG HỆ THỐNG HI-END AUDIO KĨ THUẬT SỐ II. NHIỆM VỤ 1. Các số liệu ban đầu: - Sử dụng Raspberry Pi 3 Model B 1.2v để làm bộ music server chạy hệ điều hành Volumio. - Tín hiệu số chất lượng cao được sử dụng trong hệ thống là các file nhạc chuẩn Lossless, Hi-res audio, DSD được Rip từ CD, DVD, SACD và một số là mua trực tuyến. - Module DAC pifi 2 để làm bộ giải mã âm thanh kĩ thuật số chất lượng cao và xuất tín hiệu đã qua xử lý. - Bộ Aduino làm bộ điều khiển module PT2315 làm bộ chỉnh âm sắc cho tín hiệu lấy từ DAC. - Bộ khuếch đại công suất dùng chipamp KIA6210 lấy tín hiệu đã qua xử lý và xuất tín hiệu ra loa. - Loa Victor toàn dải T150D dùng để phát âm thanh cho hệ thống. 2. Nội dung thực hiện: - Nghiên cứu về raspberry, arduino. - Tìm hiểu hệ điều hành Volumio - Nghiên cứu các kiến thức liên quan đến Audio, các chuẩn nhạc( nhạc số & tương tự),thiết kế mạch khuếch đại công suất, thiết kế của thùng loa, các cách chống nhiễu cho hệ thống âm thanh, kiến thức bao quát về cách bố trí hệ thống audio, xử lý phòng nghe (tán âm, tiêu âm, basstrap,vv). - Tìm hiểu về các module DAC pifi, LCD 16x2, pt2315, cảm biến chạm. - Tiến hành thiết kế các thành phần ban đầu của hệ thống. - Tiến hành thiết kế sơ đồ nguyên lý cho từng module trong hệ thống. - Tiến hành thiết kế PCB cho từng module. - Lập trình kết nối điều khiển. - Chạy thử nghiệm hệ thống. ii - Cân chỉnh và hoàn thiện hệ thống. - Viết báo cáo. - Báo cáo đề tài tốt nghiệp. III. NGÀY GIAO NHIỆM VỤ: 15/09/2019 IV. NGÀY HOÀN THÀNH NHIỆM VỤ: 02/12/2019 V. HỌ VÀ TÊN CÁN BỘ HƯỚNG DẪN: ThS. Nguyễn Trường Duy CÁN BỘ HƯỚNG DẪN BM. ĐIỆN TỬ CÔNG NGHIỆP – Y SINH iii TRƯỜNG ĐH SPKT TP. HỒ CHÍ MINH CỘNG HÒA XÃ HỘI CHỦ NGHĨA VIỆT NAM KHOA ĐIỆN-ĐIỆN TỬ ĐỘC LẬP - TỰ DO - HẠNH PHÚC BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH ----o0o---- Tp. HCM, ngày 30 tháng 12 năm 2018 LỊCH TRÌNH THỰC HIỆN ĐỒ ÁN TỐT NGHIỆP Họ tên sinh viên: Đỗ Hồng Phúc MSSV: 13141239 Hoàng Gia Huy MSSV: 13141112 Tên đề tài: THIẾT KẾ VÀ THI CÔNG HỆ THỐNG HI-END AUDIO KĨ THUẬT SỐ Xác nhận Tuần/ngày Nội dung GVHD Tuần 1 Gặp giáo viên hướng dẫn, nhận đề tài đồ án tốt (19/8 – 25/8) nghiệp. Tuần 2 Tìm tài liệu phục vụ cho nghiên cứu và thực (26/8 – 1/9) hiện đề tài, viết đề cương đồ án tốt nghiệp. Tuần 3 Thiết kế sơ đồ khối, tìm tài liệu, nghiên cứu đề (2/9 – 8/9) tài. Tuần 4 Cài đặt các công cụ hỗ trợ lập trình điều khiển (9/9 – 15/9) để thực hiện đề tài. Tuần 5 Cài đặt phần mềm, cấu hình volumio trên (16/9 – 22/9) raspi3, tìm nguồn nhạc số demo, làm mạch demo module PT2315. Tuần 6,7,8,9 Lập trình điều khiển Module PT2315, điều (23/9 – 20/10) chỉnh tăng giảm được volume, bass, treble bằng Arduino Uno. Tuần 10 Tiến hành vẽ mạch KIA6210, mạch nguồn 12v (21/10 – 27/10) cho KIA6210, mạch nút nhấn 3 phím cảm ứng, mạch hoàn thiện module Arduino + PT2315 + connector (audio processor) hoàn chỉnh. Tuần 11 Tiến hành thi công các module nguồn, module (28/10 – 3/11) audio processor, module nút nhấn, đặt mạch in 2 lớp cho module KIA6210. Tuần 12 Tiến hành kết nối các module vào hệ thống, test (4/11 – 10/11) chạy thử tất cả trên hệ thống. Tuần 13,14 Có lỗi phát sinh trong hệ thống nên phải tiến (11/11 – 24/11) hành tìm lỗi và khắc phục lỗi kèm tinh chỉnh hệ thống. Tuần 15 Lấy kết quả thực nghiệm viết đề cương cho báo (25/11 – 1/12) cáo. Tuần 16,17 Viết báo cáo tốt nghiệp. (2/12 – 15/12) Tuần 18 Chỉnh sửa, kiểm tra lần cuối và nộp quyển báo (16/12 – 20/12) cáo. iii Tuần 19 Báo cáo đồ án tốt nghiệp. (21/12 – 26/12) GV HƯỚNG DẪN (Ký và ghi rõ họ và tên) iv LỜI CAM ĐOAN Đề tài này là do nhóm đồ án tự thực hiện dựa vào một số tài liệu và công trình nghiên cứu, không sao chép từ tài liệu hay công trình đã có trước đó. Nếu có sao chép nhóm đồ án hoàn toàn chịu trách nhiệm. Tp. Hồ Chí Minh, ngày 09 tháng 12 năm 2019 Người thực hiện đề tài Đỗ Hồng Phúc Hoàng Gia Huy iv LỜI CẢM ƠN “Uống nước nhớ nguồn, ăn quả nhớ kẻ trồng cây” là truyền thống mang giá trị nhân văn vô cùng quý báu mà từ xưa đến nay ông cha ta đã răng dạy và gìn giữ cho đến tận ngày hôm nay. Chính vì lẽ đó mà nhóm nghiên cứu luôn luôn vô cùng tỏ lòng biết ơn chân thành đến tất cả mọi người đã giúp đỡ nhóm tận tình trong thời gian qua để hoàn thành tốt đề tài đồ án tốt nghiệp “Thiết kế và thi công hệ thống Hi-end audio kĩ thuật số”. Và điều vô cùng đặc biệt hơn mà không thể không nhắc đến đó là sự hướng dẫn vô cùng tận tình của Thầy ThS.Nguyễn Trường Duy và các Thầy Cô trong bộ môn Điện Tử Công Nghiệp – Y Sinh đã giúp đỡ hết sức nhiệt tình nhóm trong suốt quá trình nghiên cứu và hoàn thành đề tài được giao. Quả đúng với câu “Không Thầy đố mày làm nên”. Vì thế, trong lời đầu tiên của cuốn báo cáo đồ án tốt nghiệp này, Nhóm muốn dành lời cảm ơn chân thành sâu sắc đến Thầy ThS.Nguyễn Trường Duy và các Thầy Cô trong bộ môn Điện Tử Công Nghiệp – Y Sinh của Trường Đại Học Sư Phạm Kỹ Thuật Thành Phố Hồ Chính Minh. Đồng thời nhóm nghiên cứu cũng thể hiện sự biết ơn đối với các bạn cùng lớp đã góp ý kiến xây dựng đề tài được hoàn thiện hơn. Không thể quên được, nhóm nghiên cứu xin gửi lời cảm ơn đến những đấng sinh thành dưỡng dục đã luôn hỗ trợ, động viên và cũng là niềm động lực lớn lao để nhóm có thể hoàn thành tốt đề tài. Mặc dù đã cố gắng rất nhiều, nhưng nhóm sẽ khó tránh khỏi những lúc làm các Thầy Cô, các bạn phiền lòng. Kính mong quý Thầy Cô, cùng các bạn lượng thứ bỏ qua. Với vốn kiến thức hạn hẹp cùng kinh nghiệm sống ít ỏi của mình thì chắc chắn trong bài báo cáo sẽ có những sai lầm thiếu sót. Nhóm nghiên cứu rất làm thứ lỗi và mong nhận được những chỉ dạy, đóng góp vô cùng quý báu của quý Thầy cô cùng các bạn để nhóm có thể hoàn thiện tốt đề tài hơn nữa. Một lần nữa, xin chân thành cảm ơn! Người thực hiện đề tài Đỗ Hồng Phúc Hoàng Gia Huy v MỤC LỤC Trang bìa ........................................................................................................................ i Nhiệm vụ đồ án ............................................................................................................. ii Lịch trình ..................................................................................................................... iii Cam đoan .................................................................................................................... iv Lời cảm ơn .................................................................................................................... v Mục lục ........................................................................................................................ vi Liệt kê hình vẽ ............................................................................................................. ix Liệt kê bảng vẽ xi Tóm tắt ....................................................................................................................... xii CHƯƠNG 1. TỔNG QUAN ............................................................................ 1 1.1. Đặt vấn đề .......................................................................................................... 1 1.2. Mục tiêu ............................................................................................................. 2 1.3. Nội dung nghiên cứu .......................................................................................... 2 1.3.1. Kết nối thiết bị ........................................................................................... 2 1.3.2. Tiến hành xử lý ban đầu ............................................................................ 2 1.3.3. Tiến hành thiết kế ...................................................................................... 2 1.3.4. Thi công kết nối các thiết bị ...................................................................... 3 1.3.5. Hoàn thiện sản phẩm ................................................................................. 3 1.3.6. Viết báo cáo ............................................................................................... 3 1.4. Giới hạn .............................................................................................................. 3 1.5. Bố cục ................................................................................................................ 3 CHƯƠNG 2. CƠ SỞ LÝ THUYẾT ................................................................ 5 2.1 Giới thiệu về hệ thống Hi-end Audio kĩ thuật số ............................................... 5 2.1.1. Giới thiệu chung ....................................................................................... 5 2.1.2. Các khái niệm cơ bản trong lĩnh vực Audio ............................................. 9 2.1.3. Các chuẩn âm thanh trong Audio ...................................................... 16 2.1.4. Các kiến thức về xử lý âm học trong phòng nghe .............................. 27 2.2 Hệ điều hành Volumio và khái niệm về Music Server .................................... 30 2.2.1 Hệ điều hành Volumio ............................................................................. 30 2.2.2 Ngôn ngữ Python ..................................................................................... 32 2.2.3. Music Server ........................................................................................... 34 2.2.4. Lý thuyết về thùng loa ............................................................................ 37 2.2.5. Âm thanh Hi-End .................................................................................... 44 2.3 Giới thiệu phần cứng ........................................................................................ 45 2.3.1. Raspberry Pi 3 Model B V1.2 ................................................................. 45 2.3.2. Module DAC Pifi V2.0 ........................................................................... 48 2.3.3. LCD 16x2................................................................................................ 49 2.3.4. Module I2C ............................................................................................. 51 2.3.5. Arduino Uno ........................................................................................... 53 2.3.6. IC Audio Processor PT2315 ................................................................... 55 2.3.7. Module cảm biến chạm TTP223 ............................................................. 58 2.3.8. IC khuếch đại âm tần KIA6210 .............................................................. 59 2.3.9. Loa toàn dải 12cm ................................................................................... 61 CHƯƠNG 3. TÍNH TOÁN VÀ THIẾT KẾ. ................................................ 62 3.1 Giới thiệu .......................................................................................................... 62 3.2 Tính toán và thiết kế hệ thống ........................................................................... 63 3.2.1 Thiết kế sơ đồ khối hệ thống .................................................................... 63 3.2.2 Tính toán và thiết kế hệ thống .................................................................. 65 3.2.2.a Khối nguồn phát và giải mã .......................................................... 66 3.2.2.b Khối tiền khuếch đại ..................................................................... 68 3.2.2.c Khối khuếch đại công suất ............................................................ 79 3.2.2.d Khối nguồn .................................................................................... 83 3.2.2.e CNC vỏ hoàn thiện ....................................................................... 85 3.6 Thiết kế thùng loa toàn dải 12cm ........................................................ 86 CHƯƠNG 4. THI CÔNG HỆ THỐNG ...................................................... 89 4.1 Giới thiệu. .......................................................................................................... 89 4.2 Thi công hệ thống .............................................................................................. 89 4.2.1. Tiến hành vẽ PCB và thi công mạch nguồn 13VDC ............................... 89 4.2.2. Tiến hành vẽ PCB mạch tiền khuếch đại ................................................. 91 4.2.3. Tiến hành vẽ PCB mạch khuếch đại ........................................................ 92 4.2.4. Tiến hành kết nối các module trong hệ thống ......................................... 94 4.3 Đóng khung thành phẩm..................................................................................... 97 4.4 Lập trình hệ thống ............................................................................................... 98 ii 4.4.1 Lưu đồ chương trình mạch tiền khuếch đại ............................................. 98 4.4.2 Phần mềm lập trình ................................................................................ 110 4.5 Tài liệu hướng dẫn sử dụng, thao tác ............................................................... 114 4.5.1. Tài lieueh hướng dẫn sử dụng ............................................................... 114 4.5.2 Quy trình thao tác ................................................................................... 114 CHƯƠNG 5. KẾT QUẢ_NHẬN XÉT_ĐÁNH GIÁ ............................... 120 5.1 Kết quả sản phẩm ............................................................................................ 120 5.1.1. Demo bằng nhạc số chất lượng cao ....................................................... 120 5.1.2 Điều chỉnh phù hợp cho mỗi thể loại nhạc ............................................. 121 5.2 Nhận xét đánh giá chung .................................................................................. 121 CHƯƠNG 6. KẾT LUẬN VÀ HƯỚNG PHÁT TRIỂN. ......................... 122 6.1 Kết luận . ........................................................................................................... 122 6.2 Hướng phát triển ............................................................................................... 122 TÀI LIỆU THAM KHẢO ............................................................................ 124 PHU LỤC ........................................................................................................ 126 iii LIỆT KÊ HÌNH VẼ Hình Trang Hình 2.1: Một hệ thống chơi nhạc số hiện đại .............................................................. 8 Hình 2.2: Đồ thị dao động của âm "A" ......................................................................... 11 Hình 2.3: Các thiết bị cần cho quá trình thu âm .......................................................... 13 Hình 2.4: Tín hiệu âm thanh Mono ............................................................................... 15 Hình 2.5: Âm thanh Stereo ............................................................................................ 15 Hình 2.6: Hệ thống loa 5.1 ........................................................................................... 16 Hình 2.7: Tiến trình lượng tử hoá ................................................................................. 22 Hình 2.8: PCM .............................................................................................................. 23 Hình 2.9: biểu đồ dạng sóng PCM ............................................................................... 24 Hình 2.10: So sánh DSD với PCM ............................................................................... 27 Hình 2.11: Cấu trúc hệ điều hành Volumio .................................................................. 32 Hình 2.12: Một thiết bị Music server hãng Nativ ......................................................... 35 Hình 2.13: Một danh sách nhạc trên Music server ....................................................... 36 Hình 2.14: Hệ thống có sử dụng Music server.............................................................. 37 Hình 2.15: Thùng loa toàn dải ...................................................................................... 38 Hình 2.16: Kích thước đóng thùng sẽ được tính toán theo công thức 2.4 .................... 39 Hình 2.17: Loa Treble ................................................................................................... 40 Hình 2.18: Loa Mid ....................................................................................................... 41 Hình 2.19: Loa Bass ...................................................................................................... 42 Hình 2.20: Loa toàn dải ................................................................................................. 43 Hình 2.21: Mặt trước của board Raspberry Pi3 Model B ............................................. 45 Hình 2.22: Sơ đồ thành phần chính của Raspberry Pi3 Model B ................................. 47 Hình 2.23: Sơ đồ chân GPIO Raspberry Pi3 ................................................................. 48 Hình 2.24: Module DAC Pifi ........................................................................................ 49 Hình 2.25: LCD 16x2 .................................................................................................... 50 Hình 2.26: Module I2C ................................................................................................. 51 Hình 2.27: Kết nối thiết bị vào bus I2C ở chế độ chuẩn (Standard mode) và chế độ nhanh (Fast mode) .................................................................................................................... 52 Hình 2.28: Hoạt động của SDA, SCL khi truyền nhận dữ liệu ..................................... 52 Hình 2.29: Module Arduino Uno .................................................................................. 54 Hình 2.30: Phần mềm biên dịch Arduino IDE .............................................................. 55 Hình 2.31: Chip PT2315 ............................................................................................... 56 viii Hình 2.32: Sơ đồ chân IC PT2315 ................................................................................ 57 Hình 2.33: Cảm biến chạm TTP223 ............................................................................. 58 Hình 2.34: IC khuếch đại KIA6210 .............................................................................. 59 Hình 2.35: Sơ đồ cấu tạo và kết nối của IC KIA6210 .................................................. 60 Hình 2.36: Loa toàn dải và loa treble ............................................................................ 61 Hình 3.1: Sơ đồ khối hệ thống ...................................................................................... 63 Hình 3.2: Sơ đồ kết nối hệ thống .................................................................................. 65 Hình 3.3: Vị trí chân kết nối giữa Raspberry Pi3 và DAC Pifi..................................... 67 Hình 3.4: Sau khi đã kết nối DAC Pifi với Raspberry Pi3 ........................................... 68 Hình 3.5: Sơ đồ khối module tiền khuếch đại ............................................................... 68 Hình 3.6: Sơ đồ kết nối bộ tiền khuếch đại ................................................................... 69 Hình 3.7: Hình mặt trước của Arduino Uno R3 ............................................................ 71 Hình 3.8: Hình mặt sau của Arduino Uno R3 ............................................................... 71 Hình 3.9: Hình chỉ ra 2 chân giao tiếp I2C theo thư viện Wire.h ................................. 72 Hình 3.10: Hình mặt trước (trái) và mặt sau (phải) của module TTP223 ..................... 72 Hình 3.11: Kết nối của khối nút nhấn với khối xử lý trung tâm ................................... 73 Hình 3.12: Mạch PT2315 .............................................................................................. 74 Hình 3.13: 2 chân giao tiếp I2C của mạch PT2315 với vi điều khiển .......................... 74 Hình 3.14: Module I2C ................................................................................................. 77 Hình 3.15: Cách kết nối module I2C với lcd và board Arduino Uno R3 ..................... 79 Hình 3.16: Cấu trúc bên trong của chip KIA6210 ........................................................ 81 Hình 3.17: Đồ thị của độ khuếch đại ............................................................................ 82 Hình 3.18: Đồ thị công suất ngõ ra của chip KIA6210................................................. 82 Hình 3.19: Nguồn cho Raspberry Pi3 ........................................................................... 83 Hình 3.20: Adapter 5VDC 2A ...................................................................................... 84 Hình 3.21: Biến áp xuyến 10VAC 5A .......................................................................... 85 Hình 3.22: Loa toàn dải 12cm ....................................................................................... 86 Hình 3.23: Đáp tuyến tần số của loa toàn dải 12cm .................................................... 86 Hình 3.24: Thiết kế thùng loa ma trận (Horn) .............................................................. 87 Hình 3.25: Loa Treble 5cm ........................................................................................... 88 Hình 3.26: Đáp tuyến tần số loa Treble 5cm ................................................................ 88 Hình 4.1: Sơ đồ nguyên lý mạch nguồn 13VDC .......................................................... 89 Hình 4.2: Sơ đồ đi dây PCB mạch nguồn 13VDC ........................................................ 90 Hình 4.3: Mặt trước và mặt sau của module nguồn 13VDC ........................................ 90 ix Hình 4.4: Sơ đồ nguyên lý mạch tiền khuếch đại ......................................................... 91 Hình 4.5: Sơ đồ đi dây PCB mạch tiền khuếch đại ....................................................... 92 Hình 4.6: Mặt trên và dưới của module tiền khuếch đại ............................................... 92 Hình 4.7: Sơ đồ nguyên lý mạch KIA6210 ................................................................... 93 Hình 4.8: Sơ đồ đi dây PCB mạch KIA6210 ................................................................ 93 Hình 4.9: Mạch in trước và sau khi thi công mạch KIA6210 ....................................... 94 Hình 4.10: Kết nối biến áp xuyến với mạch nguồn 13VDC ......................................... 94 Hình 4.11: Kết nối module nút nhấn, LCD với mạch tiền khuếch đại ......................... 95 Hình 4.12: Cố định module LCD, nút nhấn cảm ứng lên mặt trước khung.................. 95 Hình 4.13: Khoan, cố định các module lên giá đỡ và kết nối hệ thống ........................ 96 Hình 4.14: Cố định ổ cắm EMI, Jack bắp chuối cắm loa ở mặt sau khung .................. 96 Hình 4.15: Kết nối loa bằng jack bắp chuối , kết nối ổ cứng chứa nhạc bằng cổng USB phía sau thiết bị ............................................................................................................. 97 Hình 4.16: Hoàn thiện thành phẩm ............................................................................... 97 Hình 4.17: Lưu đồ chương trình chính ......................................................................... 98 Hình 4.18: Lưu đồ chương trình con kiểm tra nút nhấn mode ..................................... 99 Hình 4.19: Lưu đồ chương trình con kiểm tra nút nhấn up ......................................... 100 Hình 4.20: Lưu đồ chương trình con kiểm tra nút nhấn down ..................................... 102 Hình 4.21: Lưu đồ chương trình con tăng biến volume hoặc treble hoặc bass 1 đơn vị hoặc gán loudlessFunction=0x40 .................................................................................. 104 Hình 4.22: Lưu đồ chương trình con tăng biến volume hoặc treble hoặc bass 3 đơn vị hoặc gán loudlessFunction=0x40 .................................................................................. 104 Hình 4.23: Lưu đồ chương trình con giảm biến volume hoặc treble hoặc bass 1 đơn vị hoặc loudlessFunction=0x44 ......................................................................................... 106 Hình 4.24: Lưu đồ chương trình con giảm biến volume hoặc treble hoặc bass 3 đơn vị hoặc gán loudlessFunction=0x44 .................................................................................. 106 Hình 4.25: Lưu đồ chương trình con giới hạn giá trị biến volume, treble, bass ........... 108 Hình 4.26: Lưu đồ chương trình con truyền dữ liệu tới chip PT2315 .......................... 109 Hình 4.27: Giao diện phần mềm Arduino IDE ............................................................. 110 Hình 4.28: Mô tả các lệnh của Arduino IDE ................................................................ 111 Hình 4.29: Vùng thông báo của Arduino IDE .............................................................. 112 Hình 4.30: Chọn đúng loại board Arduino Uno để nạp code ....................................... 112 Hình 4.31: Chọn cổng kết nối với board Arduino Uno R3 ........................................... 113 Hình 4.32: Gõ lệnh mở cổng giao tiếp giữa máy tính với board Arduino Uno ............ 113 Hình 4.33: Nhập mật khẩu để mở cổng kết nối bằng quyền admin. ............................. 113 Hình 4.34: Mở cổng kết nối thành công ....................................................................... 115 x Hình 4.35: Bật công tắc ở mặt phía trước ..................................................................... 115 Hình 4.36: Giao diện Volumio ...................................................................................... 116 Hình 4.37: Giao diện thư viện nhạc .............................................................................. 117 Hình 4.38: Chế độ điều khiển Volume ......................................................................... 117 Hình 4.39: Chế độ điều khiển Treble ............................................................................ 118 Hình 4.40: Chế độ điều khiển Bass ............................................................................... 118 Hình 4.41: Chế độ điều khiển Loudness ....................................................................... 119 xi LIỆT KÊ BẢNG Bảng Trang Bảng 2.1: Các kiểu mã thường dùng ............................................................................... 33 Bảng 2.2: Thông số kỹ thuật của Rasberry Pi3 Model B ................................................ 45 Bảng 2.3: Thông số kĩ thuật của Arduino ....................................................................... 54 Bảng 2.4: Bảng chức năng mỗi chân trong PT2315 ....................................................... 57 Bảng 2.5: Giá trị cực đại của IC KIA6210 ...................................................................... 60 Bảng 3.1: Cách chọn trạng thái cho ngõ ra nút nhấn cảm ứng ...................................... 73 Bảng 3.2: Hình mô tả bảng sự thật để điều chỉnh VOLUME ........................................ 76 Bảng 3.3: Hình mô tả bảng sự thật để điều chỉnh TREBLE, BASS .............................. 76 Bảng 3.4: Hình mô tả bảng sự thật để điều chỉnh LOUDNESS .................................... 77 Bảng 3.5: Bảng giá trị địa chỉ tùy chọn của Module I2C78 Bảng 3.6: Thông số về điện áp của chip KIA6210 ........................................................ 80 TÓM TẮT Đề tài này tạo ra một hệ thống Hi-end audio được sử dụng để chơi những bản nhạc số chất lượng cao trong thời đại công nghệ số hóa và tốc độ đọc ghi những bản nhạc ngày càng hiện đại. Loại dữ liệu nhạc chất lượng cao yêu cầu phải có một phần cứng đáp ứng được dải tần số và phát huy hết khả năng của nó. Đề tài hướng đến xu hướng chơi nhạc số dần thay thế những CD, SACD,cassette, băng cối, đĩa than vì tính tiện dụng, dễ lưu trữ, không bị hư hỏng theo thời gian và đặc biệt là chất lượng có thể cao hơn nhiều so với CD và tiệm cận Analog. Nhóm nghiên cứu sử dụng raspberry làm máy tính để chạy hệ điều hành cho music server và tích hợp một bộ DAC Pcm để giải mã nhạc số. Phần preamp nhóm nghiên cứu và chế tạo bộ điều chỉnh âm sắc theo ý thích của chủ nhân thiết bị được điều khiển bởi Aduino, nút nhấn cảm ứng sẽ làm nhiệm vụ thay cho các volume cơ truyền thống và sẽ tránh hư hỏng do cơ cấu xoay cơ học. Thiết bị có trang bị một màn hình LCD để hiển thị các thông số khi điều chỉnh cho người sử dụng. Quan trọng nhất là bộ khuếch đại, nhóm nghiên cứu đã sử dụng chipamp KI... Ngày nay các loại hình của âm thanh analog vẫn được lưu trữ và phát triển như đĩa than, băng cối, cassette và các thiết bị đọc chúng. Vì tính mộc mạc, chân thật và có tính chất cổ xưa nên giá trị của chúng khá cao so với một thiết bị phát và giải mã số hiện giờ. b. Âm thanh số (Digital) Âm thanh số là công nghệ được sử dụng để ghi chép, lưu trữ, tạo ra, tái tạo âm thanh bằng cách sử dụng các tín hiệu âm thanh mà chúng đã được mã hóa dưới dạng số cụ thể ở đây là số 0 và 1. Hệ thống âm thanh kỹ thuật số cho phép thao tác nén, lưu trữ, xử lý và truyền tải âm thanh dễ dàng, thuận lợi. Tín hiệu này có thể ghi lại, chỉnh sửa và thay đổi sử BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH 18 CHƯƠNG 2: CỞ SỞ LÝ THUYẾT dụng. Với âm thanh kỹ thuật số chúng ta có thể thực hiện nhiều bản sao mà không ảnh hưởng chất lượng. Lịch sử phát triển của âm thanh digital Do những tiến bộ đáng kể trong khoa học kỹ thuật âm thanh digital xuất hiện để khắc phục những nhược điểm của âm thanh analog. Những năm 1970 nó được biết đến và dần trở nên phổ biến. Trong nhiều lĩnh vực ghi âm và sản xuất âm thanh công nghệ digital được sử dụng nhiều tiêu biểu như việc in phát hành băng đĩa được thay bằng ghi âm kỹ thuật số. Năm 1990 và 2000 âm thanh digital được dùng nhiều trong viễn thông. Công nghệ âm thanh kỹ thuật số được sử dụng vào việc ghi âm, sản xuất và phân phối âm nhạc phổ biến vào năm 2010. Từ đây việc phân phối các sản phẩm âm nhạc trở nên dễ dàng và rẻ hơn rất nhiều so với âm thanh analog. Và cho đến nay âm thanh kỹ thuật nói riêng và công nghệ kỹ thuật số nói chung số đã trở nên phổ biến và được ứng dụng trong nhiều lĩnh vực không chỉ âm nhạc giải trí. Ưu nhược điểm của âm thanh digital - Ưu điểm So với tín hiệu analog thì tín hiệu số có nhiều ưu điểm tiêu biểu như:  Có thể lưu giữ và xử lý thông tin dễ dàng. Khi đã ghi âm một bài hát chúng ta có thể tiến hành sửa đổi, xử lý bất cứ lỗi nào để nó hay hơn, hợp với người nghe hơn.  Việc lưu trữ âm thanh đa dạng có thể trên đĩa Cd, máy nghe nhạc, ổ đĩa, usb hoặc một thiết bị lưu trữ dữ liệu kỹ thuật số nào đó.  Người ta có thể nén âm thanh để làm giảm kích thước tập tin và có thể xem, nghe trực tiếp trên các thiết bị như điện thoại, máy tính  Việc sao chép thông tin dễ dàng không bị giới hạn số lần thao tác và không ảnh hưởng chất lượng âm thanh. BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH 19 CHƯƠNG 2: CỞ SỞ LÝ THUYẾT  Nhờ việc lưu giữ dễ dàng gọn nhẹ nên việc phân phối âm thanh nói chung và âm nhạc nói riêng dễ dàng và tiết kiệm chi phí hơn qua internet. Trước đó người ta phân phối âm nhạc bằng cách bán các bản bản sao vật lý như băng đĩa  Âm thanh kỹ thuật số được giữ nguyên gốc  Âm thanh digital đã được loại bỏ tất cả tạp âm  Âm thanh digital không bị biến dạng - Nhược điểm  Âm thanh, tín hiệu dễ bị tổn thất do ở dạng số. Tín hiệu âm thanh sẽ bị ảnh hưởng dù chỉ mất vài byte thôi.  Hệ thống xử lý âm thanh digital hiện đại và phức tạp do đó tốn kém kinh phí đầu tư hơn.  Âm thanh digital là kết quả của bước tiến công nghệ thể hiện lợi thế nổi trội nhất là trong việc lưu giữ, xử lý và sao chép thông tin.  Nhiều người thắc mắc liệu trong tương lai âm thanh digital có thay thế cho âm thanh analog hay không. Tuy nhiên mỗi loại có một ưu và nhược điểm riêng nên sẽ song song tồn tại. Các bạn sẽ vẫn được thưởng thức âm nhạc theo những cách khác nhau tùy thuộc vào sở thích. . c. Các định dạng nhạc số Sự phát triển của công nghệ và thiết bị di động hiện nay đang từng bước biến nhạc số trở thành một loại hình lưu trữ tiện lợi không thể thiếu. Chúng ta hãy cùng điểm sơ qua về các mốc phát triển của nhạc số và các định dạng của chúng. Các mốc ngoặt tiêu biểu  Năm 1976: Tiến sĩ Stockham (Soundstream) ứng dụng bản ghi âm số 16-bit đầu tiên.  Năm 1981: Philips cho ra đời CD, IBM giới thiệu máy tính 16-bit. BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH 20 CHƯƠNG 2: CỞ SỞ LÝ THUYẾT  Năm 1982: Sony giới thiệu bộ chuyển đổi PCM-F1 14-bit và 16-bit cho VCR, đồng thời cũng công bố đầu đọc CD đầu tiên Model CDP-101.  Năm 1983: Cáp quang lần đầu tiên được ừng dụng trong trung chuyển tín hiệu âm thanh ở khoảng cách xa, từ New York đến Washington D.C.  Năm 1990: Dolby công bố giải pháp âm thanh vòm 5.1 cho rạp hát gia đình.  Năm 1996: kỹ thuật ghi âm 24-bit/96kHz ra đời.  Năm 1997: Đĩa DVD-Video hỗ trợ âm thanh 6 kênh ra đời.  Năm 1999: Sony và Philips bắt tay nghiên cứu định dạng DSD Công nghệ PCM (Pulse code modulation) PCM là một áp dụng trực tiếp chuyển đổi A/D. Giả sử biên độ của mỗi xung trong một hệ PAM thì được làm tròn đến một mức có thể. Giả sử, trước hết hàm thời gian gốc (Analog) được làm tròn cho dạng sóng hình bậc thang như hình 7.16. Kế đó, ta lấy mẫu hàm bậc thang và truyền các mẫu theo cách biến điệu biên độ xung (PAM). Sự làm tròn được hiểu như là sự lượng tử hoá, và nó sẽ gây ra một error (nhiễu lượng tử hoá). Đó là, sự xấp xỉ bậc thang thì không giống hệt hàm gốc và sự sai biệt giữa chúng là một error. Khả năng sửa error là lý do lớn nhất để lượng tử hoá tín hiệu. Thí dụ, giả sử ta muốn truyền một tín hiệu đến một khoảng cách xa trên cáp đồng trục. Nếu tín hiệu được truyền theo kiểu PAM thông thường nhiễu sẽ chen vào theo đường truyền và nhiễu cộng thêm vào mỗi mạch khuếch đại (có nhiều mạch khuếch đại cần đến trên đường truyền để chống lại sự suy giảm phát sinh trên đường truyền). Nếu cũng tín hiệu đó, bây giờ ta truyền bằng cách dùng PAM lượng tử hoá. Trong vài điều kiện, hầu hết error sẽ được sửa sai. Nếu những repeater được đặt sao cho nhiễu chen vào giữa bất kỳ hai trạm thì nhỏ hơn một nữa của cở bước của bậc thang. Mỗi repeater sẽ giữ hàm đến dạng bậc thang gốc trước khi khuếch đại và gửi đi. Sự lượng tử hoá làm tròn các mức dùng làm bậc thang giống tín hiệu mong muốn. Số mức xác định độ phân giải (Resolution) tín hiệu. Đó là, một sự thay đổi nhỏ nào trong mức tín hiệu cũng có thể được phân tích bằng cách nhìn phiên bản lượng tử hoá của tín hiệu. Nếu cần độ phân giải cao, số mức lượng tử hoá phải tăng. Lúc ấy, khoảng cách giữa các mức giảm. BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH 21 CHƯƠNG 2: CỞ SỞ LÝ THUYẾT Hình 2.7. Tiến trình lượng tử hoá Trong một hệ thống PCM, tự vựng của các tín hiệu truyền chỉ chứa hai, 0 và 1. Các mức lượng tử hoá được mã hoá thành các số nhị phân. Vậy, nếu có 8 mức lượng tử hoá, thì những trị được mã hoá thành các số nhị phân 3 bit. Ba xung sẽ được cần để gửi mỗi trị lượng tử. Mỗi xung biểu diễn hoặc 0 hoặc 1. Điều đó giống như khái niệm của ADC. Hình 7.17 biểu diễn s(t) và dạng sóng của PCM 2 bit và 3 bit. Hình 2.8. PCM Một xung lên biểu diễn cho bit 1 và một xung Zero biểu diễn bit 0. Hoàn điệu BCM thì đơn giản là một DAC. Khối biến điệu và hoàn điệu thường là IC LSI và được gọi tên là CODEC( coder decoder ). BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH 22 CHƯƠNG 2: CỞ SỞ LÝ THUYẾT Lossless Audio PCM gồm hai thành phần: tần số lấy mẫu (sample rate) và độ sâu bit (bit depth). “Tần số lấy mẫu” chính là số lần biên độ rung mỗi giây của sóng âm còn “độ sâu của bit" thể hiện số lượng bit của thông tin đo được từ mỗi mẫu âm tương ứng với độ phân giải của mỗi bộ dữ liệu âm thanh số. Như vậy ta có thể thấy, “âm thanh số” chính là những thay đổi về biên độ tần số sóng âm dao động trong một khoảng thời gian nhất định, tạo ra âm thanh. Tần số lấy mẫu và độ sâu của bit càng cao thì tín hiệu analog được mô phỏng lại càng chính xác. Hiện nay, tần số lấy mẫu của các file định dạng PCM có thể lên đến 352,8kHz hoặc hơn nữa tuy nhiên, các DAC thông thường, tầm trung chỉ hỗ trợ 192kHz, riêng cũng có một vài sản phẩm như iFi iDAC 2 hoặc iFi Nano iDSD cũng có thể đáp ứng 384kHz. Thường thì dạng PCM phần nào có thể được phân giải ngay thành tín hiệu analog với bất cứ DAC nào. Do tính đơn giản đó, âm thanh PCM được coi là loại âm không tổn hao (lossless) do không bị nén, tuy nhiên dung lượng lưu trữ rất lớn Âm thanh ta thường nghe trên CD hay định dạng WAV chính là nó, cứ mỗi giây âm thanh được lấy mẫu (sample) với tần số mẫu 44.1kHz (44100 lần trong 1 giây), với mỗi mẫu là 16 bit dữ liệu. Ví dụ, cứ 1 phút âm thanh, ta có công thức sau: 44.100 sampling X 2 kênh (trái phải) X 2 bytes (16 bit = 2 bytes) X 60 giây = 10.584.000 bytes = 10.1 Mb. Mỗi CD có dung lượng khoảng 750Mb, xấp xỉ 74 phút âm thanh. Từ công thức ta tính ra được 1 giây của âm thanh gốc sẽ có bitrate là 1411kbps. BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH 23 CHƯƠNG 2: CỞ SỞ LÝ THUYẾT Hình 2.9. biểu đồ dạng sóng PCM Trên máy tính, thông thường có thể nhìn PCM dưới định dạng như:  WAV là dạng file âm thanh không nén dựa trên định dạng PCM. Nếu được lấy mẫu với tần số 44.1 kHz tức 16 bit (tương đương với chất lượng CD) thì 1 phút âm thanh sẽ tiêu tốn tới 10 MB ổ cứng. WAV dạng này thường được thu âm thanh (bài hát, diễn văn) theo dạng thô và sau đó được xử lý bằng các thiết bị phòng thu hoặc phần mềm chuyên biệt để xuất ra các dạng file chiếm dung lượng ít hơn.  FLAC: Free Lossless Audio Codec, là một định dạng khá được cũng khá phổ biến hiện nay và cũng có khá nhiều máy nghe nhạc hỗ trợ định dạng này, việc giải mã FLAC không phụ thuộc vào quá trình mã hóa, tức là mã hóa chậm nhưng giải mã vẫn khá nhanh, FLAC hiện nay có 9 level chia theo mức độ từ 0-8, và tốc độ bit dao động trong khoảng 600- 1100 kbps, ở level càng cao thì thời gian mã hóa càng lâu để dung lượng giảm xuống.  APE: Monkey's audio, đây cũng là định dạng Lossless thông dụng, tuy nhiên nó chưa phổ biến trên các máy nghe nhạc như FLAC.  ALAC còn gọi là M4A: Apple lossless audio code, định dạng này được sáng lập bởi Apple, dành riêng cho các thiết bị của họ, sau này nó trở nên phổ biến hơn khi được sử dụng trên các thiết bị của hãng khác, tuy nhiên ALAC không được phổ biến như FLAC và APE.  WMA9: Đây cũng là một định dạng lossless được hỗ trợ bởi microsoft, tuy nhiên nó gần như chỉ thông dụng trên máy zune của microsoft, và chất lượng khá tốt. BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH 24 CHƯƠNG 2: CỞ SỞ LÝ THUYẾT  Lossy: Đại diện tiêu biểu nhất cho khái niệm nhạc Lossy là Mp3. Lossy (mất nhiều). Mp3 đã có một thời kỳ thịnh vượng và góp phần giúp cho việc truyền tải âm nhạc đến mọi người được nhanh chóng và dễ dàng. MP3 là viết tắt của MPEG-1 Audio Layer 3, một định dạng mã hóa âm thanh kỹ thuật số, được dùng để tạo ra các tập tin với dung lượng được giảm đi rất nhiều, trong khi chất lượng thu được vẫn gần giống như những gì thể hiện trên một máy nghe đĩa CD. Mp3 được thiết kế bởi Moving Picture Experts Group (MPEG), đây là một tập đoàn chịu trách nhiệm về thiết lập tiêu chuẩn mã hóa audio. Các tập tin MP3 đầu tiên bắt đầu xuất hiện vào khoảng những năm 1990 và được công bố chính thức vào năm 1993. Khi mà Internet và mạng ngang hàng (peer to peer) đang dần trở nên phổ biến thì MP3 cũng nhanh chóng trở thành định dạng âm thanh được lựa chọn nhiều bởi chất lượng tốt và kích thước nhỏ. Các bit rate thường thấy trên những tập tin Mp3 có giá trị vào khoảng 128 Kbps, 192 Kbps, 256 Kbps, 320 Kbps. Đây vẫn là con số khá thấp so với 1411 Kbps trên các CD hay các định dạng PCM. Nhưng chính việc giảm bit rate xuống thấp cũng góp phần làm giảm kích thước của các tập tin MP3.  Công nghệ DSD( Direct Stream Digital ) Direct Stream Digital (DSD) là thương hiệu của Sony và Philips dùng trong hệ thống tái tạo tín hiệu âm thanh kỹ thuật số được sử dụng cho Super Audio CD (SACD). Kỹ thuật chuyển đổi DSD được phát triển bởi Andreas Koch và Ed Meitner của EMM Labs. Sau đó Koch thành lập AKDesign và tiếp tục nghiên cứu về sự chuyển giao tập tin DSD qua kết nối USB. Công nghệ DSD tiếp tục được phát triển và thương mại hóa bởi Sony và Philips, sau đó năm 2005 Philips bán lại cho Sonic Studio để phát triển hơn nữa. BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH 25 CHƯƠNG 2: CỞ SỞ LÝ THUYẾT DSD dùng công nghệ mã hóa tín hiệu bằng mật độ xung nhịp (pulse-density modulation encoding) - một công nghệ dùng để lưu trữ tín hiệu âm thanh trên phương tiện lưu trữ kỹ thuật số sử dụng cho SACD. Tín hiệu sẽ được lưu trữ giống như âm thanh kỹ thuật số với nắn âm delta-sigma; một chuỗi các giá trị 1-bit với sampling rate 2.8224MHz (gấp 64 lần CD Audio là 44.1kHz, nhưng chỉ bằng khoảng 1/32768 so với 16-bit). Nắn nhiễu âm được tạo ra trong tín hiệu gấp 64 lần tín hiệu gốc giúp giảm tiếng ồn và biến âm gây ra do sự thiếu chính xác của lượng âm trong tín hiệu 1- bit. Lịch sử-Phát triển DSD là một phương pháp lưu trữ tín hiệu Delta-Sigma trước khi áp dụng phương pháp thập phân nhằm chuyển đổi tín hiệu đó thành tín hiệu PCM. Công nghệ huyển đổi Delta-Sigma được mô tả lần đầu tiên trong bằng sáng chế của C.C. Cutler năm 1954, nhưng chưa có tên như vậy cho đến khi được đề cập trong một văn kiện năm 1962 của Inose. Trước đây, thập phân không tồn tại và tín hiệu oversample như thế nào phải được gửi đi như thế ấy. Đề xuất chia 1/10 dữ liệu oversample delta- sigma để chuyển đổi thành âm thanh PCM đã không được nhắc đến cho đến năm 1969, trong một bài viết của DJ Goodman. Ứng dụng chuyển đổi DSD được phát triển bởi Andreas Koch và Ed Meitner, những thành viên sáng lập ban đầu của EMM Labs. Andreas Koch về sau đã rời khỏi EMM Labs và thành lập AKDesign và tiếp tục nghiên cứu về sự chuyển giao tập tin DSD qua kết nối USB. Công nghệ DSD sau đó đã được phát triển và thương mại hóa bởi Sony và Philips, tạo ra CD audio. Tuy nhiên, Philips sau đó bán lại cho Sonic Studio vào năm 2005 để tiếp tục phát triển. Kỹ thuật DSD BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH 26 CHƯƠNG 2: CỞ SỞ LÝ THUYẾT Hình 2.10. So sánh DSD với PCM. 2.1.4 Các kiến thức về xử lý âm học trong phòng nghe a. Các bề mặt nhẵn song song không được che phủ Có lẽ sự cố thường gặp và cũng nghiêm trọng nhất trong các phòng nghe là các bức tường song song không được xử lý. Hai bức tường nhẵn đối diện nhau có thể gây ra hiện tượng âm thanh dội đi dội lại nhiều lần ngay cả khi âm thanh phát ra trực tiếp từ loa đã dùng hẳn. Hiện tượng này tương tự như khi bạn đứng trong một căn phòng trống không có thảm treo trên tường và vỗ tay, có cảm giác âm thanh như lưu lại trong không gian một lúc lâu sau. Chúng gây ảo giác không gian trở nên rộng lên gấp nhiều lần. Tương tự, hiện tượng dội âm gây những cảm giác sai lệch về âm thanh, khiến chúng bị méo mó, khác hẳn âm thanh gốc. >> Cách khắc phục: Chỉ cần đặt vật tiêu âm hoặc âm lên một trong hai bề mặt. Vật đó có thể là những tấm rèm vải dày, rèm nhung hoặc các tấm tiêu âm làm bằng gỗ, bằng tre nứa, bằng mút gai (mút trứng). b. Âm dội từ sàn và tường Một điều không thể tràng khỏi là chúng ta thường phải đặt loa gần tường và sát với sàn nhà nên âm thanh mà bạn nghe được không chỉ phát ra trực tiếp từ loa mà còn bị phản xạ từ tường, sàn và trần. Những âm thanh này đo tới tai nghe chậm hơn âm thanh đi thẳng, và còn bị méo. Chúng làm cho âm thanh tổng thể không được trong trẻo và trung thực với bản gốc. BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH 27 CHƯƠNG 2: CỞ SỞ LÝ THUYẾT Âm thanh phản xạ ảnh hưởng rất xấu tới sự nghe của chúng ta Đặc tính hấp thụ âm thanh của các bức tường ở hai bên loa cũng ảnh hưởng tới cường độ và “chất âm phản xạ. Vì thế, âm thanh phản xạ không chính xác như âm thanh trực tiếp phát ra mặt trước loa. Thêm nữa, khi âm thanh trực tiếp và âm thanh phản xạ kết hợp với nhau, ta sẽ thấy một mớ âm thanh hỗn hợp từ hai nguồn âm này. Âm phản xạ đi tới tai nghe thường chậm trễ hơn âm trực tiếp, sinh ra hiện tượng lệch pha khiến cho âm thanh bị méo. Chính vì thế mà phản xạ âm từ hai bên tường là một trong những nguyên nhân lý giải tại sao cùng một cặp loa nhưng đặt trong các căn phòng khác nhau thì tiếng cũng rất khác. Hiện tượng phản xạ trên không chỉ ảnh hưởng đến tính cân bằng của âm thanh mà còn mất độ chính xác của âm hình. Nhưng theo kinh nhgiệm của Công Audio nếu duy trì được mức phản xạ vừa phải thì lại làm tăng độ rộng mở của sân khấu, song nếu thái quá nó gợi lên cảm giác rõ rệt về khoảng cách giữa các loa. Điều này xóa nhòa ranh giới giữa các âm hình và khiến cho sân khấu âm thanh thiếu tập trung và chính xác. Âm thanh cũng phản xạ từ sàn và trần. Phản xạ âm sàn ít ảnh hưởng tới sự nghe hơn phản xạ từ trần vì khoảng cách giữa loa tới sàn nhỏ hơn giữa loa và trần, nên đường truyền âm thanh cũng ngắn hơn, sự sai pha sẽ ít hơn. Và trần hơi nghiêng sẽ có lợi hơn nếu bạn đặt loa ở phía trần bị nghiêng xuống. Góc nghiêng của trần sẽ hướng những âm thanh phản xạ từ trần đi chệch khỏi tai người nghe. >> Cách khắc phục: Chỉ cần đặt một vật tán âm hoặc tiêu âm lên hai bức tường, nhất là mảng tường giữa loa và người nghe. Xử lý phản xạ còn dễ hơn nhiều: một tấm thảm đặt trên sàn sẽ hấp thu hầu hết âm dội. Một điều khá thú vị là mỗi lọai thảm có tác động khác nhau lên âm thanh. Theo kinh nghiệm của nhiều dân chơi âm thanh ngoại quốc, thảm len sẽ làm cho âm thanh cân bằng và tự nhiên hơn thảm làm từ sợi tổng hợp. Đó là do các sợi trong thảm len đều có chiều dài và độ dày khác nhau. Như vậy thảm len sẽ hấp thu được các tần số khác nhau. Ngược lại, thảm tổng hợp được dệt từ các sợi có hình dáng và kích cỡ giống y như nhau nên chỉ hấp thụ dải tần hẹp. Ở ta, việc kiếm được thảm len dày để làm tiêu âm không phải là dễ. Có thể dùng tạm các tấm mút gai cùng với các tán âm bằng gỗ cũng có hiệu quả khá. c. Âm bass dày và nặng BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH 28 CHƯƠNG 2: CỞ SỞ LÝ THUYẾT Tiếng bass bị dày và nặng là một vấn đề nan giải mà nguyên nhân thường là do sự bất hợp lý về chế độ cộng hưởng của phòng, về vị trí và chất lượng của loa, hoặc độ hấp thu tiếng bass của phòng quá thấp. Và ngay cả vị trí ngồi nghe cũng liên quan đến độ dày và nặng của tiếng bass. >> Cách khắc phục: Thông thường, chúng ta có thể khắc phục bằng cách đơn giản mà hiệu quà là dịch chuyển loa. Nhưng nếu làm vậy mà chưa cải thiện được tình hình, nhiều người nghĩ ngay đến chuyện “thay loa”, hãy dùng giải pháp lắp các tấm tiêu âm bass. Chúng sẽ hút các tần số thấp và biến các tần số này thành nhiệt truyền vào trong các chất liệu sợi ở bên trong các tấm tiêu âm này. Nên làm thêm các cột “chân voi” đặt ở góc phòng để triệt tiêu sóng âm tần số thấp. Trong trường hợp tiếng bass quá dội, có thể làm thêm các hộp cộng hưởng Hemholtz là hiệu quả nhất. d. Các vật phản xạ gần loa Tất cả các đồ vật có tính phản xạ âm thanh đứng gần loa đều có thể làm âm hình biến dạng, thiếu chiều sâu. Ít người biết rằng chính chiếc TV với màn hình thủy tinh có tính phản xạ âm thanh mạnh đặt giữa hai loa lại là thủ phạm làm xấu âm thanh rất nhiều. Chính vì thế, nên dịch chuyển chiếc TV này cũng như các vật cản khác (ampli công suất, loa sub-woofer) ra càng xa loa càng tốt. Chất lượng trình diễn của nhiều bộ dàn chuyển biến rất nhiều khi những “nhân vật” đứng sai vị trí được chuyển ra rìa phòng. Âm hình trở nên tập trung hơn, tiếng cũng sâu hơn. Nếu đồ vật không thể dịch chuyển, hãy phủ tấm vải hút âm lên chúng. Kéo rèm cửa sổ phía sau lại mỗi khi nghe nhạc. e. Tìm vị trí loa vị trí đặt loa là yếu tố mang tính quyết định. Tìm vị trí thích hợp cho loa là việc đầu tiên nên làm trước khi dùng đến biện pháp xử lý âm học phòng nghe. f. Cân bằng giữa vật hấp thu thấp và cao Hầu hết các phòng đều có đặc tính tiêu âm tần số cao mà không hấp thu tần số thấp. Ngoài thảm, rèm và các đồ làm bằng chất liệu mềm, có thể sử dụng thêm các cột “chân voi” hoặc các thiết bị tiêu âm tự chế dạng tấm để giữ độ cân bằng về thời gian dội âm. Âm bass nặng nề, chậm chạp là do những bất cân bằng này. g. Dịch chuyển vị trí nghe để cân băng và tối ưu tiếng bass BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH 29 CHƯƠNG 2: CỞ SỞ LÝ THUYẾT Sóng đứng tần số thấp sẽ tạo ra những vị trí có áp suất âm thanh (thanh áp) khác nhau. Chuyển vị trí ngồi sẽ tạo ra độ cân bằng phù hợp nhất. Với các phòng nghe dư tiếng bass, tránh ngồi sát vào tường sau vì tiếng bass ở đó nghe rất nặng nề. Ngươc lại nếu cảm thấy hơi thiếu bass, có thể lùi vị trí nghe gần với tường sau để cân bằng trở lại với dải âm cao. 2.2 HỆ ĐIỀU HÀNH VOLUMIO VÀ KHÁI NIỆM VỀ MUSIC SERVER 2.2.1 Hệ điều hành Volumio Volumio là một hệ điều hành mở dành cho tất cả các máy tính đang có trên thị trường ngày nay. Không giống như window, Mac OS, unbutu linux và một số hệ điều hành khác trên thế giới, Volumio là hệ điều hành dành cho music server và dùng để chơi nhạc chuyên nghiệp. Volumio có rất nhiều phiên bản có thể chạy trên tất cả các máy tính từ máy bàn, laptop, đến các hệ máy như NUC. Đặc biệt, Volumio có thể kết hợp với máy tính nhúng nhỏ gọn như raspberry pi cùng với các cổng GPIO sẽ tạo nên một hệ thống hoàn hảo để tạo nên 1 thiết bị Music server với sự đồng bộ về mặt điều khiển lẫn nhỏ gọn. Thiết bị Music server chạy volumio có khả năng tương thích với mọi DAC có hỗ trợ chuẩn giao tiếp I2S, nhờ đó việc chơi nhạc số, đặc biệt là nhạc số chất lượng cao trở nên cực kì dễ dàng so với những chiếc DAC rời truyền thống phải kết nối với máy tính để nhận nhạc số thông qua cổng xuất USB. Hệ điều hành Volumio có thể đọc được hầu như tất cả các file nhạc số hiện có với tất cả các định dạng khác nhau trên ổ cứng chứa nhạc. Volumio giúp tạo các playlist nhạc yêu thích hoặc sắp xếp tuỳ ý theo tên các ca sĩ, thể loại, năm,... Ngoài ra, chúng ta có thể stream nhạc trực tuyến từ Spotify, Youtube, Tidal,... trong cùng một một mạng nội bộ. Ta có thể truy xuất tất cả các thông tin bài nhạc, danh sách nhạc từ ổ cứng thông qua một thiết bị bất kì có thể lên mạng được như smartphone, máy tính, laptop và điều khiển tất cả các chức năng của Music server thông qua web server do chính Volumio tạo mà không cần phải mua hoặc down bất kì ứng dụng hỗ trợ nào. Ngoài ra, chúng ta cũng có thể streme nhạc từ smartphone qua thiết bị bằng Airplay (IOS) hoặc Chrome cast (Android). BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH 30 CHƯƠNG 2: CỞ SỞ LÝ THUYẾT Volumio là một hệ điều hành với mã nguồn mở, tương tự như Linux, Volumio cho phép người dung truy xuất thông tin dữ liệu sâu trong hệ thống và từ đó, việc lập trình chạy mềm cho hệ điều hành trở nên đơn giản và ta có thể tuỳ biến thông qua code Python được viết trong command khi máy tính nhúng được kết nối với một màn hình LCD. Trong đây, Volumio cho phép thực hiện các thao tác lập trình để tuỳ biến cho phần user interface. Volumio có kiến trúc hệ thống như sau: - Volumio OS làm nhiệm vụ nhận các hoạt động thao tác từ người dùng và hệ sinh thái Debian Jessie tuỳ chỉnh các tác vụ và xuất tín hiệu âm thanh thông qua các gói phần mềm là các plugin do người dùng cài đặt. - Volumio core là ứng dụng máy chủ được viết bằng javacript dung để chạy trình phát nhạc là điều khiển các chức năng cơ bản trong hệ điều hành. Hình 2.11. Cấu trúc hệ điều hành Volumio BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH 31 CHƯƠNG 2: CỞ SỞ LÝ THUYẾT 2.2.2 Ngôn ngữ Python Python là ngôn ngữ lập trình được sử dụng rất phổ biến ngày nay để phát triển nhiều loại ứng dụng phần mềm khác nhau như các chương trình chạy trên desktop, server, lập trình các ứng dụng web.v.v. Ngoài ra Python cũng là ngôn ngữ ưa thích trong ngành khoa học về dữ liệu (data science) cũng như là ngôn ngữ phổ biến để xây dựng các chương trình trí tuệ nhân tạo trong đó bao gồm machine learning. Được tạo ra bởi Guido Van Rossum, thiết kế bắt đầu vào cuối những năm 1980 và được phát hành lần đầu tiên vào tháng 2 năm 1991. Đặc Điểm Nổi Bật Của Python.  Python là ngôn ngữ dễ học: ngôn ngữ Python có cú pháp đơn giản, rõ ràng sử dụng một số lượng không nhiều các từ khoá, do đó Python được đánh giá là một ngôn ngữ lập trình thân thiện với người mới học.  Python là ngôn ngữ dễ hiểu: mã lệnh (source code hay đơn giản là code) viết bằng ngôn ngữ Python dễ đọc và dễ hiểu. Ngay cả trường hợp bạn chưa biết gì về Python bạn cũng có thể suy đoán được ý nghĩa của từng dòng lệnh trong source code.  Python có khả năng tương thích cao (highly portable): Cchương trình phần mềm viết bằng ngôn ngữ Python có thể được chạy trên nhiều nền tảng hệ điều hành khác nhau bao gồm Windows, Mac OSX và Linux.  Khả năng mở rộng và có thể nhúng: giả sử một ứng dụng đòi hỏi sự phức tạp rất lớn, chúng ta có thể dễ dàng kết hợp các phần code bằng C, C++ và những ngôn ngữ khác (có thể gọi được từ C) vào code Python. Điều này sẽ cung cấp cho các ứng dụng những tính năng tốt hơn cũng như khả năng scripting mà những ngôn ngữ lập trình khác khó có thể làm được.  Ngôn ngữ thông dịch cấp cao: không giống như C/C++, với Python chúng ta không phải lo lắng những nhiệm vụ khó khăn như quản lý bộ nhớ, dọn dẹp những dữ liệu vô nghĩa... Khi chạy code Python, nó sẽ tự động chuyển đổi code sang ngôn ngữ máy tính có thể hiểu. Một ứng dụng viết bằng ngôn ngữ Python có thể bao gồm một hoặc nhiều tập tin khác nhau. Các tập tin chứa mã lệnh Python sẽ có phần mở rộng là .py (ví dụ hello.py, test.py...). Mã lệnh Python được viết tuân BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH 32 CHƯƠNG 2: CỞ SỞ LÝ THUYẾT theo các quy tắc được quy định sẵn. Ứng dụng python sẽ được biên dịch bằng phần mềm có tên là Python Interpreter. Bảng 2.1. Các kiểu mã thường dùng Kích thước tối thiểu Mã kiểu C Type Python Type tính theo byte 'b' signed char int 1 'B' unsigned char int 1 'u' Py_UNICODE Unicode character 2 'h' signed short int 2 'H' unsigned short int 2 'i' signed int int 2 'I' unsigned int int 2 'l' signed long int 4 'L' unsigned long int 4 'f' float float 4 'd' double float 8 Trong thực tế, việc sử dụng Python trên Volumio còn gặp khá nhiều lỗi và rất ít có một tài liệu nghiên cứu hoặc một công đồng đủ đông để hỗ trợ như là raspbian, window. Nên việc sử dụng Python để lập trình tuỳ biến hệ thống cũng rất ít được sử dụng. 2.2.3 Music Server Music Server là tên một thiết bị quản lý kho nhạc, có khả năng điều khiển thông qua điện thoại di động, máy tính bảng, laptop. Nói một cách dễ hiểu, Music Server là một kho nhạc được kết nối với mạng nội bộ gia đình (không cần internet) giúp người chơi nhạc số có thể play, stop, next bài chỉ với 1 chiếc điện thoại trên tay. Music Server còn giúp quản lý hàng ngàn Album yêu thích, xắp xếp theo tên ca sỹ, BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH 33 CHƯƠNG 2: CỞ SỞ LÝ THUYẾT tên album, thể loại nhạc, nhạc sỹ.. điều mà việc quản lý bằng tay hay sổ sách là không thể.  Ba Tính năng nổi bật của Music Server: Rảnh tay khi chơi nhạc : Đây là tính năng nổi bật nhất của Music Server. So với nghe nhạc truyền thống bằng CD, đĩa thanthì sở hữu các album nhạc số với chất lượng cao có lợi ích rất nhiều như việc lưu trữ, sắp xếp và giá thành thấp hơn rất nhiều. Khi muốn thay CD thì chỉ còn cách thay thủ công bằng tay, lấy CD cũ ra, thay CD mới vào cạnh đó, nếu CD có 10 bài thì chưa hẳn chúng ta đã thích cả 10 bài đó dẫn đến việc phải thay CD liên tục rất vất vả. Nhưng với khả năng sắp xếp dữ liệu của Music Server thì với hàng ngàn album có thể thay đổi 1 cách dễ dàng. Ngoài ra, việc quản lý, phân chia theo danh sách nhạc yêu thích, thể loại, ca sĩcũng rất thuận tiện cho người sử dụng. Hình 2.12. Một thiết bị Music server hãng Nativ BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH 34 CHƯƠNG 2: CỞ SỞ LÝ THUYẾT Tạo Playlist yêu thích: việc nghe nhạc bằng CD có hạn chế rất lớn, đó là trong 1 CD thì không phải lúc nào người nghe cũng thích tất cả các bài hát trong đó. Có khi cả CD chỉ thích có 1 bài, nhưng lại phải trả tiền mua CD cho cả 10 bài đó dẫn đến lãng phí. Vấn đề tạo 1 danh sách bài hát yêu thích với CD là việc bất khả thi vì sẽ không có nhà phát hành nào tạo riêng CD cho người nghe nhạc. Chỉ còn cách sử dụng dịch vụ ghi cd nhạc theo yêu cầu. Nhưng chất lượng ghi CD bên ngoài sẽ không được như CD gốc. Chuyện tạo Playlist yêu thích lại là một lợi thế lớn của Music Sever. Hình 2.13. Một danh sách nhạc trên Music server Cấu tạo và hoạt động BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH 35 CHƯƠNG 2: CỞ SỞ LÝ THUYẾT Music Server có thể hiểu nó như một cái máy tính có ổ cứng được kết nối mạng gia đình (có hoặc không có internet). Toàn bộ quá trình điều khiển Music Server sẽ thông qua kết nối mạng. Bản thân Music Server sẽ được kết nối với dac nghe nhạc thông qua một trong các cổng như USB, Optical, Coxial. Đặc biệt là cổng USB nếu chơi nhạc DSD. Hình 2.14. Hệ thống có sử dụng Music server 2.2.4 Lý thuyết loa và thùng loa Có nhiều người đã nghĩ thùng loa chính là bộ phận ít chất “kỹ thuật” nhất trong một bộ loa nhưng đó là tư duy sai lầm Cách Đóng Thùng Loa và Kỹ Thuật Đóng Thùng Loa chuẩn là 1 yếu tố cực kỳ quan trọng. Nhiệm vụ đầu tiên và quan trọng nhất của thùng loa chính là giữ cố định các loa trong một kết cấu được tính toán trước. Không chỉ có thế, thùng loa còn có tác dụng quan trọng về mặt âm học. Yếu tố này quyết định thiết kế về hình dáng của từng loại loa, từng hãng loa khác nhau. a. Cấu tạo thùng loa Khi nhìn vào một cái loa thùng nào đó, ta có thể thấy thiết kế bên ngoài của chúng vô cùng đơn giản và không có gì là phức tạp cả. Nhưng để làm ra một loa hoàn BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH 36 CHƯƠNG 2: CỞ SỞ LÝ THUYẾT chỉnh thì các khâu từ lắp ráp, kiểm tra đến chọn lựa sản phẩm đều phải được tuân theo một tiêu chuẩn kỹ thuật cực kỳ nghiêm ngặt. Các bộ phận chính cấu tạo nên một hệ thống loa cơ bản đều phải được lựa chọn rất tỉ mỉ sao cho không những đạt được chất âm hiệu quả nhất mà còn đạt vẻ thẩm mỹ bên ngoài. Có 6 thành phần chính tạo nên một loa thùng: driver, lỗ dội âm (Bass reflex), thùng loa, jack nối dây, mạch phân tần, phụ kiện Hình 2.15. Thùng loa to...giá trị cho chip PT2315 và LCD ngay lập tức. BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH 103 CHƯƠNG 4 : THI CÔNG HỆ THỐNG  Lưu đồ chương trình con tăng biến volume hoặc treble hoặc bass 1 đơn vị hoặc bật loudness. Hình 4.21 Lưu đồ chương trình con tăng biến volume hoặc treble hoặc bass 1 đơn vị hoặc gán loudlessFunction=0x40.  Lưu đồ chương trình con tăng biến volume hoặc treble hoặc bass 3 đơn vị hoặc bật loudness. Hình 4.22 Lưu đồ chương trình con tăng biến volume hoặc treble hoặc bass 3 đơn vị hoặc gán loudlessFunction=0x40. Giải thích lưu đồ hình 4.21: Nếu nhấn giữ nút up dưới 2 giây thì ở mode=0 thì biến volume tăng 1 đơn vị sau 200 mili giây. Nếu nhấn giữ nút up dưới 2 giây thì ở mode=1 thì biến treble tăng 1 đơn vị sau 200 mili giây. Nếu nhấn BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH 104 CHƯƠNG 4 : THI CÔNG HỆ THỐNG giữ nút up dưới 2 giây thì ở mode=2 thì biến bass tăng 1 đơn vị sau 200 mili giây. Nếu nhấn giữ nút up dưới 2 giây thì ở trường hợp mode=3 thì loudlessFunction=0x40 để bật chế độ LOUDNESSFUNCTION. Giải thích lưu đồ hình 4.22: Nếu nhấn giữ nút up dưới 2 giây thì ở mode=0 thì biến volume tăng 1 đơn vị sau 200 mili giây. Nếu nhấn giữ nút up dưới 2 giây thì ở mode=1 thì biến treble tăng 1 đơn vị sau 200 mili giây. Nếu nhấn giữ nút up dưới 2 giây thì ở mode=2 thì biến bass tăng 1 đơn vị sau 200 mili giây. Nếu nhấn giữ nút up dưới 2 giây thì ở trường hợp mode=3 thì loudlessFunction=0x40 để bật chế độ LOUDNESSFUNCTION. BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH 105 CHƯƠNG 4 : THI CÔNG HỆ THỐNG  Lưu đồ chương trình con giảm biến volume hoặc treble hoặc bass 1 đơn vị hoặc loudlessFunction=0x44. Hình 4.23 Lưu đồ chương trình con giảm biến volume hoặc treble hoặc bass 1 đơn vị hoặc loudlessFunction=0x44.  Lưu đồ chương trình con giảm biến volume hoặc treble hoặc bass 3 đơn vị hoặc loudlessFunction=0x44. Hình 4.24 Lưu đồ chương trình con giảm biến volume hoặc treble hoặc bass 3 đơn vị hoặc gán loudlessFunction=0x44. BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH 106 CHƯƠNG 4 : THI CÔNG HỆ THỐNG Giải thích lưu đồ hình 4.23: Nếu nhấn giữ nút down dưới 2 giây thì ở mode=0 thì biến volume giảm 1 đơn vị sau 200 mili giây. Nếu nhấn giữ nút down dưới 2 giây thì ở mode=1 thì biến treble giảm 1 đơn vị sau 200 mili giây. Nếu nhấn giữ nút down dưới 2 giây thì ở mode=2 thì biến bass giảm 1 đơn vị sau 200 mili giây. Nếu nhấn giữ nút down dưới 2 giây thì ở trường hợp mode=3 thì loudlessFunction=0x44 để tắt chế độ LOUDNESSFUNCTION. Giải thích lưu đồ hình 4.24: Nếu nhấn giữ nút down dưới 2 giây thì ở mode=0 thì biến volume giảm 1 đơn vị sau 200 mili giây. Nếu nhấn giữ nút down dưới 2 giây thì ở mode=1 thì biến treble giảm 1 đơn vị sau 200 mili giây. Nếu nhấn giữ nút down dưới 2 giây thì ở mode=2 thì biến bass giảm 1 đơn vị sau 200 mili giây. Nếu nhấn giữ nút down dưới 2 giây thì ở trường hợp mode=3 thì loudlessFunction=0x44 để tắt chế độ LOUDNESSFUNCTION. BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH 107 CHƯƠNG 4 : THI CÔNG HỆ THỐNG  Lưu đồ chương trình con giới hạn giá trị biến volume, treble, bass. Hình 4.25 Lưu đồ chương trình con giới hạn giá trị biến volume, treble, bass. BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH 108 CHƯƠNG 4 : THI CÔNG HỆ THỐNG Giải thích lưu đồ hình 4.25: Chương trình con giới hạn biến nhằm mục đích giới hạn giá trị các biến volume, treble, bass. Với giới hạn dưới cho các biến volume, treble, bass là 0 và giới hạn trên cho biến volume là 63. Giới hạn trên cho biến treble, bass là 15.  Lưu đồ chương trình con truyền dữ liệu tới chip PT2315 với hàm setupForPt2315(). XUẤT GIÁ TRỊ RA CHIP PT2315 BẮT ĐẦU TRUYỀN DỮ LIỆU TỪ VI ĐIỀU KHIỂN TỚI PT2315 GỞI TỚI PT2315 BYTE ĐIỀU KHIỂN VOLUME GỞI TỚI PT2315 BYTE ĐIỀU KHIỂN TREBLE GỞI TỚI PT2315 BYTE ĐIỀU KHIỂN BASS GỞI TỚI PT2315 BYTE ĐIỀU KHIỂN LOUDLESSFUNCTION GỞI TỚI PT2315 BYTE ĐIỀU KHIỂN SPEAKER ATT L GỞI TỚI PT2315 BYTE ĐIỀU KHIỂN SPEAKER ATT R KẾT THÚC VIỆC TRUYỀN DỮ LIỆU TỚI PT2315 END Hình 4.26 Lưu đồ chương trình con truyền dữ liệu tới chip PT2315. BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH 109 CHƯƠNG 4 : THI CÔNG HỆ THỐNG Giải thích lưu đồ hình 4.26: Việc giao tiếp giữa Arduino Uno R3 và chip PT2315 thông qua thư viện Wire.h gồm 3 quá trình:  Arduino Uno R3 gởi byte bắt đầu việc giao tiếp với chip PT2315.  Arduino Uno R3 gởi các byte điều khiển VOLUME, TREBLE, BASS, LOUDLESSFUNCTION tới chip PT2315.  Arduino Uno R3 gởi byte kết thúc việc giao tiếp với chip PT2315. 4.4.2 Phần mềm lập trình Giới thiệu phần mềm lập trình:  Để lập trình được cho các board Arduino, các bạn cần phải có một công cụ gọi là Intergrated Development Environment (IDE). Công cụ này được đội ngũ kĩ sư của Arduino phát triển và có thể chạy trên Windows, MAC OS X và Linux. Ở đây nhóm cài đặt và thực hiện việc lập trình trên hệ điều hành Ubuntu(Linux). Nhóm sử dụng phiên bản Arduino IDE 1.8.7.  Giao diện phần mềm: Hình 4.27. Giao diện phần mềm Arduino IDE . Vùng lệnh: Bao gồm các nút lệnh menu (File, Edit, Sketch, Tools, Help). Phía dưới là các icon cho phép sử dụng nhanh các chức năng thường dùng của IDE được miêu tả như sau: BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH 110 CHƯƠNG 4 : THI CÔNG HỆ THỐNG Hình 4.28. Mô tả các lệnh của Arduino IDE . Vùng viết chương trình: Là vùng soạn thảo chương trình, cột bên góc trái có các số thứ tự liên tiếp để người lập trình có thể nhìn vào đó mà biết được đã viết được bao nhiêu dòng. . Vùng thông báo: sẽ thông báo cho người lập trình biết có những lỗi nào và lỗi đó nằm ở dòng có số thứ tự bao nhiêu nếu chương trình bị lỗi. Và cũng thông báo chương trình được biên dịch thành công hoặc nạp chương trình cho board Arduino Uno R3 thành công. BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH 111 CHƯƠNG 4 : THI CÔNG HỆ THỐNG Hình 4.29. Vùng thông báo của Arduino IDE  Một số lưu ý khi lập trình bẳng Arduino Uno R3 trên hệ điều hành Ubuntu. . Chọn đúng loại board Arduino Uno: Vào Tools -> Board -> Arduino/Genuio Uno. Hình 4.30. Chọn đúng loại board Arduino Uno để nạp code BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH 112 CHƯƠNG 4 : THI CÔNG HỆ THỐNG . Chọn cổng để giao tiếp bằng máy tính với board Arduino Uno R3: Vào Tools -> Port -> /dev/ttyUSB0 Hình 4.31. Chọn cổng kết nối với board Arduino Uno R3 . Mở kết nối cổng bằng màn hình Terminal: - Mở màn hình Terminal bằng tổ hợp phím Ctrl + Atl + T. - Gõ dòng lệnh sudo chown huy /dev/ttyUSB0 để mở cổng kết nối. Hình 4.32. Gõ lệnh mở cổng giao tiếp giữa máy tính với board Arduino Uno - Nhập mật khẩu để mở cổng kết nối bẳng quyền admin. Hình 4.33. Nhập mật khẩu để mở cổng kết nối bằng quyền admin. - Giao diện Terminal khi kết nối thành công. BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH 113 CHƯƠNG 4 : THI CÔNG HỆ THỐNG Hình 4.34. Mở cổng kết nối thành công 4.5 TÀI LỆU HƯỚNG DẪN SỬ DỤNG, THAO TÁC 4.5.1 Tài liệu hướng dẫn sử dụng Việc vận hành hệ thống rất đơn giản thông qua các bước sau: Bước 1: Cắm điện nguồn đầu vào ở mặt sau thiết bị. Bước 2: Bật công tắc phía trước của hệ thống. Bước 3: Đợi hệ thống khởi động khoảng 2 phút sẽ có tiếng báo hiệu hệ thống sẵn sàng. Bước 4: Đăng nhập điện thoại, máy tính bảng, laptop vào cùng một mạng nội bộ với hệ thống. Bước 5: Bật ứng dụng Volumio hoặc Vào duyệt Web bấm volumio/ và tiến hành chọn nội dung và nghe nhạc trên thiết bị. Điều chỉnh âm lượng, âm sắc cho phù hợp với sở thích. 4.5.2 Quy trình thao tác Đầu tiên ta cắm nguồn thiết bị bằng dây có đầu đực trùng với jack cắm trên thiết bị. Tiếp theo bật công tắc nguồn phía trước BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH 114 CHƯƠNG 4 : THI CÔNG HỆ THỐNG Hình 4.35. Bật công tắc ở mặt phía trước Đăng nhập thiết bị điều khiển vào cùng một mạng wifi nội bộ trùng với mạng mà thiết bị được cài đặt kết nối sẵn. Sau đó vào duyệt web:” volumio/”, màn hình sẽ được đăng nhập vào web server như hình. BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH 115 CHƯƠNG 4 : THI CÔNG HỆ THỐNG Hình 4.36. Giao diện Volumio Ta tiến hành cắm ổ cứng di động hoặc usb đã chứa nhạc số chất lượng cao vào phía sau cổng USB của thiết bị. Vào mục Music Library => USB=> mã của USB BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH 116 CHƯƠNG 4 : THI CÔNG HỆ THỐNG Hình 4.37. Giao diện thư viện nhạc Bước cuối cùng là chọn bài nhạc và điều chỉnh âm lượng, âm sắc phù hợp với tai bằng các nút nhấn cảm ứng phía trước. Hình 4.38. Chế độ điều khiển Volume BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH 117 CHƯƠNG 4 : THI CÔNG HỆ THỐNG Hình 4.39. Chế độ điều khiển Treble Hình 4.40. Chế độ điều khiển Bass BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH 118 CHƯƠNG 4 : THI CÔNG HỆ THỐNG Hình 4.41. Chế độ điều khiển Loudness BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH 119 CHƯƠNG 5 : KẾT QUẢ_NHẬN XÉT_ĐÁNH GIÁ Chương 5. KẾT QUẢ_NHẬN XÉT_ĐÁNH GIÁ Nhóm bắt đầu nhận đề tài “thiết kế và thi công hệ thống Audio Hi-end kĩ thuật số ” từ ngày ngày 19/08/2019. Bắt đầu nghiên cứu và thực hiện đề tài trong vòng 14 tuần để hoàn thành hệ thống. Trong quá trình nghiên cứu và thực hành nhóm đả học và rút ra được nhiều kinh nghiệm như: biết cách tìm hiểu nghiên cứu về một vấn đề, hiểu và biết sử dụng các module Arduino, module Raspberry pi3, module Pifi DAC, TTP223, LCD, chuẩn truyền I2C,vv. Biết thêm về khả năng đa nhiệm trong lĩnh vực Audio của Raspberry Pi, cách cài đặt hệ điều hành Volumio, hiểu thêm về ngôn ngữ Python. Trong quá trình nhóm nghiên cứu đã thu được rất nhiều kết quả để chứng minh cho những cơ sở lý thuyết, những tính toán thiết kế và thi công của mình đi đúng hướng. Kết quả thực hiện nhóm đã hoàn thành được để tài. Bây giờ hệ thống có thể phát được hầu hết tất cả các định dạng nhạc số và nghe nhạc ổn định với thời gian dài. 5.1 KẾT QUẢ SẢN PHẨM 5.1.1 Kết quả thử nghiệm sử dụng nguồn nhạc số chất lượng cao Nhóm sử dụng nhạc số chất lượng cao được mua từ thư viện nhạc trên Itune và một số nguồn chia sẽ nhạc từ Facebook để test thiết bị. Kiểm tra thử nghiệm khi không điều chỉnh âm sắc: Kết quả cho âm thanh không bị méo tần số. Không bị nhiễu phần nguồn lẫn phần dây tín hiệu. Âm thanh không bị ù, rè trong quá trình chơi nhạc. Kiểm tra thử nghiệm dụng điều chỉnh âm sắc:  Khi tăng Treble lên khoảng 8dB trở lên, âm thanh có tiếng rít. Tiếng mid không còn trung thực mà trở nên chói ở những khúc nhạc có tiếng sáo trúc hoặc tiếng kèn monica do loa toàn dải 12cm không đáp ứng được tần số cao vượt ngưỡng 12000Hz.  Khi tăng Bass lên khoảng 8dB trở lên, tiếng tối, áp lực khi tăng bass tạo lên củ loa treble làm cho tiếng phát ra từ loa treble bị rè và âm thanh BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH 120 CHƯƠNG 5 : KẾT QUẢ_NHẬN XÉT_ĐÁNH GIÁ  bị ù 1 phần ở những khúc nhạc có tiếng trống Dump. 5.1.2 Điều chỉnh phù hợp cho mỗi thể loại nhạc Do khả năng cảm thụ âm nhạc của mỗi người nghe khác nhau. Nên việc sử dụng mạch tiền khuếch đại điều chỉnh âm sắc là do sở thích cá nhân của mỗi người dùng. Với nhóm nghiên cứu, việc chế tạo thiết bị âm thanh Hi-end hướng đến thiết bị chất lượng cao với linh kiện tốt, độ ổn định và tính trung thực của bài hát nên nhóm sẽ giữ nguyên bản của bài nhạc để cho âm thanh được chân thật nhất như nghe ở ngoài. 5.2 NHẬN XÉT VÀ ĐÁNH GIÁ CHUNG Dựa vào kết quả Demo hệ thống, đề tài nghiên cứu hướng đến việc chế tạo các thiết bị âm thanh chất lượng cao và giá thành rẻ hơn so với hãng nhưng vẫn mang lại một chất âm Hi-end cho người sử dụng. Ngoài ra các công nghệ Audio mới nhất cũng được tích hợp tất cả trên thiết bị như wifi, airplay, music server, DAC, và nhạc số chất lượng cao giúp giảm chi phí mua các phương tiện chơi nhạc như đĩa CD, đĩa than hay băng cối. Tuy nhiên, nhóm đồ án vẫn chỉ chế tạo được 1 thiết bị ở mức tạm chấp nhận được trong các thiết bị Hi-end Audio, linh kiện và loa chưa phải là chất lượng cao nhất. Khả năng chơi nhạc số còn hạn chế do bộ giải mã DAC chỉ ở mức nhạc số PCM 32bit là cao nhất, giải mã nhạc số DSD còn hạn chế và cần có một bộ DAC khác hỗ trợ chất lượng cao hơn. Ngoài ra, nhóm chưa có thể mua một bộ biến áp cách ly cho hệ thống vì chi phí khá cao nên việc trải nghiệm hệ thống vẫn chưa đạt trạng thái tốt nhất. BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH 121 CHƯƠNG 6. KẾT LUẬN VÀ HƯỚNG PHÁT TRIỂN Chương 6. KẾT LUẬN VÀ HƯỚNG PHÁT TRIỂN 6.1 KẾT LUẬN Mục tiêu chính của đề tài là chế tạo ra một thiết bị tích hợp các công nghệ mới nhất trong lĩnh vực Audio và có khả năng phát được nhạc số chất lượng cao mà những thiết bị amply hiện tại trên thị trường không thể làm được. Qua thời gian nghiên cứu và thực hiện thì nhóm đã chế tạo ra thiết bị có thể chơi tốt hầu hết các loại nhạc số trên thị trường ngày nay. Hạn chế của thiết bị là khả năng giải mã chưa tốt loại nhạc định dạng DSD đang chiếm thị phần nhạc số trên thị trường vì module DAC giải mã có giới hạn về khả năng đọc dữ liệu số cao nhất là nhạc 32bit. Về khả năng phối ghép, thiết bị có thế ghép với hầu hết các dòng loa trong phân khúc công suất nhỏ và độ nhạy cao. Nhóm khá ấn tượng khi ghép thiết bị với loa toàn dải và phát các thể loại nhạc không lời và nhạc xưa cho chất âm rất mộc mạc và chân thực. Trong suốt thời gian nghiên cứu, nhóm thực hiện đồ án cũng đã học được khá nhiều điều như học được cách chịu áp lực, cách nghiên cứu về một vấn đề, khả năng phân chia công việc và lên kế hoạch, nhất là đức tính kiên trì khi lập trình bị lỗi. Quả thực, môi trường Đại Học Sư Phạm Kỹ Thuật là rất tốt trong việc rèn luyện nhân cách, phương pháp học tập, kinh nghiệm sống của chúng mỗi người. Những điều đó làm nền tảng cho việc phát triển của mỗi cá nhân trong nhóm sau này. 6.2 HƯỚNG PHÁT TRIỂN Dựa vào những kiến thức được tham khảo và học hỏi. Nhóm nghiên cứu nghĩ rằng đề tài này có thể phát triển và mở rộng thêm ở một số khía cạnh sau: - Có thế phát được nhạc số DSD khi nâng cấp về bộ giải mã DAC chất lượng cao hơn. BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP- Y SINH 122 CHƯƠNG 6. KẾT LUẬN VÀ HƯỚNG PHÁT TRIỂN - Có thể nâng cấp đồng bộ hóa việc thao tác điều chỉnh âm sắc thông qua một màn hình chạm duy nhất và được điều khiển bởi chỉ một module Raspberry Pi3 mà không cần phải thêm một module vi xử lý như hiện tại bằng cách lập trình trên nên node.Js của hệ điều hành mở trên Volumio tạo nên các plugin cho phép xử lý tín hiệu số. - Nâng cấp các linh kiện loại tốt hơn, sử dụng biến áp cách ly cho sẽ giảm tình trạng nhiễu do sự mất ổn định nguồn điện lưới cho chất âm trong sạch hơn rất nhiều. BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP- Y SINH 123 TÀI LIỆU THAM KHẢO TÀI LIỆU THAM KHẢO SÁCH THAM KHẢO [1] Nguyễn Đình Phú, “Giáo trình: Kỹ thuật số ”, Nhà xuất bản ĐH Quốc Gia, Tp.HCM, 2013. TÀI LIỆU THAO KHẢO [2] Trường Ca Audio, “HIFI là gì?”, truongcaaudio.com, Hà Nội, 18/4/2017. [3] Copy 2017, “Chuẩn truyền I2S”, esp32.vn, 2017. [4] Volumio.org, “Tổng quan về Volumio OS”, 2019. [5] Volumio Document, “Lập trình trên Volumio”, volumio.github.io, 2019. [6] Wikibook, “Kiến thức sóng âm”, tieuam.com, 8/2019 . [7] Internet, “ Lịch sử phát triển ngành Audio”, stereo.vn, 2015 . [8] AudioPsycho, “Kiến thức file nhạc DSD(Hires-audio)”, tinhte.vn, 10/2015. [9] Wikipedia, “Kiến thức về network( IP address, Subnet mask, gateway)”, vi.wikipedia.org, 9/2019. [10] Korea Electronic, “Datasheet KIA6210ah”, alldatasheet.com , 2019. [11] ANNGUYEN, “Music Server là gì, cùng tìm hiểu về Music Server ”, hifivietnam.vn, 3/2019. [12] Nguồn phát “Trải nghiệm A10 - music server mới nhất của Aurender”, stereo.vn, 3/2017. [13] Remk, “Sóng âm và những kiến thức cơ bản”, www.tieuam.com, 2014 [14] Internet, “ Tìm hiểu cơ bản về lĩnh vực AUDIO”, sonarstudio.vn, 2013 [15] Copy 2016, “Phân biệt khái niệm âm thanh Mono và Stereo”, binhminhdigital.com, 2017 [16] Copy 2018, “Tìm hiểu về âm thanh Analog và Digital ”, loakeoxanh.com 2018 [17] AudioPsycho, “ Âm thanh số - các bước phát triển và các định dạng” , tinhte.vn, 2015 [18] SCIENCE AND TECHNOLOGY, “biến điệu mã xung - pcm ( pulse code modulation)”, 2017 [19] Stereo Wiki, “ Tìm hiểu cơ bản và phân biệt về các loại củ loa”, stereo.vn, 2017 [20] Copy2019, “Cách đóng thùng loa”, vfun.vn, 2019 BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP- Y SINH 124 TÀI LIỆU THAM KHẢO [21] Nguyễn Thế Anh, “Thông số kĩ thuật loa nỉ Sony và treble nỉ Sony ”, linhkienloadai.vn, 2018 [22] Copy 2018, “Cách tính kích thước thùng loa”, thietbiamthanh24h.com, 2018 [23] Maybelle, “Các kiểu thiết kế thùng loa ”, loagom.nanoweb.vn, 2019 [24] Khuyết danh, “Cách chọn điện trở kéo lên bus I2C”, kienltb.wordpress.com, 04/2015. [25] Datasheet, “1 KEY TOUCH PAD DETECTOR IC TTP223-BA6 V2.1”, alldatasheet.com, 11/2009. [26] Datasheet, “2-Channel Audio Processor IC PT2315 V1.2”, alldatasheet.com, 03/2006. [27] Datasheet, “PCF8574 REMOTE 8-BIT I/O EXPANDER FOR I2C BUS”, alldatasheet.com, 07/2001. [28] Huỳnh Bảo Sơn, “Thiết kế và thi công hệ thống đếm số lượng cá giống ”, Đồ án tốt nghiệp, trường ĐHSPKT Tp.HCM, 2019. BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP- Y SINH 125 PHỤ LỤC PHỤ LỤC GIẢI THÍCH CHƯƠNG TRÌNH Khai báo thư viện //KHAI BAO THU VIEN /*Khai bao thu vien dung cho viec giao tiep I2C cua tac gia Nicholas Zambetti*/ #include /*Khai bao thu vien dung cho viec giao tiep I2C voi Module I2C cho Module LCD 1602 cua DFROBOT (www.dfrobot.com).*/ #include Khai báo biến cho việc kết nối nút nhấn và hiển thị lênLCD //Khai bao 3 chan D2, D6, D7 dung cho nut mode, nut down, nut up const int BTN_MODE = 2; const int BTN_DW = 6; const int BTN_UP = 7; //Khai bao bien cho viec dieu khien LCD /*Dia chi giao tiep I2C cua module I2C giao tiep voi LCD la 0x27*/ LiquidCrystal_I2C lcd(0x27,16,2); //Khai bao hang chuoi hien thi hang thu nhat const String CHUOI_HANG_TREN="DATN--DTVT"; /*Khai bao bien chuoi hien thi hang thu hai*/ const String CHUOI_MODE[4] ={"Vol: ","Treble: ","Bass: ","Loudness:"}; const String CHUOI_DB ="dB"; const String CHUOI_TREBLE_BASS[]={"-14","-12","-10","-8", "-6 ","-4 ","-2 ","+0 ","+0 ","+2 ","+4 ","+6 ","+8", "+10","+12","+14"}; BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP- Y SINH 126 PHỤ LỤC Khai báo biến cho việc điều khiển chip PT2315 //Khai bao bien cho viec dieu khien PT2315 /*Dia chi thanh ghi VOLUME, TREBLE, BASS, LOUDNESSFUNCTION -------------------------------------------------------- MSB LSB 7 6 5 4 3 2 1 0 -------------------------------------------------------- Volume Control : 0 0 B2 B1 B0 A2 A1 A0 Speaker ATT L : 1 0 0 B1 B0 A2 A1 A0 Speaker ATT R : 1 0 1 B1 B0 A2 A1 A0 Bass Control : 0 1 1 0 C3 C2 C1 C0 Treble Control : 0 1 1 1 C3 C2 C1 C0 Loundness Control: 0 1 * * L * * * L: 0=ON, 1=OFF Doi voi thanh ghi Speaker ATT L va Speaker ATT R: De gia tri lon nhat, khong tac dong.*/ const byte BASS_ADDR = 0x60; const byte TREBLE_ADDR = 0x70; byte loudnessFunction = 0x44; //Mac dinh la loudnessFunction OFF const byte TREBBLE_BASS_ARRAY[16]={0x00,0x01,0x02,0x03, 0x04,0x05,0x06,0x07, 0x0f,0x0e,0x0d,0x0c,0x0b,0x0a, 0x09,0x08}; /*Khai bao 2 hang SPEAKER_R_MAX, SPEAKER_L_MAX Thanh ghi SPEAKER ATTENUATORS nhan 2 gia tri tren ung voi viec am thanh ra 2 loa trai va loa phai khong bi suy hao (Dua theo datasheet. Hien tai trong do an nay chua co dieu khien tang giam cho SPEAKER ATTENUATORS. Do an dung lai o viec dieu chinh volum, treble, bass, loudnessfunction. Viec dieu khien SPEAKER ATTENUATORS danh cho huong phat trien do an*/ const byte SPEAKER_R_MAX = 0xa0; const byte SPEAKER_L_MAX = 0x80; //Khai bao bien trung gian /*Khi nut nhan duoc tac dong thi bien mode, volume, treble, bass se duoc xu ly. Bien volume co gia tri duoc gioi han tu 0 toi 63 o thap phan va tuong ung o dang nhi phan la 0000 0000 toi 0011 1111. Ma thanh ghi VOLUME cua PT2315 nhan gia tri 0000 0000 la gia tri ma am thanh tong duoc khuech dai lon nhat, nen phai lay (63-volume) de xuat ra thanh ghi VOLUME cua PT2315. BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP- Y SINH 127 PHỤ LỤC Bien treble, bass la 2 bien trung gian de tro toi mang const byte TREBBLE_BASS_ARRAY[16]={0x00, 0x01,0x02, 0x03, 0x04,0x05, 0x06, 0x07, 0x0f,0x0e, 0x0d, 0x0c,0x0b, 0x0a, 0x09, 0x08}; bien treble, bass se nhan gia tri ban dau la 7. Gioi han cho 2 bien nay tu 0 toi 15 tuong ung voi ma nhi phan la 0000 0000 toi 0000 1111. Goi ra thanh ghi TREBLE, BASS cua PT2315 voi cau lenh Wire.write(TREBLE_ADDR | TREBBLE_BASS_ARRAY[treble]); Wire.write(BASS_ADDR | TREBBLE_BASS_ARRAY[bass]); Dia chi cua hai thanh ghi TREBLE, BASS cua PT2315 la: Bass Control : 0 1 1 0 C3 C2 C1 C0 Treble Control : 0 1 1 1 C3 C2 C1 C0 Nen TREBLE_ADDR=0x70 BASS_ADDR =0x60 */ byte mode = 0; byte volume = 32; byte treble = 7; byte bass = 7; const byte DELAY_CHONGDOI = 50; const unsigned int DELAY_THOIGIAN_NHANGIU = 200; Chương trình con điều khiển nút mode /*Chuong trinh viet cho nut nhan mode. Khi nhan nut mode thi bien mode se thay doi gia tri tu 0 den 3 tuong ung voi 4 che do dieu chinh gom dieu chinh volume, treble, bass, functionloudness*/ void nutMode() { if (digitalRead(BTN_MODE) == 1 { delay(DELAY_CHONGDOI); if (digitalRead(BTN_MODE) == 1) { mode++; if(mode>3) mode=0;//gioi han cho bien mode inRaManHinhLCD();/*in gia tri mode ra man hinh lcd*/ while(digitalRead(BTN_MODE) == 1){} } } } BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP- Y SINH 128 PHỤ LỤC Chương trình con điều khiển nút up void nutUp() { if (digitalRead(BTN_UP) == 1) { delay(DELAY_CHONGDOI); if (digitalRead(BTN_UP) == 1) { int demThoiGianNhanUp = 0; do { /*Khai bao bien dem so lan delay nhan nut up, vong lap dowhile(digitalRead(BTN_UP) == 1); nham muc dich khi thoi gian nhan nut up nho hon 200*10 ms thi giam 1 don vi/200ms,con khi thoi gian nhan nut up tu 200*10 ms thi giam 3 don vi/200ms.Con khi mode=3 va nut up duoc nhan thi bien loudnessFunction=0x40 de bat loudnessFunction*/ //Dem so lan delay 200ms delay(DELAY_THOIGIAN_NHANGIU); demThoiGianNhanUp++; if(demThoiGianNhanUp < 10) { tangGiaTriMotDonVi(); } else { tangGiaTriBaDonVi(); } //Gioi han bien vol, tre, bas gioiHanGiaTri(); /*Vi ham setupForPt2315 va inRaManHinhLCD nam trong while, nen vua tang bien vua cap nhat gia tri cho pt2315 va LCD ngay lap tuc*/ inRaManHinhLCD(); setupForPt2315(); }while(digitalRead(BTN_UP) == 1); } } } BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP- Y SINH 129 PHỤ LỤC Chương trình con điều khiển nút down void nutDown() { if (digitalRead(BTN_DW) == 1) { delay(DELAY_CHONGDOI); if (digitalRead(BTN_DW) == 1) { int demThoiGianNhanDown = 0; do { /*Khai bao bien dem so lan delay nhan nut up, vong lap dowhile(digitalRead(BTN_UP) == 1); nham muc dich khi thoi gian nhan nut up nho hon 200*10 ms thi giam 1 don vi/200ms,con khi thoi gian nhan nut up tu 200*10 ms thi giam 3 don vi/200ms.Con khi mode=3 va nut up duoc nhan thi bien loudnessFunction=0x40 de bat loudnessFunction*/ //Dem so lan delay 200ms delay(DELAY_THOIGIAN_NHANGIU); demThoiGianNhanDown++; if(demThoiGianNhanDown < 10) { giamGiaTriMotDonVi(); } else { giamGiaTriBaDonVi(); } //Gioi han bien vol, tre, bas gioiHanGiaTri(); /*Vi ham setupForPt2315 va inRaManHinhLCD nam trong while, nen vua tang bien vua cap nhat gia tri cho pt2315 va LCD ngay lap tuc*/ inRaManHinhLCD(); setupForPt2315(); }while(digitalRead(BTN_DW) == 1); } } } BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP- Y SINH 130 PHỤ LỤC Chương trình con giới hạn giá trị cho biến volume, treble, bass void gioiHanGiaTri() { //Gioi han duoi bien vol, tre, bas if(volume<0) volume=0; if(treble<0) treble=0; if(bass<0) bass=0; //Gioi han tren bien vol,tre,bas if(volume>63) volume=63; if(treble>15) treble=15; if(bass>15) bass=15; } Các hươngc trình con tăng hoặc giảm biến volume, treble, bass và thay đổi biến loudnessFunction. void tangGiaTriMotDonVi() { if(mode==0) volume++; else if(mode==1) treble++; else if(mode==2) bass++; else loudnessFunction=0x40; } void tangGiaTriBaDonVi() { if(mode==0) volume+=3; else if(mode==1) treble+=3; else if(mode==2) bass+=3; else loudnessFunction=0x40; } void giamGiaTriMotDonVi() { if(mode==0) volume--; else if(mode==1) treble--; else if(mode==2) bass--; else loudnessFunction=0x44; } void giamGiaTriBaDonVi() { if(mode==0) volume-=3; else if(mode==1) treble-=3; else if(mode==2) bass-=3; else loudnessFunction=0x44; } BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP- Y SINH 131 PHỤ LỤC Chương trình con điều khiển chip PT2315 void setupForPt2315() { //Bat dau viec truyen du lieu toi pt2315 Wire.beginTransmission(0x40); /*Goi byte cho thanh ghi VOLUME cua PT2315 (2 bit cao = 00)*/ Wire.write((byte)(63-volume)); /*Bien treble, bass la 2 bien trung gian de tro toi mang const byte TREBBLE_BASS_ARRAY[16]={0x00,0x01,0x02,0x03, 0x04,0x05,0x06,0x07,0x0f,0x0e,0x0d,0x0c,0x0b,0x0a,0x09, 0x08}; Dia chi cua hai thanh ghi TREBLE, BASS cua PT2315 la: Bass Control : 0 1 1 0 C3 C2 C1 C0 Treble Control : 0 1 1 1 C3 C2 C1 C0 Nen TREBLE_ADDR=0x70 BASS_ADDR =0x60 Goi ra thanh ghi TREBLE, BASS cua PT2315 voi cau lenh Wire.write(TREBLE_ADDR | TREBBLE_BASS_ARRAY[treble]); Wire.write(BASS_ADDR | TREBBLE_BASS_ARRAY[bass]); */ Wire.write(TREBLE_ADDR | TREBBLE_BASS_ARRAY[treble]); Wire.write(BASS_ADDR | TREBBLE_BASS_ARRAY[bass]); /*Thanh ghi LOUDNESSFUNCTION: LOUDNESSFUNCTION : 0 1 0 0 * L * * L=1: OFF LOUDNESSFUNCTION L=0: ON LOUDNESSFUNCTION * : don't care (0, 1 deu duoc) Nen loudnessFunction=0x40 de ON LOUDNESSFUNCTION loudnessFunction=0x44 de OFF LOUDNESSFUNCTION*/ Wire.write(loudnessFunction); /*Viec dieu khien SPEAKER ATTENUATORS danh cho huong phat trien do an*/ Wire.write(SPEAKER_R_MAX); Wire.write(SPEAKER_L_MAX); /*Ket thuc viec truyen du lieu tu Arduino sang PT2315*/ Wire.endTransmission(); } BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP- Y SINH 132 PHỤ LỤC Chương trình con điều khiển màn hình LCD void inRaManHinhLCD() { /*LCD hang tren hien thi chuoi "DATN--DTVT"*/ lcd.setCursor(3,0);//Vi tri bat dau la cot 3, hang 0 for(byte i=0;i<CHUOI_HANG_TREN.length();i++) { lcd.print(CHUOI_HANG_TREN[i]); } /*LCD hang duoi hien thi chuoi "Vol: " hoac "Treble: " hoac "Bass: " hoac "Loudness:" tuong ung voi gia tri mode la 0 hoac 1 hoac 2 hoac 3 LCD hien thi 4 chuoi che do mode: Che do chinh Volume: Che do chinh Treble: Che do chinh Bass: Che do chinh Loudnessfunction:*/ lcd.setCursor(0,1); //Vi tri bat dau la cot 0, hang 1 for(byte i=0;i<CHUOI_MODE[mode].length();i++) { lcd.print(CHUOI_MODE[mode][i]); } /*LCD hang duoi hien thi chuoi "dB ", " ON ", " OFF"*/ if(mode==0 || mode==1 || mode==2) { /*LCD hang duoi hien thi chuoi "dB " o che do chinh volume, treble, bass tuong ung voi gia tri mode la 0 hoac 1 hoac 2 LCD hien thi 4 chuoi che do mode: Che do chinh Volume: Che do chinh Treble: Che do chinh Bass:*/ lcd.setCursor(13,1); //Vi tri bat dau la cot 13, hang 1 CHUOI_DB="dB "; for(byte i=0;i<CHUOI_DB.length();i++) { lcd.print(CHUOI_DB[i]); } } BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP- Y SINH 133 PHỤ LỤC else {/*LCD hien thi o che do dieu chinh LOUDNESSFUNCTION*/ /*Vi tri bat dau la cot 10, hang 1. CHUOI_DB co 3 khoang trang nham muc dich xoa di ki tu o che do truoc do*/ lcd.setCursor(10,1); if(loudnessFunction==0x40) CHUOI_DB=" ON "; else CHUOI_DB=" OFF"; } /*LCD hien thi gia tri Volume, Treble, Bass theo gia tri hien thi*/ if(mode==0) //Hien thi Volume len lcd { lcd.setCursor(7,1);//Vi tri bat dau la cot 7, hang 1. if(((63-volume)*(-1.25))>-10) { lcd.print(" "); for(byte i=0;i<String((63-volume)*(-1.25)).length();i++) { lcd.print(String((63-volume)*(-1.25))[i]); } } else{ for(byte i=0;i<String((63-volume)*(-1.25)).length();i++) { lcd.print(String((63-volume)*(-1.25))[i]); } } } if(mode==1) { lcd.setCursor(10,1);/*Vi tri bat dau la cot 10, hang 1.*/ for(byte i=0;i<CHUOI_TREBLE_BASS[treble].length();i++) { lcd.print(CHUOI_TREBLE_BASS[treble][i]); } } if(mode==2) { lcd.setCursor(10,1);//Vi tri bat dau la cot10,h1 lcd.setCursor(10,1);//COT,HANG for(byte i=0;i<CHUOI_TREBLE_BASS[bass].length();i++) { lcd.print(CHUOI_TREBLE_BASS[bass][i]); } } } //Kết thúc hàm inRaManHinhLCD() BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP- Y SINH 134 PHỤ LỤC Chương trình khởi tạo ban đầu cho Arduino Uno R3 //Chuong trinh setup de khoi tao gia tri ban dau void setup() { /*Arduino tham gia vao bus I2C. Khong co gia tri truyen vao ham Wire.begin(), thi Arduino la Master*/ Wire.begin(); /*Cai dat chan D5, D6, D7 la chan doc du lieu, va bat che do dien tro keo len cho 3 chan D5, D6, D7*/ pinMode(BTN_MODE, INPUT_PULLUP); pinMode(BTN_DW, INPUT_PULLUP); pinMode(BTN_UP, INPUT_PULLUP); //Nap gia tri ban dau cho pt2315 setupForPt2315(); // Khoi tao lcd va in gia tri ra gia tri ban dau lcd.init(); lcd.backlight(); lcd.clear();delay(20); inRaManHinhLCD(); } Chương trình chính //Vong lap tuan hoan void loop() { //Quet nut nhan Mode nutMode(); //Quet nut nhan va Up nutUp(); //Quet nut nhan Down nutDown(); } BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP- Y SINH 135

Các file đính kèm theo tài liệu này:

  • pdfdo_an_thiet_ke_va_thi_cong_he_thong_audio_ki_thuat_so.pdf
Tài liệu liên quan