TRƯỜNG ĐẠI HỌC KỸ THUẬT-CÔNG NGHỆ CẦN THƠ
KHOA KỸ THUẬT CƠ KHÍ
------
BÁO CÁO ĐỒ ÁN
ĐỀ TÀI: GIÁM SÁT NHIỆT ĐỘ, ĐỘ ẨM ĐIỀU KHIỂN
ĐỘNG CƠ VÀ XUẤT GIÁ TRỊ RA EXCEL
Môn học phần: Đo Lường & Điều Khiển Bằng Máy Tính
GIẢNG VIÊN HƯỚNG DẪN:
Th.s Nguyễn Lê Thế Duy
Nhóm Sinh Viên Thực Hiện
Họ và tên:
1.
2.
3.
4.
Lê Tuấn Anh 1800315
Đỗ Minh Đang 1800219
Nguyễn Ngọc Xuân Nhi 1800080
Nguyễn Công Hậu 1800093
Ngành: CNKT Điều Khiển và Tự Động Hóa
Cần Thơ , ngày 10 tháng 12 năm 2021
1
LỜI CAM ĐOAN
Em xin cam đoan đề tài : “ Giám sát nhiệt độ, độ ẩm điều khiển động cơ và
xuất giá trị ra excel” này là do chúng em tự thực hiện và được sự hướng dẫn của giảng
viên và trợ giảng. Các kết quả, và số liệu trong đề tài hoàn toàn trung thực và khách
quan. Những số liệu và biểu bảng chúng em chèn vào bài báo cáo nhằm phục vụ cho
việc nghiên cứu và phân tích, nhận xét, đánh giá được thu nhập từ một số web trên
mạng và một số sách tham khảo có ghi rõ nguồn gốc ở phần “ Tài liệu tham khảo”.
Nếu phát hiện có bất kỳ gian lận nào em xin hoàn toàn chịu trách nhiệm về nội dung
đồ án của mình.
Sinh viên thực hiện:
Lê T́n Anh
Đỡ Minh Đang
Ngũn Ngọc Xn Nhi
Nguyễn Công Hậu
GVHD :Nguyễn Lê Thế Duy
1
LỜI NÓI ĐẦU
Trong ứng dụng hàng ngày, nhu cầu theo dõi nhiệt độ và độ ẩm ngày càng trở
nên phổ biến và thiết thực và sử dụng trong: Sản xuất chế biến nông nghiệp. Hiển thị
và thực thi điều khiển (quạt gió, máy sấy, điều hịa,…). Theo dõi mơi trường, chế độ
làm việc của một số dây chuyền, thiết bị có nhu cầu cao.
Khái niệm về đo nhiệt độ và độ ẩm đã có từ rất lâu, trong tất cả các đại lượng
vật lý thì nhiệt độ và độ ẩm được quan tâm nhiều nhất. Nhiệt độ và độ ẩm là yếu tố
ảnh hưởng trực tiếp đến tính chất của vật chất và môi trường sống. Trong công nghiệp
sản xuất và trong lĩnh vực đo lường điều khiển, quá trình đo và xử lí nhiệt độ, độ ẩm
giữ một vai trị quan trọng.
Do đó ta có thể thấy tầm quan trọng và tính thực tế của việc đo và điều chỉnh
nhiệt độ và độ ẩm trong các thiết bị tự động hóa cũng như trong đời sống hàng ngày.
Ở đồ án này nên chúng em chọn đề tài “ Giám sát nhiệt độ, độ ẩm điều khiển động và
xuất giá trị ra excel”. Đây cũng là một trong những đề tài rất sát với thực tế, mang tính
ứng dụng thực tiễn rất cao. Điều đó càng tạo động lực và cảm hứng cho chúng em tìm
tịi và nghiên cứu thêm.
Trong đồ án này chắc hẳn cịn nhiều sai sót, chúng em rất mong nhận được sự
chỉ bảo, hướng dẫn của thầy cũng như sự đóng góp của các bạn sinh viên khác để đồ
án hoàn thiện hơn.
GVHD :Nguyễn Lê Thế Duy
2
LỜI CẢM ƠN
Trước tiên với tình cảm sâu sắc và chân thành nhất, cho phép em được bày tỏ
lòng biết ơn đến tất cả các cá nhân và tổ chức đã tạo điều kiện hỗ trợ, giúp đỡ em
trong suốt quá trình học tập và nghiên cứu đề tài này.
Em xin gửi lời chân thành cảm ơn thầy Nguyễn Lê Thế Duy giảng viên bộ mơn
tự động hóa đã tận tình hướng dẫn, chỉ bảo em trong suốt quá trình làm đồ án.
Em cũng xin chân thành cảm ơn các thầy cơ giáo trong trường ĐHKTCN Cần
Thơ nói chung, các thầy cơ trong Khoa cơ khí nói riêng đã dạy dỗ cho em kiến thức về
các môn đại cương cũng như các mơn chun ngành, giúp em có được cơ sở lý thuyết
vững vàng và tạo điều kiện giúp đỡ em trong suốt quá trình học tập.
Với điều kiện thời gian cũng như kinh nghiệm còn hạn chế, đồ án này khơng
thể tránh những thiếu sót. Em rất mong được sự chỉ bảo đóng góp ý kiến của các thầy
cơ để em có điều kiện bổ sung, nâng cao ý thức của mình, phục vụ tốt hơn những đồ
án sau này.
Kính chúc ban giám hiệu, q thầy cơ hiện đang công tác tại Trường Đại học
Kỹ Thuật – Công Nghệ Cần Thơ và thầy Nguyễn Lê Thế Duy nhiều sức khỏe, thành
công trong cuộc sống.
Em xin chân thành cảm ơn!
MỤC LỤC
GVHD :Nguyễn Lê Thế Duy
3
LỜI CAM ĐOAN.........................................................................................................1
LỜI NÓI ĐẦU..............................................................................................................2
LỜI CẢM ƠN...............................................................................................................3
CHƯƠNG 1 GIỚI THIỆU............................................................................................5
1.1 Giới thiệu đề tài :.................................................................................................5
1.2
Phương pháp nghiên cứu :...............................................................................5
1.3
Mục tiêu đề tài.................................................................................................5
1.4
Nhiệm vụ đề tài :.............................................................................................5
CHƯƠNG 2: TỔNG QUAN VỀ PHẦN CỨNG VÀ PHẦN MỀM..............................6
2.1 Arduino Uno........................................................................................................6
2.2 Cảm biến nhiệt độ - độ ẩm DHT11.....................................................................7
2.3 Phần mềm Labview............................................................................................8
CHƯƠNG 3: GIAO TIẾP ARDUINO VỚI LABVIEW.............................................10
3.1 Linx................................................................................................................. 10
3.2 Tìm kiếm và cài đặt Linx bằng VI Package Manager.....................................10
3.3 Bộ tool điều khiển Linx..................................................................................14
CHƯƠNG 4 : ĐỌC CẢM BIẾN DHT11 VỚI LABVIEW.........................................15
4.1 Thư viện Firmware ngoài cho Arduino...........................................................15
4.2 Chỉnh sửa Firmware cho Arduino................16Error! Bookmark not defined.
CHƯƠNG 5: KẾT QUẢ.............................................................................................20
GVHD :Nguyễn Lê Thế Duy
4
CHƯƠNG 1 GIỚI THIỆU
1.1 Giới thiệu đề tài :
Trong ứng dụng hàng ngày, nhu cầu theo dõi nhiệt độ và độ ẩm ngày càng trở
nên phổ biến và thiết thực và sử dụng trong: Sản xuất chế biến nông nghiệp. Hiển thị
và thực thi điều khiển (quạt gió, máy sấy, điều hịa,…). Ta có thể thấy tầm quan trọng
của việc giám sát nhiệt độ và độ ẩm trong sản xuất và ứng dụng vào đời sống.
1.2 Phương pháp nghiên cứu :
Sử dụng phần cứng chính gồm: Arduino Uno, Cảm biến nhiệt độ - độ ẩm DHT11.
1.3 Mục tiêu đề tài:
Đọc được nhiệt độ và độ ẩm từ cảm biến.
Hiển thị nhiệt độ và đồ ẩm lên Front Panel và xuất giá trị ra Excel.
1.4 Nhiệm vụ đề tài :
Thiết kế phần cứng mạch thực hiện các chức năng:
- Giám sát trên phần mềm Labview : Nhiệt độ và đổ ẩm theo mơi trường thực.
- Thiết kế mơ hình phần cứng sử dụng phần mềm labview để lập trình.
GVHD :Nguyễn Lê Thế Duy
5
CHƯƠNG 2: TỔNG QUAN VỀ PHẦN CỨNG VÀ PHẦN MỀM
1. Arduino Uno
Hình 4.1 Arduino Uno
Một vài thơng số của Arduino UNO R3:
Vi điều khiển
ATmega328 họ 8bit
Điện áp hoạt động
5V DC (chỉ được cấp qua cổng USB)
Tần số hoạt động
16 MHz
Dòng tiêu thụ
khoảng 30mA
Điện áp vào khuyên dùng
7-12V DC
Điện áp vào giới hạn
6-20V DC
Số chân Digital I/O
14 (6 chân hardware PWM)
Số chân Analog
6 (độ phân giải 10bit)
Dịng tối đa trên mỡi chân I/O
30 mA
Dòng ra tối đa (5V)
500 mA
Dòng ra tối đa (3.3V)
50 mA
Bộ nhớ flash
32 KB (ATmega328) với 0.5KB dùng bởi
GVHD :Nguyễn Lê Thế Duy
6
SRAM
EEPROM
bootloader
2 KB (ATmega328)
1 KB (ATmega328)
Arduino UNO có thể sử dụng 3 vi điều khiển họ 8bit AVR là ATmega8,
ATmega168, ATmega328. Bộ não này có thể xử lí những tác vụ đơn giản
như điều khiển đèn LED nhấp nháy, xử lí tín hiệu cho xe điều khiển từ xa,
làm một trạm đo nhiệt độ - độ ẩm và hiển thị lên màn hình LCD,… hay
những ứng dụng khác.
2. Cảm biến nhiệt độ - độ ẩm DHT11
Hình 4.2 DHT11
Cảm biến độ ẩm và nhiệt độ DHT11 Temperature Humidity Sensor là
cảm biến rất thơng dụng hiện nay vì chi phí rẻ và rất dễ lấy dữ liệu thông
qua giao tiếp 1 wire (giao tiếp digital 1 dây truyền dữ liệu duy nhất).
Thông tin kỹ thuật:
+ Nguồn: 3 -> 5 VDC.
+ Dòng sử dụng: 2.5mA max (khi truyền dữ liệu).
+ Khoảng đo độ ẩm: 20%-90% RH (sai số 5%RH).
+ Khoảng đo nhiệt độ: 0-50°C (sai số 2°C).
+ Tần số lấy mẫu tối đa: 1Hz (1 giây / lần).
+ Kích thước 15mm x 12mm x 5.5mm.
GVHD :Nguyễn Lê Thế Duy
7
3. Phần mềm Labview
- Labview (Laboratory Virtual Instrumentation Engineering Workbench) là một phần
mềm máy tính được phát triển bởi cơng ty National Instruments . Labview dùng trong
hầu hết các phòng thí nghiệm , lĩnh vực khoa học kỹ thuật như tự động hóa , điều
khiển , điện tử , cơ điện tử , hàng khơng , hóa sinh , điện tử y sinh ở các nước đặc biệt
là Mỹ , Hàn quốc , Nhật Bản .
Hình 1 : Phần mềm Labview
- Labview có thể đo lường được từ bất kỳ cảm biến (tín hiệu dạng điện áp , dịng
điện , xung) , Labview có thể điều khiển được bất kỳ cơ cấu chấp hành (động cơ
DC/AC , động cơ xăng , bơm thủy lực , lò nhiệt , pistion thủy khí ,vv .) , Labview
truyền qua bất kỳ chuẩn giao tiếp máy tính-máy tính , máy tính - thiết bị như chuẩn
RS232 , chẩn USB , chuẩn PCI , PXI , Wifi , Bluetooth , TCP/IP , . .
- Labview hỗ trợ đắc lực cho các kỹ sư ngành Cơ khí , Cơ điện tử , Robotics , Ơtơ ,
Viễn Thơng và Điện tử trong việc: Tính tốn và thiết kế sản phẩm , sản xuất mẫu
(prototyping) , mô phỏng và đánh giá chất lượng sản phẩm , . .
Bởi vì chương trình LabVIEW mơ phỏng giao diện và hoạt động của các thiết bị thực,
chẳng hạn như dao động ký và thiết bị đo đa năng, chương trình LabVIEW được gọi
là thiết bị ảo (Virtual Instrument), thường gọi tắt là VI. VI có Front Panel và Block
Diagram. Front Panel là giao diện người dùng. Block Diagram là chương trình phía
sau giao diện người dùng. Sau khi bạn xây dựng Front Panel, bạn thêm mã (code) để
điều khiển các đối tượng trên Front Panel bằng cách sử dụng các hình đồ họa đại diện
GVHD :Nguyễn Lê Thế Duy
8
cho các hàm. Mã trên Block Diagram là mã dạng đồ họa, thường được biết đến là G
code (mã G) hoặc Block Diagram code.
Khác với các ngơn ngữ lập trình dạng văn bản, như C++ và Visual Basic, LabVIEW
sử dụng các biểu tượng thay vì các dịng văn bản để tạo ra các ứng dụng. Trong lập
trình dạng văn bản, thứ tự các dịng lệnh xác định trình tự thực hiện chương
trình. LabVIEW sử dụng lập trình đồ họa dạng dịng chảy dữ liệu. Trong lập trình đồ
họa dạng dịng chảy dữ liệu, dòng chảy của dữ liệu qua các nút trên Block Diagram
xác định trình tự thực hiện chương trình. Lập trình đồ họa và thực thi dạng dịng chảy
dữ liệu là hai đặc tính chính làm LabVIEW khác với hầu hết ngơn ngữ lập trình đa
dụng khác.
GVHD :Nguyễn Lê Thế Duy
9
CHƯƠNG 3: GIAO TIẾP ARDUINO VỚI LABVIEW
1. Linx
LINX được tạo ra từ nhà phát triển MakerHub giúp LabVIEW giao
tiếp được với nhiều phần cứng.
Hình 3.1 Linx
2. Tìm kiếm và cài đặt Linx bằng VI Package Manager.
VIPM được cài sẵn trong bộ cài đặt Labview, do đó chúng ta chỉ cần
sử dụng, khơng cần cài lại. Mở VIPM và tìm kiếm từ khố Linx.
Hình 3.2 Tìm kiếm Linx trong VIPM
GVHD :Nguyễn Lê Thế Duy
10
Hình 3.3 Cài đặt Linx
Trước khi sử dụng chúng ta cần cài thêm phần mềm NI VISA.
Hình 3.4 Cài đặt NI VISA
Sau khi cài đặt xong NI VISA, khởi động lại LabVIEW.
Tải Firmware cho Arduino
GVHD :Nguyễn Lê Thế Duy
11
Hình 3.5 Cài Firmware cho Arduino
- Chạy LabVIEW
- Chọn Tools»MakerHub»LINX»Firmware Wizard…
- Chọn phần cứng thích hợp (ở đây là Arduino)
- Chọn Firmware Version và Next.
GVHD :Nguyễn Lê Thế Duy
12
Hình 3.6 Cài Firmware cho Arduino
Hình 3.7 Cài Firmware cho Arduino
GVHD :Nguyễn Lê Thế Duy
13
3. Bộ tool điều khiển Linx
Hình 3.8 Mở bộ tool Linx
GVHD :Nguyễn Lê Thế Duy
14
CHƯƠNG IV: ĐỌC CẢM BIẾN DHT11 VỚI LABVIEW.
1. Thư viện Firmware ngồi cho Arduino.
Chạy LabVIEW
Chọn Tools»MakerHub»LINX»Generate Firmeware Libraries…
Hình 4.1 Mở tool lấy thư viện ngoài cho Arduino
Chọn đường dẫn và nhấn Generate, thư viện sẽ được xuất ra đường dẫn bạn đã
chọn.
GVHD :Nguyễn Lê Thế Duy
15
Hình 4.2 Tool lấy thư viện ngồi cho Arduino
2. Chỉnh sửa Firmware cho Arduino.
Sau khi xuất ra thư viện ngoài, ta tiến hành copy các thành phần như
trong ảnh đến thư viện của Arduino IDE.
Hình 4.3 Thư viện Linx cho Arduino
GVHD :Nguyễn Lê Thế Duy
16
Tiếp
theo
ta
mở
Arduino
IDE
và
chọn
mở
file
LINX>>
Arduino_Uno_Serial.
Hình 4.4. Arduino_Uno_Serial
Ở cuối đoạn vịng lặp, ta chèn đoạn code sau vào:
int myCustomCommand(unsigned char numInputBytes, unsigned char* input,
unsigned char* numResponseBytes, unsigned char* response)
{
int chk = dht.read11(DHT11_PIN);
response[0]=(unsigned char)dht.humidity;
response[1]=(unsigned char)dht.temperature;
*numResponseBytes=2;
}
Hàm này trả về một int và có 4 tham số: unsigned char , unsigned
char *, unsigned char *, unsigned char *.
Tiếp tục chèn đoạn code sau vào hàm Setup (): để đính kèm lệnh tùy
chỉnh vào LINX Listener (trong trường hợp này được gọi là
LinxSerialConnection ):
LinxSerialConnection.AttachCustomCommand(0, myCustomCommand);
Cuối cùng ta cần gọi thư viện dht.h tương ứng với thư viện dht có trong
Arduino IDE. Khai báo chân kết nối và gọi hàm myCustomCommand ra.
Code hoàn chỉnh:
#include
#include <SPI.h>
<Wire.h>
#include <EEPROM.h>
GVHD :Nguyễn Lê Thế Duy
17
#include <Servo.h>
#include <dht.h>
#include <LinxArduinoUno.h>
#include <LinxSerialListener.h>
dht dht;
#define DHT11_PIN 8
int myCustomCommand ();
void setup()
{
LinxDevice = new LinxArduinoUno();
LinxSerialConnection.Start(LinxDevice, 0);
LinxSerialConnection.AttachCustomCommand(0, DHT11);
}
void loop()
{
LinxSerialConnection.CheckForCommands();
}
int myCustomCommand (unsigned char numInputBytes, unsigned char*
input, unsigned char* numResponseBytes, unsigned char* response)
{
int chk = dht.read11(DHT11_PIN);
response[0]=(unsigned char)dht.humidity;
response[1]=(unsigned char)dht.temperature;
*numResponseBytes=2;
}
Tiến hành nạp Firmware cho Arduino Uno và khởi động lại Labview.
GVHD :Nguyễn Lê Thế Duy
18
Hình 4.5 Nạp Firmware cho Aruino Uno
Lúc này ta lập trình Labview với Linx Tool như bình thường và
bỏ qua bước nạp Firmware vì ta đã nạp bằng Code trong Arduino IDE rồi.
Hình 4.6 Block Diagram
GVHD :Nguyễn Lê Thế Duy
19
Hình 4.7 Front Panel
CHƯƠNG V: KẾT QUẢ
Chọn cổng kết nối, tiến hành chạy.
GVHD :Nguyễn Lê Thế Duy
20
Hình 5.1 Kết quả đo và hiển thị nhiệt độ - độ ẩm từ DHT11
Nhiệt độ của môi trường đo được là 28 độ C và độ ẩm là 63%.
Phần cứng mơ hình:
Hình 5.2 Phần cứng mơ hình
GVHD :Nguyễn Lê Thế Duy
21