حل مفتوح المصدر: نظام إدارة الخزانة الذكي المعتمد على شاشة DWIN T5L

يؤدي استخدام شريحة T5L كعنصر تحكم رئيسي وشريحة T5L إلى تشغيل محرك الناقل التسلسلي للتحكم في مفتاح الباب ، ومعالجة بيانات المستشعر التي تم جمعها بواسطة وحدة التحكم الإضافية ، وتشغيل شاشة LCD لعرض البيانات.لديها وظيفة تحذير غير طبيعية ونظام إضاءة أوتوماتيكي ، والذي يمكن استخدامه بشكل طبيعي في حالات الإضاءة الخافتة.

wps_doc_0

1. وصف البرنامج

(1) يتم استخدام شاشة T5L كعنصر تحكم رئيسي لقيادة سيرفو الناقل التسلسلي مباشرة.باستخدام ترس التوجيه من سلسلة Feite STS ، يتراوح عزم الدوران من 4.5 كجم إلى 40 كجم ، والبروتوكول عالمي.

(2) جهاز التوجيه التسلسلي للحافلة لديه وظائف حماية التيار ، عزم الدوران ، درجة الحرارة والجهد ، وسلامته أعلى من تلك الخاصة بالمحركات التقليدية ؛

(3) يدعم أحد المنافذ التسلسلية التحكم المتزامن بـ 254 خدمة.

2. تصميم مخطط

(1) مخطط كتلة المخطط

wps_doc_1

(2) مخطط الهيكل الميكانيكي

من أجل منع انقطاع التيار الكهربائي لباب الخزانة الذكي من الخروج عن السيطرة ، يعتمد هذا التصميم تصميمًا مزدوجًا لمعدات التوجيه.بعد انقطاع التيار الكهربائي ، بسبب وجود مزلاج الباب ، حتى إذا تم تفريغ مضاعفات فتح الباب ، تظل الخزانة الذكية في حالة القفل.يظهر الهيكل الميكانيكي في الشكل:

wps_doc_2
wps_doc_3

رسم تخطيطي للهيكل الافتتاحي

رسم تخطيطي لـإغلاق بناء

(3) تصميم DGUS GUI

wps_doc_4 wps_doc_5

(4) مخطط الدائرة
مخطط الدائرة مقسم إلى ثلاثة أجزاء: لوحة الدائرة الرئيسية (دائرة محرك سيرفو + وحدة تحكم إضافية + واجهة) ، دائرة تنحي ، ودائرة إضاءة (مثبتة في الخزانة).

wps_doc_6

لوحة الدوائر الرئيسية

wps_doc_7

حلبة تنحي

wps_doc_8

دائرة الإضاءة

5. مثال البرنامج

كشف وتحديث درجة الحرارة والرطوبة ، تحديث الوقت (يتم تشغيل AHT21 بواسطة وحدة التحكم الإضافية ، ويتم كتابة بيانات درجة الحرارة والرطوبة في شاشة DWIN)
/ ***************** تحديث درجة الحرارة والرطوبة ********************** /
dwin_Tempe_humi_update باطل (باطل)
{
uint8_t Tempe_humi_date [20] ؛// يتم إرسال الأوامر إلى شاشة LCD
AHT20_Read_CTdata (CT_data) ،// اقرأ درجة الحرارة والرطوبة
        
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؛ // احسب قيمة درجة الحرارة (مكبرة 10 مرات ، إذا كانت t1 = 245 ، فهذا يعني أن درجة الحرارة الآن 24.5 درجة مئوية)

Tempe_humi_date [8] = ((CT_data [0] * 1000/1024/1024) >> 8) & 0xff؛
Tempe_humi_date [9] = ((CT_data [0] * 1000/1024/1024)) & 0xff؛// احسب قيمة الرطوبة (مكبرة 10 مرات ، إذا كانت c1 = 523 ، فهذا يعني أن الرطوبة هي 52.3٪ الآن)

Usart_SendString (USART_DWIN، Tempe_humi_date ، 10) ؛

}


الوقت ما بعد: نوفمبر 08-2022