Giải pháp mã nguồn mở: Hệ thống quản lý tủ thông minh dựa trên màn hình DWIN T5L

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ờ.

wps_doc_0

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ơ đồ

wps_doc_1

(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
wps_doc_3

Sơ đồ cấu trúc mở

Sơ đồ củađóng cửa kết cấu

(3) Thiết kế GUI DGUS

wps_doc_4 wps_doc_5

(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ủ).

wps_doc_6

Bảng mạch chính

wps_doc_7

Mạch bước xuống

wps_doc_8

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