Ngày nay cùng với sự phát triển vược bậc của khoa học kỹ thuật thì điện tử kết hợp với công nghệ thông tin là một trong những lĩnh vực có nhiều đóng góp thiết thực nhất để phục vụ cu
Trang 1BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP– Y SINH o0o
NHIỆM VỤ ĐỒ ÁN TỐT NGHIỆP
Họ tên sinh viên: Nguyễn Tài Tụ MSSV: 14141363
Chuyên ngành: Kỹ thuật Điện tử - Truyền thông Mã ngành: 41
I TÊN ĐỀ TÀI: QUẢN LÝ DỮ LIỆU BỆNH NHÂN TRONG BỆNH VIỆN SỬ
DỤNG CÔNG NGHỆ RFID
II NHIỆM VỤ
1 Các số liệu ban đầu:
− Nguyễn Văn Hiệp, Giáo trình công nghệ nhận dạng bằng song vô tuyến, Đại học SPKT
Tp.HCM 2014
− Phạm Quang Huy, Lê Cảnh Trung, Lập trình điều khiển Arduino, Đại học SPKT
Tp.HCM
− Lê Trung Hiếu, Nguyễn Thị Minh Thi, Giáo trình lập trình Windows Form với C#.Net,
Đại học Duy Tân 2012
2 Nội dung thực hiện:
− Thu thập dữ liệu quy trình quản lí giữ liệu bệnh nhân hiện nay
− Lựa chọn các thiết bị trong việc thiết kế mô hình phần cứng
− Thiết kế phần cứng
− Viết phần mềm
− Đánh giá kết quả thực hiện
III NGÀY GIAO NHIỆM VỤ: 03/10/2018
IV NGÀY HOÀN THÀNH NHIỆM VỤ: 01/01/2019
V HỌ VÀ TÊN CÁN BỘ HƯỚNG DẪN: ThS Nguyễn Thanh Nghĩa
CÁN BỘ HƯỚNG DẪN BM.ĐIỆN TỬ CÔNG NGHIỆP – Y SINH
Trang 2BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH o0o
Tìm hiểu về SQL phpmyadmin và tạo cơ sở dữ
liệu viết các hàm truy xuất
26/11/2018 -
01/12/2018
Kết nối form máy tính với cơ sở dữ liệu Bắt đầu
viết luận văn
Trang 3Đề tài này là do tôi tự thực hiện dựa vào một số tài liệu trước đó và không sao chép từ tài liệu hay công trình đã có trước đó
Người thực hiện Nguyễn Tài Tụ
Trang 4Em xin gửi lời cảm ơn đến ThS Nguyễn Thanh Nghĩa đã trực tiếp hướng dẫn, góp ý, chia sẻ nhiều kinh nghiệm quý báu cũng như tận tình giúp đỡ và tạo điều kiện để chúng em hoàn thành tốt đề tài này
Em xin gửi lời cảm ơn đến các thầy cô trong Khoa Điện – Điện Tử đã tạo điều kiện thuận lợi cho chúng em hoàn thành đề tài
Em cũng gửi lời cám ơn đến các bạn chung nhóm Giáo Viên hướng dẫn, đã chia sẻ kinh nghiệm, trao đổi những kiến thức và những kinh nghiệm quý báu trong quá trình thực hiện
đề tài
Xin chân thành cảm ơn!
Người thực hiện đề tài Bàn Văn Huy Nguyễn Tài Tụ
Trang 5NHIỆM VỤ ĐỒ ÁN TỐT NGHIỆP i
LỊCH TRÌNH THỰC HIỆN ĐỒ ÁN TỐT NGHIỆP ii
LỜI CẢM ƠN iv
MỤC LỤC v
LIỆT KÊ HÌNH VẼ vii
LIỆT KÊ BẢNG ix
TÓM TẮT x
Chương 1 TỔNG QUAN 1
1.1 ĐẶT VẤN ĐỀ 1
1.2 MỤC TIÊU 1
1.3 NỘI DUNG NGHIÊN CỨU 1
1.4 GIỚI HẠN 2
1.5 BỐ CỤC 2
Chương 2 CƠ SỞ LÍ THUYẾT 3
2.1 TỔNG QUAN VỀ QUẢN LÍ DỮ LIỆU BỆNH NHÂN TRONG BỆNH VIỆN 3 2.1.1 Phương pháp quản lí dữ liệu bệnh nhân 3
2.1.2 Nhu cầu trong việc quản lí dữ liệu bệnh nhân tại các bệnh viện 3
2.2 GIỚI THIỆU VỀ HỆ THỐNG RFID 4
2.2.1 Giới thiệu Công Nghệ RFID 4
2.2.2 Các Thành Phần Hệ Thống RFID 5
2.2.3 Ưu và nhược điểm của hệ thống RFID 6
2.3 GIỚI THIỆU VỀ PHẦN MỀM PHPMYADMIN 7
2.3.1 Giới thiệu về phpMyAdmin 7
2.3.2 Giới thiệu về cơ sở dữ liệu MySQL trong phpMyAdmin 7
2.4 GIỚI THIỆU VỀ PHẦN CỨNG 9
2.4.1 Module RFID RC522 9
2.4.2 Thẻ RFID 11
2.4.3 Bộ Vi Xử Lí Trung Tâm Arduino UNO 13
2.4.4 LCD 16x02 14
2.4.5 Module I2C LCD 15
2.4.6 Chuẩn giao tiếp I2C 16
2.5 GIỚI THIỆU VỀ PHẦN MỀM LẬP TRÌNH CHO VI ĐIỀU KHIỂN 17
Trang 63.1 TÍNH TOÁN VÀ THIẾT KẾ PHẦN CỨNG 22
3.1.1 Thiết kế sơ đồ khối 22
3.1.2 Tính toán và thiết kế mạch 23
3.1.3 Sơ đồ nguyên lý của toàn mạch 27
Chương 4 THI CÔNG HỆ THỐNG VÀ KẾT QUẢ 28
4.1 THI CÔNG PHẦN CỨNG 28
4.1.1 Thi công board mạch 28
4.1.2 Đóng gói và thi công bộ điều khiển 31
4.1.3 Thi công mô hình 31
4.1.4 Lập trình cho phần cứng 32
4.2 LẬP TRÌNH VIẾT PHẦN MỀM 33
4.2.1 Lưu đồ và giải thuật C# 33
4.2.2 Thực hiện viết phần mềm 34
4.3 KẾT QUẢ THỰC HIỆN 37
4.3.1 Kết quả thi công phần cứng 37
4.3.2 Hình ảnh mô phỏng 37
Chương 5 KẾT LUẬN VÀ HƯỚNG PHÁT TRIỂN 41
5.1 KẾT LUẬN 41
5.2 HƯỚNG PHÁT TRIỂN 42
5.3 HƯỚNG DẪN SỬ DỤNG PHẦN MỀM 42
TÀI LIỆU THAM KHẢO 47
PHỤ LỤC 48
Trang 7Hình 2.1: Một số thẻ RFID thông dụng hiện nay 5
Hình 2.2: Giao tiếp giữa thẻ Tag và đầu đọc 5
Hình 2.3: Giao diện đăng nhập phpMyAdmin 7
Hình 2.4: Giao diện đăng nhập MySQL 8
Hình 2.5: Tạo các trường dữ liệu mới 8
Hình 2.6: Đầu đọc RFID HF 9
Hình 2.7: Đầu đọc RFID UHF 9
Hình 2.8: Đầu đọc/ghi RFID HF 10
Hình 2.9: Module đọc thẻ MFRC522 10
Hình 2.10: Thẻ RFID 12
Hình 2.11: Board Arduino UNO 13
Hình 2.12: Màn Hình LCD 16x02 14
Hình 2.13: Module I2C LCD 15
Hình 2.14: Nguyên Lý hoạt động của chuẩn giao tiếp I2C 16
Hình 2.15: Hướng Dẫn cách Download phần mềm arduino 18
Hình 2.16 Hướng dẫn tải phần mềm Arduino IDE 18
Hình 2.17: Giao diện khi cài đặt xong 19
Hình 2.18: Hướng dẫn tạo project mới 20
Hình 2.19: Chạy thử chương trình mẫu 21
Hình 3.1: Sơ đồ khối của hệ thống 22
Hình 3.2: Sơ đồ nguyên lí mạch nguồn 24
Hình 3.3: Dạng sóng sau khi chỉnh lưu 24
Hình 3.4: Sơ đồ nguyên lý kết nối module RFID với vi điều khiển 26
Hình 3.5: LCD 16x02 kết hợp với module I2C 26
Hình 3.6: Sơ đồ nguyên lý toàn hệ thống 27
Hình 4.1: Sơ đồ bố trí linh kiện của mạch 28
Hình 4.2: Mạch in sau khi thiết kế 29
Hình 4.3: Kiểm tra kết nối với Arduino 30
Hình 4.4: LCD khi kết nối với Arduino 31
Hình 4.5: Mô hình hoàn chỉnh 31
Hình 4.6: Lưu đồ và giải thuật Arduino Uno 32
Hình 4.7: Lưu đồ và giải thuật C# 33
Hình 4.8: Đăng nhập C# trên Visual Studio 34
Hình 4.9: Giao diện lầm việc của C# trên Visual Studio 35
Hình 4.10: Giao diện đăng nhập sau khi nhập trình 36
Hình 4.11: Giao diện màn hình chính lập trình C# trên Window Form 36
Hình 4.12: Giao diện đăng nhập vào hệ thống 37
Hình 4.13: Khi đọc mã thẻ thành công 37
Hình 4.14: Giao diện đăng nhập vào hệ thống 38
Hình 4.15: Giao diện phần mềm sau khi đăng nhập 38
Trang 8Hình 4.18: Tra và xuất thông tin đơn thuốc của bệnh nhân 40
Hình 5.1: Giao diện khi đăng nhập 42
Hình 5.2: Giao diện sau khi đăng nhập thành công 43
Hình 5.3: Giao diện đăng ký tài khoản người dùng 44
Hình 5.4: Tra cứu bằng ngày vào khám 45
Hình 5.5 : Giao diện tra cứu thông tin bệnh nhân bằng mã thẻ của bệnh nhân 45
Hình 5.6: Giao diện thông tin đơn thuốc 46
Trang 9Bảng 2.1: Thông số kỹ thuật của LCD 16X02 15 Bảng 3.1: Thông số dòng điện và điện áp của các linh kiện trong mạch 23 Bảng 4.1: Bảng linh kiện sử dụng trong mạch 29
Trang 10Ngày nay cùng với sự phát triển vược bậc của khoa học kỹ thuật thì điện tử kết hợp với công nghệ thông tin là một trong những lĩnh vực có nhiều đóng góp thiết thực nhất để phục vụ cuộc sống của con người, một công cụ hỗ trợ đắc lực nhất trong công tác quản lí dữ liệu, bên cạnh đó trong lĩnh vực y tế cũng được áp dụng trong việc quản lí các thông tin liên quan đến các bệnh nhân như: các thông tin cá nhân, hồ sơ bệnh án, lịch sử khám bệnh
Nhưng sau khi nhóm đã đi tìm hiểu tại các bệnh viện hiện nay thì đa số việc áp dụng còn rất nhiều hạn chế vì vậy nhóm đã làm đề tài này với mong muốn để giải quyết vấn đề
về quản lí dữ liệu bệnh nhân để giúp giảm bớt thời gian cũng như chi phí cho công tác lưu trữ dữ liệu bệnh nhân
Nội dung chính của đề tài quản lý dữ liệu bệnh nhân trong bệnh viện sử dụng công nghệ RFID, bao gồm:
− Sử dụng board Arduino UNO làm vi điều khiển của khối điều khiển trung tâm
− Ứng dụng công nghệ RFID trong việc quản lí bệnh nhân
− Thêm, tra cứu thông tin bệnh nhân qua phần mềm máy tính
− Quản lí và lưu trữ thông tin bệnh nhân qua database
Trang 11Chương 1 TỔNG QUAN
1.1 ĐẶT VẤN ĐỀ
Trong thời đại khoa học công nghệ phát triển như vũ bão hiện nay, ngày càng có nhiều công nghệ mới được áp dụng vào thực tiễn Tại Việt Nam, trong những năm gần đây đã xuất hiện và ứng dụng rộng rãi một công nghệ mới, đó là RFID (Radio Frequency Identification- Nhận dạng tần số sóng vô tuyến) RFID nổi lên tại Việt Nam nhờ có sự hỗ trợ hữu hiệu từ công nghệ số và bán dẫn Dự báo trong vòng từ 3 đến 5 năm tới, một số lĩnh vực tiềm năng của RFID sẽ xuất hiện như thẻ thông minh (Smart card), chứng minh nhân dân, hộ chiếu điện tử (E-passport), ngành may mặc, lĩnh vực giày dép, đông lạnh, xuất khẩu nông sản, hệ thống giao thông công cộng, quản lý dữ liệu trong bệnh viện Với những tính năng ưu việt của mình, hiện nay công nghệ RFID đã và đang được triển khai ngày càng nhiều trong các ứng dụng của cuộc sống Với mục đích tìm hiểu phần nào công nghệ mới này để áp dụng vào lĩnh
vực y tế, nhóm đã thực hiện đồ án “QUẢN LÝ DỮ LIỆU BỆNH NHÂN TRONG
BỆNH VIỆN SỬ DỤNG CÔNG NGHỆ RFID”
Đề tài này ứng dụng những kiến thức lập trình về arduino, truyền số liệu, quản lý cơ
sở dữ liệu trên database để thiết kế một hệ thống sử dụng công nghệ RFID Dữ liệu
sẽ được quản lý trên một giao diện máy tính cho phép người sử dụng đọc và chỉnh sửa nội dung bên trong mỗi thẻ của mình quản lý bao gồm thời gian, ngày giờ bệnh nhân ra, vào viện, và các dữ liệu liên quan đến hồ sơ bệnh án
1.2 MỤC TIÊU
Tìm hiểu về cách quản lí bệnh nhân ở các bệnh viện Từ đó thiết kế mô hình phần cứng của hệ thống mô phỏng theo mô hình đã tìm hiểu Thiết kế giao diện quản lý bệnh nhân cho bệnh viện có thể truy xuất các thông tin như: hồ sơ bệnh án, các thông tin cơ bản, lịch sử khám bệnh Sau khi đã hoàn thành, đúc kết kiến thức, kinh nghiệm
để tìm hướng phát triển với mong muốn có thể áp dụng vào thực tế ở các bệnh viện
để thuận tiện và tiết kiệm thời gian cho cả bệnh nhân và đội ngũ y bác sĩ
1.3 NỘI DUNG NGHIÊN CỨU
− Nghiên cứu Arduino UNO và module RFID RF522
− Tìm hiểu ngôn ngữ C#, cơ sở dữ liệu SQL
Trang 12− Thiết kế giao diện, viết code để quản lí bệnh nhân
− Xây dựng CSDL cho hệ thống
− Thiết kế và thi công mô hình phần cứng của hệ thống
− Viết code cho vi điều khiển kết nối với các phần cứng
− Kiểm tra hiệu chỉnh
− Viết báo cáo
1.4 GIỚI HẠN
Do đây là đề tài nghiên cứu có giới hạn thời gian nhất định nên đề tài của nhóm
có một số giới hạn:
− Có thể tra cứu lưu trữ được các thông tin cơ bản của bệnh nhân
− Có thể thêm, xóa, chỉnh sửa, xuất và in các thông tin của bệnh nhân
1.5 BỐ CỤC
− Chương 1: Tổng quan
Đặt vấn đề, mục tiêu, nội dung nghiên cứu, giới hạn và bố cục đề tài
− Chương 2: Cơ sở lý thuyết
Trình bày về quy trình hoạt động của hệ thống Giới thiệu phần cứng và các phần mềm công cụ được sử dụng trong đề tài
− Chương 3: Tính toán và thiết kế
Giới thiệu về hệ thống, tính toán thiết kế phù hợp, sơ đồ nguyên lý, lưu đồ giải thuật, thi công hệ thống và viết phần mềm
− Chương 4: Thi công hệ thống và kết quả
Trình bày quá trình thi công mạch, kết quả đạt được
− Chương 5: kết luận và hướng phát triển
Trình bày nhận xét các kết quả đạt được từ mô hình, mức độ hoàn thiện đề tài và trình bày kết luận nêu hướng phát triển
− Chương 6: Tài liệu tham khảo và phụ lục
Tài liệu tham khảo và phụ lục
Trang 13Chương 2 CƠ SỞ LÍ THUYẾT
2.1 TỔNG QUAN VỀ QUẢN LÍ DỮ LIỆU BỆNH NHÂN TRONG BỆNH VIỆN
2.1.1 Phương pháp quản lí dữ liệu bệnh nhân
Ngày nay cùng với sự phát triển vược bậc của khoa học kỹ thuật thì điện tử kết hợp với công nghệ thông tin là một trong những lĩnh vực có nhiều đóng góp thiết thực nhất để phục vụ cuộc sống của con người, một công cụ hỗ trơ đắc lực nhất trong công tác quản lí dữ liệu, bên cạnh đó trong lĩnh vực y tế cũng được áp dụng trong việc quản
lí các thông tin liên quan đến bệnh nhân như: các thông tin cá nhân, hồ sơ bệnh án, lịch sử khám bệnh, nhưng sau khi tìm hiểu tại các bệnh viện hiện nay thì đa số việc
áp dụng còn rất nhiều hạn chế vì vậy nhóm đã làm đề tài với mong muốn để giải quyết vấn đề về quản lí dữ liệu bệnh nhân
2.1.2 Nhu cầu trong việc quản lí dữ liệu bệnh nhân tại các bệnh viện
Trong quá trình tìm hiểu tại nhiều nơi và xem nhiều tài liệu khác nhau, một bệnh viện có rất nhiều khoa như: khoa xét nghiệm, khoa sinh hóa, khoa thần kinh, khoa tai mũi họng Trong mỗi khoa còn có rất nhiều các phòng ban nhỏ nên lượng thông tin của bệnh nhân rất khó kiểm soát Trong nội dung của đề tài nhóm đã nghiên cứu khách quan làm đề tài để đồng bộ tất cả các dữ liệu của bệnh nhân lại để người dùng dễ dàng trong công tác quản lí và từ những thông tin đã tìm hiều trước đó đề tài sẽ có những yêu cầu sau:
− Phần mềm có chức năng thêm, xóa, chỉnh sửa các thông tin của bệnh nhân thông qua tài khoản của người dùng hoặc cho phép tạo tài khoản để đăng nhập
− Lưu trữ được thông tin bệnh nhân với số lượng lớn
− Đáp ứng và dễ dàng tìm kiếm tất cả các thông tin cơ bản của bệnh nhân
− Cho phép người dùng tìm kiếm thông tin bệnh nhân với mã thẻ đọc được của mỗi bệnh nhân Quản lý các thông tin cơ bản của bệnh nhân như: họ và tên, địa chỉ,
số điện thoại, ngày vào, ngày ra, và hồ sơ khám bệnh
− Quản lý và xuất hồ sơ của bệnh nhân theo mã thẻ, ngày vào hoặc cho từng đơn thuốc khác nhau của bệnh nhân
Trang 142.2 GIỚI THIỆU VỀ HỆ THỐNG RFID
2.2.1 Giới thiệu Công Nghệ RFID
Công nghệ RFID (Radio Frequency Identification) là công nghệ nhận dạng đối tượng bằng sóng vô tuyến, cho phép một thiết bị đọc có thể đọc thông tin chưa trong một thiết bị khác ở một khoảng cách gần mà không cần phải có một sự tiếp xúc vật
lý nào Một hệ thống RFID thường bao gồm 2 phần chính là thẻ tag (chip RFID chứa thông tin) và bộ đọc (reader) đọc các thông tin trên chip [1]
Kỹ thuật RFID sử dụng truyền thông không dây trong tải tần sóng vô tuyến để truyền dữ liệu từ các thẻ tag đến bộ đọc Bộ đọc dữ liệu của tag và gửi thông tin để
hệ thống để xử lý trên cơ sở dữ liệu [1]
Dạng đơn giản và phổ biến nhất được sử dụng hiện nay là hệ thống RFID bị động Trong đó bộ đọc truyền một tín hiệu tần số vô tuyến thông qua anten đến một con chip, sau đó bộ đọc sẽ nhận lại thông tin phản hồi từ chip và gửi đến máy tính để xử
lý thông tin Các con chip từ các thẻ tag này không cần nguồn nuôi, chúng sử dụng năng lượng phát ra từ tín hiệu được gửi bởi bộ đọc [1]
Thẻ RFID là thiết bị có thể lưu trữ và truyền dữ liệu về bộ đọc bằng sóng vô tuyến Trong đó các thẻ thường lưu trữ thông tin về các sản phẩm nào đó
Dữ liệu có thể là một số nhận dạng đơn giản được lưu trữ trong một thẻ chỉ đọc hoặc dữ liệu phức tạp hơn Các thẻ phức tạp hơn này có thể chứa được các dữ liệu về ngày sản xuất số serial, hoặc thậm chí một số loại đặc biệt còn chưa các cảm biến để theo dõi nhiệt độ trung bình hoặc các loại dữ liệu khác
Thẻ RFID gồm chip bán dẫn nhỏ (bộ nhớ của chip có thể chứa từ 96 đến 512 bit
dữ liệu, nhiều gấp 64 lần so với mã vạng) và anten được thu nhỏ trong một số hình thức đóng gói Vài thẻ RFID giống như những nhãn giấy và được ứng dụng để bỏ vào hộp và đóng gói
Một số khác được sản xuất thành các miếng da bao cổ tay Mỗi thẻ được lập trình với một nhận dạng duy nhất cho phép theo dõi không dây đối tượng hoặc con người đang gắn thẻ đó Khi thẻ đi vào vùng sóng điện từ, nó sẽ phát hiện ra tín hiệu kích hoạt từ đầu đọc và sẽ phát thông tin nhận dạng đến đầu đọc Đầu đọc giải mã dữ liệu được mã hóa trong chip (sóng vô tuyến phản xạ từ thẻ) và gửi vào hệ thống để xử lý
Trang 152.2.2 Các Thành Phần Hệ Thống RFID
Một hệ thống RFID bao gồm các thành phần sau:
− Reader: là thành phần bắt buộc, thường được tích hợp sẵn cả anten
− Thẻ tag: là thành phần bắt buộc với mọi hệ thống RFID
− Thiết bị xử lý: bao gồm các vi xử lý có khả năng nhận được mã tag được gửi về
từ reader, sau đó gửi lên hệ thống
Hình 2.2: Giao tiếp giữa thẻ Tag và đầu đọc Hình 2.1: Một số thẻ RFID thông dụng hiện nay
Trang 16− Ngoài ra các hệ thống lớn còn được kết nối với các máy tính, hạ tầng mạng để truyền nhận thông tin của thẻ tag, thực hiện các tác vụ như liên kết tài khoản, thông tin, tiền phí Cũng như có các cơ cấu chấp hành để thực thi các yêu cầu đặt ra với hệ thống
2.2.3 Ưu và nhược điểm của hệ thống RFID
➢ Ưu điểm
− Đọc với tốc độ cao mà không cần tiếp xúc vậy lý: nhiều đối tượng có thể được quét tại cùng một thời điểm, có thể lên đến 40 thẻ trong 3 giây làm giảm thời gian hoạt động tăng năng suất của hệ thống
− Khả năng đọc và ghi dữ liệu nhiều lần: một số thẻ cho phép đọc và ghi dữ liệu nhiều lần, từ đó làm giảm chi phí hoạt động của hệ thống, cũng như của người sử dụng
− Nhỏ gọn, bền: các thẻ RFID hoạt động khá tốt trong môi trường không thuận lợi (nóng ẩm, bụi bẩn )
− Một số thẻ RFID, đặc biệt là các thẻ thụ động không cần phải cung cấp nguồn
để có thể hoạt động, từ đó nâng cao tính tiện lợi của hệ thống
− Việc áp dụng công nghệ RFID vào các lĩnh vực của đời sống làm tăng năng suất lao động, đồng thời tự động hoát các quy trình, sản xuất, thay thế các hoạt động đòi hỏi việc phải lặp đi lặp lại với tần suất cao của con người, từ đó giảm thiểu, triệt tiêu những sai sót có thể xảy ra
− Kiểm kê với tốc độ cao mà không cần tiếp xúc: Nhiều đối tượng có thể được quét tại cùng một thời điểm, có thể lên đến 40 thẻ trong 1 giây Kết quả là thời gian
để đếm các đối tượng đã giảm thực sự
có thể xảy ra việc đọc chồng chéo lên nhau
− Giá thành của hệ thống RFID hiện nay vẫn còn khá cao, xét đến tính thực tế ở Việt Nam thì vẫn chưa thể ứng dụng rộng rãi trong mọi lĩnh vực
Trang 172.3 GIỚI THIỆU VỀ PHẦN MỀM PHPMYADMIN
2.3.1 Giới thiệu về phpMyAdmin
PhpMyAdmin là phần mềm mã nguồn mở được viết bằng ngôn ngữ PHP nhằm giúp người dùng (thường là các nhà quản trị cơ sở dữ liệu hay database administrator)
có thể quản lý cơ sở dữ liệu MySQL thông qua giao diện web thay vì sử dụng giao diện cửa sổ dòng lệnh (command line interface) Sử dụng phpMyAdmin người dùng
có thể thực hiện được nhiều tác vụ khác nhau như khi sử dụng cửa sổ dòng lệnh Các tác vụ này bao gồm việc tạo, cập nhật và xoá các cơ sở dữ liệu, các bảng, các trường,
dữ liệu trên bảng, phân quyền và quản lý người dùng phpMyAdmin là một công cụ hoàn hảo để duyệt cơ sở dữ thể được coi là một công cụ quản trị đầy đủ tính năng
2.3.2 Giới thiệu về cơ sở dữ liệu MySQL trong phpMyAdmin
➢ Giới thiệu
SQL là viết tắt của cụm từ Structure Query Language, tạm dịch là ngôn ngữ truy vấn có cấu trúc hay được gọi là Cơ sở dữ liệu Thông qua phpMyAdmin nó người dùng có thể quản lý cơ sở dữ liệu MySQL thông qua giao diện web phpMyAdmin
Hình 2.3: Giao diện đăng nhập phpMyAdmin
Trang 18online người sử dụng có thể thực hiện nhiều tác vụ khác nhau như cập nhập chỉnh sửa bảng, trường dữ liệu, phân quyền cho người dùng
Hướng dẫn tạo cơ sở dữ liệu và truy vấn
Trong giao diện đăng nhập MySQL ta chọn New để tạo một database có tên
timkiem trong cơ sở dữ liệu tìm kiếm ta chọn new để tạo các cơ sở dữ liệu Trong
Hình 2.4: Giao diện đăng nhập MySQL
Hình 2.5: Tạo các trường dữ liệu mới
Trang 19các cơ sở dữ liệu ta chọn “chèn” để điền các thông tin vào để chỉnh sửa thông tin ta chọn “thay đổi”
2.4 GIỚI THIỆU VỀ PHẦN CỨNG
2.4.1 Module RFID RC522
➢ Giới thiệu các loại đầu đọc RFID
Trên thị trường có rất nhiều loại đầu đọc thẻ RFID Nó đa dạng về kiểu, màu sắc, loại kết nối Sau đây là một số đầu đọc có trên thị trường:
Hình 2.6 trình bày loại đầu đọc ở dãy tần HF 13.56MHz Là loại đầu đọc có dây
và có thêm bộ driver đính kèm cho việc giao tiếp máy tính Thiết bị này chỉ có chức năng đọc dữ liệu từ thẻ mà không thể ghi dữ liệu
Hình 2.6: Đầu đọc RFID HF
Hình 2.7: Đầu đọc RFID UHF
Trang 20Hình 2.5 trình bày loại đầu đọc hoạt động ở dãy tần số UHF Là loại đầu đọc di động và chỉ cho chức năng đọc dữ liệu từ thẻ mà không thể ghi dữ liệu Đây cũng là loại có giá cao nhất trong các loại đầu đọc RFID trên thị trường
Hình 2.6 trình bày loại đầu đọc/ghi dữ liệu rẻ nhất trên thị trường Thiết bị hoạt động ở tần số 13.56MHz Cho phép ghi/ đọc dữ liệu lên thẻ cũng như tương thích kết nối với đa số vi xử lý trên thị trường Vì những thuận lợi mà thiết bị này mang đến nên nhóm nghiên cứu đã chọn module này làm thiết bị đọc RFID chính [3]
➢ Giới thiệu module MFRC522
Module MFRC522 là module đọc/ghi trong môi trường giao tiếp tại tần số 13.56MHz Module hỗ trợ đọc các chuẩn ISO/IEC 1443 A/MIFARE và NTAG Module MFRC522 hỗ trợ hầu hết các loại thẻ MF1xxS20, MF1xxS70 và MF1xxS50 Module còn hỗ trợ giao tiếp và cho phép tốc độ truyền lên tới 848 kBd trong cả hai chiều đối với thẻ MIFARE
➢ Chức năng chân và Thông số kỹ thuật
Hình 2.8: Đầu đọc/ghi RFID HF
Hình 2.9: Module đọc thẻ MFRC522
Trang 21− Chức năng chân:
+ SDA(CS): chân lựa chọn chip khi giao tiếp SPI (kích hoạt mức thấp)
+ SCK: chân xung trong chế độ SPI
+ MOSI (SDI): master data out - slave in trong chế độ giao tiếp SPI
+ MISO (SDO): master data in – slave out trong chế độ giao tiếp SPI
+ Khoảng cách hoạt động:0 ~60mm (mifare1 card)
+ Giao tiếp: SPI, I2C, UART
+ Tốc độ truyền dữ liệu: tối đa 10Mbit/s
+ Các loại Card RFID (tag) hỗ trợ: mifare1 S50, mifare1 S70, mifare UltraLight, mifare Pro, mifare Desfire
dữ liệu để thực thi một nhiệm vụ mà người sử dụng yêu cầu
➢ Kết nối module MFRC522 với Arduino
Để module MFRC522 có thể đọc/ghi dữ liệu lên thẻ tag cũng như giao tiếp dữ liệu với máy tính, ta cần kết nối module này với Arduino thông qua chuẩn giao tiếp SPI
2.4.2 Thẻ RFID
Hiện nay trên thị trường có rất nhiều loại thẻ RFID với nhiều kích thước và mẫu
mã khác nhau nhưng chúng đều có cấu tạo các phần cơ bản như nhau gồm 2 thành phần cơ bản: Chip lưu trữ một số thứ tự duy nhất, hoặc thông tin khác dựa trên loại
Trang 22thẻ và anten được gắn với vi mạch truyền thông tin từ chip đến bộ đọc, một anten được gắn với vi mạch truyền thông tin từ chip đến bộ đọc, một anten càng lớn
➢ Các loại thẻ RFID được chia làm 3 loại cơ bản và thông dụng là:
− Thẻ thụ động (Passive tag): Thẻ thụ động hay nhãn dán thụ động là thẻ không
có nguồn năng lượng Ngay khi mà dòng điện được gây ra bởi những tín hiệu sóng radio đi vào trong ăng-ten cung cấp đủ năng lượng cho mạch tích hợp CMOS (IC) trong thẻ, mạch bắt đầu hoạt động và thẻ truyền tín hiệu phản hồi lại Điều này có nghĩa là khi thẻ thụ động đi qua máy đọc, năng lượng của sóng radio phát từ máy đọc
sẽ cung cấp năng lượng cho chip và đánh thức nó để thu nhận thông tin mà nó lưu giữ Điều này có nghĩa là anten phải thiết kế để thu năng lượng từ cả hai tín hiệu đến
và tín hiệu phản lại truyền ra Chính vì nó không có nguồn nuôi bên trong thẻ, nên những thẻ thụ động và nhãn dán thụ động có kích thước khá nhỏ, vì thể nó cũng không
có khoảng cách đọc quá xa
− Thẻ bán chủ động (Semi-active tag): Thẻ bán chủ động RFID tương đối giống với thẻ thụ động, trừ phần có thêm một pin nhỏ Pin này cho phép IC của thẻ được cấp nguồn liên tục, giảm bớt sự cần thiết trong thiết kế anten thu năng lượng từ tín hiệu quay lại Các thẻ bán thụ động không chủ động truyền tín hiệu vô tuyến về đầu đọc, mà nó nằm im bảo tồn năng lượng cho tới khi nhận được tín hiệu vô tuyến từ đầu đọc, nó sẽ kích hoạt hệ thông hoạt động Thẻ bán chủ động RFID nhanh hơn
Hình 2.10: Thẻ RFID
Trang 23trong sự phản hồi lại vì vậy mạnh hơn trong việc đọc số truyền so với thẻ chủ động
Do đó khoảng cách đọc của nó cũng xa hơn so với thẻ thụ động
− Thẻ chủ động (Active tag): Đây là loại thẻ khác so với hai loại trên, thẻ chủ động RFID có nguồn năng lượng trong chính bản thân, được sử dụng để cung cấp nguồn cho tất các các IC và phát ra tín hiệu Chúng thường được gọi là đèn hiệu bởi vì chúng phát các tín hiệu mà chúng nhận được Thẻ chủ động có vùng hoạt động rộng hơn, có thể lên tới vài chục mét, trong khi bộ nhớ của nó cũng lớn hơn, cho phép lưu trữ và truyền nhiều dữ liệu hơn
Trong khuôn khổ đề tài này sử dụng thẻ thụ động (Passive tag)
2.4.3 Bộ Vi Xử Lí Trung Tâm Arduino UNO
➢ Giới thiệu
Arduino là dự án nguồn mở, làm việc dựa trên bo mạch điện tử bao gồm một vi điều khiển, các đầu vào/đầu ra, một ngôn ngữ lập trình và một IDE (trình soạn thảo trong môi trường phát triển tích hợp) Arduino là một công cụ để thực hiện các ứng dụng tương tác độc lập hoặc có thể được kết nối với phần mềm trên máy tính (chẳng hạn như là Flash, Max/MSP…)
Arduino UNO R3 là dòng mạch phổ biến nhất trong các dòng mạch Arduino, phiên bản R3 là phiên bản mới nhất, có độ chính xác và độ bền cao hơn rất nhiều so với Arduino UNO phiên bản cũ Arduino UNO R3 có thể sử dụng 3 vi điều khiển họ 8bit AVR là Atmega8, Atmega168, Atmega328 Bộ điều khiển này có thể điều khiển led đơn, điều khiển động cơ, xử lí các tín hiệu, thu thập dữ liệu từ cảm biến để hiển thị lên màn hình LCD và còn rất nhiều ứng dụng khác mà Arduino có thể xử lý [4]
Hình 2.11: Board Arduino UNO
Trang 24➢ Thông số kỹ thuật
Các thông số kĩ thuật chính:
− Sử dụng vi điều khiển Atmega328 họ 8 bit
− Có 14 chân I/O Digital Trong đó có 6 chân có thể được sử dụng là ngõ ra cấp xung PWM
− Có 6 ngõ ra Analog với độ phân giải 10 bit
− Điện áp hoạt động là 5Vdc được cấp thông qua cổng USB
− Điện áp khuyên dùng là từ 7V đến 12V
− Điện áp vào giới hạn từ 6V đến 20V
− Bộ nhớ Flash: 32kB với 0,5kB được dùng cho Bootloader
− SRAM: 2kB
Arduino UNO R3 có thể được cấp nguồn 5V thông qua cổng USB hoặc cấp nguồn ngoài với điện áp khuyên dùng là 7V đến12V và giới hạn là 6V đến 20V Thông thường nếu không cấp nguồn bằng cáp USB thì nên cấp nguồn bằng pin 9V Bởi vì nếu cấp nguồn vượt quá ngưỡng giới hạn trên thì Arduino UNO sẽ dễ dàng bị hỏng
Vi điều khiển Atmega328 tiêu chuẩn cung cấp cho người dùng các thông số sau:
− 32KB bộ nhớ Flash: những câu lệnh được lập trình sẽ được lưu trữ trong bộ nhớ Flash của vi điều khiển Thường sẽ có vài KB được sử dụng cho Bootlader
− 2KB cho SRAM: Giá trị các biến được khai báo khi lập trình sẽ lưu ở đây Trong chương trình khai báo càng nhiều biến thì càng cần nhiều bộ nhớ RAM
− 1KB cho EEPROM: là nơi có thể đọc và ghi dữ liệu vào mà không lo bị xóa khi mất điện giống như dữ liệu trên SRAM
2.4.4 LCD 16x02
➢ Giới thiệu
LCD là một thiết bị được sử dụng rất nhiều trong các ứng dụng của vi điều khiển LCD có nhiều ưu điểm hơn các dạng hiển thị khác như: có khả năng hiển thị đa dạng nhiều ký tự, các ký tự rất trực quan (gồm chữ, số, ký tự để đồ họa), dễ dàng ứng dụng
Hình 2.12: Màn Hình LCD 16x02
Trang 25theo nhiều giao thức giao tiếp khác nhau, ít chiếm tài nguyên hệ thống và giá thành hợp lý LCD có nhiều loại về số chân nhưng chủ yếu là hai loại 14 chân và 16 chân Điểm khác nhau giữa hai loại này là 16 chân sẽ có thêm chân nguồn cho đèn nền, còn các chân còn lại không thay đổi [2]
➢ Thông số kỹ thuật
2.4.5 Module I2C LCD
2 VDD Nguồn Chân cấp nguồn cho LCD
3 VCC Điện áp Chân cho phép điều khiển sự tương phản
5 RW InPut Chân để chọn chế độ đọc/ghi dữ liệu:
− Nối mức “0” để LCD hoạt động ở chế độ ghi
− Nối mức “1” để LCD hoạt động ở chế độ đọc
7-14 DB0-DB7 I/O Chân dữ liệu có 2 chế độ hoạt động:
− Chế độ 8 bit: dữ liệu truyền trên 8 đường
− Chế độ 4 bit: dữ liệu truyền trên đường D4 – D7
Bảng 2.1: Thông số kỹ thuật của LCD 16X02
Hình 2.13: Module I2C LCD
Trang 26Module I2C LCD là module tích hợp IC PCF8574 cho phép mở rộng chân trong giao tiếp I2C Để sử dụng các loại LCD có driver là HD44780 thì cần ít nhất 7 chân giao tiếp giữa LCD và MCU Nhưng trong một số dự án sử dụng MCU có số chân hạn chế thì việc kết nối với LCD làm mất rất nhiều chân kết nối Vì vậy module này
ra đời cho phép giao tiếp với LCD thông qua hai chân SDA và SCL
2.4.6 Chuẩn giao tiếp I2C
➢ Giới thiệu
I2C là chuẩn giao tiếp nối tiếp hai dây được phát triển bởi hãng Phillips Đây là đường giao tiếp giữa các IC với nhau Chuẩn giao tiếp này được sử dụng rộng rãi trên toàn thế giới và nó trở thành một chuẩn công nghiệp cho các giao tiếp điều khiển Đặc điểm của chuẩn I2C là sử dụng hai dây SDA và SCL SDA là đường truyền
dữ liệu, SCL là đường truyền xung đồng hồ để động bộ Mỗi thiết bị sử dụng chuẩn I2C đều có địa chỉ giao tiếp, nó cho phép duy trì mối quan hệ chủ - tớ trong suốt thời gian kết nối
Lúc này giao tiếp giữa thiết bị chủ và tớ trên đường dữ liệu bắt đầu Mỗi xung clock từ đường SCL sẽ có một bit dữ liệu được truyền Mức tín hiệu SDA chỉ thay đổi khi xung clock đang ở mức thấp và ổn định khi ở mức cao
Hình 2.14: Nguyên Lý hoạt động của chuẩn giao tiếp I2C
Trang 27Cả thiết bị chủ và thiết bị tớ đều có thể truyền hoặc nhận dữ liệu tùy thuộc vào quá trình truyền thông là đọc hay viết Bên truyền sẽ gửi dữ liệu 8 bit và bên nhận sẽ phản hồi với một bit ACK
Để kết thúc quá trình, thiết bị chủ tạo một điều kiện STOP: chuyển từ trạng thái cao sang thấp trên đường SDA trong khi đường SCL đang ở mức cao
2.5 GIỚI THIỆU VỀ PHẦN MỀM LẬP TRÌNH CHO VI ĐIỀU KHIỂN
➢ Môi trường lập trình Arduino IDE
Môi trường phát triển tích hợp Arduino là một nền tảng được viết bằng ngôn ngữ Java, nó được trích xuất từ IDE cho ngôn ngữ lập trình vi xử lý và những dự án khác Môi trường lập trình Arduino IDE gồm một trình soạn thảo với các tính năng như: cho phép làm nổi bật các cú pháp, các dấu ngoặc nối chương trình, tự đồng thụt đầu dòng, có khả năng biên dịch và tự tải lên các chương trình đã viết lên bo mạch với cú nhấp chuột Một chương trình hoặc mã viết cho Arduino được gọi là sketch
Arduino IDE cho phép viết chương trình bằng ngôn ngữ C Người sử dụng cần định nghĩa hai hàm để có thể thực hiện một chương trình là:
− Hàm setup (): Hàm này chỉ chạy một lần duy nhất khi bắt đầu chương trình Trong hàm này chủ yếu được dung để khởi tạo các thiết lập ban đầu
− Hàm loop (): Hàm này được gọi lặp lại liên tục Chương trình chỉ ngừng khi ngắt nguồn bo mạch Arduino
Môi trường lập trình Arduino IDE có thể chạy trên cả 3 nền tảng phổ biến nhất hiện nay là Windows, MacOS và Linux Do có tính chất mở nên môi trường lập trình này hoàn toàn miễn phí và có thể mở rộng thêm bởi người dùng có kinh nghiệm Ngôn ngữ lập trình có thể mở rộng thông qua các thư viện C/C++ Và do ngôn ngữ lập trình này dựa trên nền tảng ngôn ngữ C của AVR nên người dùng hoàn toàn
có thể nhúng thêm code viết bằng AVR C vào chương trình nếu muốn
Để cài đặt Arduino IDE, tùy vào từng hệ điều hành khác nhau mà ta sẽ tải các bản tương thích thông qua trang web chính thức: http://www.arduino.cc/ và tiến hành cài đặt từng bước theo hướng dẫn
➢ Cách cài đặt
Bước 1: Truy cập vào trang: https://www.arduino.cc/en/Main/Software
Ta tiến hành click vào mục Download sẽ có một cửa sổ hiện ra
Trang 28sau đó ta chọn mục Download the Arduino IDE chọn phần: Windows ZIP file for non admin install
Bước 2: Sau khi chọn sẽ được chuyển sang trang mới Tại trang mới, chọn JUST DOWNLOAD để bắt đầu tải Arduino IDE.Sau khi tải về và tiến hành cài đặt thành công ta lưu ý trước khi thực hiệp lập trình, ta phải lựa chọn loại board mà ta sử dụng, cũng như port được kết nối thông qua menu Tools Để tạo project mới, ta chọn menu File/New Sau đó tiến hành lập trình cho Arduino Trong quá trình viết chương trình, nếu cần thêm các thư viện thì vào menu Sketch/Include Library Sau khi đã viết xong, tiến hành biên dịch và kiểm tra lỗi bằng cách chọn menu Sketch/Verify/Compile Nếu
Hình 2.16 Hướng dẫn tải phần mềm Arduino IDE Hình 2.15: Hướng Dẫn cách Download phần mềm arduino
Trang 29trình biên dịch kiểm tra và không phát hiện lỗi, ta sẽ đổ chương trình xuống board bằng cách chọn menu Sketch/Upload
2.6 GIỚI THIỆU PHẦN MỀM LẬP TRÌNH CHO MÁY TÍNH
➢ Giới thiệu C# và phần mềm lập trình Visual Studio
C# là một ngôn ngữ lập trình hướng đối tượng (object-oriented) và có thể được
sử dụng với cho nhiều mục đích khác nhau (general purpose) C# là ngôn ngữ được phát triển bởi Microsoft và là ngôn ngữ được sử dụng phổ biến trong khuôn khổ NET framework (cùng được phát triển bởi Microsoft)
Visual Studio bao gồm một trình soạn thảo mã hỗ trợ IntelliSense cũng như cải tiến mã nguồn Trình gỡ lỗi tích hợp hoạt động được ở cả gỡ lỗi mức độ mã nguồn
và gỡ lỗi cấp độ máy Có nhiều công cụ tích hợp bao gồm mẫu thiết kế các hình thức xây dựng giao diện ứng dụng, thiết kế web, thiết kế lớp và thiết kế giản đồ cơ
sở dữ liệu
Hình 2.17: Giao diện khi cài đặt xong
Trang 30Sử dụng C# chúng ta có thể xây dựng được các ứng dụng phần mềm chạy trên
hệ điều hành Windows, các ứng dụng web service, các ứng dụng mobile, các ứng dụng về database và rất nhiều loại dụng khác nữa
Visual Studio hỗ trợ nhiều ngôn ngữ lập trình khác nhau và cho phép trình biên tập mã và gỡ lỗi để hỗ trợ hầu như mọi ngôn ngữ lập trình Các ngôn ngữ tích hợp gồm có C, C++, VB.NET (thông qua Visual Basic.Net), C# Hỗ trợ cho các ngôn ngữ khác như J++/J#, Python và Ruby thông qua dịch vụ cài đặt riêng rẽ Nó cũng
Trang 31Sau đó, chương trình sẽ xuất hiện giao diện cho phép chúng ta thiết kế giao diện bằng cách sử dụng các đối tượng có sẵn cùng với các thuộc tính tương ứng
Sau khi chọn các sự kiện xảy ra, sẽ mở ra giao diện cho phép chúng ta lập trình như sau:
Sau khi lập trình xong, chúng ta thực hiện kiểm tra lỗi, sau đó tiến hành Debug bằng cách chọn Start Debugging và chạy chương trình
Hình 2.19: Chạy thử chương trình mẫu
Trang 32Chương 3 TÍNH TOÁN VÀ THIẾT KẾ
Trong chương này, trình bày về phương án thiết kế hệ thống gồm các khối: đọc
dữ liệu, hiển thị, vi xử lý, máy tính để quản lí hệ thống
3.1 TÍNH TOÁN VÀ THIẾT KẾ PHẦN CỨNG
3.1.1 Thiết kế sơ đồ khối
➢ Chức năng từng khối:
− Khối vi điều khiển: đọc dữ liệu từ thẻ RFID Cấp nguồn cho khối đọc dữ liệu thẻ RFID, khối hiển thị Truyền nhận dữ liệu với máy tính
− Khối đọc dữ liệu thẻ: Đọc dữ liệu từ thẻ RFID
− Khối hiển thị: Hiển thị thông tin mã thẻ
− Máy tính: Nhận dữ liệu từ khối vi điều khiển đem so sánh với khối dữ liệu để truy xuất thông tin
Hình 3.1: Sơ đồ khối của hệ thống
ĐỌC DỮ
LIỆU TỪ
THẺ RFID
VI ĐIỀU KHIỂN
MÁY TÍNH
KHỐI HIỂN THỊ
CƠ SỞ DỮ LIỆU
KHỐI NGUỒN
Trang 33− Khối cơ sở dữ liệu: Lưu các thông tin người dùng
− Khối nguồn: Để cung cấp nguồn cho khối vi điều khiển
➢ Nguyên lý hoạt động
− Khi đăng nhập vào hệ thống và quẹt thẻ RFID, mã thẻ sẽ được khối vi điều khiển gửi lên phần mềm máy tính đồng thời mã cũng sẽ hiện ra màn hình LCD, từ phần mềm máy tính sẽ lấy mã thẻ đó truy xuất lên cơ sở dữ liệu để lấy thông tin về hiển thị lên máy tính
− Trong phần mềm máy tính chúng ta có thể thêm thẻ mới, xóa thẻ, thay thế sửa thông tin người dùng
3.1.2 Tính toán và thiết kế mạch
➢ Thiết kế khối nguồn
Các mức điện áp của các linh kiện sử dụng trong mạch là:
− Module RC522 hoạt động ở mức điện áp 3.3VDC, dòng tiêu thụ từ (13-26) mA
− Module Arduino UNO sử dụng ở mức điện áp 5-12VDC dòng định mức 500 (mA), dòng ra tối đa trên các chân GPIO là 40mA, từ chân VCC là 150 (mA)
− Module I2C sử dụng mức điện áp từ 2.7-5.5VDC dòng định mức 60 (mA)
Từ các thông tin đã được trình bày như trên dòng tổng của mạch sẽ được tính bằng công thức:
It= IRFID + II2C + ILed + IArduino = 586 (mA) ( 3.1)
Số lượng Mức điện
áp(V)
Tổng dòng điện(mA)
Trang 34Giải thích và lựa chọn linh kiện:
Nguồn 9VAC cấp cho cầu diode ta lấy từ máy biến áp sau khi chỉnh lưu
− Chọn mạch chỉnh lưu: Ta có thể chọn diode rời hoặc cầu diode tích hợp để làm nhiệm vụ biến đổi điện áp xoay chiều thành điện áp một chiều ở đây ta chọn cầu diode 2A
Điện áp một chiều chính là điện áp trung bình sau khi chỉnh lưu được xác định theo công thức:
(3.2)
Trong đó: Vd là điện áp trung bình sau khi chỉnh lưu
VAC là điện áp sau khi chỉnh lưu từ máy biến áp
− Chọn tụ lọc nguồn: Tụ điện có chức năng tích trữ năng lượng điện trong nó lên
nó làm mịn điện áp một chiều Nếu không có tụ điện thì điện áp ở hai đầu ra của mạch chỉnh lưu tuy đã là một chiều nhưng vẫn còn nhấp nhô, không bằng phẳng hay nhẵn nhụi như điện áp một chiều của pin hay ắc quy Để làm được điện áp một chiều ổn định thì người ta phải mắc thêm tụ điện này Khi chọn tụ điện cần quan tâm đến hai thông số đó là điện áp định mức và điện dung của nó Ta biết rằng điện áp đỉnh của
Hình 3.2: Sơ đồ nguyên lí mạch nguồn
Hình 3.3: Dạng sóng sau khi chỉnh lưu