Usando o chip T5L como control principal, o chip T5L acciona o servo do bus serie para controlar o interruptor da porta, procesa os datos do sensor recollidos polo controlador auxiliar e acciona a pantalla LCD para a visualización de datos. Ten unha función de aviso anormal e un sistema de iluminación automático, que se pode usar normalmente en situacións de pouca luz.
1. Descrición do programa
(1) A pantalla T5L utilízase como control principal para accionar directamente o servo do bus serie. Usando o mecanismo de dirección da serie Feite STS, o par varía de 4,5 KG a 40 KG e o protocolo é universal.
(2) O mecanismo de dirección do bus en serie ten funcións de protección de corrente, par, temperatura e tensión, e a súa seguridade é superior á dos motores convencionais;
(3) Un porto serie admite o control simultáneo de 254 servos.
2. Deseño do esquema
(1) Diagrama de bloques do esquema
(2) Diagrama da estrutura mecánica
Para evitar que se produza un fallo de alimentación na porta do armario intelixente, este deseño adopta un mecanismo de dirección dobre. Despois dun fallo de alimentación, debido á existencia do pestillo da porta, mesmo se o servo de apertura da porta está descargado, o armario intelixente segue no estado bloqueado. A estrutura mecánica móstrase na figura:
Diagrama da estrutura de apertura
Diagrama do peche estrutura
(3) Deseño da interface gráfica de usuario de DGUS
(4) Esquema do circuíto
O esquema do circuíto está dividido en tres partes: placa de circuíto principal (circuíto do servomotor + controlador auxiliar + interface), circuíto reductor e circuíto de iluminación (instalado no armario).
Placa de circuíto principal
Circuíto reductor
Circuíto de iluminación
5. Exemplo de programa
Detección e actualización de temperatura e humidade, actualización de tempo (o AHT21 é controlado polo controlador auxiliar e os datos de temperatura e humidade escríbense na pantalla DWIN)
/***************Actualización da temperatura e da humidade**********************/
baleiro dwin_Tempe_humi_update( baleiro)
{
uint8_t Tempe_humi_date[20]; //Comandos enviados á pantalla LCD
AHT20_Read_CTdata(CT_data); //Le a temperatura e a humidade
Data_de_humidade_de_Tempe[0]=0x5A;
Data_de_humidade_de_Tempe[1]=0xA5;
Data_humidade_de_Tempe[2]=0x07;
Data_de_humidade_de_Tempe[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;//Calcula o valor da temperatura (ampliado 10 veces, se t1=245, significa que a temperatura agora é de 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; //Calcula o valor da humidade (ampliado 10 veces, se c1=523, significa que a humidade é do 52,3 % agora)
Usart_SendString(USART_DWIN,Data_de_humidade_de_Tempe,10);
}
Data de publicación: 08 de novembro de 2022










