Cảm biến thông minh Người ta sử dụng các bộ vi xử lý hay các vi điều khiển kết hợp với các loại cảm biến khác nhau để tạo ra cảm biến thông minh có các đặc tính mới như: tự động chọn th
Trang 1VIỆN ĐIỆN
BỘ MÔN KỸ THUẬT ĐO VÀ TIN HỌC CÔNG NGHIỆP
-o0o -
ĐỀ TÀI:
ĐO ÁP SUẤT SỬ DỤNG CẢM BIẾN MPX5100
TỰ ĐỘNG CHUẨN ĐỘ
GV hướng dẫn : TS Nguyễn Thị Lan Hương
Nguyễn An Hoan 20091097
Khóa : 54
Trang 2MỤC LỤC
Lời cảm ơn 3
Mở đầu 3
Chương 1: Cơ sở lý thuyết của phép đo áp suất 4
1 Áp suất 4
1.1 Một số loại hình chuyển đổi áp suất 4
1.2 Phương pháp đo áp suất sử dụng nguyên lý đàn hồi 5
2 Cảm biến thông minh 6
Chương 2 : Tìm hiểu cảm biến áp suất MPX5100 8
1 Giới thiệu MPX5100 8
2 Các đặc trưng của MPX5100 8
3 Bù nhiệt độ trên chíp 10
4 Sai số do nhiệt độ (MPX5100D, MPX5100G, MPXV5100G) 12
Chương 3: Thiết kế mạch đo áp suất sử dụng cảm biến MPX5100 13
1 Yêu cầu 13
2 Giải quyết bài toán 13
3 Thiết kế mô phỏng mạch sử dụng ARDUINO UNO 16
Kết luận 17
Tài liệu tham khảo 17
Trang 3Lời cảm ơn
Chúng em xin chân thành cảm ơn cô Nguyễn Thị Lan Hương đã tận tình hướng dẫn
và truyền thụ những kiến thức cơ bản để chúng em có thể hoàn thành đồ án này Tuy vậy,
do những hạn chế về kiến thức thực tế cũng như điều kiện thời gian nên đồ án còn nhiều thiếu sót Chúng em rất mong nhận được ý kiến đóng góp của cô để có thể hoàn thiện hơn
đồ án này ạ
Mở đầu
Việc đo và xác định áp suất đóng vai trò quan trọng trong các hệ thống giám sát điều khiển động cơ, điều khiển quá trình hay chuyển đổi áp suất Các cảm biến đo áp suất còn được sử dụng trong các nhà máy để kiểm soát mức áp suất hợp lý cho các hệ thống, ví dụ trong các nhà máy nhiệt điện, các nhà máy có hệ thống nung hay nén vật liệu đều cần giám sát áp suất chặt chẽ …
Với những ứng dụng rất phổ biến như đã nêu trên, việc nghiên cứu về cảm biến nói chung, và cảm biến áp suất nói riêng rất quan trọng đối với người kỹ sư Qua học phần
Thiết bị đo và cảm biến thông minh, chúng em được nhận đề tài “Đo áp suất dùng cảm biến MPX5100 và tự động chuẩn độ” Đây là một loại cảm biến thông mình vì thế
việc thực hiện mạch đo mà không cần trải qua khâu khuếch đại tín hiệu
Đề tài được chia làm 3 chương:
Chương 1: Cơ sở lý thuyết của phép đo áp suất
Chương 2: Tìm hiểu cảm biến áp suất MPX5100
Chương 3: Thiết kế mạch đo áp suất sử dụng cảm biến MPX5100
Trang 4Chương 1: Cơ sở lý thuyết của phép đo áp suất
1 Áp suất
Trong vật lý học, áp suất (thường được viết tắt là p) là một đại lượng vật lý, thể hiện
cường độ thành phần lực tác động vuông góc trên một đơn vị đo diện tích của một vi thành phần bề mặt vật chất
p = F
S
Với S là diện tích
Đơn vị đo của áp suất: Trong hệ SI : N/m2 hay còn gọi là Pa: 1 Pa = 1 N/m2
Ngoài ra còn có một số đơn vị khác: atmosphere, Torr, mmHg
1 Pa = 1,45.10-4 lb/in2 = 9,869.10-6 atm = 7,5.10-4 cmHg = 7,5.10-3 torr
Trong trường hợp chất lưu không chuyển động, áp suất chất lưu là áp suất tĩnh do trọng lượng chất lưu và áp suất khí quyển tác động lên mặt thoáng chất lưu Chất lưu truyền đi nguyên vẹn áp suất theo mọi phương Trên cùng một mặt phẳng nằm ngang trong lòng chất lưu thì tất cả các điểm đều có áp suất như nhau
Áp suất ở những điểm có độ cao khác nhau thì áp suất cũng khác nhau
Công thức tính áp suất chất lưu: p = p0 + ρgh
Trong đó:
p0 là áp suất khí quyển
ρ là khối lượng lượng riêng chất lưu
g là gia tốc trọng trường
h là độ sâu tính từ điểm áp suất tới mặt thoáng chất lưu
Trong trường hợp chất lưu chuyển động, áp suất gồm 2 thành phần: áp suất tĩh (pt) và áp suất động (pđ)
p = pt + pđ
trong đó: pđ =
2
v
v là vận tốc chuyển động của chất lưu
1.1 Một số loại hình chuyển đổi áp suất
a Cảm biến áp suất kiểu màng phẳng
b Cảm biến áp suất kiểu màng gấp nếp
c Cảm biến kiểu khoang kín
d Cảm biến kiểu ống thẳng
e Cảm biến kiểu vành khuyên
Trang 51.2 Phương pháp đo áp suất sử dụng nguyên lý đàn hồi
Nguyên lý chung là dựa trên cơ sở sự biến dạng đàn hồi của một phần tử biến dạng nhạy cảm với tác dụng của áp suất Các phần tử biến dạng thường dùng là lò xo, màng mỏng, ống trụ
Áp kế kiểu màng: Màng phẳng hoặc màng uốn nếp
Khi áp suất tác động lên màng làm nó biến dạng Biến dạng của màng là hàm phi tuyến của áp suất và tùy thuộc điểm khảo sát Với màng mỏng độ phi tuyến là khá lớn khi
độ võng lớn, do đó thường chỉ sử dụng trong một phạm vi hẹp của độ dịch chuyển của màng
Hình 1: Kiểu màng phẳng
Hình 2: Kiểu màng uốn nếp
Màng uốn nếp có đặc tính phi tuyến nhỉ hơn màng phẳng nên có thể được sử dụng độ võng lớn hơn màng phẳng
Áp suất được truyền lên một màng đo, là một màng biến dạng trên ấy có một cầu đo bằng 4 điện trở lực căng bán dẫn Trên màng biến dạng này biến dạng ɛ (ở tâm) được tính:
ɛ = -0,49 PR2
Ed
ứng suất ở biên: ϭb = -0,75
2 2
PR d
Di chuyển tạo nên ở tâm màng: δ = 0,17
4 3
PR Ed
Trang 6Hình 3: Biến dạng ɛ dưới tác dụng của P
2 Cảm biến thông minh
Người ta sử dụng các bộ vi xử lý hay các vi điều khiển kết hợp với các loại cảm biến khác nhau để tạo ra cảm biến thông minh có các đặc tính mới như: tự động chọn thang
đo, tự động xử lý thông tin đo, tự động bù sai số …
Hình 4: Sơ đồ kết cấu của một cảm biến thông minh Các bộ cảm biến thông minh thường có một bộ chuyển đổi chuẩn hóa (CĐCH) làm nhiệm vụ biến đổi tín hiệu điện sau cảm biến thành tín hiệu chuẩn thường là điện áp 0-5V hoặc 0-10 V hoặc dòng 0-20mA hoặc 4-20 mA
Bộ chuyển đổi này lấy tín hiệu từ cảm biến, biến đổi về dạng chuẩn trên rồi cho chuyển đến bộ ADC rồi mới đưa đến Vi xử lý Khi qua bộ chuẩn hóa tín hiệu được biến
Trang 7đổi tỷ lệ, nếu mẫu tín hiệu x nằm trong khoảng X1-X2 thì tín hiệu ra y phải nằm trong khoảng 0-Y
Đặt tính của chuyển đổi chuẩn hóa thường là tuyến tính: y = y0 + kx (1)
Thay các giá trị đầu vào và đầu ra của CĐCH ta có:
0 = y0+KX1
Y = y0 + KX2
Giải ra ta được:
y0 = -Y.X1/(X2 – X1) ; K = Y/(X2-X1)
Thay vào công thức (1) ta có hàm đặc tính của CĐCH là:
Y = -Y.X1/(X2 – X1) + Y/(X2-X1).x
Là một hàn tuyến tính theo x thỏa mãn yêu cầu của một CĐCH
CĐCH có đầu ra là một tín hiệu một chiều (là dòng hay áp) được thực hiện theo 2 bước:
Bước 1: Trừ đi giá trị ban đầu x=X1 để tạo ra ở đầu ra của CĐCH giá trị y = 0
Bước 2: Thực hiện khuếch đại (K >1) hay suy giảm (K<1)
Để thực hiện việc trừ đi giá trị ban đầu người ta thường sử dụng khâu tự động bù tín hiệu
ở đầu vào hoặc thay đổi hệ số phản hồi của bộ khuếch đại
Ta lấy ví dụ sau đây sơ đồ CĐCH sử dụng cặp nhiệt có đầu ra là điện áp 1 chiều
Hình 5: Chuyển đổi chuẩn hóa đầu ra là áp 1 chiều
Để đo nhiệt độ ta sử dụng cảm biến cặp nhiệt Ở nhiệt độ t0 của môi trường ta luôn có
ở đầu ra một cặp nhiệt một điện áp U0 (tương ứng giá trị X1 ở đầu vào CĐCH) nhưng yêu cầu ở đầu ra của CĐCH phải là y = 0 Vậy ta phải tạo được một điện áp – U0 để bù lại bằng một cầu mà một nhánh bù nhiệt điện trở Rt khi nhiệt độ ở đầu tự do t0 thay đổi, U0
Trang 8cũng thay đổi theo, nhiệt điện trở Rt cũng thay đổi, xuất hiện điện áp –U0 (ngược dấu với
U0) ở đầu ra của cầu và bù lại Kết quả điện áp ở đầu vào khuếch đại bằng 0 khi ở nhiệt
độ bình thường
Điện áp ở đầu ra của cầu được tính toán tương ứng với các loại cặp nhiệt khác nhau (P-P, C-A, C-K)
Chương 2 : Tìm hiểu cảm biến áp suất MPX5100
1 Giới thiệu MPX5100
MPX5100 được thiết kế từ nguyên khối silicon dành cho một loạt các ứng dụng, nhưng đặc biệt người sử dụng có thể ghép nối với một vi xử lý hoặc vi điều khiển có kèm theo một bộ A/D Bộ thiết kế tiên tiến với màng mỏng metallization, lưỡng cực để cung cấp một tín hiệu tương tự với độ chính xác cao tỉ lệ với áp lực đặt vào
MPX5100 có thể ứng dụng vào: điều khiển quá trình, điều khiển động cơ, chuyển đổi áp suất
2 Các đặc trưng của MPX5100
Sai số tối đa là 2,5% ở nhiệt độ từ 0o đến 85oC
Rất thích hợp cho hệ thống nền tảng vi xử lý hoặc vi điều khiển
Sau đây là một số dòng cảm biến MPX5100:
Trang 9Hình 6: Các dòng cảm biến MPX5100
Các đặc tính hoạt động:
Bảng 1: Đặc tính hoạt động (VS= 5.0 Vdc, TA = 25oC, P1>P2, mạch tách thể hiện trong hình 5 yêu cầu đáp ứng thông số kỹ thuật điện)
Bảng 2: Chỉ tiêu định mức
Trang 10 Một sơ đồ khối của mạch tích hợp trên một chip cảm biến áp suất trong gói Unibody
Hình: Sơ đồ của mạch tích hợp trong cảm biến áp suất cho gói Unibody
Sơ đồ khối của mạch tích hợp trên 1 cảm biến áp suất trong gói Small Outline
Hình : Sơ đồ mạch tích hợp cảm biến áp suất cho gói Small Outline
3 Bù nhiệt độ trên chíp
Quan hệ giữa tín hiệu ra của cảm biến và áp suất đầu vào được biểu diễn theo đường đặc tính dưới đây:
Trang 11Hình 7: Đường đặc tính của cảm biến MPX5100 Đường đặc tính của tín hiệu ra chuẩn, minimum và maximum được biểu diễn trên hình trên trong vùng nhiệt độ từ 0 đến 85 độ C
Nguồn cấp và tín hiệu ra
Hình 8: Sơ đồ nguồn cấp được tách và lọc tín hiệu ra
Mặt cắt của các loại cảm biến vi sai và cảm biến tuyệt đối
Hình 9: Mặt cắt ngang của 2 loại cảm biến Một chất keo thành phần silic và flo dùng để cách ly bề mặt chết và dây điện từ môi trương , trong lúc đó vẫn cho phép tín hiệu áp suất truyền tới màng cảm biến
Các dòng cảm biến MPX5100 sử dụng không khí khô làm phương tiện truyền dẫn áp suất
Trang 124 Sai số do nhiệt độ (MPX5100D, MPX5100G, MPXV5100G)
Hệ số nhiệt độ là một đáp ứng tuyến tình từ 0 đến 40 độ C và từ 85 đến 125 độ C
Mức sai số cho phép
Kích thước chân phục vụ cho làm mạch
Hình 10: Trường hợp 482A – 01 gói Small Outline
Trang 13Chương 3: Thiết kế mạch đo áp suất sử
dụng cảm biến MPX5100
1 Yêu cầu
Thực hiện đo áp suất
Tự động chuẩn độ
2 Giải quyết bài toán
Việc đo áp suất sử dụng cảm biến MPX5100 là dòng cảm biến thông minh Việc tìm hiểu cảm biến này đã được trình bày trong chương 2 Cảm biến được chuẩn hóa ra với mức điện áp ra là từ 0.2 đến 4.9 V tương ứng với mức áp suất từ 0 đến 100 kPa
Tín hiệu từ cảm biến sẽ được đưa đến một bộ chuyển đổi ADC Tín hiệu analog từ cảm biến qua ADC sẽ được chuyển thành tín hiệu số.Tín hiệu số này được đưa vào bộ vi xử lý
để xử lý về dạng mã HEX để đưa lên hiển thị trên LCD
Trong đề tài, chúng em chọn bo mạch Arduino UNO để thiết kế mô phỏng cho bài toán của mình Arduino UNO là một bo mạch tích hợp trên đó chip Vi xử lý Atmega 328
và bộ ADC 10 bit (tức là có đến 1024 giá trị) Nghĩa là tại 0 V thì giá trị ADC ra là 0 và tại 5V thì giá trị ADC ra là 1023
Với mức áp suất từ 0 đến 100 kPa, nếu thay đổi áp suất 1 kPa cho LCD thay đổi 1 đơn
vị , khi đó có 100 mức nhảy áp suất Trong khi đó, ADC cho phép đến 210-1 = 1023 mức Tính toán bước nhảy đơn vị : n = 5V/1023 = 0.00489 V Vì vậy sử dụng bo mạch Arduino là hoàn toàn thỏa mãn yêu cầu bài toán
Cũng như vậy, 0.2 V tương đương giá trị ra của ADC là 41 và 4.9 V tương đương giá trị ra của ADC là 1002 Tuy nhiên không phải lúc nào tín hiệu thu được từ cảm biến cũng ở thang đo như thế này, vì thế mà mỗi lần đo ta cần chuẩn độ lại cho phù hợp với từng môi trường đo, để tránh các sai số phi tuyến
Tự động chuẩn độ:
Quá trình tự động chuẩn độ được tiến hành như sau:
Đầu tiên, ta đo các giá trị của tín hiệu chuẩn ghi vào bộ nhớ của vi xử lý, sau đó đo các giá trị của đại lượng cần đo và bằng các công cụ toán học(dưới dạng thuật toán) có thể so sánh, gia công kết quả đo và loại trừ sai số Khi mắc cảm biến vào hệ thống, uP sẽ làm nhiệm vụ điều khiển tín hiệu chuẩn thay đổi , bộ nhớ sẽ ghi lại các giá trị ở đầu ra của cảm biến (giá trị y) tương ứng
Khi đo, đại lượng đo x tác động vào cảm biến tương ứng với giá trị nào của x bộ nhớ sẽ đưa ra giá trị tương ứng của tín hiệu chuẩn đã được ghi từ trước
Trang 14Với cách đó chúng ta có thể loại bỏ được sai số phi tuyến của đặc tính của cảm biến mà dụng cụ số thông thường không thực hiện được Phương pháp này đòi hỏi các cảm biến phải hoàn toàn giống nhau để trong trường hợp hỏng hóc cần phải thay thế sẽ không gây sai số đáng kể Ngược lại nến cảm biến thay thế không giống cảm biến đã chuẩn độ thì phải chuẩn độ lại với cảm biến mới
Với cảm biến áp suất MPX5100, chúng em ứng dụng chương trình tự động chuẩn
độ của Arduino Cảm biến sẽ đọc các giá trị đầu vào trong 5s đầu tiên , Arduino sẽ ghi lại
và xác định xem giá trị nào là lớn nhất và giá trị nào là nhỏ nhất trong các giá trị đó Ban đầu, ta đã khởi tạo các giá trị lớn nhất và nhỏ nhất trong chương trình lập trình cho Arduino Arduino luôn trả về 1 giá trị trong khoảng từ 0 đến 1023 khi đọc 1 giá trị từ chân Analog nối với cảm biến Nhưng như ta đã biết thì 1 cảm biến có thể có giá trị tín hiệu số đầu ra là từ
- Khởi tạo giá trị lớn nhất là MaxValue = 0 và tiến hành đọc xem các giá trị đầu vào, những giá trị nào lớn hơn giá trị MaxValue trước đó thì chuyển giá trị này vào MaxValue
- Khởi tạo giá trị nhỏ nhất là MinValue = 1023 và tiến hành đọc xem các giá trị đầu vào, những giá trị nào nhỏ hơn giá trị MinValue trước đó thì chuyển giá trị này vào MinValue
Như vậy quá trình chuẩn độ đã xong Giờ để đọc các giá trị thu nhận từ cảm biến,
ta trải qua quá trình so sánh để đưa ra giá trị gần đúng nhất, hạn chế được sai số phi tuyến Ta làm như sau:
- Đọc giá trị từ cảm biến rồi chuẩn nó về 1 thang đo mới Cụ thể trong Arduino dùng hàm map() để chuẩn nó về thang đo từ 0 đến 255 (tức là 8 bit)
Công thức chuyển đổi là:
y = (x – MinValue)*255 / (MaxValue-MinValue)
- So sánh xem giá trị y mới này có nằm trong thang đo 0-255 không Nếu nằm trong thì lấy y làm giá trị đo cuối cùng Nếu y < 0 thì lấy giá trị 0 làm giá trị đo được Nếu y >
255 thì lấy giá trị đo được là 255
Chương trình Arduino để chuẩn độ cho cảm biến MPX5100:
const int sensorPin = A0; // chân kết nối với đầu ra của MPX5100
const int ledPin = 9; // giá trị áp suất được đưa ra tại đây
int sensorValue = 0; // giá trị của cảm biến
int sensorMin = 1023; // giá trị nhỏ nhất của cảm biến
int sensorMax = 0; // giá trị lớn nhất của cảm biến
Trang 15pinMode(13, OUTPUT);
sensorValue = analogRead(sensorPin);
if (sensorValue > sensorMax) {
sensorMax = sensorValue;
}
if (sensorValue < sensorMin) {
sensorMin = sensorValue;
}
}
}
voidloop() {
sensorValue = analogRead(sensorPin);
sensorValue = map(sensorValue, sensorMin, sensorMax, 0, 255);
sensorValue = constrain(sensorValue, 0, 255);
}
Giải thích các hàm:
long map(long x, long in_min, long in_max, long out_min, long out_max)
{
return (x - in_min) * (out_max - out_min) / (in_max - in_min) + out_min;
}
constrain(long x, long a, long b)
{
Return x nếu a<x<b
Return a nếu x<a
Return b nếu x>b }
Trang 163 Thiết kế mô phỏng mạch sử dụng ARDUINO UNO
Do điều kiện về thời gian và tài chính, nên em mô phỏng biến đổi tín hiệu từ cảm biến MPX5100 được kết nối với Bo mạch ARDUINO UNO Thay đổi tín hiệu được giả lập bằng cách thay đổi biến trở
Hình 11: Sơ đồ mô phỏng hiển thị tín hiệu lên LCD
Hình 12: Sơ đồ nguyên lý để chuẩn độ MPX5100 dùng ARDUINO UNO