Professional Documents
Culture Documents
Địa chỉ /
STT Tên Input Mô tả chức năng
Pin
1 Nút nhấn Start Pin 8 Điều chỉnh giá trị Min, Max.
Truyền tín hiệu giá trị nhiệt độ về
2 LM35 Pin A0
mạch Arduino mega 2560.
3
4
Bảng thống kê địa chỉ ngõ ra (Output)
Câu 2 (10đ): Vẽ sơ đồ khối của hệ điều khiển này, giải thích hoạt động của các
khối.
Hình 1: Sơ đồ khối của hệ điều khiển LCD.
Nguyên lý hoạt động:
- Nguồn sẽ được cung cấp để hệ điều khiển có thể chạy.
- Ta có ngỏ vào là nút nhấn và LM35 sẽ truyền tín hiệu về mạch Arduino mega
2560. Sau khi xử lý, mạch sẽ xuất ra tín hiệu ở ngỏ ra để điều khiền màn hình
LCD, Led và Fan-DC.
Câu 3: (10đ): Vẽ sơ đồ kết nối (mạch nguyên lý) của hệ thống.
#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
}
}