CHƯƠNG 5 : THI CƠNG THÍ NGHIỆM MƠ HÌNH
1. Code điều khiển
1.1. Code điều khiển cho arduino điều khiển A1:
// bắt đầu bằng việc khai báo cho các chân của Arduino #define cua_1_mo 1 #define cua_1_dong 2 #define cua_17_mo 3 #define cua_17_dong 4 #define van_2_nga_trai_mo 5 #define van_2_nga_trai_dong 6 #define van_2_nga_phai_mo 7 #define van_2_nga_phai_dong 8 int nut_mo_van_2_nga_trai = 9; int nut_mo_van_2_nga_phai = 10; int nut_mo_cua_xa_1 = 11; int nut_mo_cua_xa_17 = 12; #define bao_day 13 void setup() {
pinMode(nut_mo_cua_xa_1, INPUT_PULLUP); //Cài đặt chân D11 ở trạng thái đọc dữ liệu
pinMode(nut_mo_cua_xa_17, INPUT_PULLUP); pinMode(nut_mo_van_2_nga_trai, INPUT_PULLUP);
//Cài đặt chân D11 ở trạng thái đọc dữ liệu.
pinMode(nut_mo_van_2_nga_phai, INPUT_PULLUP); //cài đặt chân 1 là đầu ra
pinMode(cua_1_mo, OUTPUT); pinMode(cua_1_dong, OUTPUT); pinMode(cua_17_mo, OUTPUT);
93 pinMode(cua_17_dong,OUTPUT); pinMode(van_2_nga_trai_mo, OUTPUT); pinMode(van_2_nga_trai_dong, OUTPUT); pinMode(van_2_nga_phai_mo, OUTPUT); pinMode(van_2_nga_phai_dong ,OUTPUT); } void loop() {
int buttonStatus_1 = digitalRead(nut_mo_cua_xa_1); //Đọc trạng thái các nút nhấn int buttonStatus_17 = digitalRead(nut_mo_cua_xa_17);
int buttonStatus_L = digitalRead(nut_mo_van_2_nga_trai); int buttonStatus_R = digitalRead(nut_mo_van_2_nga_phai);
// Nếu mà button bị nhấn và cảm biến báo đầy khơng có tín hiệu. if (buttonStatus_1 == LOW && digitalRead(bao_day) == 0) {
digitalWrite(cua_1_mo, HIGH); // Động cơ cửa 1 bắt đầu chạy mở digitalWrite(cua_1_dong,LOW);
} else { // ngược lại
digitalWrite(cua_1_mo, LOW); // Động cơ cửa 1 bắt đầu chạy đóng digitalWrite(cua_1_dong,HIGH);
}
if (buttonStatus_17 == LOW) { // Nếu mà button bị nhấn
digitalWrite(cua_17_mo, HIGH); // Động cơ cửa 17 bắt đầu chạy đóng digitalWrite(cua_17_dong,LOW);
} else { // ngược lại
digitalWrite(cua_17_mo, LOW); // Động cơ cửa 17 bắt đầu chạy đóng digitalWrite(cua_17_dong,HIGH);
}
if (buttonStatus_L == LOW) { // Nếu mà button bị nhấn
94 digitalWrite(van_2_nga_trai_dong ,LOW);
digitalWrite(van_2_nga_phai_mo, LOW); // Động cơ van-phải bắt đầu chạy đóng digitalWrite(van_2_nga_phai_dong ,HIGH);
} else if (buttonStatus_R == LOW){ // Nếu mà button bị nhấn
digitalWrite(van_2_nga_trai_mo, LOW); // Động cơ van-trái bắt đầu chạy đóng digitalWrite(van_2_nga_trai_dong ,HIGH);
digitalWrite(van_2_nga_phai_mo, HIGH); // Động cơ van-phải bắt đầu chạy mở digitalWrite(van_2_nga_phai_dong ,LOW);
95