1. Trang chủ
  2. » Luận Văn - Báo Cáo

Báo cáo đồ án Điện - Điện tử: Điều khiển nhiệt độ hiển thị trên Led ma trận nối tiếp

37 125 0

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Định dạng
Số trang 37
Dung lượng 2,23 MB

Nội dung

Đồ án nghiên cứu về điều khiển nhiệt độ hiển thị trên Led ma trận nối tiếp, bao gồm 4 chương với các nội dung tổng quan về đề tài; cơ sở lý thuyết; thiết kế và thi công phần cứng; đánh giá và kết luận.

BỘ CƠNG THƯƠNG TRƯỜNG ĐẠI HỌC CƠNG NGHIỆP THỰC PHẨM TP. HỒ CHÍ MINH KHOA CƠNG NGHỆ ĐIỆN – ĐIỆN TỬ ­­­­­­­­ BÁO CÁO ĐỒ ÁN CHUN NGÀNH ĐỀ TÀI: ĐIỀU KHIỂN NHIỆT ĐỘ HIỂN THỊ TRÊN LED MA  TRẬN  NỐI TIẾP                         GVHD:  NGUYỄN PHÚ CƠNG SINH VIÊN THỰC HIỆN MSSV DƯƠNG HÀO QUANG 2032170077 TP. HỒ CHÍ MINH, 14 tháng 07, năm 2020         TRƯỜNG ĐH CƠNG NGHIỆP THỰC PHẨM TP. HCM                       KHOA CƠNG NGHỆ ĐIỆN – ĐIỆN TỬ CỘNG HỊA XàHỘI CHỦ NGHĨA VIỆT N                   Độc lập ­ Tự do ­ Hạnh phúc                   TP. HCM, ngày….tháng… năm…… ĐỀ CƯƠNG CHI TIẾT TÊN ĐỒ ÁN: ĐIỀU KHIỂN NHIỆT ĐỘ HIỂN THỊ TRÊN LED MA TRẬN NỐI  TIẾP Giảng viên hướng dẫn: Nguyễn Phú Công Thời gian thực hiện: Từ ngày 01/05/2020 đến ngày 15/07/2020 Sinh viên thực hiện: Dương Hào Quang Nội dung đề tài:  ­ Tìm hiểu tổng quan lý thuyết ­ Xây dựng mục tiêu đề tài ­ Thiết kế và thi cơng mơ hình hiển thị nhiệt độ trên led ma trận ­ Thực nghiệm và đánh giá đề tài Kế hoạch thực hiện:  ­ Từ ngày 01/05/2020 đến ngày 31/05/2020: Nhận đề tài ­ Từ ngày 01/06/2020 đến ngày 23/06/2020: Nghiên cứu đề tài ­ Từ ngày 24/06/2020 đến ngày 30/06/2020: Tiến hành thi công lắp ráp và thử  nghiệm ­ Từ ngày 01/07/2020 đến ngày 14/07/2020: Viết báo cáo Xác nhận của giảng viên hướng dẫn TP. HCM, ngày….tháng … năm… Sinh viên TRƯỜNG ĐH CƠNG NGHIỆP THỰC PHẨM TP. HCM CỘNG HỊA XàHỘI CHỦ NGHĨA VIỆT NAM KHOA CƠNG NGHỆ ĐIỆN – ĐIỆN TỬ Độc lập ­ Tự do ­ Hạnh phúc TP.  HCM, ngày….tháng… năm…… NHẬN XÉT ĐỒ ÁN CHUN NGÀNH CỦA GIẢNG VIÊN HƯỚNG DẪN Tên đồ án: ĐIỀU KHIỂN NHIỆT ĐỘ HIỂN THỊ TRÊN LED MA TRẬN NỐI TIẾP Sinh viên thực hiện: Giảng viên hướng dẫn: Dương Hào Quang  Nguyễn Phú Công    2032170077 Đánh giá Đồ án Về cuốn báo cáo:       Số trang Số bảng số liệu _ Số chương _ _ Số hình vẽ _ Số tài liệu tham khảo _ Sản phẩm  _ Một số nhận xét về hình thức cuốn báo cáo: …………………………………………………………………………………………………… …………………………………………………………………………………………………… …………………………………………………………………………………………………… …………………………………………………………………………………………………… …………………………………………………………………………………………………… …………………………………………………………………………………………………… Về nội dung đồ án: …………………………………………………………………………………………………… …………………………………………………………………………………………………… …………………………………………………………………………………………………… …………………………………………………………………………………………………… …………………………………………………………………………………………………… Về tính ứng dụng: …………………………………………………………………………………………………… …………………………………………………………………………………………………… …………………………………………………………………………………………………… …………………………………………………………………………………………………… Về thái độ làm việc của sinh viên: …………………………………………………………………………………………………… …………………………………………………………………………………………………… …………………………………………………………………………………………………… …………………………………………………………………………………………………… Đánh giá chung:  …………………………………………………………………………………………………… …………………………………………………………………………………………………… …………………………………………………………………………………………………… …………………………………………………………………………………………………… …………………………………………………………………………………………………… Điểm sinh viên: Dương Hào Quang: … /10                                                       Người nhận                                                                                   (Ký tên và ghi rõ họ tên) LỜI CẢM ƠN Để hồn thành chun đề báo cáo đồ  án chun ngành điều khiển – tự động  hóa trước hết em xin gửi đến q thầy, cơ giáo trong Khoa Cơng nghệ Điện­Điện  tử, trường Đại học Cơng nghiệp thực phẩm Thành phố  Hồ  Chí Minh lời cảm  ơn   chân thành. Đặc biệt, em xin gửi đến thầy Nguyễn Phú Cơng, người đã tận tình  hướng dẫn, giúp đỡ  em hồn thành chun đề  báo cáo đồ  án chun ngành điều  khiển – tự động hóa này lời cảm ơn sâu sắc nhất Mặc dù nhóm em đã cố  gắng hết sức mình, nhưng do lượng kiến thức eo  hẹp nên khơng tránh khỏi những thiếu sót. Do vậy, chúng em rất mong nhận được   sự góp ý q báu của thầy, cơ để nhóm có thể hồn thiện và tốt hơn nữa cũng như  tích lũy kinh nghiệm để hồn thành tốt báo cáo đồ án tốt nghiệp sao ngày Sau cùng, em kính chúc q thầy cơ thật dồi dào sức khỏe, ln tràn đầy   nhiệt huyết cùng với thành cơng trong sự nghiệp cao q TP. HCM, ngày 14 tháng 07 năm 2020 Sinh viên thực hiện                                   Dương Hào Quang LỜI NĨI ĐÀU Như chúng ta biết, nhiệt độ  là một trong những thành phần vật lý rất quan   trọng. Việc thay đổi nhiệt độ của một vật chất ảnh hưởng rất nhiều đến cấu tạo,  tính chất, và các đại lượng vật lý khác của vật chất. Ví dụ, sự  thay đổi nhiệt độ  của 1 chất khí sẽ  làm thay đổi thể  tích, áp suất của chất khí trong bình. Vì vậy,   trong nghiên cứu khoa học, trong cơng nghiệp và trong đời sống sinh hoạt, thu thập   các thơng số và điều khiển nhiệt độ là điều rất cần thiết Trong các lị nhiệt, máy điều hồ, máy lạnh hay cả trong lị viba, điều khiển   nhiệt độ  là tính chất quyết định cho sản phảm  ấy. Trong ngành luyện kim, cần  phải đạt đến một nhiệt độ  nào đó để  kim loại nóng chảy, và cũng cần đạt một  nhiệt độ nào đó để ủ kim loại nhằm đạt được tốt các đặc tính cơ học như độ bền,  độ dẻo, độ chống gỉ sét, … . Trong ngành thực phẩm, cần duy trì một nhiệt độ nào  đó để nướng bánh, để nấu, để bảo quản, … . Việc thay đổi thất thường nhiệt độ,   khơng chỉ gây hư hại đến chính thiết bị đang hoạt động, cịn ảnh hưởng đến q   trình sản xuất, ngay cả trên chính sản phẩm ấy.  Sự  ra đời của mạch Arduino đã thúc đẩy sự  u thích, tìm tịi nghiên cứu,  ứng dụng thành tựu khoa học kỹ thuật của lĩnh vực tự  động hóa vào đời sống và   cơng nghiệp. Với những ưu điểm riêng của mình, Arduino dần khẳng định được vị  thế, vai trị của mình trên trường quốc tế, được giới học sinh, sinh viên và cả giới  nghiên cứu sử dụng một cách rộng rãi Chính vì thấy được những  ưu điểm của Arduino cùng với kiến thức sau một thời   gian học tập và tìm hiểu tài liệu về Arduino, em đã chọn dùng Arduino chọn đồ án 2  với đề tài: “Điều khiển nhiệt độ hiển thị trên led ma trận nối tiếp” MỤC LỤC DANH MỤC HÌNH ẢNH CHƯƠNG 1: 1.1 TỔNG QUAN VỀ ĐÈ TÀI Đặt vấn đề Ngày nay, với sự  phát triển của khoa học kỹ  thuật, trong cuộc sống hằng   ngày việc đo và đặt nhiệt độ  theo mong muốn trong một khơng gian giới hạn nào  đó như: trong nhà máy, xí nghiệp, trong bệnh viện, trong cơng ty, nhà  ở,…là rất  cần thiết theo nhu cầu của con người. Điều đó chứng tỏ  con người ngày càng   muốn giao tiếp nhiều hơn với mơi trường. Vì vậy điều khiển nhiệt độ  là điều rất   cần thiết và với sự phát triển của khoa học kỹ thuật, việc thực hiện một mơ hình   điều khiển nhiệt độ  hiển thi trên led ma trận với độ  chính xác cao mà khơng mất   nhiều chi phí Hình 1. : Điều khiển nhiệt độ máy lạnh Giúp sinh viên củng cố lý thuyết mơn học Vi xử lý trong điều khiển. Hiểu thêm về cấu trúc của các dịng vi điều khiển nói chung và ARDUINO nói riêng. Biết    cách lập trình cho vi điều khiển và thực hiện được một số  bài tốn điều khiển  cơ bản.  Giúp sinh viên có thêm kỹ năng giải quyết một số bài tốn điều khiển đơn  giản ứng dụng các dịng vi điều khiển. Có khả năng phân tích bài tốn điều khiển  10 Hình 2. : MAX7219 Chân LOAD được kéo xuống LOW và bit đầu tiên của dữ  liệu được đưa   vào chân DIN, trên sườn lên của xung CLK, các bit tại chân DIN được đưa vào  thanh ghi bên trong chip. Sau đó xung CLK xuống LOW và các bit tiếp theo được  thiết lập tại chân DIN trước khi lặp lại q trình. Sau khi 16 bit được đưa vào   thanh ghi, chân LOAD được đưa lên HIGH để chốt dữ liệu vào. Chân DOUT (24)   được sử dụng nếu có từ 2 chip MAX7219 trở lên. DOUT của chip thứ nhất kết nối   DIN của chip thứ hai và cứ như  vậy. Dữ  liệu được đưa ra khỏi chân DOUT trên   sườn xuống của xung CLK 23 CHƯƠNG 3: 3.1 THIẾT KẾ VÀ THI CƠNG PHẦN CỨNG Tìm hiểu về đề tài 3.1.1 Nhiệm vụ đặt ra Điều khiển quạt DC và đèn AC. Nếu nhiệt độ  đặt lớn hơn nhiệt độ  đo thì   mở đèn và tắt quạt. Ngược lại, nếu nhiệt độ  đặt nhỏ  hơn nhiệt độ  đo thì vi điều   khiển kích Relay tắt đèn và mở quạt làm mát Hình 3. : Sơ đồ khối  Hiển thị nhiệt độ đặt và nhiệt độ đo trên led ma tận.  Các cơ cấu thi hành phải hoạt động ổn định khi nhiệt độ đo dao động quanh   nhiệt độ chuẩn (nhiệt độ đặt) 3.1.2 Hướng giải quyết Dùng đèn AC để tăng nhiệt độ và quạt DC để giảm nhiệt độ. Hiển thị nhiệt  độ bằng module led ma trận 8x32 sử dụng IC MAX7219 Dùng 2 nút nhấn để nhập nhiệt độ chuẩn (nhiệt độ đặt) và bắt đầu xử lý Dùng phần mềm Arduino IDE để viết chương trình 3.2 Nguyên lý hoạt động của các khối 3.2.1 Khối cảm biến Để đọc nhiệt độ từ cảm biến DS18B20, chúng ta cần sử dụng các thư viện  hỗ trợ sau: Thư viện OneWire.h Thư viện DallasTemperature.h 24 Sơ đồ kết nối chân với Arduino: DS18B20 ARDUINO GND GND DATA VCC 5V Bảng 3. : Sơ đồ kết nối chân DS18B20 với Arduino Sơ đồ kết nối dây: Hình 3. : Kết nối DS18B20 với Arduino Ngun lý hoạt động của cảm biến DS18B20:  DS18B20 gồm 2 byte:  + 4 bit thấp là phần lẻ sau dấu phẩy: Bít 0, bít 1, bít 2, bít 3.  + 7 bit tiếp theo là phần ngun: Bit 4, bít 5, bít 6, bít 7, bít 8, bít 9, bít  10.  + 5 bít cao nhất là dấu của nhiệt độ (0 = “+”; 1 = “­”) + Dữ liệu đến và đi khỏi DS18B20 đều truyền từ bit LSB đầu tiên và   cuối cùng là bit MSB (từ phải sang trái).   Cách đọc nhiệt độ của DS18B20:   Nhiệt độ đọc về dạng hex nên ta phải đổi ra thập phân khi hiển thị. Giả sử  ta đọc được 2 byte nhiệt độ:  Bước 1: So sánh bit MSB, nếu= 0 thì in ra dấu “+” rồi nhảy sang bước 3   Nếu = 1 thì in ra dấu “­” rồi tiếp tục đến bước 2.  Bước 2: Chuyển 2 byte vừa nhận được sang dạng bù 2 của chính nó.  25 Bước 3: Chuyển 7 bit phần ngun vào thanh ghi A và in ra giá trị thanh ghi   nàydưới dạng thập phân (chính là in ra 3 số phần ngun của nhiệt độ).  Bước 4: In ra dấu “,”.  Bước 5: In ra 4 số sau dấu “,” dạng thập phân (4 bít thấp nhất) VD: +10.125˚C là FF5Eh 3.2.2 Khối hiển thị nhiệt độ Để hiển thị hình ảnh lên led ma trận ta sử dụng module 4 led ma trận với IC   MAX7219 Hiển thị  Module led ma trận thơng qua Arduino, chúng ta cần sử  dụng các  thư viện sau: Thư viện MD_Parola.h Thư viện MD_MAX72xx.h Sơ đồ kết nối với Arduino: MODULE LED MA TRẬN ARDUINO VCC 5V GND GND DIN_PIN 11 CLK_PIN 13 CS_PIN 10 Bảng 3. : Sơ đồ kết nối chân Led ma trận với Arduino Nguyên lý hoạt động của IC MAX7219 với led ma trận:  64 đèn LED được điều khiển bởi 16 chân đầu ra của IC. Số  lượng tối đa  của đèn LED sáng lên cùng một lúc là tám. Các đèn LED được sắp xếp thành 8 × 8   gồm hàng và cột. Vì vậy, MAX7219 kích hoạt mỗi cột trong một khoảng thời gian   rất ngắn và đồng thời nó cũng điều khiển từng hàng. Vì vậy, bằng cách nhanh   chóng chuyển qua các cột và hàng, mắt người sẽ chỉ nhận thấy một ánh sáng liên   tục 26 Hình 3. : Sơ đồ kết nối giữa MAX7219 với led ma trận Lưu ý các chân của Ma trận LED 8 × 8 phổ biến được sắp xếp bên trong, vì   vậy nếu bạn tự xây dựng một ma trận, bạn nên tìm hiểu nó. Cũng lưu ý rằng một  bảng ngắt phổ biến cho MAX7219 đi kèm với một điện trở giữa 5V và chân IC 18   Điện trở được sử dụng để cài đặt độ sáng hoặc dịng điện cho đèn LED Hình 3. : Điện trở điều chỉnh dịng điện Bảng dưới đây là dữ liệu của IC cho thấy giá trị  của điện trở  mà chúng ta  nên sử dụng theo mức giảm điện áp chuyển tiếp của đèn LED Hình 3. : Phân đoạn dịng điện so với bảng giảm điện áp chuyển tiếp từ dữ liệu Sơ đồ kết nối dây giữa module với Arduino: 27 Hình 3. : Kết nối dây giữa module led ma trận với Arduino 3.2.3 Khối nút nhấn Sơ đồ kết nối dây với Arduino: Hình 3. : Kết nối nút nhấn với Arduino Sơ đồ kết nối chân : NÚT NHẤN ARDUINO VCC 5V GND GND Button1 Button2 Bảng 3. : Sơ đồ kết nối nút nhấn với Arduino Nguyên lý hoạt động: 28 Sử dụng 2 nút nhấn (Button1 và Button 2) dùng để tăng, giảm và nhập nhiệt  độ đặt. Khi bật nguồn khối hiển thị sẽ hiển thị 29 ℃. Nếu nhấn Button1 nhiệt độ  chuẩn sẽ  tăng từng độ, nhấn Button2 sẽ  giảm nhiệt độ  chuẩn và tính hiệu sẽ  truyền về Aruino bắt đầu xử lý đèn 3.2.4 Khối điều khiển đèn Sơ đồ kết nối với Arduino: Hình 3. : Kết nối điều khiển đèn với Arduino 29 Hình 3. : Kết nối điều khiển quạt với Arduino Sơ đồ nối kết nối chân: RELAY ARDUINO VCC 5V GND GND RELAY1 RELAY2 Bảng 3. : Sơ đồ kết nối relay với Arduino Nguyên lý hoạt động: Sử dụng module relay 5V để  đóng ngắt nguồn AC, bóng đèn được nối vào   tiếp điểm NC(thường đóng) của relay. Khi nhiệt độ  đặt lớn hơn nhiệt đọ  chuẩn   thì Arduino xuất tín hiệu đóng ngắt relay làm cho bóng đèn sáng lên, tăng nhiệt độ  cảm biến và khi nhiệt độ thực lớn hơn nhiệt đọ đặt thì ngắt relay, tắt đèn 3.3 Thơng số nguồn điện của các linh thiết bị TÊN THIẾT BỊ SỐ LƯỢNG DÒNG ĐIỆN ÁP ARDUINO UNO R3 30mA 5VDC MODUEL LED MA  TRẬN 8x32 320mA 5VDC NÚT NHẤN 100mA 5VDC RELAY 80mA 5VDC QUẠT DC 1A 12VDC ĐÈN ~0,1A 220V Bảng 3. : Thông số thiết bị Các thiết bịsử  dụng ngồn 5V thì sử  dụng chung một nguồn ni có sẵn từ  Arduino     sử   dụng   Adapter   để   cấp   nguồn   cho   Arduino,   riêng   quạt   sử   dụng  Adapter 12VDC và đèn sử dụng nguồn 220VAC 30 Hình 3. : Adapter 5V Thơng số của Adapter: Điện áp vào : 100­240 V Điện áp ra : 5V­1A Chiều dài cáp :1m Đầu jack chẩn micro 3.4 Phần mềm và giải thuật 3.4.1 Phần mềm #include  #include  #include  #include  #include  #define ONE_WIRE_BUS 2  //Sensor DS18B20 am digitalen Pin 2 OneWire oneWire(ONE_WIRE_BUS); // tạo giao tiếp 1 dây DallasTemperature sensors(&oneWire);// đưa giao tiếp vào cảm biến int settemp=29; const uint16_t WAIT_TIME = 800; float nhietdo; #define MAX_DEVICES 4 #define CLK_PIN   13 #define DATA_PIN  11 #define CS_PIN    10 #define role1 1 #define role2 0 #define coi 6 const int buttonup =3; 31 const int buttondown =4; int currentbuttonstate = 0; int previousbuttonstate=0 ; int currentbuttonstate1 =0; int previousbuttonstate1=0 ; MD_Parola P = MD_Parola(CS_PIN, MAX_DEVICES); void setup(void) {   P.begin();     pinMode(buttonup,INPUT_PULLUP);   pinMode(buttondown,INPUT_PULLUP);  pinMode(role1,OUTPUT);    pinMode(role2,OUTPUT);       } void loop(void) {    displaymatrix();  setheater1();  setbuttonup(); setbuttondown(); } void displaymatrix(){   sensors.requestTemperatures();// yêu cầu cảm biến đọc nhiệt độ   nhietdo=sensors.getTempCByIndex(0);// lấy nhiệt độ trên cảm biến   P.print(String(nhietdo)+"C"); } void setbuttonup(){        currentbuttonstate = digitalRead(buttonup);     if (currentbuttonstate != previousbuttonstate){    // nếu trạng thái hiện tại   thay đổi so với trạng thái trước     if (currentbuttonstate== HIGH){ // nút nhấn dược nhấn       settemp=settemp+1;       settempup();     }    }    previousbuttonstate=currentbuttonstate;         } void setbuttondown(){ 32    currentbuttonstate1 = digitalRead(buttondown);      if (currentbuttonstate1 != previousbuttonstate1){// nếu trạng thái hiện tại  thay đổi so với trạng thái trước     if (currentbuttonstate1== HIGH){// nút nhấn dược nhấn       settemp=settemp­1;      settempdown();     }    }     previousbuttonstate1=currentbuttonstate1; } void settempup(){   P.print("Set:"+String(settemp));   delay(WAIT_TIME); } void settempdown(){    P.print("Set:"+String(settemp));   delay(WAIT_TIME); } void setheater1(){      if ((settemp) > (nhietdo + 0.5 ) ) { // n ếu nhi ệt độ  đặt lớn hơn nhiệt độ  hiện tại thì bật đèn, tắt quạt                  digitalWrite(role1, LOW);               digitalWrite(role2, HIGH);                                     }             else  if ((settemp) 

Ngày đăng: 18/07/2020, 00:28

TỪ KHÓA LIÊN QUAN

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

w