بلڈنگ میشن eHouse – ونڈوز سافٹ ویئر overlays اور اپنی مرضی کے مطابق الگورتھم کی تشکیل

ہوم میشن eHouse پی سی سافٹ ویئر کے ساتھ آپ عمارت آٹومیشن نظام کے لئے overlays بنانے کے لئے کی اجازت دیتا ہے .
یہ آپ کو آپ کے اپنے بنانے کے لئے کی اجازت دیتا ہے , انفرادی یلگوردمز , فرم ویئر یا ڈرائیور سافٹ ویئر ہے کہ سیریل کنٹرول میں نافذ نہیں کر رہے ہیں ہوم میشن eHouse .
اس مقصد کو حاصل کرنے , ہم سافٹ ویئر منبع کوڈ کے ساتھ صارفین کو فراہم کرتے ہیں (5 Delphi میں) . وہ Delphi کے نئے ورژن کے ساتھ مرتب کر سکتے ہیں یا دیگر پروگرامنگ زبانوں کے لئے استعمال کیا جاتا .
ہم شعوری طور پر اس کے پرانے ورژن کا انتخاب کیا ہے وہ پہلے سے ہی دستیاب ہیں شوکیا پروگرام کے لئے مفت کے لئے .
وہ صرف ونڈوز XP پر کے طور پر معتبر طریقے سے کام کرتے ہیں , وسٹا , ونڈوز 7 دونوں 32 اور 64 بٹ .
یہ سافٹ ویئر eHouseLogAnalizer اور یہ نوشتہ سانچے ایپلی کیشنز ہے کہ متن فائلوں کی تاریخ پڑھ کہا جاتا ہے .
یہ ایپلی کیشنز KillWdt کی طرف سے منظم کر سکتے ہیں کی نگرانی . exe .
درخواست کی کلیدی خصوصیات:

  • پڑھنا تمام ڈرائیوروں کی حیثیت اور ناموں
  • حیثیت کو پڑھیں اور تمام ڈرائیوروں کے نام درج
  • تمام آدانوں کی پیمائش ڈرائیوروں کی پیمائش اور نام پڑھنے
  • پروگرام کی اندرونی میموری پر تمام ڈیٹا لوڈ , جس سے ایک درخواست کی طرف سے کیا جا سکتا ہے پر عملدرآمد

درخواست ایک ڈائریکٹری میں متن فائلوں کو پیدا فائلوں کی حیثیت کا استعمال کرتا ہے ‘ نوشتہ / حیثیت / ‘ توسیع ‘ . محبت کا درجہ ‘ .
فائل صرف درخواست eHouse میں تبدیلی کی صورت میں پڑھا ہے . exe .

ڈیٹا کنٹرولرز مندرجہ ذیل مثالوں کے ریکارڈز میں بھری ہوئی ہیں ” ehouse_rm_em_hm ” صف RM میں دیئے گئے .

اس کے علاوہ , ڈیٹا HeatManager مندرجہ ذیل متغیرات میں رکھا جاتا ہے:
bonfire_status: سٹرنگ ; الاؤ / / HeatManager کے لئے حیثیت – درجہ چمنی حرارتی پینل eHouse . exe
boiler_status: سٹرنگ ; بوائلر / HM / حیثیت – کا درجہ بوائلر ہیٹنگ پینل eHouse کے . exe
Solar_status: سٹرنگ ; / / نظام شمسی کے حیثیت – کا درجہ شمسی ہیٹنگ پینل eHouse کی . exe
recuperator_status: سٹرنگ ; / آروگیلاب / حیثیت , وینٹیلیشن , تاپن – حرارتی، وینٹیلیشن اور گرمی کی بحالی کا درجہ
HADC: صف [0 . . ڈبل کے 15] ; / / حرارت درجہ حرارت مینیجر – درجہ حرارت پیمائش HeatManager
/ حرارت / HADC صف کی براہ راست رسائی کے لئے مینیجر کے اشاریہ جات – درجہ حرارت HeatManager کے براہ راست پڑھنے کے لیے مسلسل درجہ حرارت سوچکانک
CONST HM_GWC 3 = ; / GWC / – گراؤنڈ حرارت Exchanger
HM_KOM1 = 4 ; / / چمنی 1 کوٹ – الاؤ پانی جیکٹ 1
HM_KOMKONV 5 = ; / / چمنی konvekcyjne – convection الاؤ
HM_KOM2 6 = ; / / آگ 2 طیارے – الاؤ پانی 2 جیکٹ (بیک اپ)
HM_TWEWN = 7 ; / / اندرونی کمرے کے درجہ حرارت – اندرونی کمرے کے درجہ حرارت
HM_SOLAR = 9 ; / / کلیکٹر سورج – نظام شمسی
HM_ZEWNPN 8 = ; / بیرونی / درجہ حرارت شمال – بیرونی درجہ حرارت شمال
HM_ZEWNPD = 1 ; جنوبی / بیرونی / درجہ حرارت – بیرونی درجہ حرارت جنوبی
HM_KOC 10 = ; / / درجہ حرارت بوائلر – بوائلر درجہ حرارت
HM_BANDOL 11 = ; / CO / / گرم پانی کے ٹینک کے نیچے – گرم، شہوت انگیز watter نیچے بفر
HM_REQIN 12 = ; / / صاف ہوا recuperator ان پٹ – آروگیلاب واضح ہوا ان پٹ
13 = HM_REQOUT ; / / آؤٹ پٹ recuperator گھر – heaten آروگیلاب تازہ دھچکا کمرے میں ہوا – درجہ حرارت
14 = HM_NAG ; / / درجہ حرارت تین کنٹرول – ہیٹنگ کے لئے ریڈی کے لئے راستہ والو – پانی کے ہیٹر یا دیگر ہیٹنگ کا نظام کے لئے تین طریقوں cutoff کے بعد درجہ حرارت
HM_REQWYC 15 = ; / / ہوم recuperator نچوڑ گندے – گھر گندی راستہ TEMP سے آروگیلاب
= 2 HM_BANGORA ; / حرارتی / / گرم پانی ٹینک گورا – گرم پانی بفر TOP
HM_BANSRO = 0 ; / / حرارتی / گرم پانی سٹوریج ٹینک کے ذرائع کے – MIDDLE گرم پانی بفر
متغیر HADCNames: صف 0 [ . . سٹرنگ کے 15] ; / / سینسر کے نام HeatManagera (آدانوں کی پیمائش)
بنیادی افعال EhouseLogAnalizer:
ضابطے کی init_heat_temperature_names ; / / اور / ابتدا یا درجہ حرارت سینسر HM کے نام پڑھتے ہیں
ضابطے کی loadnames_rm ; / لوڈ / RoomManagerĂłw ناموں (1 eHouse)
ضابطے کی readethernetdevs ; / / ایتھرنیٹ ڈرائیور کے نام (2 eHouse) کتابیں
get_index_rm تقریب (STR: سٹرنگ): عددی ; / / ریٹرن فائل کے نام کی حیثیت سے roomManagerami تلاش کے ساتھ ٹیبل کے اشاریہ
تقریب GB (chr: حروف): بولین ; / / پڑھا درجہ بولین قدر واپسی
adc_hm طریقہ کار (STR: سٹرنگ ; انڈیکس: عددی) ; / / پڑھنے کا درجہ HeatManagera ریکارڈ درجہ حرارت کے ساتھ سٹرنگ بدلتا ہے
adc_rm طریقہ کار (STR: سٹرنگ ; انڈیکس: عددی) ; / / مطابق پیمائش کے سٹرنگ بدلتا جب حیثیت RoomManagerĂłw پڑھ
جیبیایس تقریب (ب: بولین): سلک ; / / متن فارم (0 میں بولین لکھیں , 1)
RMDeviceIndexByName تقریب (STR: سٹرنگ): عددی ; / / ریٹرن نام کے ڈرائیور کی طرف سے RoomManagerami کی تلاش کے ساتھ ٹیبل کے اشاریہ
RMGetOutputStateNr تقریب (انڈیکس: عددی ; OutputNr: عددی): بولین ; / / پیداوار ریاست RM واپس [انڈیکس] اور پیداوار تعداد OutputNR
RMGetOutputState تقریب (انڈیکس: عددی ; OutputName: سٹرنگ): بولین ; / / واپسی پیداوار ریاست RM [انڈیکس] اور OutputName کہا جاتا
RMGetInputStateNr تقریب (انڈیکس: عددی ; InputNr: عددی): بولین ; / / واپسی ان پٹ RM کی حیثیت [انڈیکس] اور انٹری InputNr کی تعداد
RMGetInputState تقریب (انڈیکس: عددی ; InputName: سٹرنگ): بولین ; / / واپسی ان پٹ RM کی حیثیت [انڈیکس] اور انٹری InputName کے نام
RMGetTempNr تقریب (انڈیکس: عددی ; InputNr: عددی): ڈبل ; / / RM درجہ حرارت واپسی [انڈیکس] اور انٹری InputNr کی تعداد
RMGetTemp تقریب (انڈیکس: عددی ; InputName: سٹرنگ): ڈبل ; / / RM درجہ حرارت واپسی [انڈیکس] اور انٹری InputName کے نام
RMGetInvPercent تقریب (انڈیکس: عددی ; InputName: سٹرنگ): ڈبل ; / / ریٹرن 100 ریورس کے ایک فی صد کی پیمائش % – X RM [انڈیکس] اور انٹری InputName کے نام (فراہمی وولٹیج کنٹرولر کے سلسلے میں)
RMGetInvPercentNr تقریب (انڈیکس: عددی ; InputNr: عددی): ڈبل ; / / ریٹرن 100 ریورس کے ایک فی صد کی پیمائش % – X RM [انڈیکس] اور انٹری InputNr کی تعداد (فراہمی وولٹیج کنٹرولر کے سلسلے میں)
RMGetPercent تقریب (انڈیکس: عددی ; InputName: سٹرنگ): ڈبل ; / / واپسی RM [انڈیکس] ایک فی صد پیمائش اور انٹری InputName کے نام (فراہمی وولٹیج کنٹرولر کے سلسلے میں)
RMGetPercentNr تقریب (انڈیکس: عددی ; InputNr: عددی): ڈبل ; / / ریٹرن 100 ریورس کے ایک فی صد کی پیمائش % – X RM [انڈیکس] اور انٹری InputNr کے نام (فراہمی وولٹیج کنٹرولر کے سلسلے میں)
RMGetDeviceOutputState تقریب (Devname: سٹرنگ ; OutputName: سٹرنگ): بولین ; / / واپسی پیداوار کہا جاتا Devname ڈرائیور کی حالت اور OutputName ملاقات کی
RMGetDeviceInputState تقریب (Devname: سٹرنگ ; InputName: سٹرنگ): بولین ; / / واپسی ڈرائیور کی ان پٹ کی حیثیت کا نام اور انٹری Devname InputName کے نام
HMGetTemp تقریب (InputName: سٹرنگ): ڈبل ; HeatManagera InputName کے لئے کہا جاتا ماپنے ان پٹ کے درجہ حرارت / واپس /
HMGetTempNr تقریب (InputNr: عددی): ڈبل ; HeatManagera InputNr کے لئے ماپنے ان پٹ نمبر (1 درجہ حرارت / واپس / . . 16)
chk_int تقریب (تخسوچت جنجاتی کے: سٹرنگ): عددی ; / / سیف ایک عددی ایک تار پر تبدیل
ضابطے کی update_status ; / / ٹیبل میں تمام ڈرائیوروں کی حیثیت کو اپ ڈیٹ (باقاعدگی سے چلانے کے لئے ضروری ہے)
ضابطے کی Test_save ; / / ٹیسٹ کے عمل کو آسان کے لئے ایک ٹیکسٹ فائل نتائج لکھنے
ڈرائیور کی ابتدا اور تمام ناموں میں ایک بار کی درخواست شروع ہوتا ہے کیا (FormCreate)
TForm1 ضابطے کی . FormCreate (مرسل: TObject) ;
شروع
راستے: = getcurrentdir () ; / حاصل / پروگرام کی موجودہ راستہ ڈائریکٹری میں ہونا چاہیے % eHouse_DIR % \ \ بن
راستے: stringreplace = راہ ( , ‘ بن \ ‘ , ‘ \ ‘ , [Rfignorecase]) ; / / درخواست eHouse کے راستے حاصل کریں – درخواست کی راہ کی eHouse کا تعین کرتا ہے
loadnames_rm ; / لوڈ / کنٹرولر ناموں ehouse1 – بوجھ ڈرائیور کا نام 1 eHouse
init_heat_temperature_names ; / / لوڈ سینسر heatManagera نام
readethernetdevs ; / / لوڈ کنٹرولرز ایتھرنیٹ eHouse کے نام – آلہ ناموں 2 eHouse کو پڑھنے کے
timer1 . وقفہ: 3000 = ; / milliseconds میں / سیٹ چکریی کام وقفہ – چکریی ڈیٹا کی جانچ پڑتال شروع کرنے کا وقت تصویریں
timer1 . کو چالو: سچ = ; / / خود کار طریقے سے کاموں کو شروع (کی حیثیت کو اپ ڈیٹ – ڈیٹا کا باقاعدہ چیکنگ میں شامل ہیں
update_status ; / / پہلے کی حیثیت کتابیں
آخر ;
چکریی ڈیٹا چیکنگ Timer1 تقریب کی طرف سے کیا جاتا ہے (Timer1Timer) وقت کا وقفہ Timer1 پیرامیٹر میں قائم میں چلتا ہے . وقفہ (milliseconds میں) .
TForm1 ضابطے کی . Timer1Timer (مرسل: TObject) ;
متغیر TF: textfile ;
شروع
update_status ; / / ڈرائیور کی حیثیت تبدیل
Test_save ; / ٹیسٹ / ایک ٹیکسٹ فائل کے تمام نتائج لکھتے ہیں
/ کوشش کریں / کی درخواست کے لئے ایک مارکر فائل KillExec پیدا . exe ہے کہ کر سکتے ہیں ” دیکھنے ” جہاز حادثے سے قبل درخواست
AssignFile TF ( , راستے + ‘ نوشتہ لاگ ان کریں \ – analizer . ایسٹیپی ‘ ) ;
/ / WDT یہ درخواست درست طریقے سے stampfile کا استعمال کرتے ہوئے کام کو مطلع ” \ لاگ ان لاگ ان – analizer . ایسٹیپی ”
(TF) کو دوبارہ سے لکھنا ;
writeln TF ( , ‘ 1 ‘ ) ;
آخر میں ;
closefile (TF) ;
آخر ;
آخر ;