Open source-oplossing: slim kastbeheersysteem gebaseerd op DWIN T5L-scherm

Door de T5L-chip als hoofdbesturing te gebruiken, stuurt de T5L-chip de seriële busservo aan om de deurschakelaar te besturen, verwerkt de sensorgegevens verzameld door de hulpcontroller en stuurt het LCD-scherm aan voor gegevensweergave. Het heeft een abnormale waarschuwingsfunctie en een automatisch verlichtingssysteem, dat normaal kan worden gebruikt in situaties met weinig licht.

wps_doc_0

1. Programmabeschrijving

(1) Het T5L-scherm wordt gebruikt als hoofdbediening om de seriële busservo rechtstreeks aan te sturen. Met behulp van de stuurinrichting van de Feite STS-serie varieert het koppel van 4,5 kg tot 40 kg, en het protocol is universeel.

(2) De stuurinrichting van de seriële bus heeft stroom-, koppel-, temperatuur- en spanningsbeveiligingsfuncties en de veiligheid ervan is hoger dan die van conventionele motoren;

(3) Eén seriële poort ondersteunt gelijktijdige besturing van 254 servo's.

2. Schemaontwerp

(1) Schemablokdiagram

wps_doc_1

(2) Mechanisch structuurdiagram

Om te voorkomen dat de stroomstoring van de intelligente kastdeur uit de hand loopt, heeft dit ontwerp een ontwerp met dubbele stuurinrichting. Na een stroomstoring, als gevolg van de aanwezigheid van de deurgrendel, bevindt de slimme kast zich nog steeds in de vergrendelde toestand, zelfs als de servo voor het openen van de deur is uitgeschakeld. De mechanische structuur wordt weergegeven in de figuur:

wps_doc_2
wps_doc_3

Diagram van de openingsstructuur

Schema van desluitend structuur

(3) DGUS GUI-ontwerp

wps_doc_4 wps_doc_5

(4) Schakelschema
Het schakelschema is verdeeld in drie delen: hoofdprintplaat (servo-aandrijfcircuit + hulpcontroller + interface), step-downcircuit en verlichtingscircuit (geïnstalleerd in de kast).

wps_doc_6

Hoofdprintplaat

wps_doc_7

Verlagingscircuit

wps_doc_8

Verlichtingscircuit

5. Programmavoorbeeld

Detectie en vernieuwing van temperatuur en vochtigheid, tijdupdate (AHT21 wordt aangestuurd door de hulpcontroller en de temperatuur- en vochtigheidsgegevens worden naar het DWIN-scherm geschreven)
/********************Temperatuur- en vochtigheidsupdate**********************/
ongeldig dwin_Tempe_humi_update(nietig)
{
uint8_t Tempe_humi_date[20]; //Opdrachten verzonden naar het LCD-scherm
AHT20_Read_CTdata(CT_data); //Lees temperatuur en vochtigheid
        
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;//Bereken de temperatuurwaarde (10 keer vergroot, als t1=245 betekent dit dat de temperatuur nu 24,5 is) °C)

Tempe_humi_date[8]=((CT_data[0]*1000/1024/1024)>>8)&0xff;
Tempe_humi_date[9]=((CT_data[0]*1000/1024/1024))&0xff; //Bereken de vochtigheidswaarde (10 keer vergroot, als c1=523 betekent dit dat de vochtigheid nu 52,3% is)

Usart_SendString(USART_DWIN,Tempe_humi_date,10);

}


Posttijd: 08-nov-2022