Utilizzando il chip T5L come controllo principale e il chip T5L aziona il servo del bus seriale per controllare l'interruttore della porta ed elabora i dati del sensore raccolti dal controller ausiliario e aziona lo schermo LCD per la visualizzazione dei dati. Ha una funzione di avviso anomalo e un sistema di illuminazione automatico, che può essere utilizzato normalmente in situazioni di scarsa illuminazione.
1. Descrizione del programma
(1) Lo schermo T5L viene utilizzato come controllo principale per azionare direttamente il servo del bus seriale. Utilizzando lo sterzo della serie Feite STS, la coppia varia da 4,5 kg a 40 kg e il protocollo è universale.
(2) Lo sterzo del bus seriale ha funzioni di protezione di corrente, coppia, temperatura e tensione e la sua sicurezza è superiore a quella dei motori convenzionali;
(3) Una porta seriale supporta il controllo simultaneo di 254 servi.
2.Progettazione dello schema
(1) Diagramma a blocchi dello schema
(2) Schema della struttura meccanica
Per evitare che l'interruzione di corrente della porta dell'armadio intelligente vada fuori controllo, questo design adotta un design a doppio sterzo. Dopo un'interruzione di corrente, dovuta alla presenza della serratura della porta, anche se il servo di apertura della porta è scarico, l'armadio intelligente è ancora nello stato bloccato. La struttura meccanica è mostrata in figura:
![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)
Schema della struttura di apertura
Diagramma delchiusura struttura
(3) Progettazione della GUI DGUS
(4) Schema del circuito
Lo schema del circuito è diviso in tre parti: scheda principale (circuito del servoazionamento + controller ausiliario + interfaccia), circuito step-down e circuito di illuminazione (installato nell'armadio).
Circuito principale
Circuito step-down
Circuito di illuminazione
5. Esempio di programma
Rilevamento e aggiornamento di temperatura e umidità, aggiornamento dell'ora (AHT21 è gestito dal controller ausiliario e i dati di temperatura e umidità vengono scritti nella schermata DWIN)
/********************Aggiornamento temperatura e umidità************************/
void dwin_Tempe_humi_update( void)
{
uint8_t Tempe_humi_date[20]; //Comandi inviati allo schermo LCD
AHT20_Leggi_dati_CT(dati_CT); //Leggi la temperatura e l'umidità
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;//Calcola il valore della temperatura (ingrandito di 10 volte, se t1=245, significa che la temperatura ora è 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; //Calcola il valore dell'umidità (ingrandito 10 volte, se c1=523, significa che ora l'umidità è al 52,3%)
Usart_SendString(USART_DWIN,Tempe_humi_data,10);
}
Orario di pubblicazione: 08-nov-2022