基于布爾邏輯的聯(lián)鎖軟件自動(dòng)生成系統(tǒng)的制作方法
【專利摘要】本發(fā)明公開了一種基于布爾邏輯的聯(lián)鎖軟件自動(dòng)生成系統(tǒng),包括:數(shù)據(jù)庫解析模塊、類模塊、邏輯變量模塊、邏輯樹模塊、邏輯腳本生成模塊和二進(jìn)制文件生成模塊。所述數(shù)據(jù)庫解析模塊接收軌旁原始數(shù)據(jù)并篩選出聯(lián)鎖邏輯所需信息;類模塊定義了聯(lián)鎖邏輯中不同的類型;邏輯變量模塊定義類成員變量和類成員變量的屬性;聯(lián)鎖邏輯規(guī)則庫模塊定義了基于聯(lián)鎖邏輯的語法規(guī)則;邏輯樹模塊用來將布爾表達(dá)式轉(zhuǎn)化成多叉樹形結(jié)構(gòu);邏輯腳本模塊用來生成實(shí)例化的聯(lián)鎖站聯(lián)鎖腳本;二進(jìn)制文件生成模塊用來生成實(shí)例化的聯(lián)鎖站二進(jìn)制文件;本發(fā)明自動(dòng)生成的聯(lián)鎖軟件采用信號技術(shù)人員熟悉的繼電邏輯表達(dá)式為代碼的表現(xiàn)形式,在修改時(shí)只需用類似于自然語言的方式修改規(guī)則庫,節(jié)省了大量開發(fā)時(shí)間,提高工作效率。
【專利說明】基于布爾邏輯的聯(lián)鎖軟件自動(dòng)生成系統(tǒng)
【技術(shù)領(lǐng)域】
[0001]本發(fā)明涉及軌旁控制單元中基于布爾邏輯的聯(lián)鎖軟件的自動(dòng)生成系統(tǒng)。
【背景技術(shù)】
[0002]目前,地鐵CBTC(Communication Based Train Control,基于通信的列車控制)系統(tǒng)中后備控制單元,其聯(lián)鎖軟件一般采用布爾代數(shù)完成,經(jīng)過了手工編制到自動(dòng)生成的過程;其中:手工編制聯(lián)鎖軟件工作量大,易出現(xiàn)錯(cuò)誤,已逐漸被自動(dòng)生成的方式替代;自動(dòng)生成聯(lián)鎖一般采用C,C++等完成聯(lián)鎖軟件子功能模塊的自動(dòng)生成。
[0003]但是,如果采用自動(dòng)生成聯(lián)鎖方法,當(dāng)聯(lián)鎖軟件某一個(gè)功能模塊要修改時(shí),就要修改相應(yīng)的源代碼,大部分聯(lián)鎖技術(shù)人員都只具有鐵路信號背景,對基于繼電電路的布爾邏輯表達(dá)式比較熟悉,但對計(jì)算機(jī)語言不是很熟悉,對其不熟悉的領(lǐng)域上手需要很長的時(shí)間,而且容易出錯(cuò)。因此,這成為本領(lǐng)域技術(shù)人員需要解決的問題。
【發(fā)明內(nèi)容】
[0004]本發(fā)明的目的在于提供一種基于布爾邏輯的聯(lián)鎖軟件自動(dòng)生成系統(tǒng),自動(dòng)生成的聯(lián)鎖軟件采用信號技術(shù)人員熟悉的繼電邏輯表達(dá)式為代碼的表現(xiàn)形式,并且在修改時(shí),只要用類似于自然語言的方式修改規(guī)則庫,節(jié)省了大量開發(fā)時(shí)間,提高工作效率。
[0005]實(shí)現(xiàn)上述目的的技術(shù)方案是:
[0006]—種基于布爾邏輯的聯(lián)鎖軟件自動(dòng)生成系統(tǒng),包括:
[0007]數(shù)據(jù)庫解析模塊,用于接收軌旁原始數(shù)據(jù),篩選出聯(lián)鎖邏輯所需信息并輸出,該信息包括聯(lián)鎖區(qū)中所有的進(jìn)路,進(jìn)路和信號機(jī)、道岔之間跨類調(diào)用的數(shù)據(jù);
[0008]類模塊,用于定義聯(lián)鎖邏輯中不同的類,并混合接收自所述數(shù)據(jù)庫解析模塊輸出的信息一齊輸出;
[0009]邏輯變量模塊,根據(jù)接收自所述類模塊輸出的信息,定義類成員變量和類成員變量的屬性,輸出實(shí)例化站場數(shù)據(jù);
[0010]聯(lián)鎖邏輯規(guī)則庫模塊,用于接受信號人員寫入的通用布爾表達(dá)式并檢查語法錯(cuò)誤;
[0011]邏輯樹模塊,用于將聯(lián)鎖邏輯規(guī)則庫模塊中的布爾表達(dá)式轉(zhuǎn)化成多叉樹形結(jié)構(gòu),輸出邏輯規(guī)則;
[0012]邏輯腳本生成模塊,接收所述邏輯樹模塊的邏輯規(guī)則和所述邏輯變量模塊中的實(shí)例化站場數(shù)據(jù),生成實(shí)例化邏輯腳本;
[0013]二進(jìn)制文件生成模塊,接收所述邏輯樹模塊的邏輯規(guī)則和所述邏輯變量模塊中的實(shí)例化站場數(shù)據(jù),生成二進(jìn)制文件。
[0014]進(jìn)一步地,所述軌旁原始數(shù)據(jù)指:站場數(shù)據(jù)和物理輸入輸出配置。
[0015]進(jìn)一步地,所述類模塊定義的不同的類指:信號機(jī)類,道岔類,進(jìn)路類。
[0016]本發(fā)明的有益效果是:本發(fā)明采用信號信號技術(shù)人員熟悉的繼電邏輯表達(dá)式為代碼的表現(xiàn)形式,由信號技術(shù)人員定義聯(lián)鎖軟件邏輯規(guī)則庫,獲取站場配置數(shù)據(jù)和配置文件,自動(dòng)生成聯(lián)鎖軟件,當(dāng)需要修改時(shí),開發(fā)人員只需要采用類似于自然語言的方式修改規(guī)則庫,從而節(jié)省大量開發(fā)時(shí)間,提高工作效率。
【專利附圖】
【附圖說明】
[0017]圖1是聯(lián)鎖邏輯梯形圖表達(dá)式;
[0018]圖2是邏輯樹的四種節(jié)點(diǎn);
[0019]圖3是聯(lián)鎖邏輯樹表達(dá)式;
[0020]圖4是本發(fā)明的基于布爾邏輯的聯(lián)鎖軟件自動(dòng)生成系統(tǒng)的結(jié)構(gòu)圖。
【具體實(shí)施方式】
[0021]下面將結(jié)合附圖對本發(fā)明作進(jìn)一步說明。
[0022]首先,簡述定義語法規(guī)則(邏輯樹):
[0023]布爾邏輯一般采用與、或、非及時(shí)間定義,比如F(out) = (VI+?V2)*?V3+V4*V5)*V6,用布爾邏輯梯形圖如圖1所示。
[0024]以上每條邏輯語句有一個(gè)對應(yīng)的邏輯樹,邏輯樹完整的表示該邏輯語句中所有輸入輸出量和被賦值變量之間的邏輯關(guān)系,并能夠根據(jù)該邏輯樹生成對應(yīng)的邏輯語句。邏輯樹與布爾邏輯類似,有“與”、“或” “非”,“變量”四種節(jié)點(diǎn),如圖2所示。
[0025]F(out) = (VI+?V2)*?V3+V4*V5)*V6用邏輯樹表示如圖3所示。通過應(yīng)用邏輯樹,將所有節(jié)點(diǎn)的運(yùn)算符表達(dá)式組合在一起形成一條完整的布爾邏輯表達(dá)式。
[0026]請參閱圖4,本發(fā)明的基于布爾邏輯的聯(lián)鎖軟件自動(dòng)生成系統(tǒng),包括:數(shù)據(jù)庫解析模塊1、類模塊2、邏輯變量模塊3、聯(lián)鎖邏輯規(guī)則庫模塊4、邏輯樹模塊5、邏輯腳本生成模塊6和二進(jìn)制文件生成模塊7,其中:
[0027]數(shù)據(jù)庫解析模塊I接收軌旁原始數(shù)據(jù)(指:站場數(shù)據(jù)和物理輸入輸出配置),篩選出聯(lián)鎖邏輯所需信息并輸出,該信息包括聯(lián)鎖區(qū)中所有的進(jìn)路,進(jìn)路和信號機(jī)、道岔之間跨類調(diào)用的數(shù)據(jù);
[0028]類模塊2用于定義聯(lián)鎖邏輯中不同的類,并混合接收自數(shù)據(jù)庫解析模塊I輸出的信息一齊輸出,將數(shù)據(jù)庫解析模塊I輸出的信息映射到對應(yīng)的邏輯變量集合中;
[0029]邏輯變量模塊3根據(jù)接收自類模塊2輸出的信息,定義類成員變量和類成員變量的屬性,輸出實(shí)例化站場數(shù)據(jù);
[0030]聯(lián)鎖邏輯規(guī)則庫模塊4定義了聯(lián)鎖邏輯的語法規(guī)則,接受信號人員寫入的通用布爾表達(dá)式并檢查語法錯(cuò)誤;
[0031]邏輯樹模塊5將聯(lián)鎖邏輯規(guī)則庫模塊4中的布爾表達(dá)式轉(zhuǎn)化成多叉樹形結(jié)構(gòu),輸出邏輯規(guī)則;
[0032]邏輯腳本生成模塊6接收邏輯樹模塊5的邏輯規(guī)則和邏輯變量模塊3中的實(shí)例化站場數(shù)據(jù),生成實(shí)例化邏輯腳本;
[0033]二進(jìn)制文件生成模塊7接收邏輯樹模塊5的邏輯規(guī)則和邏輯變量模塊3中的實(shí)例化站場數(shù)據(jù),生成二進(jìn)制文件。
[0034]以上實(shí)施例僅供說明本發(fā)明之用,而非對本發(fā)明的限制,有關(guān)【技術(shù)領(lǐng)域】的技術(shù)人員,在不脫離本發(fā)明的精神和范圍的情況下,還可以作出各種變換或變型,因此所有等同的技術(shù)方案也應(yīng)該屬于本發(fā)明的范疇,應(yīng)由各權(quán)利要求所限定。
【權(quán)利要求】
1.一種基于布爾邏輯的聯(lián)鎖軟件自動(dòng)生成系統(tǒng),其特征在于,包括: 數(shù)據(jù)庫解析模塊,用于接收軌旁原始數(shù)據(jù),篩選出聯(lián)鎖邏輯所需信息并輸出,該信息包括聯(lián)鎖區(qū)中所有的進(jìn)路,進(jìn)路和信號機(jī)、道岔之間跨類調(diào)用的數(shù)據(jù); 類模塊,用于定義聯(lián)鎖邏輯中不同的類,并混合接收自所述數(shù)據(jù)庫解析模塊輸出的信息一起輸出; 邏輯變量模塊,根據(jù)接收自所述類模塊輸出的信息,定義類成員變量和類成員變量的屬性,輸出實(shí)例化站場數(shù)據(jù); 聯(lián)鎖邏輯規(guī)則庫模塊,用于接受信號人員寫入的通用布爾表達(dá)式并檢查語法錯(cuò)誤; 邏輯樹模塊,用于將聯(lián)鎖邏輯規(guī)則庫模塊中的布爾表達(dá)式轉(zhuǎn)化成多叉樹形結(jié)構(gòu),輸出邏輯規(guī)則; 邏輯腳本生成模塊,接收所述邏輯樹模塊的邏輯規(guī)則和所述邏輯變量模塊中的實(shí)例化站場數(shù)據(jù),生成實(shí)例化邏輯腳本; 二進(jìn)制文件生成模塊,接收所述邏輯樹模塊的邏輯規(guī)則和所述邏輯變量模塊中的實(shí)例化站場數(shù)據(jù),生成二進(jìn)制文件。
2.根據(jù)權(quán)利要求1所述的基于布爾邏輯的聯(lián)鎖軟件自動(dòng)生成系統(tǒng),其特征在于,所述軌旁原始數(shù)據(jù)指:站場數(shù)據(jù)和物理輸入輸出配置。
3.根據(jù)權(quán)利要求1所述的基于布爾邏輯的聯(lián)鎖軟件自動(dòng)生成系統(tǒng),其特征在于,所述類模塊定義的不同的類指:信號機(jī)類,道岔類,進(jìn)路類。
【文檔編號】G06F9/44GK104049976SQ201410300759
【公開日】2014年9月17日 申請日期:2014年6月27日 優(yōu)先權(quán)日:2014年6月27日
【發(fā)明者】李廣誠, 劉會明 申請人:上海自儀泰雷茲交通自動(dòng)化系統(tǒng)有限公司