当前位置:文档之家› 开源楼宇自控软件体系框架Sedona简介

开源楼宇自控软件体系框架Sedona简介

ǃSedona ㅔҟ Sedona ᰃϔϾᓔ⑤ὐᅛ㞾᥻䕃ӊԧ㋏Ḛᶊˈ⬅ Tridium ݀ৌⷨথˈࣙ৿ Sedona 䇁㿔ǃ
Sedona Ꮉ‫ࣙ݋‬ǃSedona 㰮ᢳᴎǃSedona 㓪䆥఼ǃSedona ೒ᔶ࣪ᓔথ䇗䆩Ꮉ‫݋‬ㄝ䚼ߚˈѢ 2009 ᑈ ᳜ӑℷᓣ᥼ߎ㄀ϔ⠜ˈᑊᓔᬒ⑤ҷⷕDŽ
Sedona 䇁㿔㒻ᡓњ JavaǃC#ㄝ䴶৥ᇍ䈵䇁㿔ⱘ⡍⚍ˈՓᕫᓔথ䴲ᐌㅔऩˈ㗠ᅲ⦄ⱘࡳ 㛑জ䴲ᐌᔎ໻˗ҹ Sedona Ꮉ‫ࣙ݋‬ᔶᓣথᏗⱘ᥻ࠊ䘏䕥῵ഫˈᅲ⦄њĀϔ⃵ᓔথǃ䱣໘ৃ⫼” ⱘⳂⱘˈ໻໻䰡Ԣњ⫼᠋ⱘᑨ⫼䲒ᑺˈৠᯊгՓᕜ໮㸠Ϯᑨ⫼㒣偠ᕫࠄᕜདⱘ鳥㌃Ϣথሩ˗ Sedona 㰮ᢳᴎ˄Sedona Virtual Machine——SVM˅ϧ䮼䩜ᇍὐᅛ㞾᥻䆒໛䖯㸠њӬ࣪ˈ㛑 催ᬜⱘ䖤㸠೼া᳝ 100K Ꮊে‫ݙ‬ᄬⱘᇣൟጠܹᓣ䆒໛ϞˈᑊϨᅲᯊᗻ㛑ᕫࠄᕜདⱘֱ䆕˗䞛
ƹᓔথ㗙㾦㡆˖䆹㾦㡆Џ㽕ᰃᣛ䕃ӊᓔথᎹ⿟ᏜˈҪӀ䋳䋷⫼ Sedona 㓪⿟䇁㿔ᓔথ৘ 辵 Sedona ᑨ⫼㒘ӊ῵ഫˈབ˖㸠Ϯ⡍⅞ᑨ⫼ࡳ㛑῵ഫǃ䆒໛ I/O 偅ࡼ῵ഫǃ⡍⅞ㅫ⊩῵ഫ ㄝㄝDŽ㒘ӊ῵ഫᓔথདҹৢᇚҹᎹ‫˄ࣙ݋‬kit˅ⱘᔶᓣ䖯㸠থᏗˈ䖭ḋ᳝߽Ѣ⠜ᴀⱘㅵ⧚ˈ ৠᯊг֓Ѣ㸠Ϯ㒣偠ⱘ鳥㌃੠ᓊ㓁DŽ
ᓔ⑤ὐᅛ㞾᥻䕃ӊԧ㋏Ḛᶊ Sedona ㅔҟ
ᳫᖋढֵ˄࣫Ҁ˅㞾᥻ᡔᴃ᳝䰤݀ৌ ਈ䋶‫ݯ‬
Ǐᨬ 㽕ǐ˖ᴀ᭛Џ㽕ҟ㒡њϔ辵ᑨ⫼Ѣὐᅛ㞾ࡼ࣪᥻ࠊ乚ඳⱘᓔ⑤䕃ӊḚᶊ Sedonaˈࣙ ᣀ೼䖭ϾḚᶊϟབԩ䖯㸠䕃ӊᓔথ੠ᑨ⫼⿟ᑣ䆒䅵ˈҹঞ䆹Ḛᶊⱘᡔᴃ⡍⚍DŽ Ǐ݇䬂䆡ǐ˖Sedonaǃ䕃ӊᶊᵘǃ㰮ᢳᴎǃὐᅛ㞾᥻ǃ䲚ᬷ᥻ࠊ㋏㒳 An introduction of an open source software framework Sedona in Building Automation Wu Caijun LongDHua (BeiJing) Controls Technology Co., Ltd. Abstract˖This paper introduces an open source software framework called Sedona, which is used in the Building Automation. It describes the workflow of developing source code, presents the design flow of the integration and summarizes the technical features of the framework. Keywords˖SedonaǃSoftware FrameworkǃVirtual MachineǃBuilding AutomationǃDCS
ǃᑨ⫼冫՟ ೼ᴀᇣ㡖ˈᇚ䗮䖛ᓔথϔϾ‫݋‬ԧⱘᅲ՟ᴹ䇈ᯢᓔথ㗙੠䲚៤㗙ϡৠⱘᎹ԰⌕⿟ˈҹঞѠ
㗙П䯈䆹བԩण䇗䜡ড়DŽ䖭䞠䗝ᢽὐᅛ㞾ࡼ࣪᥻ࠊЁᐌ㾕ⱘ亢ᴎ᥻ࠊ䘏䕥ᴹВ՟ˈ䗮ᐌᇍϔ ৄ亢ᴎ䖯㸠᥻ࠊ䳔㽕᳝ϝܹϔߎ݅ಯϾ᥻ࠊ⚍˖᠟㞾ࡼ⢊ᗕẔ⌟˄DI˅ǃ䖤㸠⢊ᗕẔ⌟˄DI˅ǃ ᬙ䱰⢊ᗕẔ⌟˄DI˅੠亢ᴎਃ‫˄ࠊ᥻ذ‬DO˅DŽ݊ᐌ㾘ⱘ᥻ࠊ䘏䕥ᰃ˖ⲥ⌟亢ᴎ᠟㞾ࡼ䖤㸠⢊ ᗕˈ೼᠟ࡼ⢊ᗕϟˈ᥻ࠊ఼ϡ䖯㸠㞾ࡼ᥻ࠊˈা㛑䗮䖛⦄എᔎ⬉ᶰਃ‫ذ‬亢ᴎ˗೼㞾ࡼ⢊ᗕϟˈ ᔧ⫼᠋থߎਃ‫ֵذ‬োৢˈ᥻ࠊ఼ਃ‫ذ‬亢ᴎ˗঺໪ˈབᵰ೼亢ᴎਃࡼПৢẔ⌟ࠄᬙ䱰⢊ᗕˈ䙷 Мህゟࠏ‫ذ‬ℶ亢ᴎⱘ䖤㸠DŽ 3.1 ᥻ࠊ䘏䕥ᅲ⦄ℹ偸
- Sedona Kit - Copyright (c) 2009 LongDHua (BeiJing) Controls Technology Co., Ltd. - WuCaiJun, on 2009-10-01. - Licensed under the Academic Free License version 3.0 --> <sedonaKit name = "LongDHuaTools" vendor = "LongDHua" description = "Tools package for the Building Automation" version = "1.0.0" includeSource = "true" doc = "true" > <!-- Dependencies --> <depend on="sys 1.0" /> <!-- Source Directories --> <source dir="." /> <source dir="test" testonly="true"/>
</sedonaKit> 䖭䞠᳝޴⚍䳔㽕䇈ᯢⱘ˖
㄀ϔǃ೼ sedonaKit ᷛㅒ乍Ёˈname ሲᗻᰃ⫼ᴹᦣ䗄䆹Ꮉ‫ⱘࣙ݋‬ৡ鹵ˈvendor ⫼ᴹᦣ 䗄Ꮉ‫ⱘࣙ݋‬կᑨଚDŽབᵰ vendor ᰃ“Tridium”ⱘ䆱ˈ䙷М name ৃҹⳈ᥹‫ݭ‬Ꮉ‫ⱘࣙ݋‬ৡ鹵ˈ 㗠བᵰ vendor ϡᰃ“Tridium”ⱘ䆱ˈབ‫ڣ‬ᴀ᭛ӊ‫ⱘݭ‬ᰃ“LongDHua”ˈ䙷М name ೼‫ݭ‬Ꮉ ‫ࣙ݋‬ৡ鹵ⱘᯊ‫ˈ׭‬ᑨ䆹೼Ꮉ‫ࣙ݋‬ৡ鹵ⱘࠡ䴶гᷛ⊼ vendor ⱘৡ鹵ˈབ“LongDHuaTools”ˈ 䖭ᰃ㓪䆥Ꮉ‫ⱘ݋‬ϔϾᇣ㽕∖DŽ
ƹ䲚៤㗙㾦㡆˖䆹㾦㡆Џ㽕ᰃᣛᶤϾ㸠Ϯ៪乚ඳⱘϧᆊˈ䗮ᐌҪӀা䳔㽕೼བ೒ ᠔冫 ⱘ೒ᔶ࣪ᓔথᎹ‫݋‬䞠ˈᇚᓔথ㗙থᏗⱘᎹ‫ࣙ݋‬Ё᠔䳔㽕⫼ࠄⱘ㒘ӊ῵ഫᢪᣑࠄᎹ԰ऎϞˈ✊ ৢ⫼䖲㒓ᮍᓣᇚ᠔䗝ᢽⱘ㒘ӊ῵ഫᣝ✻Ϯࡵ᭄᥂⌕⿟៪㗙᥻ࠊ䘏䕥݇㋏䖲᥹೼ϔ䍋ˈҢ㗠ህ ᅠ៤њ᭄᥂໘⧚੠᥻ࠊ䘏䕥ⱘᎹ԰DŽᇍѢᓔথ㗙থᏗⱘ↣Ͼ㒘ӊ῵ഫˈ䲚៤㗙䖬ৃҹ䗮䖛ሲ ᗻᴹ䜡㕂੠䇗ᭈ݊ᅲ⦄ࡳ㛑ⱘ৘乍খ᭄ˈҹ⒵䎇‫݋‬ԧᑨ⫼ⱘ䳔㽕DŽ 䖭ḋᇍѢ≵᳝䕃ӊᓔথ㒣偠ⱘ㸠Ϯϧᆊᴹ䇈ˈSedona ‫ܕ‬䆌ҪӀ䞛⫼㒘ӊ῵ഫⱘᮍᓣᴹ鳥㌃ ᑊᓊ㓁㸠Ϯ㒣偠ˈᑊϨҹ೒ᔶ࣪ⱘᮍᓣ䅽⫼᠋䖯㸠῵ഫⱘㅔऩ䖲㒓㒘ড়ˈ䖭ህЎ㸠Ϯϧᆊ೼ ৘㞾ⱘ乚ඳЁ䖯㸠߯䗴ᗻᑨ⫼༴ᅮњമᅲⱘ෎⸔DŽ
ǃᓩ㿔 Ⳃࠡᱎ㛑ὐᅛЁՓ⫼ⱘ䲚ᬷ᥻ࠊ㋏㒳˄Distributed Control System——DCS˅Ḍᖗ⧚
ᗉᰃĀߚᬷ᥻ࠊǃ䲚Ёㅵ⧚āˈ㱑✊৘Ͼ䆒໛ॖᆊ㞾Ꮕⱘ㋏㒳೼ᅲ⦄䖭Ͼᗱᛇᮍ䴶‫خ‬ᕫ䴲ᐌ ϡ䫭ˈԚᰃ೼䖯㸠ϡৠ㋏㒳П䯈ⱘ䲚៤ᮍ䴶ैᰃϡሑҎᛣDŽ৘ᆊ㋏㒳䞛⫼ⱘԧ㋏ᶊᵘϡৠˈ Փ⫼ⱘण䆂гⳌᏂᕜ໻ˈᕜ䲒⫼৘㞾ⱘ谷᳝ण䆂䖯㸠Ѧ㘨Ѧ䗮ˈ಴ℸгህ䆲⫳њ䇌བ LonworksǃBACnetǃModbusǃOPC ㄝϔ㋏߫ⱘᷛ‫ޚ‬䗮ֵण䆂੠᥹ষᷛ‫ⱘⳂˈޚ‬ህᰃЎњ㛑⫼ 㒳ϔⱘᮍ⊩ᴹᅲ⦄ϡৠ㋏㒳П䯈ⱘ䲚៤DŽ
2 ǃ೼{Root}\sedona\src Ⳃᔩϟ߯ᓎϔϾᮄⱘᎹ‫Ⳃࣙ݋‬ᔩˈ䖭䞠পৡЎ “LongDHuaTools”DŽ
3ǃ೼{Root}\sedona\src\LongDHuaTools Ⳃᔩϟ߯ᓎ“kit.xml”᭛ӊˈ䆹᭛ӊᰃ⫼ᴹ ᦣ䗄㓪䆥఼㓪䆥ᯊ᠔䳔㽕ⱘⳌ݇⑤ҷⷕⳂᔩঞ݊Ҫֵᙃˈ䆺㒚ⱘ‫ݙ‬ᆍབϟ˖ <!--
೒ 2 Sedona ೒ᔶ࣪ᓔথᎹ‫݋‬
ҪӀ䞛⫼೒ᔶ࣪ⱘᎹ‫݋‬ᴹ䆒䅵ᑨ⫼⿟ᑣᯊˈेৃҹ೼⦄എⳈ᥹䖲᥹䆒໛ˈᅲᯊⱘ⫼ SOX ण䆂ᇍ䆒໛䖯㸠ᓔথˈҢ㗠Ⳉ᥹㾖ᆳࠄ䆒໛ⱘ䖤㸠ᬜᵰ˗জৃҹ行㒓䖯㸠䆒䅵ˈ✊ৢᇚᑨ⫼ ⿟ᑣֱᄬ೼“sax”᭛ӊ䞠ˈПৢ೼䳔㽕᳈ᮄ䆒໛ⱘᯊ‫ ⫼׭‬sedonac Ꮉ‫݋‬ᇚ݊㓪䆥៤“sab” ᭛ӊˈᑊ⫼ SOX ण䆂ᇚ㓪䆥ৢⱘ⿟ᑣӴ䕧ᅝ㺙ࠄ䆒໛Ϟˈህᅠ៤ᑨ⫼⿟ᑣⱘ᳈ᮄDŽ
೒ 1 Sedona ᓔথᎹ԰⌕⿟೒ 2.2 ᓔথ㗙Ꮉ԰⌕⿟
ᓔথ㗙ⱘᎹ԰⌕⿟䗮ᐌᣝབϟℹ偸䖯㸠˖ 1ǃ⫼䴶৥ᇍ䈵ⱘ Sedona 㓪⿟䇁㿔㓪‫ ݭ‬Sedona 㒘ӊˈ⫼Ѣᅲ⦄ᶤ辵ࡳ㛑៪㗙ㅫ⊩DŽ 2ǃ⫼ sedonac 㓪䆥఼Ꮉ‫݋‬ᇚ Sedona 㒘ӊ⑤ҷⷕ㓪䆥៤Ꮉ‫ࣙ݋‬DŽ೼㓪䆥ⱘ䖛⿟ЁˈᎹ‫݋‬ ࣙ䞠᠔᳝ࣙ৿ⱘ㉏䛑㽕‫ܜ‬䖯㸠᳝ᬜᗻẔᶹˈ✊ৢᠡ㹿㓪䆥៤ϔ辵⡍⅞ⱘЁ䯈Ḑᓣҷⷕ ˄intermediate representation——IR˅DŽIR ህ‫ڣ‬ᰃ Sedona ⱘ∛㓪䇁㿔ϔḋˈ⬅Ѣᅗⱘ ᓩܹՓᕫ⫼ Sedona 䇁㿔ᓔথⱘ㒘ӊ៪㗙ᑨ⫼᳝њᕜདⱘ鼠ỡᗻˈ಴Ў⫼ IR ᅲ⦄ⱘ⫼᠋䘏䕥 ҷⷕⳈࠄ᳔ৢᠡӮ䩜ᇍᶤϾ‫݋‬ԧᑨ⫼ᑇৄ㓪䆥៤ᇍᑨⱘѠ䖯ࠊ Sedona 㰮ᢳᴎᣛҸˈ䖭ḋህ 㛑䅽ᓔথདⱘᎹ‫ࣙ݋‬㛑䗖ᑨ᠔᳝ⱘᑇৄˈ㗠ϡ䳔㽕೼ϡৠᑇৄП䯈䖯㸠໮⃵ⱘ㓪䆥䖛⿟DŽ೼ 㓪䆥ⱘৠᯊˈ䆹㓪䆥఼г㛑䩜ᇍ↣Ͼ㉏ѻ⫳ᷛ‫ ⱘޚ‬Java classfile ᭛ӊˈҢ㗠ৃҹ೼ Java 㰮ᢳᴎϞⳈ᥹䖤㸠 Sedona ᑨ⫼ҷⷕˈҹ֓Ѣᓔথ㗙߽⫼ Java ⱘᓔথ䇗䆩Ꮉ‫݋‬ᇍᑨ⫼㒘ӊ䖯 㸠ᓔথ䇗䆩ˈҢ㗠໻໻ᦤ催ᓔথᬜ⥛DŽ 3ǃᓔথ㗙ᇚ㒘ӊҹᎹ‫ⱘࣙ݋‬ᔶᓣথᏗˈ⬅䲚៤㗙䗝ᢽᇚાѯᎹ‫ࣙ݋‬ᅝ㺙ࠄ᳔㒜ⱘ䆒໛ Ϟএˈ䖭ḋህ⬅ sedonac Ꮉ‫݋‬ᇚ䖭ѯᎹ‫ࣙ݋‬㓪䆥៤Ѡ䖯ࠊⱘ scode ᯴‫ڣ‬᭛ӊ˄䖭ϔℹ䗮ᐌ⬅ Ꮉ‫݋‬㞾ࡼᅠ៤˅DŽ䲚៤㗙䗝ᢽⱘᎹ‫ࣙ݋‬ህ‫އ‬ᅮњ೼䆒໛Ϟ㛑Փ⫼ⱘ㒘ӊࡳ㛑ˈ䖭ḋⱘ㞾⬅䗝 ᢽ㛑࡯ˈ໻໻ᦤ催њ䆒໛ⱘ䗖⫼㣗ೈˈՓᕫ䲚៤㗙ৃҹḍ᥂‫݋‬ԧᑨ⫼⦃๗䖯㸠♉⌏ⱘ㺕࠾DŽ 4ǃᇚ Sedona 㰮ᢳᴎ੠ scode ᯴‫ڣ‬᭛ӊࡴ䕑ࠄ䆒໛Ϟ䖤㸠DŽ䖭ѯ᭛ӊेৃҹᰃ乘‫ֱܜ‬ᄬ ೼䆒໛ⱘ ROM ϞˈҢ㗠೼䆒໛Ϟ⬉ПৢⳈ᥹䖤㸠ˈгৃҹ⬅䲚៤㗙Јᯊ䗝ᢽˈ䗮䖛㔥㒰⫼ SOX ण䆂ࡼᗕࡴ䕑DŽ䖭ḋህՓᕫ䲚៤㗙㛑䴲ᐌ♉⌏ǃᮍ֓ⱘḍ᥂ϡৠ䳔∖䖯㸠⦄എᅮࠊDŽ 2.3 䲚៤㗙Ꮉ԰⌕⿟ ೼ᓔথ㗙ᇚ෎ᴀⱘ㒘ӊ῵ഫ䆒䅵དᑊথᏗߎᴹПৢˈህৃҹ䅽䲚៤㗙㞾㸠䖯㸠䆒໛ࡳ㛑 ⱘᓔথϢᅮࠊˈҢ㗠⫼ᷛ‫ⱘޚ‬ᓔথᮍᓣᅲ⦄㒳ϔⱘĀߚᬷ᥻ࠊāᗱᛇDŽ 䗮ᐌ䲚៤㗙ᰃᶤϾ乚ඳ៪㗙㸠ϮⱘϧᆊˈҪӀ⫼೒ ᠔冫ⱘ೒ᔶ࣪Ꮉ‫ⱘ⌏♉ˈ݋‬䗝ᢽા ѯᎹ‫⫼ࣙ݋‬೼䆒໛Ϟˈ✊ৢ䗝ᢽ䳔㽕ⱘ᥻ࠊ㒘ӊᢪᣑࠄᎹ԰ऎϞˈձ᥂㒘ӊП䯈ⱘ᭄᥂⌕৥ ៪㗙᥻ࠊ䘏䕥݇㋏ˈ䞛⫼䖲㒓ⱘᮍᓣᇚᅗӀ㒘㒛೼ϔ䍋ˈҢ㗠ᅲ⦄᳔㒜ⱘᑨ⫼⿟ᑣDŽ
相关主题