本發(fā)明涉及船舶附加設(shè)備技術(shù)領(lǐng)域,特別是涉及一種基于底層雙冗余結(jié)構(gòu)的新型船舶主推進(jìn)控制系統(tǒng)。
背景技術(shù):
主推進(jìn)控制系統(tǒng)是船舶自動(dòng)化系統(tǒng)的重要組成部分,隨著計(jì)算機(jī)及網(wǎng)絡(luò)技術(shù)的發(fā)展,越來越多的先進(jìn)技術(shù)被應(yīng)用到船舶自動(dòng)化領(lǐng)域中來,目前世界各大船級(jí)社將現(xiàn)場(chǎng)總線技術(shù)應(yīng)用到船舶自動(dòng)化領(lǐng)域并取得了長足的進(jìn)步?,F(xiàn)有國內(nèi)船舶主推進(jìn)控制系統(tǒng)采用PLC進(jìn)行控制,或采用PROFIBUS總線,且均被國外廠家壟斷,與我國船舶制造業(yè)十二五規(guī)劃的目標(biāo)完全不符。此外,船舶主推進(jìn)控制系統(tǒng)中PLC主要用于編程和作為輸入輸出模塊,而PLC真正的梯形圖優(yōu)勢(shì)并不發(fā)揮作用,且PLC各個(gè)模塊前期投入較大;而PROFIBUS總線雖然編程簡單,但是后期系統(tǒng)維護(hù)升級(jí)價(jià)格昂貴,所以為了打破國外產(chǎn)品的壟斷,本發(fā)明采用雙CAN總線和232串行總線開發(fā)出一種基于底層雙冗余結(jié)構(gòu)的新型船舶主推進(jìn)控制系統(tǒng)。。
技術(shù)實(shí)現(xiàn)要素:
發(fā)明目的:本發(fā)明的目的是提供一種能夠解決現(xiàn)有技術(shù)中存在的缺陷的基于底層雙冗余結(jié)構(gòu)的新型船舶主推進(jìn)控制系統(tǒng)。
技術(shù)方案:為達(dá)到此目的,本發(fā)明采用以下技術(shù)方案:
本發(fā)明所述的基于底層雙冗余結(jié)構(gòu)的新型船舶主推進(jìn)控制系統(tǒng),包括主備控制模塊和I/O模塊,主備控制模塊包括主控制單元和備用控制單元,主控制單元連接備用控制單元,主控制單元還連接并行的第一CAN總線和第二CAN總線,備用控制單元也連接并行的第一CAN總線和第二CAN總線,I/O模塊分別連接主控制單元和備用控制單元。
進(jìn)一步,當(dāng)主控制單元正常工作時(shí),備用控制單元處于半休眠狀態(tài),只接收數(shù)據(jù),不發(fā)送控制指令;當(dāng)主控制單元發(fā)生故障時(shí),備用控制單元正常工作,發(fā)揮主控制單元的功能;當(dāng)主控制單元從故障中恢復(fù)正常時(shí),備用控制單元回到半休眠狀態(tài)。
進(jìn)一步,當(dāng)?shù)谝籆AN總線工作時(shí),第二CAN總線處于自檢狀態(tài);當(dāng)?shù)谝籆AN總線發(fā)生故障時(shí),第二CAN總線工作,第一CAN總線周期性循環(huán)自檢;當(dāng)?shù)谝籆AN總線從故障中恢復(fù)正常時(shí),第二CAN總線恢復(fù)到自檢狀態(tài)。
進(jìn)一步,所述I/O模塊包括模擬量輸入單元、模擬量輸出單元、開關(guān)量輸入單元和開關(guān)量輸出單元。
進(jìn)一步,還包括分路處理模塊,分路處理模塊包括第一模擬量輸入單元、第二模擬量輸入單元、第一模擬量輸出單元、第二模擬量輸出單元、開關(guān)量輸入單元和開關(guān)量輸出單元;采集的模擬量通過模擬量輸入單元分別輸入至第一模擬量輸入單元和第二模擬量輸入單元,并通過第一模擬量輸入單元傳送至主控制單元,通過第二模擬量輸入單元傳送至備用控制單元;從主控制單元輸出的模擬量通過第一模擬量輸出單元輸出至模擬量輸出單元,再由模擬量輸出單元進(jìn)行輸出,從備用控制單元輸出的模擬量通過第二模擬量輸出單元輸出至模擬量輸出單元,再由模擬量輸出單元進(jìn)行輸出;采集的開關(guān)量通過開關(guān)量輸入單元分別輸入至主控制單元和備用控制單元;從主控制單元和備用控制單元輸出的開關(guān)量通過開關(guān)量輸出單元進(jìn)行輸出。
進(jìn)一步,所述第一模擬量輸入單元包括第一模擬開關(guān)和第一串行SPI總線,第二模擬量輸入單元包括第二模擬開關(guān)和第二串行SPI總線,采集的模擬量通過模擬量輸入單元輸入,然后通過第一串行SPI總線輸入至第一模擬開關(guān),通過第二串行SPI總線輸入至第二模擬開關(guān),再通過第一模擬開關(guān)輸入至主控制單元,通過第二模擬開關(guān)輸入至備用控制單元。
進(jìn)一步,所述第一模擬量輸出單元包括第三模擬開關(guān)和第三串行SPI總線,第二模擬量輸出單元包括第四模擬開關(guān)和第四串行SPI總線,從主控制單元輸出的模擬量通過第三模擬開關(guān)輸出到第三串行SPI總線,并通過第三串行SPI總線輸出至模擬量輸出單元,從備用控制單元輸出的模擬量通過第四模擬開關(guān)輸出到第四串行SPI總線,并通過第四串行SPI總線輸出至模擬量輸出單元。
進(jìn)一步,所述開關(guān)量輸入單元包括第五模擬開關(guān),開關(guān)量輸出單元包括第六模擬開關(guān)。
進(jìn)一步,所述主控制單元與備用控制單元之間通過RS232串行總線進(jìn)行通訊。
進(jìn)一步,還包括與第一CAN總線連接的第一隔離收發(fā)器和第一端口保護(hù)器件,以及與第二CAN總線連接的第二隔離收發(fā)器和第二端口保護(hù)器件。
有益效果:本發(fā)明采用CAN總線來搭建系統(tǒng),并對(duì)CAN總線進(jìn)行完全冗余并行設(shè)計(jì),提高了系統(tǒng)底層數(shù)據(jù)交互的可靠性,避免了因總線物理故障導(dǎo)致系統(tǒng)故障;并且,本發(fā)明還對(duì)主控制單元和備用控制單元進(jìn)行熱冗余設(shè)計(jì),并通過RS232串行總線進(jìn)行實(shí)時(shí)監(jiān)測(cè),提高了主控制單元與備用控制單元之間切換的實(shí)時(shí)性,簡化了切換邏輯;此外,本發(fā)明還采用分路處理模塊實(shí)現(xiàn)了主控制單元和備用控制單元對(duì)I/O模塊的控制,簡化了I/O端口電路,節(jié)約了成本。
附圖說明
圖1為本發(fā)明具體實(shí)施方式的系統(tǒng)框圖;
圖2為本發(fā)明具體實(shí)施方式的主控制單元和備用控制單元的通訊原理示意圖;
圖3為本發(fā)明具體實(shí)施方式的兩路CAN總線的附屬電路圖;
圖4為本發(fā)明具體實(shí)施方式的主控制單元與備用控制單元之間的切換機(jī)制流程圖;
圖5為本發(fā)明具體實(shí)施方式的兩路CAN總線的切換機(jī)制流程圖。
具體實(shí)施方式
下面結(jié)合附圖和具體實(shí)施方式對(duì)本發(fā)明的技術(shù)方案作進(jìn)一步的介紹。
本具體實(shí)施方式公開了一種基于底層雙冗余結(jié)構(gòu)的新型船舶主推進(jìn)控制系統(tǒng),包括主備控制模塊、I/O模塊、分路處理模塊、兩條CAN總線及其附屬電路。其中,主備控制模塊包括主控制單元和備用控制單元。I/O模塊包括模擬量輸入單元、模擬量輸出單元、開關(guān)量輸入單元和開關(guān)量輸出單元。兩條CAN總線分別為第一CAN總線和第二CAN總線。第一CAN總線的附屬電路包括第一CAN控制器、第一隔離收發(fā)器、第一端口保護(hù)器件和第一分裂電阻,第二CAN總線的附屬電路包括第二CAN控制器、第二隔離收發(fā)器、第二端口保護(hù)器件和第二分裂電阻。由于船舶現(xiàn)場(chǎng)I/O數(shù)量較多,且船舶空間狹窄、布局緊湊,為了節(jié)約成本、減小控制單元的體積,只對(duì)主備控制模塊和兩條CAN總線進(jìn)行冗余設(shè)計(jì),對(duì)I/O模塊不做冗余設(shè)計(jì)。因此,需要在主備控制模塊與I/O模塊之間設(shè)置分路處理模塊,以防止I/O模塊控制邏輯紊亂。分路處理模塊包括第一模擬量輸入單元、第二模擬量輸入單元、第一模擬量輸出單元、第二模擬量輸出單元、開關(guān)量輸入單元和開關(guān)量輸出單元。第一模擬量輸入單元包括第一模擬開關(guān)和第一串行SPI總線,第二模擬量輸入單元包括第二模擬開關(guān)和第二串行SPI總線,第一模擬量輸出單元包括第三模擬開關(guān)和第三串行SPI總線,第二模擬量輸出單元包括第四模擬開關(guān)和第四串行SPI總線,開關(guān)量輸入單元包括第五模擬開關(guān),開關(guān)量輸出單元包括第六模擬開關(guān)。
如圖1所示,采集的模擬量通過模擬量輸入單元輸入至模數(shù)轉(zhuǎn)換模塊,通過模數(shù)轉(zhuǎn)換模塊進(jìn)行模數(shù)轉(zhuǎn)換,并將輸出分成兩路,一路輸出通過第一串行SPI總線送至第一模擬開關(guān),再通過第一模擬開關(guān)送至主控制單元,另一路輸出通過第二串行SPI總線送至第二模擬開關(guān),再通過第二模擬開關(guān)送至備用控制單元。主控制單元輸出的模擬量通過第三模擬開關(guān)輸出至第三串行SPI總線,再通過第三串行SPI總線傳輸至數(shù)模轉(zhuǎn)換模塊,最后通過模擬量輸出單元輸出。備用控制單元輸出的模擬量通過第四模擬開關(guān)輸出至第四串行SPI總線,再通過第四串行SPI總線傳輸至數(shù)模轉(zhuǎn)換模塊,最后通過模擬量輸出單元輸出。采集的開關(guān)量通過第五模擬開關(guān)分別傳輸至主控制單元和備用控制單元。主控制單元輸出的開關(guān)量和備用控制單元輸出的開關(guān)量分別通過第六模擬開關(guān)輸出至開關(guān)量輸出單元。主控制單元與備用控制單元之間通過RS232串行總線進(jìn)行通訊,如圖2所示,主控制單元和備用控制單元都可以采用ARM處理器。主控制單元還連接并行的第一CAN總線和第二CAN總線,備用控制單元也連接并行的第一CAN總線和第二CAN總線。
當(dāng)主控制單元正常工作時(shí),備用控制單元處于半休眠狀態(tài),只接收數(shù)據(jù),不發(fā)送控制指令;當(dāng)主控制單元發(fā)生故障時(shí),備用控制單元正常工作,發(fā)揮主控制單元的功能;當(dāng)主控制單元從故障中恢復(fù)正常時(shí),備用控制單元回到半休眠狀態(tài)。目前節(jié)點(diǎn)冗余一般通過CAN總線方式實(shí)現(xiàn),即在主控制單元在CAN總線上不斷向其他控制單元發(fā)送驗(yàn)證信息,這種方式邏輯比較繁瑣,并且占用總線資源,對(duì)于信息量較大的船舶控制系統(tǒng)不太適合。因此本發(fā)明為了提高節(jié)點(diǎn)切換的實(shí)時(shí)性要求,采用RS232串行總線進(jìn)行節(jié)點(diǎn)切換,切點(diǎn)切換流程圖如圖4所示。
當(dāng)?shù)谝籆AN總線工作時(shí),第二CAN總線處于自檢狀態(tài);當(dāng)?shù)谝籆AN總線發(fā)生故障時(shí),第二CAN總線工作,第一CAN總線周期性循環(huán)自檢;當(dāng)?shù)谝籆AN總線從故障中恢復(fù)正常時(shí),第二CAN總線恢復(fù)到自檢狀態(tài),如圖5所示。
如圖3所示,主控制單元和備用控制單元均采用了STM32F407處理器,第一CAN控制器和第二CAN控制器均集成在STM32F407處理器內(nèi)。第一CAN控制器連接第一隔離收發(fā)器,第一隔離收發(fā)器連接第一端口保護(hù)器件,第一端口保護(hù)器件連接第一分裂電阻,第一分裂電阻連接第一CAN總線。第二CAN控制器連接第二隔離收發(fā)器,第二隔離收發(fā)器連接第二端口保護(hù)器件,第二端口保護(hù)器件連接第二分裂電阻,第二分裂電阻連接第二CAN總線。
第一模擬開關(guān)、第二模擬開關(guān)、第三模擬開關(guān)、第四模擬開關(guān)、第五模擬開關(guān)和第六模擬開關(guān)均采用ADG619開關(guān)。模數(shù)轉(zhuǎn)換模塊采用ADS8332芯片,數(shù)模轉(zhuǎn)換模塊采用AD420芯片。