You are on page 1of 40

BỘ CÔNG THƯƠNG

TRƯỜNG ĐẠI HỌC CÔNG NGHIỆP HÀ NỘI

--- ---

BÁO CÁO M ÔN HỌC ĐỒ ÁN ĐO LƯỜNG VÀ


ĐIỀU KHIỂN
ĐỀ TÀI: XÂY DỰNG VÀ THIẾT KẾ HỆ THỐNG ĐO
NỒNG ĐỘ CỒN

Sinh viên thực hiện: 1, Hoàng Quốc Bảo

Lớp/ Khoa: Cơ điện tử 4-k13/ Cơ khí

2, Nguyễn Tùng Dương

Lớp/ Khoa: Cơ điện tử 3-k13/ Cơ khí

3, Bùi Văn Hoàng

Lớp/ Khoa: Cơ điện tử 4-k13/ Cơ khí

Giáo viên hướng dẫn: TS. Nguyễn Văn Trường

Hà Nội - 2020
LỜI CẢM ƠN

Trong quá trình làm Đồ án môn học đo lường và điều khiển, chúng em đã gặp rất
nhiều khó khăn vì kiến thức thực tế còn yếu, kinh nghiệm thiết kế chưa có, cũng như
việc sử dụng phần mềm thiết kế chưa thuần thục. Tuy nhiên, chúng em luôn có được
sự hỗ trợ nhiệt tình của quý thầy cô trong khoa cơ khí, sự giúp đỡ nhiệt tình của bạn
bè, người thân đã tạo điều kiện cho chúng em hoàn thành nghiên cứu này.

Nay chúng em xin gởi lời cảm ơn sâu sắc tới:

- TS.Nguyễn Văn Trường đã tận tình chỉ bảo cho chúng em trong suốt quá trình
làm đồ án cùng với những kinh nghiệm thiết thực của thầy đã giúp chúng em hoàn
thành tốt đồ án này.

- Các anh chị, bạn bè khoa Điện – Điện tử đã giúp đỡ, hỗ trợ kỹ thuật về phần
điều khiển điện tử.

- Gia đình cũng như toàn bộ bạn bè, anh em đã hỗ trợ từ vật chất đến tinh thần
cho chúng em.

2
Mục lục
LỜI CẢM ƠN.....................................................................................................2

Danh mục hình vẽ...............................................................................................5

Danh mục bảng biểu...........................................................................................6

Chương 1: Tổng quan về hệ thống......................................................................7

1.1. Giới thiệu chung.......................................................................................7

1.2. Các yêu cầu cơ bản..................................................................................7

1.3. Phương pháp, phạm vi, và giới hạn nghiên cứu.......................................8

1.4. Ý nghĩa thực tiễn......................................................................................8

Chương 2: Xây dựng mô hình hệ thống..............................................................9

2.1. Sơ đồ khối hệ thống.................................................................................9

2.2. Phân tích và lựa chọn cảm biến................................................................9

2.2.1. Khối đo nồng độ cồn.........................................................................9

2.2.2. Module cảm biến MQ3...................................................................13

2.2.3. Khối thông báo................................................................................14

2.2.4. Khối hiển thị...................................................................................16

2.2.5. Khối báo động.................................................................................17

2.2.6. Khối nhập số điện thoại...................................................................18

2.3. Phân tích và lựa chọn bộ điều khiển.......................................................18

2.4. Thiết kế mạch đo và xử lý tín hiệu.........................................................22

2.5. Phần mềm lập trình................................................................................24

2.6. Mô hình hóa và mô phỏng hệ thống.......................................................25

2.7. Phần mềm theo dõi.................................................................................25

2.7.1. Tổng quan về phần mềm Visual Studio...........................................25

3
2.7.2. Tổng quan về C# Winform..............................................................27

Chương 3: Chế tạo và thử nghiệm hệ thống......................................................28

3.1. Chế tạo các bộ phận cơ khí....................................................................28

3.2. Chế tạo các bộ phận điện - điện tử.........................................................29

3.2.1. Thiết kế mạch in..............................................................................29

3.2.2. Sơ đồ hệ thống................................................................................30

3.3. Xây dựng chương trình điều khiển.........................................................30

3.3.1. Lưu đồ thuật toán chương trình chính.............................................31

3.3.2. Lưu đồ giải thuật các chương trình con...........................................32

3.3.2.1. Chương trình con đo nồng độ cồn............................................32

3.3.2.2. Chương trình con gửi tin nhắn..................................................33

3.3.2.3. Chương trình phần mềm theo dõi.............................................34

3.4. Thử nghiệm và đánh giá hệ thống..........................................................35

Kết luận và kiến nghị........................................................................................38

Tài liệu tham khảo............................................................................................39

4
Danh mục hình vẽ
Hình 2.1: Sơ đồ khối hệ thống...........................................................................9

Hình 2.2: Module Al6000..................................................................................9

Hình 2.3: Hình thực tế và sơ đồ nguyên lý của cảm biến MQ3........................11

Hình 2.4: Các bộ phận bên trong MQ3............................................................11

Hình 2.5: Sự thay đổi điện trở của cảm biến theo giá trị nồng độ cồn..............12

Hình 2.6: Module MQ3....................................................................................13

Hình 2.7: Sơ đồ nguyên lý của module cảm biến MQ3...................................13

Hình 2.8: Module SIM800L.............................................................................14

Hình 2.9: Màn hình OLED..............................................................................16

Hình 2.10: Còi hú Buzzer................................................................................17

Hình 2.11: Led diode quang đỏ........................................................................18

Hình 2.12: Module bàn phím 4x4....................................................................18

Hình 2.13: Vi xử lý nhân ARM.......................................................................19

Hình 2.14: Vi điều khiển STM32F103.............................................................19

Hình 2.15: Sơ đồ chân Board mạch STM32F103C8T6...................................21

Hình 2.16: Sơ đồ nguyên lý của hệ thống........................................................22

Hình 2.17: Giao diện phần mềm CubeMX.......................................................24

Hình 2.18: Giao diện phần mềm Keil C V5.....................................................25

Hình 2.19: Mô phỏng hệ thống bằng phần mềm proteus.................................25

Hình 3.1: Bản vẽ thiết kế cơ khí.......................................................................28

Hình 3.2: Sơ đồ nguyên lý vẽ bằng phần mềm Altinum..................................29

Hình 3.3: Sơ đồ đi dây.....................................................................................29

Hình 3.4: Sơ đồ hệ thống đo nồng độ cồn vẽ trên phần mềm fritzing..............30

5
Hình 3.5: Lưu đồ thuật toán chương trình chính..............................................31

Hình 3.6: Lưu đồ thuật toán đo nồng độ cồn....................................................32

Hình 3.7: Lưu đồ thuật toán gửi tin nhắn.........................................................33

Hình 3.8: Lưu đồ thuật toán chương trình theo dõi..........................................34

Hình 3.9: Sản phẩm thực tế..............................................................................35

Hình 3.10: Giao diện chương trình theo dõi.....................................................35

Danh mục bảng biểu


Bảng 2.1: So sánh thông số của cảm biến MQ3 và cảm biến AL6000.............10

Bảng 2.2: Đặc điểm mức độ nhạy....................................................................23

Bảng 2.3: Bảng trạng thái say..........................................................................23

Bảng 3.1: Bảng so sánh thực nghiệm đo nồng độ cồn......................................35

6
Chương 1: Tổng quan về hệ thống
1.1. Giới thiệu chung.
Hiện nay, ở nước ta các tệ nạn xã hội ngày càng gia tăng mà một trong những
nguyên nhân chủ yếu đó là do uống nhiều rượu bia. Rượu, bia là nguyên nhân chủ yếu
làm giảm năng suất lao động, gây ra các tệ nạn xã hội như bạo lực, gia đình tan vỡ, và
đặc biệt gây ra các vụ tai nạn giao thông nghiêm trọng và đặc biệt nghiêm trọng.

Việt Nam là quốc gia thuộc top đầu các nước sử dụng rượu, bia khi tham gia
giao thông. Tình trạng sử dụng rượu, bia tràn lan ở nhiều nơi đã khiến trật tự an toàn
giao thông trở thành vấn đề báo động đây chính là nguyên nhân hàng đầu gây tai nạn
giao thông, khi điều khiển phương tiện bởi người lái xe thường phản ứng chậm, buồn
ngủ, thiếu tập trung, việc nhìn thấy các biển báo, tín hiệu hoặc quan sát trên đường
không còn rõ ràng. Người say cũng bốc đồng, không còn khả năng kiểm soát tốc độ
cho nên thường phóng nhanh, vượt ẩu, lấn đường rất dễ gây tai nạn. Để tích cực ngăn
chặn việc việc người điều khiển phương tiện giao thông trong tình trạng say rượu bia,
theo nghị định 71/2012/NĐ – CP qui định người điều khiển các phượng tiện giao
thông trên đường mà trong máu hoặc hơi thở có nồng độ cồn vượt quá 50 – 80 mg/l
máu hoặc 0,25 – 0,4 mg/l khí hơi khí thở sẽ bị phạt.

Chính vì thế có nhiều rất nhiều công trình nghiên cứu về vấn đề đo nồng độ cồn
đối với những người tham gia giao thông. Thấy được tính chất cấp bách và quan trọng
của vấn đề trên nhóm chúng em đã quyết định lựa chọn chủ đề: “ Xây dựng hệ thống
đo nồng độ cồn”, nhằm mục đích chủ động ngăn ngừa kịp thời và cảnh báo sớm hiểm
họa về tai nạn giao thông xảy ra, tạo nên một thói quen và ý thức tốt cho người tham
gia giao thông.

1.2. Các yêu cầu cơ bản.


Hệ thống đo nồng độ cồn là hệ thống di động, giúp người dùng đo nồng độ cồn,
cảnh báo cho người dùng cũng như người thân biết các thông số đo để có những giải
pháp kịp thời, phòng tránh sự cố hiệu quả nhất. Hệ thống sử dụng Board
STM32F103C8 làm bộ xử lý trung tâm, cảm biến nồng độ cồn sẽ đo để truyền các tín
hiệu về trung tâm xử lý. Cùng một số thiết bị đầu ra như tín hiệu phát sáng (Led), còi

7
hú, module Sim nhận tín hiệu từ trung tâm sẽ gửi tin nhắn thông báo và cập nhật kết
lên app điện thoại.

1.3. Phương pháp, phạm vi, và giới hạn nghiên cứu.


Hiện nay có nhiều phương pháp đo nồng độ như phương pháp đo nồng độ cồn
trong máu, phương pháp đo nồng độ cồn trong hơi thở. Phương pháp đo nồng độ cồn
trong máu là phương pháp được sử dụng để xác định lượng các chất kích thích và hoạt
chất gây ảnh hưởng tới cơ thể con người trong máu. Sử dụng các biện pháp hóa sinh
trong phòng thí nghiệm để đo đạc với độ chính xác cao. Tuy nhiên phương pháp này
có nhược điểm là phải lấy mẫu máu của người cần kiểm tra tại cơ sở y tế, thông qua
quy trình thử nghiệm trong phòng thí nghiệm mới cho ra kết quả do đó gây tốn thời
gian và không thể áp dụng trong các trường hợp cần kiểm tra nhanh, tại hiện trường.
Phương pháp đo nồng độ cồn trong hơi thở: Hơi thở của người say rượu sẽ có nồng độ
cồn cao. Sử dụng các thiết bị đo nồng độ cồn từ hơi thở hoặc đo nồng độ trong không
khí của không gian thở trước mặt người lái để đánh giá tình trạng say rượu bia. Ta thấy
rằng phương pháp xác định nồng độ cồn qua hơi thở hiện đang được sử phổ biến vì
tính cơ động và thời gian đo nhanh chỉ khoảng 8 – 10 giây. Vì thế nhóm chúng em sẽ
sử dụng phương pháp đo nồng độ cồn qua hơi thở.

Phương pháp đo nồng độ cồn qua hơi thở đòi hỏi phải sử dụng nhưng linh kiện
và thiết bị có độ chính xác cao, nhưng nhóm chúng em chỉ có thể sử dụng nhưng loại
linh kiện thông dụng, giá thành rẻ phù hợp với điều kiện tài chính nên độ tin cậy còn
chưa cao. Do vậy chúng em mới chỉ dừng lại ở việc xây dựng được hệ thống đo nồng
độ cồn sử dụng trong công việc học tập và nghiên cứu chưa có tính ứng dụng thực tế
cao.

1.4. Ý nghĩa thực tiễn.


Chủ đề “Xây dựng hệ thống đo nồng độ cồn” của nhóm chúng em có ý nghĩa
thiết thức trong cuộc sống nhằm mục đích chủ động ngăn ngừa kịp thời và cảnh báo
sớm hiểm họa về tai nạn giao thông xảy ra, tạo nên một thói quen và ý thức tốt cho
người tham gia giao thông. Từ đó có thể hạn chế tối đã nhưng hậu quá đáng tiếc do
rượu bia gây ra.

Kết luận chương 1:

8
Trong chương này, nhóm chúng em đã tìm hiểu về những cơ sở lý thuyết của
các phương pháp đo nồng độ cồn hiện nay, cũng như ý nghĩa thực tiễn của chúng trong
đời sống

Chương 2: Xây dựng mô hình hệ thống


2.1. Sơ đồ khối hệ thống

5V

3,3V

Khối đo nồng độ cồn

5V Khối theo dõi

Khối xử lý trung tâm tâm Hình 2.1: Sơ đồ khối hệ thống


sử lý
2.2. Phân tích và lựa chọn cảm biến Máy tính
1. Khối đo nồng độ cồn

Trên thế giới hiện nay có rất nhiều phương pháp đo nồng dộ cồn như: phương
pháp đo dùng
Khối cảnh báo Khốicảm
hiểnbiến
thị bán dẫn, phương pháp đo dùng phù kế, phương pháp đo dùng
cảm biến fuel cell, phương pháp đo dùng cám biến màng oxit bán dẫn. Trong những
phương pháp trên phương pháp đo dùng cảm biến màng oxit bán dẫn được sử dụng
thông dụng và phổ biến nhất. Có thể kể đến một số loại cảm biến màng oxit bán dẫn
trên thị trường hiện nay như: MQ3, AL6000, AL7000,…

9
Hình 2.2: Module Al6000
Bảng 2.1: So sánh thông số của cảm biến MQ3 và cảm biến AL6000

Thông số Cảm biến MQ3 Cảm biến AL6000


Điện áp hoạt động 3.3 – 5V 3.3 V
Phạm vi sử dụng Nghiên cứu và học tập Công nghiệp
Nhiệt độ hoạt động 10 70C 10  40C
Thang đo nồng độ cồn 0,05  10mg / l 0  2mg / l
Độ chính xác 5% 0,05%
Giá thành Giá thấp Giá cao

Ta có thể thấy rằng MQ3 có rất nhiều đặc điểm vượt trội hơn so với các dòng
các cảm biến màng oxit bán dẫn khác trên thị trường. Nhiệt độ hoạt động và thang đo
nồng độ cồn của MQ3 khá lớn rất phù hợp cho công việc nghiên cứu và học tập. Độ
chính xác cao, giá thành rẻ, nhỏ gọn và dễ dàng sử dụng rất phù hợp với điều kiện của
học sinh, sinh viên. Vì những lý do đó mà nhóm chúng em quyết định lựa chọn cảm
biến MQ3 để sử dụng.

Cảm biến MQ3

 Cấu tạo bên trong:

Cảm biến MQ3 được làm từ vật liệu SnO2 . Vật liệu này có tính đẫn điện kém
trong môi trường không khí sạch nhưng lại rất nhạy cảm với hơi cồn. Trong môi
trường có nồng độ cồn càng cao, điện trở của cảm biến càng giảm. Cũng trong môi

10
trường đó, khi nhiệt độ bề mặt cảm biến là 200C thời gian phát hiện nồng độ cồn kéo
dài từ 3 – 5 phút.

Hình 2.3: Hình thực tế và sơ đồ nguyên lý của cảm biến MQ3


Cảm biến MQ3 có 6 chân , vỏ và thân. Mặc dù nó có 6 chân, nhưng ta có thể sử
dụng 4 chân. Hai trong số chúng là hệ thống đốt nóng, mà ta gọi là H và 2 cái còn lại
là để kết nối nguồn và đất hay A và B.

 Nguyên lý hoạt động:

Nhìn tổng thể lớp cắt ngang bên trong MQ3, ta có thể thấy đó là một ống

Alumina được bao phủ bởi SnO2 , đó là Ddiooxxit thiếc. Và giữa chúng có một điện
cực Aurum. Chúng ta có thể thấy cách các dây được kết nối. Về cơ bản, ống alumina
và cuộn dây là hệ thống sưởi ấm, các phần màu vàng, nâu và cuộn dây trong hình.

Hình 2.4: Các bộ phận bên trong MQ3

11
Nếu cuộn dây được làm nóng, gốm SnO2 sẽ trở thành chất bán dẫn, do đó có
nhiều điện tích di chuyển hơn, có nghĩa là nó đã sẵn sàng để tạo ra dòng điện nhiều
hơn.

Sau đó, khi các phần tử rượu không khí gặp điện cực nằm giữa alumina và thiếc
dioxit, ethanol sẽ đốt cháy thành axit axetic sau đó tạo ra nhiều dòng điện hơn. Vì vậy,
càng có nhiều phần tử rượu, chúng ta sẽ nhận được nhiều hơn. Do sự thay đổi hiện tại
này, chúng ta nhận được các giá trị khác nhau từ cảm biến.

Hình 2.5: Sự thay đổi điện trở của cảm biến theo giá trị nồng độ cồn

Để chọn được đặc tính đầu ra của cảm biến là mối quan hệ của điện áp ra với
nồng độ cồn ta tính như sau:

- R0 là điện trở của cảm biến tại nồng độ cồn là 0,4 mg/l .

- Rs là điện trở của cảm biến.

- Tính toán giá trị thực của nồng độ cồn từ giá trị áp đo được( bỏ qua sự
ảnh hưởng của nhiệt đô và độ ẩm).
- Chọn dải đo từ 0,2 mg/l – 0,45 mg/l.

12
Rs
Gọi x là giá trị nồng độ cồn, y là giá trị tỷ số R0 ta có:

Với x = 0,2 mg/l thì y =1,7 .

Với x = 0,45 mg/l thì y = 0,9.

Vậy ta suy ra được phương trình đường thẳng đi qua hai điểm trên là:

Rs
y  3,5 x  2, 4
R0 .

Ta lại có R0  2k , R1  1k  .

Dựa vào hình trên nên điện áp ra của cảm biến được tính theo công thức sau:

U  5 RL / ( Rs  RL ) .

Mà Rs  R0 (3,5 x  2, 4)  2000(3,5 x  2, 4).

Vậy ta có mối liên hệ giữa giá trị nồng độ cồn và điện áp ra theo biểu thức sau:

x  0,829  0,714U (mg/l).

2. Module cảm biến MQ3.

Hình 2.6: Module MQ3


Module cảm biến MQ3 thích hợp cho việc phát hiện nồng độ cồn trong hơi thở.
Phát hiện khí phát ra từ Etanol, Alcohol. Đặc điểm của module cảm biến MQ3: Có bốn
chân, điện áp cung cấp là nguồn 5V, Dout đầu ra là tín hiệu số (0 và 1), Aout đầu vào
là tín hiệu tương tự, đèn Led sáng khi phát hiện có khí, GND cấp điện cực âm, đọ nhạy
cao và chọn lọc tốt với ethanol, bền và ổn định đáng tin cậy, độ nhạy cao và thời gian
đáp ứng nhanh.

13
Hình 2.7: Sơ đồ nguyên lý của module cảm biến MQ3
 Giao diện 4 chân:
- VCC: Cung cấp năng lượng đầu vào.
- GND: Mặt bằng cung cấp.
- DO: Đầu ra tín hiệu số.
- AO: Đầu ra tín hiệu tương tự.
 Tính năng, đặc điểm:
- Hoạt động điện áp 5V.
- Có thể điều chỉnh độ nhạy đầu ra.
- Đầu ra tương tự 0V – 5V.
- Giá thấp.
- Phản ứng nhanh, ổn định, nhạy cảm với rượu cồn.
- Có 2 tín hiệu ra: tín hiệu số (D0) và tín hiệu tương tự (A0).
 Dự liệu Kỹ thuật:
- Nồng đô: 0,05 – 10 mg/l.
- Điện áp hoạt động: 5V
- Tiêu thụ hiện tại: 150 mA.
- Nhiệt độ hoạt động: 10 70C .

3. Khối thông báo

Hiện nay có các loại Module Sim800L, Module sim 900A... chọn Module Sim
900A như một điện thoại nhưng có kích thước nhỏ. Với mức điện áp hoạt động 5VDC
– chuẩn điện áp thông dụng nhất với các loại vi điều khiển và cả giao tiếp máy tính,
cũng như tính ổn định cao và đơn giản về sử dụng.

14
Để hệ thống có thể gửi thông bao bằng tin nhắn , ở đây chúng em sử dụng
Module SIM800L, với thiết kế nhỏ gọn, đáp ứng được yêu cầu đề tài và tiết kiệm kinh
phí.

Hình 2.8: Module SIM800L

Thực hiện việc nhắn tin cảnh báo qua điện thoại của người thân biết khi nống
độ cồn đo được vượt mức an toàn.

 Thông số kỹ thuật:

Nguồn cấp:  4.2VDC , có thể sử dụng với nguồn dòng thấp từ 500mAh trở lên
(như cổng USB, nguồn từ Board Arduino).

Khe cắm SIM : MICROSIM

Dòng khi ở chế độ chờ: 10 mA

Dòng khi hoạt động: 100 mA đến 1A.

Hỗ trợ 4 băng tần phổ biến.

Kích thước: 25 mm x 22 cm

 Chức năng các chân:

VCC: Nguồn vào 4.2V.

TXD: Chân truyền Uart TX.

RXD: Chân nhận Uart RX.

DTR : Chân UART DTR, thường không xài.

15
SPKP, SPKN: ngõ ra âm thanh, nối với loa để phát âm thanh (8 Ohm-0.87W).

MICP, MICN: ngõ vao âm thanh, phải gắn thêm Micro để thu âm thanh.

Reset: Chân khởi động lại Sim800L (thường không xài).

RING : báo có cuộc gọi đến

GND: Chân Mass, cấp 0V.

4. Khối hiển thị

Màn hình OLED 1.3” giao tiếp I2c cho khả năng hiện thị đẹp, sang trọng , rõ
nét với mức chi phí phù hợp, do sử dụng giao tiếp I2C ít tốn chân nên cho chất lượng
đường truyền ổn định và rất dễ giao tiếp, LED thích hợp cho các ứng dụng tiêt kiệm
năng lượng, môi trường hiện thị sáng hoặc các ứng dụng cần đến sự sang trọng.

Hình 2.9: Màn hình OLED


Thông số kĩ thuật của màn hình OLED:

Điện áp sử dụng : 3.3 đến 5VDC

Công suất tiêu thụ : 0.04W.

Góc hiển thị : lớn hơn 160 độ.

Số điểm hiển thị : 128x64 điểm.

Độ rộng màn hình : 1.3 inch.

16
Giao tiếp : SPI Driver : SSD1306.

Sơ đồ chân giao tiếp:

VCC : 3,3 đến 5V.

GND : 0V.

MOSI : Master Out Slave In.

CS : Chip Select (kích mức thấp).

D/C : Data(mức cao) / Command (mức thấp).

5. Khối báo động

Nếu người dùng sử dụng quá nồng độ cho phép thì khối báo động sẽ thực hiện
chức năng báo động thông qua chuông báo động và gửi tin nhắn cnahr báo bằng cách
sử dụng module SIM 900A.

Còi báo động:

Còi hú Buzzer 5 V được thiết kế phù hợp với các hệ thống báo động nhanh
chóng và tức thời. Với tiếng báo động dễ nghe trong 1 thiết kế nhỏ gọn. Thường sử
dụng trong các hệ thống báo động nhỏ, các thiết bị kiểm tra...

Hình 2.10: Còi hú Buzzer

17
Thông số kĩ thuật:

Điện áp hoạt động: 4-8 VDC.

Dòng điện tiêu thụ: <=30mA.

Biện độ âm thanh: >85dB.

Nhiệt độ hoạt động: -25 độ C đến + 85 độ C.

Đèn led(đỏ):

Hình 2.11: Led diode quang đỏ


6. Khối nhập số điện thoại

Hình 2.12: Module bàn phím 4x4


Module bàn phím 4x4 được sử dụng để nhập số điện thoại của người thân khi
nồng độ cồn vượt quá quy định cho phép.

Thông số kỹ thuật:

Độ dài cáp: 88mm.

18
Nhiệt độ hoạt động: 0 ~ 70oC.

Đầu nối ra 8 chân.

Kích thước bàn phím: 77 x 69 mm

2.3. Phân tích và lựa chọn bộ điều khiển


 Vi xử lý ARM (Advance RISC Machine) là một loại vi xử lý 32-bit kiểu RISC
được sử dụng rộng rãi trong các thiết kế nhúng. ARM được nghiên cứu và phát triển từ
những thập niên 80 của thế kỷ 20 bởi công ty Acorn, qua nhiều giai đoạn phát triển
khác nhau với nhiều phiên bản của vi xử lý, ARM ngày càng chứng tỏ được sự ưu việt
của vi xử lý trong phát triển các thiết bị.

Vi xử lý ARM được thiết kế là trái tim của tất cả các thiết bị công nghệ từ điện
thoại di động, máy ảnh kỹ thuật số đến những thiết bị điều khiển trên ô tô… cung cấp
cho các thiết bị có hiệu năng cao, chi phí hợp lý và sử dụng năng lượng một cách hiệu
quả nhất. Với sự tham gia của các tổ chức khác nhau, sự tích hợp vi xử lý ARM vào
các SOC (System On Chip) giúp cho vi xử lý ARM có khả năng tích hợp cao, được hỗ
trợ đầy đủ và nhanh chóng. Trên thị trường hiện nay có rất nhiều dòng vi xử lý ARM,
trong số đó không thể không nhắc đến dòng vi xử lý ARM Cortex – Mx là loại vi xử
lý được sử dụng phổ biến trong lĩnh vực hệ thống nhúng.

Hình 2.13: Vi xử lý nhân ARM


Chính vì những mặt lợi thế của ARM mà nhóm chúng em đã quyết định lựa
chọn dòng vi điều khiển STM32F103 sử dụng dòng vi xử lý ARM. STM32F103 là
một trong những dòng chip phổ biến của ST với nhiều họ thông dụng như
F0,F1,F2,F3,F4….. STM32F103 thuộc họ F1 với lõi là ARM COTEX M3.

19
STM32F103 là vi điều khiển 32 bit, tốc độ tối đa là 72Mhz. Giá thành cũng khá rẻ so
với các loại vi điều khiển có chức năng tương tự. Mạch nạp cũng như công cụ lập trình
khá đa dạng và dễ sử dụng. Dòng vi điều khiển STM32F103 còn có rất nhiều những
mặt mạnh hơn so với các dòng vi điều khiển khác như:

Hình 2.14: Vi điều khiển STM32F103


Sự tinh vi:

Thoạt nhìn thì các ngoại vi của STM32F103 cũng giống như những vi điều
khiển khác, như hai bộ chuyển đổi ADC, timer, I2C, SPI, CAN, USB và RTC. Tuy
nhiên mỗi ngoại vi trên đều có rất nhiều đặc điểm thú vị. Ví dụ như bộ ADC 12-bit có
tích hợp một cảm biến nhiệt độ để tự động hiệu chỉnh khi nhiệt độ thay đổi và hỗ trợ
nhiều chế độ chuyển đổi. Mỗi bộ định thời có 4 khối capture compare (dùng để bắt sự
kiện với tính năng input capture và tạo dạng sóng ở ngõ ra với output compare), mỗi
khối định thời có thể liên kết với các khối định thời khác để tạo ra một mảng các định
thời tinh vi hơn. 

STM32 có hỗ trợ thêm tối đa 12 kênh DMA (Direct Memory Access). Mỗi
kênh có thể được dùng để truyền dữ liệu đến các thanh ghi ngoại vi hoặc từ các thanh
ghi ngoại vi đi với kích thước từ (word) dữ liệu truyền đi có thể là 8/16 hoặc 32-bit.
Mỗi ngoại vi có thể có một bộ điều khiển DMA (DMA controller) đi kèm dùng để gửi
hoặc đòi hỏi dữ liệu như yêu cầu.

STM32F103 là một vi điều khiển tiêu thụ năng lượng thấp và đạt hiệu suất cao.
Nó có thể hoạt động ở điện áp 2V, chạy ở tần số 72MHz và dòng tiêu thụ chỉ có 36mA
với tất cả các khối bên trong vi điều khiển đều được hoạt động. 

Sự an toàn:

20
Ngày nay các ứng dụng hiện đại thường phải hoạt động trong môi trường khắc
khe, đòi hỏi tính an toàn cao, cũng như đòi hỏi sức mạnh xử lý và càng nhiều thiết bị
ngoại vi tinh vi. Để đáp ứng các yêu cầu khắc khe đó, STM32 cung cấp một số tính
năng phần cứng hỗ trợ các ứng dụng một cách tốt nhất. 

Tính bảo mật:

Một trong những yêu cầu khắc khe khác của thiết kế hiện đại là nhu cầu bảo
mật mã chương trình để ngăn chặn sao chép trái phép phần mềm. Bộ nhớ Flash của
STM32F103có thể được khóa để chống truy cập đọc Flash thông qua cổng Debug.

Hình 2.15: Sơ đồ chân Board mạch STM32F103C8T6


Thông số kĩ thuật :

Vi điều khiển: STM32F103C8T6.

Điện áp cấp 5VDC qua cổng Micro USB sẽ được chuyển đổi thành 3.3VDC
qua IC nguồn và cấp cho Vi điều khiển chính.

Tích hợp sẵn thạch anh 8Mhz.

Tích hợp sẵn thạnh anh 32Khz cho các ứng dụng RTC.

Ra chân đầy đủ tất cả các GPIO và giao tiếp: CAN, I2C, SPI, UART, USB,...

Tích hợp Led trạng thái nguồn, Led PC13, Nút Reset.

Kích thước: 53.34 x 15.24mm.

21
Chức năng các chân chính của STM32F103C8T6 :

VBAT : cung cấp nguồn cho thanh nghi RTC và Backup.

PA0 – PA15, PB0 – PB15… là các cổng vào ra của vi điều khiển.

VSSA, VDDA : cung cấp điện áp tham chiếu cho ADC.

VDD_1, VDD_2, VDD_3 : cung cấp nguồn cho vi điều khiển.

VSS-1, VSS-2, VSS-3 : là các đất của vi điều khiển.

PD0 OSC_IN, PD1 OSC_OUT : cung cấp thạch 2 cho vi điều khiển.

NRST : chân reset của vi điều khiển.

2.4. Thiết kế mạch đo và xử lý tín hiệu

Hình 2.16: Sơ đồ nguyên lý của hệ thống

22
Nguyên lý hoạt động của cảm biến MQ3 dựa trên sự biến thiên của điện trở, ở
môi trường có nồng độ cồn càng lớn thì điện trở trong cảm biến sẽ càng nhỏ, tương
ứng với điện áp ra của cảm biến gửi về vi điều khiển sẽ càng tăng. Với mỗi một giá trị
điện áp ra sẽ tương ứng với một giá trị PPM tương ứng. PPM được sử dụng để đo
nồng độ hóa học thường là trong dung dịch nước. Nồng độ tan của 1 ppm là nồng độ
chất tan của 1/1000000 dung dịch.

Ta có công thức chuyển đổi mg/l thành ppm như sau:

103.C2 (mg / l )
C1 ( ppm) 
P (kg / m3 ) .

Trong đó C1 : nồng độ rượu tính bằng ppm.

C2 : nồng độ rượu tính bằng mg/l.

3
P : Khối lượng riêng của rượu ( kg / m ).

Bảng 2.2: Đặc điểm mức độ nhạy

Điện áp(V) PPM Tỷ lệ

0 0 0

0,5 100 10

1 200 20

1,5 300 30

2 400 40

2,5 500 50

3 600 60

3,5 700 70

23
4 800 80

4,5 900 90
5 1000 100

Bảng 2.3: Bảng trạng thái say


Giá trị PPM Trạng thái
200 – 300 Hơi say
300 – 400 Say
400 – 500 Rất say

2.5. Phần mềm lập trình


Hệ sinh thái STM32Cube là một giải pháp phần mềm hoàn chỉnh cho các dòng
vi điều khiển STM32 và các dòng vi xử lý mà nó sử dụng. STM32Cube là sự kết hợp
của các công cụ phần mềm và các thư viện phần mềm nhúng:

 Đầy đủ các công cụ phần mềm hỗ trợ chạy trên máy tính giúp giải quyết
tất cả những nhu cầu trong một chu trình phát triển dự án hoàn chỉnh.
 Các phần mềm nhúng được thiết kế để chạy trên các dòng vi điều khiển
STM32 và các vi xử lý tương ứng với nhiều chức năng khác nhau từ các
driver cho từng ngoại vi của vi điều khiển đến những tính năng định
hướng ứng dụng nâng cao.

24
Hình 2.17: Giao diện phần mềm CubeMX

Keil C V5 là một trong những IDE tốt nhất hiện nay được các lập trình viên sử
dụng để phát triển dòng vi điều khiển lõi ARM cho các ứng dụng nhúng.

Hình 2.18: Giao diện phần mềm Keil C V5


2.6. Mô hình hóa và mô phỏng hệ thống

25
Hình 2.19: Mô phỏng hệ thống bằng phần mềm proteus

2.7. Phần mềm theo dõi.


g quan về phần mềm Visual Studio

• Visual Studio là gì?

Hình 2.18: Giao diện phần mềm Visual studio

26
Microsoft Visual Studio là một môi trường phát triển tích hợp (IDE) từ
Microsoft. Nó được sử dụng để phát triển chương trình máy tính cho Microsoft
Windows, cũng như các trang web, các ứng dụng web và các dịch vụ web. Visual
Studio sử dụng nền tảng phát triển phần mềm của Microsoft như Windows API,
Windows Forms, Windows Presentation Foundation, Windows Store và Microsoft
Silverlight. Nó có thể sản xuất cả hai ngôn ngữ máy và mã số quản lý.

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ả về trình gỡ lỗi mức độ mã nguồn và
gỡ lỗi mức độ máy. Công cụ tích hợp khác bao gồm một 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. Nó chấp nhận các plug-in nâng cao các chức năng ở hầu hết các cấp bao gồm
thêm hỗ trợ cho các hệ thống quản lý phiên bản (như Subversion) và bổ sung thêm bộ
công cụ mới như biên tập và thiết kế trực quan cho các miền ngôn ngữ cụ thể hoặc bộ
công cụ dành cho các khía cạnh khác trong quy trình phát triển phần mềm.

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ợ (mức độ khác nhau) 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++ và C++/CLI (thông qua Visual C++), VB.NET
(thông qua Visual Basic.NET), C# (thông qua Visual C#) và F# (như của Visual
Studio 2010). 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 hỗ trợ XML/XSLT, HTML/XHTML, JavaScript và
CSS.

2. Tổng quan về C# Winform

Được sử dụng với mục đích xây dựng GUI sử dụng Windows Forms, được bố trí
dùng để xây dựng các nút điều khiển bên trong hoặc cũng có thể khóa chúng vào bên
cạnh mẫu. Điều khiển trình bày dữ liệu có thể được liên kết với các nguồn dữ liệu như:
Cơ sở dữ liệu hoặc truy vấn.

27
Hình 2.22: Giao diện chương trình C# Winform

Kết luận chương 2:


Trong chương này chúng em đã xây dựng được sơ đồ khối của hệ thống từ đó
có cách nhìn khách quan hơn về các bộ phận chính, chức năng của từng bộ phận và
mối quan hệ giữa chúng, giúp cho việc lựa chọn cảm biến và vi điều khiển dễ dàng
hơn. Cụ thể nhóm chúng em đã quyết định lựa chọn vi điều khiển và các cảm biến như
sau:

 Vi điều khiển STM32F103C8T6.


 Module cảm biến nồng độ cồn MQ3.
 Màn hình OLED.
 Còi hú buzzer.
 Module Sim800L.
 Keypad 4x4
 Phần mềm theo dõi.

28
Ngoài ra trong chương này, chúng em cũng thiết kế được mạch đo, mô hình hóa
và mô phỏng hệ thống đồng thời xử lý được tín hiệu chuyển về từ cảm biến.

Chương 3: Chế tạo và thử nghiệm hệ thống


3.1. Chế tạo các bộ phận cơ khí.

Hình 3.20: Bản vẽ thiết kế cơ khí

29
3.2. Chế tạo các bộ phận điện - điện tử.
1. Thiết kế mạch in.

Hình 3.21: Sơ đồ nguyên lý vẽ bằng phần mềm Altinum


Sau khi thiết kế xong sơ đồ nguyên lý và tiến hành vẽ mạch PCB 1 lớp thủ
công. Với kích thước board là … để gắn board STM32F103C8T6 và kết nối cảm biến
kiểm tra nồng độ cồn MQ-3, đèn led, buzzer, nút nhấn, màn hình Oled.

Hình 3.22: Sơ đồ đi dây

30
2. Sơ đồ hệ thống

Hình 3.23: Sơ đồ hệ thống đo nồng độ cồn vẽ trên phần mềm fritzing

3.3. Xây dựng chương trình điều khiển.


Thiết bị có 2 chức năng chính được lựa chọn sử dụng bằng một nút nhận:

 Chức năng thứ nhất: Đo nồng độ cồn, cảnh báo nếu vượt mức cho phép:
Đọc giá trị từ cảm biến, tiến hành tính toán, so sánh các giá trị đo được
được kết luận về tính hình sực khỏe của người sử dụng được hiển thị ra
màn hình trên thiết bị. Nếu vượt mức cho phép, thiết bị sẽ báo đèn và có
chuông cảnh báo.
 Chức năng thứ hai: Gửi tin nhắn cảnh báo về điện thoại và dữ liệu lên
chương trình theo dõi: Nếu nồng độ cồn của người sử dụng vượt quá
mức cho phép, hệ thống sẽ gửi tin nhắn đến người thân thông qua
module sim 800L, đồng thời gửi dữ liệu lên chương trình theo dõi.

31
1. Lưu đồ thuật toán chương trình chính.

Hình 3.24: Lưu đồ thuật toán chương trình chính

 Giải thích lưu đồ:

Quy trình được bắt đầu với việc khai báo các thư viện, các biến được sử dụng
trong chương trình. Sau đó, khởi tạo các giao thức giao tiếp và các chân của vi điều
khiển được sử dụng.

32
Vào chương trình chính, bắt đầu sẽ là màn hình chờ của thiết bị, ta sẽ chọn chức
năng sử dụng thông qua chương trình chọn chế độ sử dụng. Khi chọn xong màn hình
sẽ hiển thị giao diện của chương trình đó.

2. Lưu đồ giải thuật các chương trình con

ng trình con đo nồng độ cồn

Hình 3.25: Lưu đồ thuật toán đo nồng độ cồn


 Giải tích lưu đồ:

Bắt đầu sử dụng sẽ có nút nhấn đo lại kết quả nếu ta cần đo lại.

Chương trình sẽ đọc giá trị từ cảm biến MQ-3, sau đó tính toán ra độ cồn. So
sánh kết quả đó với mức quy định đã được cài sẵn. Tùy tình giá trị đo được mà hệ

33
thống sẽ hiện thị kết quả tương ứng lên màn hình hiển thị. Nếu kết quả vượt quá mức
quy định, thiết bị sẽ sáng đèn đồng thời báo chuông cảnh báo.

3.3.2.2. Chương trình con gửi tin nhắn

Hình 3.26: Lưu đồ thuật toán gửi tin nhắn


 Giải thích lưu đồ:

34
Chương trình sẽ đọc giá trị từ cảm biến MQ-3, sau đó tính toán ra độ cồn. So
sánh kết quả đó với mức quy định đã được cài sẵn. Nếu nồng độ cồn vượt mức cho
phép hệ thống sẽ gửi tin nhắn cảnh báo cho người thân.

3.3.2.3. Chương trình phần mềm theo dõi.

Hình 3.27: Lưu đồ thuật toán chương trình theo dõi


 Giải thích lưu đồ:

35
Chương trình sẽ đọc giá trị từ cảm biến MQ-3, sau đó tính toán ra độ cồn. So
sánh kết quả đó với mức quy định đã được cài sẵn. Nếu nồng độ cồn vượt mức cho
phép hệ thống sẽ gửi dữ liệu nồng độ cồn lên chương trình theo dõi

3.4. Thử nghiệm và đánh giá hệ thống

Hình 3.28: Sản phẩm thực tế

36
Hình 3.29: Giao diện chương trình theo dõi

Hình 3.30: Tin nhắn cảnh báo gửi về từ hệ thống

37
Bảng 3.4: Bảng so sánh thực nghiệm đo nồng độ cồn

STT Uống 1 lon Tigger Thiết bị đo (mg/L) Sai số


(mg/L)
1 0.2 0.21 5%
2 0.2 0.19 5%
3 0.2 0.22 10%
4 0.2 0.21 5%
5 0.2 0.23 15%

Sai số trung bình của thiết bị: 8%

Thiết bị đo được giá trị nồng độ cồn, nhưng sai sô còn cao do độ chính xác của
cảm biến còn thấp.

Kết luận chương 3:


Trong chương này chúng em đã xây dựng được các bản vẽ cơ khí, sơ đồ hệ
thống và các lưu đồ thuật toán của hệ thống, cũng như so sánh kết quả đo được từ hệ
thống với kết quả thực tế, từ đó

38
Kết luận và kiến nghị
 Kết luận

Với những mục tiêu đã đưa ra, để giải quyết và đã hoàn thành được những yêu
cầu ban đầu là nhận biết đo được nồng độ cồn. Cảnh báo về mức vượt quá nồng độ
cồn cho phép đã bật được thông báo trên thiết bị và gửi tin nhắn thông báo cho người
thân kết quả đo cũng được cập nhật và lưu lại để việc giám sát trở nên dễ dàng.

 Kiến nghị

Như đã đề cập thì đây là một đề tài đang giành được sự quan tâm từ xã hội. Với
mong muốn hệ thống đo nhóm nghiên cứu có thể ứng dụng rộng rãi trong thực tiễn.
Nhóm đã đưa ra một số hướng phát triển để đề tài có thể hoàn thiện hơn:

- Sử dụng cảm công nghiệp có độ chính xác cao.


- Sự dụng các phương thức tiên tiến để thực hiện việc giao tiếp giữa trạm
xử lý và trung tâm xử lý.
- Cải tiến mô hình thành các module tích hợp để giảm kích thước của hệ
thống.

39
Tài liệu tham khảo

[ P. Q. Huy, Vi điểu khiển và ứng dụng STM32 dành cho người tự học, NXB
1] Bách Khoa Hà Nội.

[ L. C. Trung, Lập trình Điều khiển với STM32, NXB Khoa học và kỹ thuật.
2]

[ T. Đ. Nhơn, Hướng dẫn sử dụng STM32, NXB Đại học Quốc gia TP.HCM.
3]

[ "https://tapit.vn/," .
4]

[ "www.banlinhkien.vn,".
5]

[ www.linhkienvn.vn.
6]

40

You might also like