劉金保,王智琳,李 政
(江蘇科技大學(xué) 江蘇 鎮(zhèn)江 212003)
設(shè)U={x}是一個(gè)用精確數(shù)值表示的定量論域,T是U上的定性概念即語言子集,CT(x)是 U 到閉區(qū)間[0,1]的映射,對(duì)于任意x∈U,都存在一個(gè)有穩(wěn)定傾向的隨機(jī)數(shù)CT(x),則稱式(1)為云模型[4]。
自1995李德毅院士正式提出隸屬云概念[1](即云模型概念)以來,云模型理論的基本框架及其算法逐步得到完善,并開始趨向成熟。目前云模型的硬件實(shí)現(xiàn)已成為研究熱點(diǎn),如云模型已被用于TMS320F2812 DSP和STC89C52單片機(jī)[2-3]。PLC自1968年問世以來,憑借其可編程性、高可靠性成為工業(yè)自動(dòng)化領(lǐng)域應(yīng)用最廣泛的控制設(shè)備。在深入研究云模型相關(guān)資料時(shí),發(fā)現(xiàn)實(shí)現(xiàn)云模型的前提條件是能進(jìn)行四則運(yùn)算及指數(shù)、對(duì)數(shù)運(yùn)算和產(chǎn)生任意正態(tài)隨機(jī)數(shù)。S7-300 PLC運(yùn)算功能強(qiáng)大,具有進(jìn)行四則運(yùn)算及指數(shù)、對(duì)數(shù)運(yùn)算功能。但S7-300 PLC并沒有產(chǎn)生隨機(jī)數(shù)的硬件模塊、系統(tǒng)功能SFC和系統(tǒng)功能塊SFB。在深入分析隨機(jī)數(shù)生成相關(guān)文獻(xiàn)的基礎(chǔ)上,用STL語言在SIEMENS編程軟件STEP7上編制一個(gè)個(gè)功能FC實(shí)現(xiàn)任意正態(tài)隨機(jī)數(shù)的產(chǎn)生,一維正態(tài)云模型算法等,最后在SIEMENS PLC專用的仿真器PLCSIM上進(jìn)行調(diào)試,并將輸出過程值用組態(tài)軟件WINCC進(jìn)行歸檔,然后將歸檔數(shù)據(jù)導(dǎo)入EXCEL,再將EXCEL里的數(shù)據(jù)轉(zhuǎn)換成圖形進(jìn)行直觀驗(yàn)證。
特別地,設(shè) R1(E1,E2)表示服從正態(tài)分布的隨機(jī)數(shù),其中E1為期望值,E2為標(biāo)準(zhǔn)差,則由滿足式:
數(shù)據(jù)對(duì) drop(xi,mi)(i=1,2,…N)構(gòu)成的云模型稱為一維正態(tài)云模型[5],簡(jiǎn)稱一維正態(tài)云,組成云模型的數(shù)據(jù)對(duì)(xi,mi)稱為一維云滴。其中,Ex、En和He為云模型的3個(gè)重要數(shù)字特征,分別成為期望值、熵和超熵,記為[Ex,En,He]。
一維正態(tài)云模型其輸入為表示定性概念的期望值Ex、熵En和超熵 He,云滴數(shù)量N,輸出是N個(gè)云滴在數(shù)域空間的定量位置及每個(gè)云滴代表該概念的確定度。具體算法[6]為輸入:(Ex,En,He,N)
輸出:drop(x1,m1),drop(x2,m2),…,drop(xN,mN)
1)生成以Ex為期望值,En為標(biāo)準(zhǔn)差的一個(gè)正態(tài)隨機(jī)數(shù)xi=R1(Ex,En)
2)生成以En為期望值,He為標(biāo)準(zhǔn)差的一個(gè)正態(tài)隨機(jī)數(shù)Pi=R1(En,He)
4)令數(shù)據(jù)對(duì)(xi,mi)為一個(gè)一維云滴。
5)重復(fù)步驟 1)~4),直至產(chǎn)生 N個(gè)云滴。
正態(tài)分布又稱高斯分布,是最重要、最常見、應(yīng)用最廣泛的一種連續(xù)型分布 一般來說,具有任意分布的隨機(jī)數(shù)都是由(0,1)區(qū)間上的均勻分布隨機(jī)數(shù)來實(shí)現(xiàn)的 因此,首先要生成(0,1)區(qū)間上的均勻分布隨機(jī)數(shù),然后再利用隨機(jī)變量函數(shù)變換的方法產(chǎn)生正態(tài)分布的隨機(jī)數(shù)[7]。
(0,1)區(qū)間上的均勻分布偽隨機(jī)數(shù)產(chǎn)生的方法多種多樣,有線性同余法、平方取中法、混沌法、反饋移位寄存器法等,其中最常用的是線性同余發(fā)生器,它通過如下的線性同余遞推關(guān)系式來產(chǎn)生數(shù)列。
其中,a,c,x0,M 均為正整數(shù),x0為種子, 使用時(shí)需要仔細(xì)地挑選模數(shù)M和種子x0,使得產(chǎn)生出的偽隨機(jī)數(shù)的循環(huán)周期要盡可能長(zhǎng)。xi為(0,1)區(qū)間上的隨機(jī)數(shù)。
生成(0,1)均勻分布隨機(jī)數(shù)后,可以通過反函數(shù)法、變換法、舍選法、組合法等各種變換及映射關(guān)系來得到任意正態(tài)分布隨機(jī)數(shù)。下面具體介紹變換法。
變換法通過一個(gè)變換將一個(gè)分布的隨機(jī)數(shù)變換成為不同分布產(chǎn)生的隨機(jī)數(shù),變換法的典型的例子是Box-Muller變換,它可產(chǎn)生精確的正態(tài)分布隨機(jī)變量。其變換式為:
X1、X2是在區(qū)間[0,1]上均勻分布的隨機(jī)變量,所得的 Y1、Y2相互獨(dú)立的均勻值,方差的正態(tài)分布隨機(jī)變量[8]。
按前面闡述的隨機(jī)數(shù)產(chǎn)生原理、一維正態(tài)云模型算法等編寫0-1均勻分布隨機(jī)數(shù)發(fā)生器、標(biāo)準(zhǔn)正態(tài)隨機(jī)數(shù)發(fā)生器等核心功能程序。具體程序設(shè)計(jì)流程如圖1所示。
圖1 程序設(shè)計(jì)流程Fig.1 Flow chart of programming
1)讀取系統(tǒng)時(shí)鐘
2)產(chǎn)生標(biāo)準(zhǔn)正態(tài)隨機(jī)數(shù)
打開STEP7編程軟件,SIMATIC Manager中的菜單欄上單擊“選項(xiàng)”,在下拉菜單中選擇“仿真模塊”或直接單擊工具欄上的仿真器圖標(biāo)打開PLCSIM,將整個(gè)站點(diǎn)(包括硬件組態(tài)和程序塊)下載到PLCSIM中,與此同時(shí)啟動(dòng)WinCC,并激活WinCC運(yùn)行系統(tǒng)。再開啟仿真器PLCSIM,程序?qū)㈤_始運(yùn)行起來,此時(shí)WinCC自動(dòng)將輸出過程值進(jìn)行歸檔,最后將過程值的歸檔記錄導(dǎo)入EXCEL,再將EXCEL里的數(shù)據(jù)轉(zhuǎn)換成直觀的圖形。
圖2 PLCSIM仿真界面Fig.2 PLCSIM simulation interface
云模型的特點(diǎn)是改變它的3個(gè)數(shù)字特征Ex,En和He就可以得到成千上萬的云滴構(gòu)成整個(gè)云。云模型的3個(gè)數(shù)字特征表示了各自不同的意義,只要一個(gè)數(shù)字特征不同就會(huì)產(chǎn)生不同的效果。圖3分別以點(diǎn)和線性連接點(diǎn)的方式展示了代表云滴的正態(tài)隨機(jī)數(shù)及其隸屬度的分布情況。圖4是圖3的數(shù)據(jù)轉(zhuǎn)化成圖形的效果。圖4、圖5對(duì)比說明了云模型的En改變所引起的云的形狀的改變。以上圖形直觀論證了一維正態(tài)云模型在S7-300 PLC上的成功實(shí)現(xiàn)。
圖3 WinCC歸檔過程值趨勢(shì)圖Fig.3 WinCC archived process values run chart
圖4 [5,0.3,0.01]云模型Fig.4 [5,0.3,0.01]cloud model
圖5 [5,0.5,0.01]云模型Fig.5 [5,0.5,0.01]cloud model
在深入研究云模型算法的相關(guān)文獻(xiàn)和西門子S7-300 PLC的功能后首次提出一維正態(tài)云模型算法在PLC上實(shí)現(xiàn)的思想,并在編程軟件STEP7上將這一思想轉(zhuǎn)化成STL語言程序,最后通過STEP7、PLCSIM和WINCC進(jìn)行聯(lián)合仿真測(cè)試,測(cè)試結(jié)果表明在S7-300 PLC能實(shí)現(xiàn)一維正態(tài)云模型算法。一維正態(tài)云模型算法在S7-300 PLC的成功實(shí)現(xiàn)為云模型算法的應(yīng)用拓寬了道路,同時(shí)也為高級(jí)算法在PLC上的應(yīng)用提供了一種新的思路與方法。
[1]李德毅,孟海軍,史雪梅.隸屬云和隸屬云發(fā)生器[J].計(jì)算機(jī)研究和發(fā)展,1995,6(32):15-20.LI De-yi, MENG Hai-jun, SHI Xue-mei.Membership cloud and membership cloud generators [J].Computer R&D,1995,6(32):15-20.
[2]李眾,李政.基于DSP的一維云模型控制器的設(shè)計(jì)[J].科學(xué)技術(shù)與工程,2011,25(11):224-227.LI Zhong,LI Zheng.Design of one dimensional cloudcontroller based on DSP[J].Science Technology and Engineering,2011,25(11):224-227.
[3]高鍵,周海龍,李眾.一維云模型控制器在輪式機(jī)器人中的應(yīng)用[J].自動(dòng)化與儀表,2010,26(2):30-31.GAO Jian, ZHOU Hai-long, LI Zhong.Application of onedimension cloud model controller in the wheeled robot[J].Automation&Instrumentation,2010,26(2):30-31.
[4]YANG Zhao-hui,LI De-yi.Planar model and its application in prediction[J].Chinese Journal of Computers,1998,21(11):961-969.
[5]ZHANG Fei-zhou, FAN Yue-zu, SUN Xian-fang.Assessment and analysis of fuzzy reliability based on cloud models in aircraft navigation system[J].ACTA Automatic SINCA,2002,28(1):126-130.
[6]高健,李眾.一維云模型映射器設(shè)計(jì)及其應(yīng)用研究[J].系統(tǒng)仿真學(xué)報(bào),2006,7(18):1864-1865.GAO Jian,LI Zhong.Study on design and application of One-Dimension Cloud Model Mapping Processor[J].Journal of System Simulation,2006,7(18):1864-1865.
[7]孫曉雅.正態(tài)總體統(tǒng)計(jì)量計(jì)算機(jī)隨機(jī)數(shù)的生成方法[J].大連大學(xué)學(xué)報(bào),2006,27(6):4-7.SUN Xiao-ya.An approach for pseudo random number generation of the three statistics from normal distribution[J].Journal of Da Lian university,2006,27(6):4-7.
[8]肖化昆.系統(tǒng)仿真中任意概率分布的偽隨機(jī)數(shù)研究[J].計(jì)算機(jī)工程與設(shè)計(jì),2005,26(1):168-171.XIAO Hua-kun.Study on pseudo-random number of arbitrariness probability distributing in system simulation[J].Computer Engineering and Design,2005,26(1):168-171.