Sơ đồ kết nối Pin giữa cảm biến DHT22 với Raspberry Pi 4

Một phần của tài liệu Hệ thống giám sát tự động đường dây tải điện sử dụng uav và xử lý ảnh nhiệt (Trang 51 - 57)

Chức năng DHT22 Pin Pi Pin

GND GND Pin 6

VCC VCC Pin 9

DATA Out Pin 7

Để thực hiện giao tiếp với cảm biến DHT22 qua GPIO của Raspberry Pi, ta sử

dụng thư viện pigpiod_if2. Thuật toán đọc dữ liệu từ cảm biến DHT22 được tham khảo tại đường dẫn: https://abyz.me.uk/rpi/pigpio/code/DHTXXD.zip

Xlý đo nhiệt độ vt th

Phát hiện đối tượng có nhiệt độ cao

Từ dữ liệu 160 x 120 với sốlượng điểm ảnh lên đến 19200 thì việc áp dụng các cơng thức tính tốn nhiệt độ lên tồn bộ các điểm ảnh sẽ tạo ra một khối lượng phép tính lớn, làm tốn thời gian và năng lượng để thực hiện tính tốn. Việc này sẽ khơng tối ưu đối với các hệ thống nhúng, do đó trước khi thực hiện các thao tác tính tốn nhiệt độ, ta sẽ áp dụng các thuật toán tiền xử lý nhằm mục đích tìm ra các điểm ảnh tương ứng với các đối tượng cần tính tốn nhiệt độ, cụ thểở đây là các đối tượng có nhiệt độcao hơn ngưỡng đặt trước.

40

Ý tưởng cho thuật toán tiền xửlý được thực hiện như Hình 3.15. Ta sử dụng các hàm threshold(), findCountour(), boundingBox() của thư viện OpenCV cho khung hình đọc được từ camera để thu được các bounding box là tọa độ các hình chữ nhật bao quanh các vật thể hay đối tượng có nhiệt độ cao xuất hiện trong khung hình.

Hình 3.15: Tiền xử lý phát hiện đối tượng có nhiệt độ cao

Chương trình thực hiện thuật toán tiền xử lý áp dụng thư viện OpenCV:

std::vector<cv::Rect> objects; cv::Mat bit_map, dilation_map;

// Apply threshold filter

cv::threshold(input, bit_map, threshold, 255, cv::THRESH_BINARY);

bit_map.convertTo(bit_map, CV_8UC1);

// Apply Dilate Transformation

cv::Mat dila_ele = cv::getStructuringElement(cv::MORPH_RECT, cv::Size(3, 3)); cv::dilate(bit_map, dilation_map, dila_ele, cv::Point(-1, -1), 2);

// Find outter contours

std::vector<std::vector<cv::Point>> contours; cv::findContours(dilation_map, contours,

cv::RETR_EXTERNAL, cv::CHAIN_APPROX_SIMPLE);

cv::Mat mask = cv::Mat::zeros(input.size(), CV_8UC1);

for (size_t i = 0; i < contours.size(); i++) {

cv::rectangle(mask, cv::boundingRect(contours[i]), cv::Scalar(255, 255, 255));

}

cv::findContours(mask, contours, cv::RETR_EXTERNAL, cv::CHAIN_APPROX_SIMPLE);

// Find bounding box

for ( size_t i = 0; i < contours.size(); i++ ) {

cv::Rect box = cv::boundingRect(contours[i]);

if (std::max(box.width, box.height) > 3)

objects.push_back(box); }

Tính tốn nhiệt độ điểm trên đối tượng

Như đã biết dữ liệu tại mỗi điểm ảnh camera FLIR Lepton xuất đã đã mang giá

trị nhiệt độ camera tính tốn được rồi. Tuy nhiên, nhiệt độ này camera tính tốn

được chỉ dựa trên năng lượng bức xạ hồng ngoại camera thu được từ cảm biến, nên nếu ta lấy đây là nhiệt độ vật thể ln thì sẽ gây ra sai số lớn bởi vì để tính

tốn được nhiệt độ thực của vật thể ta cần dựa vào các thông số emissivity và transmission trong từng trường hợp đo lường cụ thể.

Sau khi đã có được tọa độ các bounding box từ các thuật tốn tiền xử lý đã trình

41 có giá trị lớn nhất để đi tính tốn lại nhiệt độtương ứng với điểm ảnh này. Ta áp dụng công thức PT 3.8 đã trình bày ở phần 3.5 để thực hiện tính tốn.

Hin th hình nh

Cuối cùng, khi đã có được đầy đủ các dữ liệu về tọa độ điểm có nhiệt độ cao, nhiệt độđiểm tương ứng và tọa độ bounding box của vật thể cần đo nhiệt độ. Ta sẽ thực hiện vẽ chúng lên hình ảnh thu được từ 2 camera FLIR Lepton và Pi

Camera để hiển thị lên màn hình (Hình 3.16).

42

CHƯƠNG 4. TH NGHIM H THNG 4.1 Th nghiệm đo nhiệt độ s dng camera FLIR Lepton 3.5 4.1 Th nghiệm đo nhiệt độ s dng camera FLIR Lepton 3.5

Thiết b th nghim

Hình 4.1: Bộ thiết bị thử nghiệm đo nhiệt độ với FLIR Lepton 3.5

Bộ thiết bị thử nghiệm gồm có:

• Bộ xử lý trung tâm Raspberry Pi

• Camera nhiệt FLIR Lepton 3.5

• Cảm biến nhiệt độ, độẩm DHT22

• Camera thường Pi Camera

• Đồng hồđo Extech EX330 (Hình 4.2)

• Camera nhiệt cầm tay FLIR I3 (Hình 4.2)

43 Các camera và cảm biến đều được kết nối đến Raspberry Pi 3 thông qua dây nối riêng biệt (Hình 4.1).

Th nghim chng minh cơng thc

Phương pháp thử nghiệm

Ở thử nghiệm này, ta lựa chọn vật thể khảo sát nhiệt độ là một cốc nước. Ta sẽ

thực hiện đo nhiệt độ nước trong cốc bằng camera FLIR Lepton 3.5. Nhiệt độđo được sẽ tham chiếu với nhiệt độ thực của cốc nước được đo thơng qua đồng hồ đo có đầu đo ngâm vào trong nước. Hệ thống thử nghiệm được bố trí theo mơ

hình như Hình 4.3.

Hình 4.3: Bố trí hệ thống thử nghiệm đo nhiệt độ

Camera FLIR Lepton 3.5 được treo cách cốc nước 1 mét, dữ liệu hình ảnh và nhiệt độ từ camera sẽ được truyền về bộ xử lý trung tâm Raspberry Pi 4 để tính tốn theo PT 3.8.

44

• Thơng số nhiệt độ mơi trường (T )atm và nhiệt độ vật thể phản xạ (T )reft được coi là bằng nhau (vì nước có emissivity cao) và bằng nhiệt độ đo được từ cảm biến DHT22.

• Thơng số transmission ( )τ được tính tốn theo phương pháp được trình bày ở phần 3.5.3.

Hình 4.4: Hình ảnh đo nhiệt độ từ FLIR Lepton 3.5

Ta thực hiện đo nhiệt độ nước với dải thông số emissivity ( )ε từ 0.92 – 0.99, nhiệt độ nước nằm trong khoảng từ 37.78oC – 75.56oC (100K – 168K). Ví dụ cho hình ảnh đo nhiệt độ thu thập được từcamera FLIR Lepton 3.5 được thể hiện trên Hình 4.4.

Các bước tiến hành thử nghiệm lần lượt như sau:

- Bước 1: Ta đọc dữ liệu nhiệt độ mà Camera FLIR đo được và trả ra (dữ

liệu nhiệt độchưa được turning)

- Bước 2: Nhiệt độ ở bước 1 sẽ đóng vai trị là Ttotđể thay vào PT 3.8 và

tính được nhiệt độ thật của vật thể cần đo nhiệt độ (T )obj .

- Bước 3: Ta thực hiện lưu lại các cặp nhiệt độ Ttot−Tobj kết hợp với nhiệt độ đo được bằng đồng hồđo để tính sai số trung bình.

- Bước 4: Ta giữ nguyên giá trị Ttotvà thay đổi giá trị Offset – O trong PT 3.8 để tính ra giá trị Tobj tương ứng khác. Việc thay đổi giá trị Offset này nhằm mục đích tìm ra giá trị tối ưu sao cho sai số trung bình của phép đo

nhiệt độ là nhỏ nhất.

Lưu ý: Nhà sản xuất FLIR cung cấp cho người sử dụng một thông số Offset – O

(PT 3.5) phục vụ turning cho việc đo nhiệt độ chính xác hơn. Do đó, trước tiên ta

sẽ sử dụng thơng số Offset mặc định của FLIR, rồi sau đó sẽ thực hiện turning để

cho ra kết quả đo chính xác nhất.

Kết quả thử nghiệm

Thử nghiệm chứng minh công thức

45

Một phần của tài liệu Hệ thống giám sát tự động đường dây tải điện sử dụng uav và xử lý ảnh nhiệt (Trang 51 - 57)

Tải bản đầy đủ (PDF)

(70 trang)