ওপেন সোর্স সমাধান: DWIN T5L স্ক্রিনের উপর ভিত্তি করে স্মার্ট ক্যাবিনেট ম্যানেজমেন্ট সিস্টেম

প্রধান নিয়ন্ত্রণ হিসাবে T5L চিপ ব্যবহার করে এবং T5L চিপ দরজার সুইচ নিয়ন্ত্রণ করতে সিরিয়াল বাস সার্ভোকে চালিত করে, এবং অক্জিলিয়ারী কন্ট্রোলার দ্বারা সংগৃহীত সেন্সর ডেটা প্রক্রিয়া করে এবং ডেটা প্রদর্শনের জন্য LCD স্ক্রিন চালায়।এটির একটি অস্বাভাবিক সতর্কতা ফাংশন এবং একটি স্বয়ংক্রিয় আলো ব্যবস্থা রয়েছে, যা সাধারণত আবছা আলোর পরিস্থিতিতে ব্যবহার করা যেতে পারে।

wps_doc_0

1. প্রোগ্রামের বিবরণ

(1) T5L স্ক্রিনটি সরাসরি সিরিয়াল বাস সার্ভো চালানোর জন্য প্রধান নিয়ন্ত্রণ হিসাবে ব্যবহৃত হয়।Feite STS সিরিজের স্টিয়ারিং গিয়ার ব্যবহার করে, টর্কের রেঞ্জ 4.5KG থেকে 40KG, এবং প্রোটোকল সর্বজনীন।

(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 স্ক্রিনে লেখা হয়)
/***************** তাপমাত্রা এবং আর্দ্রতা আপডেট**********************/
void dwin_Tempe_humi_update( void)
{
uint8_t Tempe_humi_date[20];//কমান্ড এলসিডি স্ক্রিনে পাঠানো হয়েছে
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);

}


পোস্টের সময়: নভেম্বর-০৮-২০২২