El uso del chip T5L como control principal y el chip T5L impulsa el servo del bus serie para controlar el interruptor de la puerta, procesa los datos del sensor recopilados por el controlador auxiliar y controla la pantalla LCD para la visualización de datos.Tiene una función de advertencia anormal y un sistema de iluminación automático, que se puede utilizar normalmente en situaciones de poca luz.
1. Descripción del programa
(1) La pantalla T5L se utiliza como control principal para controlar directamente el servo del bus serie.Con el mecanismo de dirección de la serie Feite STS, el par oscila entre 4,5 kg y 40 kg, y el protocolo es universal.
(2) El mecanismo de dirección del bus en serie tiene funciones de protección de corriente, par, temperatura y voltaje, y su seguridad es mayor que la de los motores convencionales;
(3) Un puerto serie admite el control simultáneo de 254 servos.
2. Diseño del esquema
(1) Diagrama de bloques del esquema
(2) diagrama de estructura mecánica
Para evitar que la falla de energía de la puerta del gabinete inteligente esté fuera de control, este diseño adopta un diseño de engranaje de dirección doble.Después de una falla de energía, debido a la existencia del pestillo de la puerta, incluso si el servo de apertura de la puerta está descargado, el gabinete inteligente aún está bloqueado.La estructura mecánica se muestra en la figura:
Diagrama de la estructura de apertura.
Diagrama de laclausura estructura
(3) Diseño de interfaz gráfica de usuario de DGUS
(4) Esquema del circuito
El esquema del circuito se divide en tres partes: placa de circuito principal (circuito de servoaccionamiento + controlador auxiliar + interfaz), circuito reductor y circuito de iluminación (instalado en el gabinete).
Placa de circuito principal
Circuito reductor
Circuito de iluminación
5. Ejemplo de programa
Detección y actualización de temperatura y humedad, actualización de tiempo (AHT21 es controlado por el controlador auxiliar, y los datos de temperatura y humedad se escriben en la pantalla DWIN)
/*****************Actualización de temperatura y humedad***********************/
vacío dwin_Tempe_humi_update (vacío)
{
uint8_t Tempe_humi_date[20];//Comandos enviados a la pantalla LCD
AHT20_Read_CTdata(CT_datos);//Leer temperatura y humedad
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;//Calcular el valor de la temperatura (ampliado por 10 veces, si t1=245, significa que la temperatura ahora es 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;//Calcular el valor de la humedad (aumentada 10 veces, si c1=523, significa que la humedad es del 52,3% ahora)
Usart_SendString(USART_DWIN,Tempe_humi_date,10);
}
Hora de publicación: Nov-08-2022