Sử dụng chip T5L làm điều khiển chính và chip T5L điều khiển servo bus nối tiếp để điều khiển công tắc cửa, đồng thời xử lý dữ liệu cảm biến được bộ điều khiển phụ thu thập và điều khiển màn hình LCD để hiển thị dữ liệu. Nó có chức năng cảnh báo bất thường và hệ thống chiếu sáng tự động, có thể sử dụng bình thường trong điều kiện ánh sáng mờ.
1. Mô tả chương trình
(1) Màn hình T5L được sử dụng làm bộ điều khiển chính để điều khiển trực tiếp servo bus nối tiếp. Sử dụng thiết bị lái dòng Feite STS, mô-men xoắn dao động từ 4,5kg đến 40kg và giao thức là phổ biến.
(2) Thiết bị lái xe buýt nối tiếp có chức năng bảo vệ dòng điện, mô-men xoắn, nhiệt độ và điện áp, độ an toàn cao hơn so với động cơ thông thường;
(3) Một cổng nối tiếp hỗ trợ điều khiển đồng thời 254 servo.
2.Thiết kế sơ đồ
(1) Sơ đồ khối sơ đồ
(2) Sơ đồ kết cấu cơ khí
Để tránh tình trạng mất điện của cửa tủ thông minh ngoài tầm kiểm soát, thiết kế này áp dụng thiết kế bánh lái kép. Sau khi mất điện, do có chốt cửa nên ngay cả khi servo mở cửa không được tải thì tủ thông minh vẫn ở trạng thái khóa. Cấu trúc cơ khí được thể hiện trong hình:
![wps_doc_2](https://ecdn6.globalso.com/upload/p/1355/source/2024-03/65f96c70cb14622550.jpg)
![wps_doc_3](https://ecdn6.globalso.com/upload/p/1355/source/2024-03/65f96c72272af45161.jpg)
Sơ đồ cấu trúc mở
Sơ đồ củađóng cửa kết cấu
(3) Thiết kế GUI DGUS
(4) Sơ đồ mạch
Sơ đồ mạch được chia thành ba phần: bảng mạch chính (mạch điều khiển servo + bộ điều khiển phụ + giao diện), mạch bước xuống và mạch chiếu sáng (lắp trong tủ).
Bảng mạch chính
Mạch bước xuống
Mạch chiếu sáng
5. Ví dụ về chương trình
Phát hiện và làm mới nhiệt độ và độ ẩm, cập nhật thời gian (AHT21 được điều khiển bởi bộ điều khiển phụ và dữ liệu nhiệt độ và độ ẩm được ghi vào màn hình DWIN)
/******************Cập nhật nhiệt độ và độ ẩm*********************/
void dwin_Tempe_humi_update( void)
{
uint8_t Tempe_humi_date[20]; // Lệnh gửi tới màn hình LCD
AHT20_Read_CTdata(CT_data); //Đọc nhiệt độ và độ ẩm
Tempe_humi_date[0]=0x5A;
Tempe_humi_date[1]=0xA5;
Tempe_humi_date[2]=0x07;
Tempe_humi_date[3]=0x82;
Tempe_humi_date[4]=(ADDR_TEMP_HUMI>>8)&0xff;
Tempe_humi_date[5]=ADDR_TEMP_HUMI&0xff;
Tempe_humi_date[6]=((CT_data[1] *200*10/1024/1024-500)>>8)&0xff;
Tempe_humi_date[7]=((CT_data[1] *200*10/1024/1024-500))&0xff;//Tính giá trị nhiệt độ (phóng to lên 10 lần, nếu t1=245, nghĩa là nhiệt độ lúc này là 24,5 °C)
Tempe_humi_date[8]=((CT_data[0]*1000/1024/1024)>>8)&0xff;
Tempe_humi_date[9]=((CT_data[0]*1000/1024/1024))&0xff; //Tính giá trị độ ẩm (phóng đại 10 lần, nếu c1=523 nghĩa là độ ẩm hiện tại là 52,3%)
Usart_SendString(USART_DWIN,Tempe_humi_date,10);
}
Thời gian đăng: Nov-08-2022