eHouse4Java Open Source Software kwa eHouse Automation Home

eHouse Home Automation eHouse4Java – java (Open chanzo) inajumuisha programu modules zifuatazo ( . java – chanzo code , . darasa – darasa kusababisha):

  • Ehouse4java . java – ya msingi ya maombi na interface kuu
  • ehousecommunication . java – mawasiliano majukumu na Configuration
  • EhouseTCP . java – mawasiliano na Configuration ya controllers
  • EventsToSend . java – sekondari tukio utunzaji
  • EventToSend . java – ufafanuzi wa tukio moja
  • GraphicObject . java – graphical kitu ufafanuzi
  • ISYS . java – pamoja na majukumu ya wakfu kwa wachuuzi
  • RunEvent . java – Kutuma matukio kutoka fomu asilia
  • StatusEhouse . java – darasa ina mfano mmoja kwa kila mtawala eHouse1
  • StatusEthernet . java – darasa ina mfano mmoja kwa kila mtawala Ethernet eHouse
  • StatusServer . java – Auxiliary TCP / IP Server , kutuma wote hadhi controllers via TCP / IP paneli mteja (nje kupitia LAN , WAN , Intranet , Internet)
  • taswira . java – Visualization / darasa graphical kudhibiti kwa mujibu eHouse visualization na kiwango graphical kudhibiti

kazi na vigezo kimataifa ni ilivyoelezwa katika chanzo programu code eHouse4Java .
inajumuisha programu threads huru , mfano . Mawasiliano , ambayo ni kutumbuiza katika background katika uhusiano na maombi kuu .
Hii wala kuacha au kuchelewesha maombi kwamba michakato ya kuchukua muda mrefu sana , ambayo ilisababisha na chini muhimu ya polepole ya maombi na uwezekano wa kusimamishwa wakati wakisubiri kwa ajili ya mawasiliano (wafu kufuli) .
threads kuu ni:

  • TCP Mteja (kupokea hadhi ya mtawala , TCP / IP kwenye LAN , WAN , Internet , Intranet)
  • UDP Msikilizaji (kwa ajili ya kusikiliza matangazo ya hali katika UDP connectionless) – tu ndani ya LAN , Intranet
  • Hotuba synthesizer kucheza yoyote ujumbe wa maandishi acoustic
  • Multithreaded TCP / IP Server – kwa njia ya hali ya kupokea paneli kushikamana mteja ya aina yoyote (via LAN , WIFI , Internet , Intranet , WAN)

Majina ya vyombo vya habari na mawasiliano ni pamoja na controllers mazingira ya juu ya aina kuchagua aina ya uhusiano (LAN TCP , LAN UDP , Internet , Off) .
Threads nyingine ni ulioamilishwa kutumia vigezo kimataifa ni katika madarasa ya ” EhouseTCP ” au ” ehousecommunication ” .

maombi anatumia visualization kulingana na kiwango eHouse , yanayotokana na maombi CorelDraw kutumia scripts ili kuwawezesha:

  • kuagiza eHouse mfumo Configuration
  • uumbaji wa vitu graphical mwenyewe au kwa script
  • kuuza nje ya data kwa njia zote visualization kwa paneli wote , mtandao browsers , pc , vidonge , smartphones na mifumo mingine ya

Hii ni kujadiliwa zaidi katika makala:
” kujenga taswira graphical na kudhibiti eHouse smart nyumbani ” .
programu visualization ni msingi graphics scalable vector (faili) .
Njia hii utapata ” lossless ” ubora wa kuchora curves , Nakala , rahisi za kijiometri Takwimu , bila kujali ukubwa wa utvidgningen , Screen kuhama , nk .
Ni Je haingewezekana kutumia background images graphic kama vile jpg , bitmaps , nk . .
Taswira ya Programu imekuwa optimized ili kupunguza matumizi ya CPU na graphics wakati usindikaji wakati wa kufanya kazi online , kutokana na kiasi kikubwa cha data katika mchakato . Images Graphic ni cached na kugawanywa katika ishara sahihi kudhibiti na kusindika wakati wa kupokea hadhi ya mtawala , na kuonyeshwa kwenye screen kwa kasi zaidi na taswira ya kashe ya mtawala kila .

Hii inaruhusu:

  • muhimu kupunguza data kusindika kwa taswira na mabadiliko picha
  • kiasi kikubwa kupunguza flicker wakati kubadilisha images makadirio
  • muhimu kupunguza mzigo wa taswira CPU na data
  • matumizi ya kiasi ” dhaifu ” , chini ya ufanisi na chini ya ghali vifaa , graphic paneli , vidonge , jopo la kudhibiti , nk . , wakati kudumisha kazi vizuri
  • kupunguza matumizi ya nguvu ambayo ni muhimu hasa katika vifaa vya betri na simu na urefu wa kazi juu ya betri

Hii ni kujadiliwa kwa viwambo katika makala:
” Graphical visualization na kudhibiti akili nyumbani katika Java ”

EHouse4Java mawasiliano na controllers nyumbani automatisering

eHouse1 Chini ya usimamiaji wa PC

Katika tafsiri hii ya eHouse maombi . exe kazi kama hali receiver ya RS – 485 (kwa kubadilisha fedha RS – 485/RS – 232) na transmits sasa bila mabadiliko yoyote juu ya njia mbili si collide na kila mmoja:

  • eHouse . exe kazi kama server TCP / IP anajibu maswali kuhusu hali ya jopo , akimaanisha zaidi kuungana paneli na kudumisha nao mpaka disconnected kwa sababu yoyote . Njia hii ni hasa thamani na majaribio ya kuanzisha mawasiliano na jopo nje TCP / IP kupitia mtandao , kama vile Internet ambapo haiwezekani kupokea UDP hadhi .
  • eHouse . exe zituma matangazo connectionless UDP itifaki kwa idadi yoyote ya wateja juu ya LAN , Intranet . Hii ina maana kwamba , kwamba jopo si kuunganisha kwa seva , lakini anasikiliza ujumbe matangazo kutoka ” eHouse . exe ” maombi . Kwa njia hii bila kujali jinsi wengi wapokeaji paneli sasa haina mabadiliko mzigo mtandao , au kompyuta ambayo ” eHouse . exe ” maombi anaendesha . Bahati mbaya haiwezekani au ni vigumu sana kusambaza UDP matangazo kupitia mtandao hivyo katika kesi hii Njia ya kwanza inapaswa kutumika .

eHouse1 Chini ya usimamiaji wa CommManager

Katika toleo hili , CommManager inapokea statuses zinazoingia via RS – 485 (kutoka eHouse1 controllers) na transmits sasa bila mabadiliko yoyote juu ya njia mbili si collide na kila mmoja:

  • CommManager kazi kama server TCP / IP anajibu maswali kuhusu hali ya jopo , akimaanisha zaidi kuungana paneli na kudumisha nao mpaka disconnected kwa sababu yoyote . Njia hii ni hasa thamani majaribio ya kuanzisha mawasiliano na jopo nje LAN , kama vile Internet ambapo haiwezekani kupokea UDP hadhi .
  • CommManager zituma matangazo (connectionless) UDP itifaki ni kwa idadi yoyote ya wateja juu ya LAN , Intranet .
    Hii ina maana kwamba , kwamba jopo si kuunganisha kwenye seva ya TCP CommManager , lakini kusikiliza ujumbe matangazo kutoka CM . Kwa njia hii bila kujali jinsi wengi wapokeaji paneli ya hali ya , haibadilishi mzigo mtandao au CommManager matumizi CPU . Utangazaji UDP matangazo haiwezekani , au ni uzito kumezuia kwa njia ya mtandao hivyo katika kesi hii Njia ya kwanza inapaswa kutumika .

Ethernet eHouse (eHouse4Ethernet)

Katika tafsiri hii ya controllers Ethernet: CommManager , EthernetRoomManager , nk . , kujitegemea kutuma hadhi yao katika njia mbili , wala yanapogongana na kila mmoja:

  • Kila mtawala anafanya kazi kama server TCP / IP anajibu maswali kuhusu hali ya jopo , akimaanisha zaidi kuungana paneli na kudumisha nao mpaka disconnected kwa sababu yoyote . Njia hii ni hasa thamani majaribio ya kuanzisha mawasiliano na paneli nje LAN , kama vile Internet , ambapo haiwezekani kupokea UDP hadhi .
    Hata hivyo , katika kesi ya controllers nyingi Ethernet ni muhimu kudumisha uhusiano na TCP / IP kila mtawala , kuchukua kamili mfumo hadhi moja kwa moja kutoka controllers . Hii inaweza kusababisha mzigo mkubwa juu ya kudhibiti jopo processor , ukali wa matatizo ya kuhusiana na mawasiliano . Katika kesi hii , ni vyema kuweka juu ya maombi upande LAN , kwamba inapokea mitaa UDP hadhi , mbele na TCP zaidi / IP kupitia mtandao . Hii ni barabara na kujadiliwa katika maombi eHouse4Java , ambayo inaruhusu ufumbuzi huu . hasara ni haja ya kudumisha vifaa ziada ambayo hufanya kazi hizi .
  • Kila mtawala zituma matangazo (connectionless) UDP itifaki ni kwa idadi yoyote ya wateja juu ya LAN , Intranet . Hii ina maana kwamba , kwamba jopo si kuunganisha na mtawala server TCP , lakini kusikiliza ujumbe matangazo kutoka controllers wote . Kwa njia hii bila kujali jinsi wengi wapokeaji paneli sasa haina mabadiliko mzigo mtandao au mtawala matumizi CPU . Utangazaji UDP paket haiwezekani au ni uzito kumezuia kwa njia ya mtandao , hivyo katika kesi hii Njia ya kwanza inapaswa kutumika . uwezekano wa maambukizi ya UDP ni wakati mwingine inawezekana kulingana na aina ya kiungo , Utendaji . Wakati mwingine inawezekana kupata UDP matangazo kwa njia ya kiungo VPN vizuri configured , Hata hivyo , hata katika hali hii , pakiti inaweza kupotea , kutokana na ukosefu wa usalama kwa ajili ya utaratibu wa UDP . Data sahihi ni moja kwa moja kufutwa kwa paneli eHouse programu kwa ajili ya checksum yasiyo (angalia Jumla)