Tải bản đầy đủ (.pdf) (34 trang)

Đề tài điều khiển nhiệt độ và độ ẩm tự động

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (3.4 MB, 34 trang )

<span class="text_page_counter">Trang 1</span><div class="page_container" data-page="1">

<b>TRƯỜNG ĐẠI HỌC MỞ - HÀ NỘIKHOA ĐIỆN - ĐIỆN TỬ</b>

<b>Mơn học: Hệ Thống NhúngNhóm 1</b>

<b>Lớp K23D</b>

<b>Đề tài: Điều khiển nhiệt độ và độ ẩm tự độngGiảng viên hướng dẫn: Thầy Hoàng Anh Dũng</b>

<b>Sinh viên thực hiện: Hoàng Tiến Đạt20A17010087</b>

<b>Hà Nội, ngày 26 tháng 10 năm 2023</b>

</div><span class="text_page_counter">Trang 2</span><div class="page_container" data-page="2">

1.Tầm quan trọng của điều khiển nhiệt độ và độ ẩm. ... 4

1.1.Mục tiêu của đề tài ... 4

1.2.Vấn đề giải quyết ... 4

1.3 Thiết Kế Hệ Thống ... 5

Chương 2 : Giải quyết vấn đề. ... 6

1.Các linh kiện cần thiết cho dự án ... 6

2.Giới thiệu linh kiện sử dụng ... 6

2.1Vi điều khiển Pic16f877A ... 6

</div><span class="text_page_counter">Trang 3</span><div class="page_container" data-page="3">

Chương II Thi công mạch thật ... 14

2.Mô phỏng trên proteus ... 14 Lưu đồ thuật toán ... 29

Chương III Kết luận ... 29

TÀI LIỆU THAM KHẢO ... 33

</div><span class="text_page_counter">Trang 4</span><div class="page_container" data-page="4">

<b>LỜI NÓI ĐẦU</b>

Thời tiết là một phần không thể thiếu trong cuộc sống hàng ngày của chúng ta. Việc theo dõi nhiệt độ và độ ẩm trong môi trường xung quanh chúng ta không chỉ giúp chúng ta dự đoán điều kiện thời tiết, mà cịn có thể ảnh hưởng đến nhiều khía cạnh khác của cuộc sống Dự án "Theo Dõi Thời Tiết với DHT11 Sensor và Điều Khiển Ra Tín Hiệu" mang đến một ví dụ cụ thể về cách có thể xây dựng một hệ thống thời tiết cơ bản sử dụng linh kiện và cơng nghệ có sẵn. Thông qua việc sử dụng cảm biến DHT11, một màn hình hiển thị LCD, và các nút điều khiển, dự án này cho phép bạn đo nhiệt độ và độ ẩm từ môi trường xung quanh và theo dõi chúng trực tiếp.

Dự án này cũng giới thiệu một khía cạnh quan trọng khác của việc theo dõi thời tiết: khả năng điều khiển thiết bị dựa trên các giá trị đo được. Trong trường hợp này, bạn có thể cài đặt ngưỡng nhiệt độ và độ ẩm và điều khiển ra tín hiệu tùy theo sự thay đổi của dữ liệu thời tiết.

Chúng em hy vọng rằng dự án này sẽ cung cấp cho bạn một ý tưởng cơ bản về cách xây dựng một hệ thống theo dõi thời tiết và điều khiển ra tín hiệu, và sẽ khuyến khích bạn thử nghiệm và mở rộng nó để phục vụ các mục đích cụ thể của bạn. Nhóm em xin được gửi lời cảm ơn đến các thầy cô trong khoa ĐIỆN - ĐIỆN TỬ đã giảng dạy và truyền đạt kiến thức chuyên ngành cho chúng em trong thời gian chúng em học trong trường. Đặc biệt nhóm em gửi lời cảm ơn sâu sắc tới thầy

<b>Hoàng Anh Dũng đã trực tiếp hướng dẫn, giúp đỡ cũng như tạo điều kiện thuận </b>

lợi nhất để nhóm em có thể hồn thành tốt đề tài này.

</div><span class="text_page_counter">Trang 5</span><div class="page_container" data-page="5">

<b>Chương 1: Đặt vấn đề</b>

<b>1. Tầm quan trọng của điều khiển nhiệt độ và độ ẩm.</b>

Điều khiển nhiệt độ không chỉ là một giải pháp thực tiễn mà cịn đóng vai trị quan trọng trong việc tối ưu hóa q trình phơi sản phẩm. Với sự kết hợp của các công nghệ nhúng, cảm biến và thuật tốn điều khiển, chúng ta có khả năng tạo ra một hệ thống linh hoạt, hiệu quả và tiết kiệm năng lượng. Điều này không chỉ giúp chúng ta tiết kiệm thời gian mà cịn đóng góp vào bảo vệ mơi trường và giảm lượng tiêu thụ năng lượng không cần thiết.

<b>1.1. Mục tiêu của đề tài.</b>

Mục tiêu chính của dự án "<b>Điều khiển nhiệt độ và độ ẩm tự động</b>" là xây dựng một hệ thống hồn chỉnh và tự động hóa. Điều này bao gồm việc thiết kế cảm biến để theo dõi môi trường xung quanh, và phát triển phần mềm điều khiển thông minh. Chúng em đặt ra những mục tiêu cụ thể sau đây:

Xây dựng một hệ thống tự động có khả năng điều chỉnh nhiệt độ và độ ẩm dựa trên điều kiện mơi trường.

Tối ưu hóa hiệu suất và tiết kiệm năng lượng thông qua các thuật tốn điều khiển.

Đảm bảo tính an tồn và độ tin cậy của hệ thống.

<b>1.2. Vấn đề giải quyết.</b>

Để đạt được mục tiêu của dự án, chúng em sử dụng kiến thức cơ bản về điều khiển nhúng, cảm biến, và kỹ thuật điều khiển. Các thành phần chính của kiến thức này bao gồm:

</div><span class="text_page_counter">Trang 6</span><div class="page_container" data-page="6">

<b>Điều Khiển Nhúng: Chúng em sử dụng vi điều khiển nhúng như lập trình</b>

Pic và CCS để thực hiện các nhiệm vụ điều khiển và thu thập dữ liệu.

<b>Cảm Biến: Các cảm biến như cảm biến nhiệt độ và độ ẩm DHT11.Kỹ Thuật Điều Khiển: Chúng em lập trình các thuật toán điều khiển, để</b>

điều khiển nhiệt độ và cài đặt nhiệt độ cho dự án.

<b>1.3 Thiết Kế Hệ Thống</b>

Phần quan trọng của dự án là thiết kế hệ thống. Chúng em đã xây dựng một cơ cấu cơ học, lắp đặt các cảm biến cần thiết và phát triển phần mềm điều khiển thông qua các bước sau:

<b>Xây dựng Cơ Cấu Cơ Học: Để điều khiển nhiệt độ và độ ẩm hoạt động một</b>

cách hiệu quả, chúng em phải thiết kế và chế tạo các bộ phận cơ học phù hợp để điều khiển một cách hợp lý.

<b>Lắp Đặt Cảm Biến: Chúng em đặt các cảm biến DHT11 tại các vị trí để theo</b>

dõi mơi trường xung quanh. Điều này giúp hệ thống có thơng tin cần thiết để điều chỉnh nhiệt độ và độ ẩm.

<b>Phát Triển Phần Mềm Điều Khiển: Việc lập trình phần mềm điều khiển đóng</b>

vai trò quan trọng trong dự án. Chúng em đã phát triển thuật toán điều khiển, kết hợp các dữ liệu từ cảm biến và điều khiển các hành động của relay.

</div><span class="text_page_counter">Trang 7</span><div class="page_container" data-page="7">

<b>Chương 2 : Giải quyết vấn đề.</b>

<b>1.</b>

<b>Các linh kiện cần thiết cho dự án</b>

<b>2.</b>

<b>Giới thiệu linh kiện sử dụng.</b>

PIC16F877A là một trong những con vi điều khiển 8-bit phổ biến và được sử dụng rộng rãi trong ứng dụng nhúng. Nó thuộc vào dòng sản phẩm PIC (Peripheral Interface Controller) của Microchip

</div><span class="text_page_counter">Trang 8</span><div class="page_container" data-page="8">

Technology, một trong những nhà sản xuất nổi tiếng trong lĩnh vực vi điều khiển nhúng. Dưới đây là một giới thiệu cơ bản về PIC16F877A:

<b>Kiến Thức Vi Điều Khiển 8-Bit: PIC16F877A là một vi điều khiển 8-bit, có </b>

nghĩa là nó xử lý dữ liệu và thực hiện các nhiệm vụ điều khiển với bộ dữ liệu 8-bit trong mỗi chu kỳ xung. Điều này làm cho nó phù hợp cho các ứng dụng đơn giản và trung bình.

<b>Các Cổng GPIO (General-Purpose Input/Output): PIC16F877A có nhiều </b>

chân GPIO cho phép bạn kết nối nó với các thiết bị ngoại vi như cảm biến, màn hình LCD, LED, và nhiều thiết bị khác. Các chân GPIO này có thể được cấu hình là đầu vào hoặc đầu ra tùy theo nhu cầu ứng dụng.

<b>Chuỗi Bộ Nhớ Flash: PIC16F877A có bộ nhớ Flash tích hợp, cho phép bạn </b>

lưu trữ và nạp các chương trình ứng dụng. Điều này làm cho việc nâng cấp và

<b>sửađổi phần mềm trở nên dễ dàng. Các Chức Năng Ngoại Vi: Nó được trang bị </b>

nhiều chức năng ngoại vi như bộ chia tần số (timer), bộ đếm (counter), bộ chuyển đổi analog-to-digital (ADC) và giao diện nối tiếp (UART) để hỗ trợ các ứng dụng khác nhau.

</div><span class="text_page_counter">Trang 9</span><div class="page_container" data-page="9">

<b>2.2 Ứng Dụng Thông Thường:</b>

PIC16F877A được sử dụng rộng rãi trong các ứng dụng như:

<b>Điều khiển thiết bị gia đình: Điều khiển đèn, quạt, và các thiết bị gia dụng </b>

thơng qua các chương trình nhúng.

<b>Điều khiển robot nhúng: Sử dụng để kiểm soát các robot đơn giản và các hệ</b>

thống tự động hóa.

<b>Hệ thống đo lường và điều khiển: Điều khiển các hệ thống tự động hóa như tủ </b>

điện, máy ép và các thiết bị đo lường.

<b>Ứng dụng Iot đơn giản: Sử dụng PIC16F877A để thu thập dữ liệu từ các cảm </b>

biến và gửi chúng đến máy chủ qua giao diện nối tiếp hoặc mạng.

PIC16F877A là một trong những vi điều khiển phổ biến và thường được sử dụng trong các dự án nhúng. Việc làm quen với nó cung cấp một nền tảng tốt để phát triển các ứng dụng nhúng đơn giản và trung bình.

</div><span class="text_page_counter">Trang 10</span><div class="page_container" data-page="10">

transistor ở bên trong để cách ly điện, giúp ngăn ngừng các tín hiệu hoặc điện áp từ mạch gốc tác động lên mạch đích.

<b>Nguyên tắc Hoạt Động: IC PC817 hoạt động bằng cách sử dụng một đèn LED</b>

nhỏ bên trong để phát ra ánh sáng. Ánh sáng này chiếu vào một cặp cảm biến ánh sáng ở bên kia của IC. Khi đèn LED được bật, nó tạo ra ánh sáng và kích thích cặp cảm biến ánh sáng, làm cho transistor bên trong IC PC817 bắt đầu dẫn điện hoặc ngắt điện tùy thuộc vào tín hiệu ánh sáng.

<b>Ứng Dụng Phổ Biến: IC PC817 thường được sử dụng để cách ly điện trong các</b>

ứng dụng như điều khiển tải từ mạch gốc mà không cần tiếp xúc vật lý với nó. Điều này có thể bảo vệ mạch đích khỏi nhiễu điện, chống cắt ngắt điện áp ngược, và tạo ra sự cách ly an toàn trong các mạch nguồn điện lớn.

<b>Cấu Trúc IC PC817: IC PC817 bao gồm một đèn LED ở một bên và một cặp</b>

transistor ở bên cịn lại. Nó có thể có nhiều biến thể với các tính năng khác nhau, chẳng hạn như số chân, loại bọc chất cách điện, và khả năng cách ly.

</div><span class="text_page_counter">Trang 11</span><div class="page_container" data-page="11">

<b>Cách Sử Dụng: Để sử dụng IC PC817, bạn cần kết nối nó vào mạch điện của </b>

bạn. Bạn cần cung cấp dòng điện cho đèn LED ở một bên và sử dụng transistor bên kia để điều khiển tín hiệu hoặc điện áp trong mạch đích.

<b>Ưu Điểm: IC PC817 giúp cách ly an toàn giữa các mạch điện khác nhau, chống </b>

nhiễu điện, và giảm thiểu nguy cơ sự cố trong các ứng dụng công nghiệp.

IC PC817 là một thành phần quan trọng trong thiết kế điện tử và điện tử công nghiệp, đặc biệt trong các ứng dụng yêu cầu cách ly điện an toàn.

<b>4.</b>

<b>Cảm biến DHT11</b>

DHT11 là một cảm biến nhiệt độ và độ ẩm có giá trị kinh tế và phổ biến trong các ứng dụng theo dõi môi trường và điều khiển. Dưới đây là một giới thiệu về cảm biến DHT11:

DHT11 hoạt động bằng cách sử dụng một cặp cảm biến ánh sáng để đo nhiệt độ và độ ẩm. Cảm biến nhiệt độ được làm từ một loại chất liệu có hệ số nhiệt độ đổi màu, trong khi cảm biến độ ẩm là một cảm biến sợi sợi.

</div><span class="text_page_counter">Trang 12</span><div class="page_container" data-page="12">

Thông tin đo được truyền ra bên ngồi thơng qua giao tiếp số, thơng thường sử dụng giao tiếp dạng 1-wire hoặc 2-wire.

<b>4.3. Ứng dụng:</b>

Giám sát thời tiết: DHT11 thường được sử dụng trong các dự án dự đoán thời tiết tại nhà hoặc trong các trạm thời tiết cá nhân.

Quản lý môi trường: Cảm biến DHT11 có thể được sử dụng để giám sát và điều khiển mơi trường trong các phịng ẩm, nhà kính, hoặc kho lạnh.

Các dự án IoT: Nó có thể được tích hợp vào các dự án Internet of Things (IoT) để theo dõi điều kiện thời tiết và môi trường từ xa.

Các ứng dụng gia đình thơng minh: DHT11 có thể được sử dụng trong các ứng dụng như hệ thống điều khiển nhà thông minh để điều chỉnh nhiệt độ và độ ẩm.

<b>4.4 Giới hạn</b>

Mặc dù DHT11 là một cảm biến phổ biến và giá rẻ, nó có một số hạn chế về độ chính xác và phạm vi đo so với các cảm biến cao cấp hơn như DHT22 hoặc các loại cảm biến nhiệt độ và độ ẩm khác.

DHT11 là một cảm biến tiện lợi cho các dự án đo nhiệt độ và độ ẩm cơ bản, đặc biệt trong các ứng dụng DIY và các dự án nhỏ. Nó dễ sử dụng và cung cấp thơng tin cơ bản về mơi trường mà nó được sử dụng.

</div><span class="text_page_counter">Trang 13</span><div class="page_container" data-page="13">

<b>5. IC 7805</b>

IC 7805 là một loại vi mạch ổn áp (voltage regulator IC) phổ biến và được sử dụng rộng rãi trong các ứng dụng điện tử. Nó là một phần quan trọng trong việc cung cấp điện áp ổn định cho các linh kiện điện tử khác trong mạch điện. Dưới đây là một giới thiệu về IC 7805:

<b>5.1 Nguyên tắc hoạt động:</b>

IC 7805 hoạt động theo nguyên tắc của một bộ ổn áp dạng linear (linear voltage regulator). Nó nhận một điện áp không ổn định đầu vào và biến nó thành một điện áp ổn định đầu ra. Điều này đạt được bằng cách sử dụng các thành phần điện tử bên trong IC để điều chỉnh đầu ra để ln duy trì ổn định dưới điều kiện thay đổi đầu vào.

<b>5.2 Đặc Điểm Chính:</b>

Điện Áp Đầu Ra Ổn Định: IC 7805 cung cấp một điện áp đầu ra ổn định ở mức +5VDC, độ chính xác và ổn định trong phạm vi độ rộng của điện áp đầu vào.

<b>Ngõ vào Rộng: IC này có khả năng hoạt động với điện áp đầu vào từ khoảng </b>

7V đến 35V, tùy thuộc vào phiên bản cụ thể của nó. Điều này làm cho nó phù hợp cho nhiều ứng dụng khác nhau.

</div><span class="text_page_counter">Trang 14</span><div class="page_container" data-page="14">

<b>Dòng Điện Đầu Ra Lớn: IC 7805 có khả năng cung cấp dòng điện đầu ra lên </b>

đến 1A hoặc thậm chí 1,5A, giúp nó phù hợp cho nhiều ứng dụng u cầu dịng điện lớn.

<b>Bảo Vệ Nhiệt Độ: Nó đi kèm với bảo vệ nhiệt độ để ngăn chảy nếu dòng điện</b>

đầu ra quá lớn hoặc nhiệt độ quá cao.

<b>3 Chân Kết Nối Dễ Dàng: IC 7805 có ba chân kết nối: đầu vào, đất, và đầu ra, </b>

làm cho nó dễ dàng để tích hợp vào mạch điện.

<b>5.3 Ứng Dụng:</b>

IC 7805 có rất nhiều ứng dụng trong các mạch điện tử, bao gồm:

<b>Nguồn Cung Cấp Điện Tích Hợp: Sử dụng IC 7805 để cung cấp nguồn cấp </b>

cho các linh kiện điện tử như vi điều khiển, bộ vi xử lý, và các mạch logic.

<b>Nguồn Cung Cấp Arduino: IC 7805 thường được sử dụng để cung cấp nguồn </b>

cấp +5V cho các bo mạch Arduino.

<b>Ứng Dụng Tích Hợp Hệ Thống: Nó được sử dụng trong các ứng dụng dân </b>

dụng và công nghiệp như nguồn cung cấp điện cho các thiết bị điện tử.

<b>Linh Kiện Mạch Điện Nhỏ Gọn: Trong các dự án nhúng hoặc mạch điện tử tự</b>

chế, IC 7805 giúp đơn giản hóa việc cung cấp nguồn điện ổn định.

IC 7805 là một linh kiện quan trọng và phổ biến trong ngành điện tử, giúp cung cấp nguồn điện ổn định cho nhiều ứng dụng khác nhau.

</div><span class="text_page_counter">Trang 15</span><div class="page_container" data-page="15">

<b>Chương II Thi công mạch thật</b>

<b>2. Mô phỏng trên proteus</b>

<b>2.1 Thiết kế mạch in</b>

</div><span class="text_page_counter">Trang 16</span><div class="page_container" data-page="16">

KHỐỐI VI X LÝ 16f877AỬ <sub>KHỐỐI C M</sub><sub>Ả BIẾỐN</sub>

</div><span class="text_page_counter">Trang 18</span><div class="page_container" data-page="18">

//khai bao bien cuc bo o day

unsigned int8 dh_nhiet_do,dh_nhiet_do2,dh_do_am,dh_do_am2;

</div><span class="text_page_counter">Trang 21</span><div class="page_container" data-page="21">

if(dh_nhiet_do>=NhietDoMax && dh_do_am<=DoAmMin)

</div><span class="text_page_counter">Trang 28</span><div class="page_container" data-page="28">

<b>2.5.1 nguyên lý hoạt động của code</b>

<b>Khai báo Biến và Khởi Tạo: Mã code bắt đầu bằng việc khai báo và khởi tạo </b>

các biến cần thiết, bao gồm Option (một biến để xác định trạng thái hoạt động), NhietDoMax, NhietDoMin, DoAmMax, và DoAmMin (các ngưỡng đo nhiệt độ và độ ẩm).

<b>Ngắt Nút Menu (INT_RB): Một ngắt đã được cài đặt để theo dõi trạng thái </b>

của nút MENU. Khi người dùng nhấn nút này, chương trình sẽ tăng biến Option lên và kiểm tra xem nó có vượt q giá trị 4 hay khơng. Nếu vượt quá, Option sẽ được đặt lại thành 0.

<b>Đọc Dữ Liệu DHT11: Một vịng lặp chính (while(TRUE)) được sử dụng để </b>

đọc dữ liệu từ cảm biến DHT11. Cảm biến này được đọc bằng hàm

DHT_GetTemHumi, và kết quả nhiệt độ và độ ẩm được lưu trữ trong các biến dh_nhiet_do, dh_nhiet_do2, dh_do_am, và dh_do_am2.

</div><span class="text_page_counter">Trang 29</span><div class="page_container" data-page="29">

<b>Hiển Thị Dữ Liệu LCD: Dữ liệu nhiệt độ và độ ẩm sau đó được hiển thị trên </b>

màn hình LCD sử dụng hàm printf. Nó cũng hiển thị ngưỡng nhiệt độ và độ ẩm cài đặt.

<b>Điều Khiển Ra Tín Hiệu: Dựa trên giá trị đo được (nhiệt độ và độ ẩm), </b>

chương trình kiểm tra nếu nhiệt độ cao hơn NhietDoMax và độ ẩm thấp hơn DoAmMin, thì nó sẽ đặt tín hiệu ra tại chân TAI_1 và TAI_2 là HIGH. Nếu nhiệt độ thấp hơn NhietDoMin và độ ẩm cao hơn DoAmMax, tín hiệu ra tại chân TAI_1 và TAI_2 sẽ được đặt là LOW.

<b>Cài Đặt Ngưỡng (Option): Chương trình có một số trạng thái hoạt động khác </b>

nhau, được điều khiển bởi biến Option. Các trạng thái này cho phép người dùng cài đặt ngưỡng nhiệt độ và độ ẩm tùy chỉnh.

<b>Mã code hoạt động theo nguyên tắc sau đây: đọc dữ liệu từ cảm biến </b>

DHT11, hiển thị nó trên màn hình LCD, và điều khiển ra tín hiệu tùy theo giá trị đo được và cài đặt ngưỡng của người dùng.

</div><span class="text_page_counter">Trang 31</span><div class="page_container" data-page="31">

<b>Chương III Kết luận</b>

Sau khi trải qua những buổi học và quá trình nghiên cứu thực hiện đồ án với sự

<b>hướng dẫn của Thầy Hoàng Anh Dũng em đã thành cơng trong việc xây dựng mơ </b>

hình "Hệ thống điều khiển nhiệt độ và độ ẩm sử dụng vi điều khiển PIC16F877A" trong khung thời gian đề ra bởi nhà trường. Mặc dù đã đạt được một số thành tựu đáng kể trong đồ án này, nhưng nhận thức được rằng kiến thức của em vẫn còn hạn chế và thời gian thực hiện dự án có hạn, dẫn đến việc cịn một số điểm yếu cần cải thiện.

Từ đồ án này, tôi đã học được và làm quen với nhiều kiến thức quan trọng, bao gồm:

Vi điều khiển PIC 16F877A: Em đã nắm vững kiến thức về vi điều khiển và cách lập trình cho nó. Điều này đã giúp Em hiểu rõ về việc điều khiển và tự động hóa các hệ thống điện tử.

Thiết kế Mạch Điện Tử: Em đã học cách thiết kế mạch điện tử cho hệ thống, bao gồm kết nối vi điều khiển, cảm biến và động cơ.

Lập Trình và Điều Khiển: Em đã phát triển kỹ năng lập trình và điều khiển hệ thống, từ việc xử lý tín hiệu đến quản lý thời gian và điều khiển động cơ.

Mặc dù đồ án cịn một số hạn chế, nhưng nó là một bước quan trọng trong hành trình học tập và nghiên cứu của nhóm chúng em. Và đã xây dựng mơ hình điều khiển nhiệt độ và độ âm tự động với những kiến thức và kỹ năng mới học, và nhóm

<b>chúng em,rất biết ơn sự hỗ trợ và hướng dẫn từ Thầy Hồng Anh Dũng trong suốt </b>

q trình thực hiện dự án.

<b>Ưu điểm của dự án này :</b>

</div>

×