You are on page 1of 5

ĐẠI HỌC LẠC HỒNG

KHOA CƠ ĐIỆN - ĐIỆN TỬ


--------

MÔN: THỰC TẬP VI ĐIỀU KHIỂN ỨNG DỤNG


BÀI 5

SVTH: Nguyễn Hồ Minh Khánh


GV hướng dẫn: Ngô Kim Long
Câu 1 : Bảng thống kê Input/Output, địa chỉ sử dụng cho từng ngõ vào ra
Bảng thống kê địa chỉ ngõ vào (Input)

STT Tên Input Địa chỉ / Pin Mô tả chức năng


Nút nhấn Điều chỉnh giá trị Min,
1 Pin 8
START Max

Bảng thống kê địa chỉ ngõ ra (Output)

Tên Địa chỉ /


STT Mô tả chức năng
output Pin
1 pinMode Pin 14 Trạng thái ngỏ ra của đèn
2 pinMode Pin 15 Trạng thái ngỏ ra quạt
3 RS Pin 7 Trạng thái ngỏ ra đoạn màn hình
4 E Pin 6 Trạng thái ngỏ ra đoạn màn hình
5 D4 Pin 5 Trạng thái ngỏ ra đoạn màn hình
6 D5 Pin 4 Trạng thái ngỏ ra đoạn màn hình
7 D6 Pin 3 Trạng thái ngỏ ra đoạn màn hình
8 D7 Pin 2 Trạng thái ngỏ ra đoạn màn hình

Câu 2 : Sơ đồ khối của hệ điều khiển này

Câu 3 : Sơ đồ kết nối (mạch nguyên lý) của hệ thống


Câu 4 : Trình bày sơ đồ giải thuật xử lý của đề bài
Câu 5 : Viết code chương trình xử lý
#include <LiquidCrystal.h>

LiquidCrystal lcd(7,6,5,4,3,2);
int adc, gtMAX=42, gtMIN=38;
float nhietdo;

void setup() {
// put your setup code here, to run once:
pinMode(8, INPUT);
pinMode(9, INPUT);
pinMode(14, OUTPUT);
pinMode(15, OUTPUT);
lcd.begin(16,2);
lcd.setCursor(0,0);
lcd.print("LH UNIVERSITY");
lcd.setCursor(0,1);
lcd.print("CLASS 21OT111-N2");
delay(1000);
lcd.clear();
lcd.setCursor(0,0);
lcd.print("gtMIN");
lcd.print(gtMIN);
lcd.setCursor(9,0);
lcd.print("gtMAX");
lcd.print(gtMAX);
lcd.setCursor(0,1);
lcd.print("NHIETDO:");
}

void loop() {
// put your main code here, to run repeatedly:
adc=analogRead(A0);
nhietdo=adc*500.0/1023.0;
lcd.setCursor(9,1);
lcd.print(nhietdo);
if(nhietdo<gtMIN){
digitalWrite(14, LOW);// tắt quạt
digitalWrite(15, HIGH);//mở đèn
}
if(nhietdo>gtMAX){
digitalWrite(14, HIGH);// mở quạt
digitalWrite(15, LOW);// tắt đèn
}
if((nhietdo>gtMIN)&&(nhietdo<gtMAX)){
digitalWrite(14, LOW);//tắt quạt
digitalWrite(15, LOW);//tắt đèn
}
}

You might also like