2021年10月17日-20日,2021北京國際風(fēng)能大會暨展覽會(CWP 2021)在北京新國展隆重召開。本屆大會以“碳中和——風(fēng)電發(fā)展的新機遇”為主題,歷時四天,包括開幕式、主旨發(fā)言、高峰對話、創(chuàng)新劇場以及關(guān)于“國際成熟風(fēng)電市場發(fā)展動態(tài)及投資機會”“國際新興風(fēng)電市場發(fā)展動態(tài)及投資機會”“風(fēng)電設(shè)備智能運維論壇”“碳達峰碳中和加速能源轉(zhuǎn)型”等不同主題的15個分論壇。
在20日上午召開的風(fēng)電機組優(yōu)化升級專題論壇上,三一重能股份有限公司控制軟件工程師席偉川發(fā)表了《需求驅(qū)動的風(fēng)機控制軟件正向設(shè)計》的主題發(fā)言。
以下為發(fā)言全文:
席偉川:各位領(lǐng)導(dǎo)、專家、同行,大家上午好,我是三一重能的席偉川,主要是從事風(fēng)力發(fā)電機組主控軟件設(shè)計的,今天給大家匯報的主題是需求驅(qū)動的風(fēng)機控制軟件正向設(shè)計,這也是三一重能根據(jù)這么多年來做風(fēng)機設(shè)計的經(jīng)驗和總結(jié)。三個方面,第一個是背景和意義,第二個是需求驅(qū)動正向設(shè)計,第三個是案例分享。
大家知道物理系統(tǒng)復(fù)雜度一直在上升,從早期的機械到機電一體,到現(xiàn)在嵌入式系統(tǒng),類比于風(fēng)機都是純機械的,到后來的槳距,發(fā)電機不需要太多控制,到現(xiàn)在兆瓦級的機組,復(fù)雜度是越來越高。系統(tǒng)復(fù)雜度的提高帶來了對控制的挑戰(zhàn)。
嵌入式系統(tǒng)是專用的計算機系統(tǒng),用來解決復(fù)雜系統(tǒng)的問題,現(xiàn)在風(fēng)電行業(yè)用的控制器主要還是像西門子等大品牌成熟的硬件系統(tǒng),所以我們這方面在硬件上沒有什么大的問題,關(guān)注點還是在應(yīng)用軟件上面。當(dāng)然以后這邊還有一個控制器的國產(chǎn)化,這方面還需要行業(yè)內(nèi)再進一步的去驗證,這個可能會引起一個可靠性的下降,也需要迭代。
嵌入式軟件的特點。嵌入式軟件70%以上的問題是來自于需求分析、架構(gòu)設(shè)計的階段,這個是相關(guān)的一些研究得出來的結(jié)論,第二個特點這個問題如果暴露的越晚,需要去修改問題的代價就會更大。就像軟件或者硬件在車間里發(fā)現(xiàn)的問題和到現(xiàn)場發(fā)現(xiàn)的問題,和到上風(fēng)機之后發(fā)現(xiàn)問題,付出的代價是不一樣的。最后軟件修改會帶來故障率的增加。
在軟件開發(fā)過程中面臨一些問題,一個是需求一直在變,風(fēng)電行業(yè)相比于其他行業(yè),近幾年的發(fā)展是飛速的,機型從1.5兆瓦到現(xiàn)在陸上6兆瓦,葉片基本上每年兩代三代在增長,10年前還是77米的葉片,現(xiàn)在已經(jīng)是100多米的葉片。我們的需求是變化很快的,對交付也帶來很大的壓迫。還有一個現(xiàn)場問題比較多,大家做運維的都知道,風(fēng)機在運行過程中會遇到很多問題,當(dāng)然有一些是之前知識局限沒有想到的,還有一些是想到了,但是在設(shè)計實現(xiàn)過程中帶來的錯誤?;谶@些根本原因,還是沒有滿足客戶的需求,一個是我們沒有認(rèn)真的去分析客戶到底需要什么,就急忙的去進入到細(xì)節(jié),開始編程序,開發(fā)進度也是不容易把握,質(zhì)量也是在開發(fā)過程中不好評價、難以掌控。相對于這些問題,應(yīng)對措施其實也就是兩方面,一個是更好的方法和更好的工具,相對于之前大概都是一種單兵作戰(zhàn)的方式,到現(xiàn)在更需要一種良好的協(xié)同配合的方式。
很多時候需求不清楚就會反復(fù)返工,帶來很大的問題。三一重能在行業(yè)內(nèi)干了十多年,積累了一些經(jīng)驗,提出一個想法,需求驅(qū)動的正向設(shè)計,這是系統(tǒng)開發(fā)和控制軟件開發(fā)的兩個流程,核心都是在于是需求驅(qū)動的,從上到下,系統(tǒng)、子系統(tǒng)、組件,到左右每一個部件都有相應(yīng)的等級驗證和測試。軟件也是這樣,也是需求驅(qū)動。需求分析也是非常重要的,首先在做系統(tǒng)需求分析的時候很容易犯兩個錯誤,一個是直接深入細(xì)節(jié),相當(dāng)于只能是管中窺豹可見一斑,不能全面把握總體,這個會帶來很大的問題。再一個要相信這個系統(tǒng)無論多么復(fù)雜都是可以被說明書來寫明的。再一個關(guān)注用戶,就是需求的相關(guān)方都有誰,這塊我們可以想象,做任何一款產(chǎn)品一定要考慮最大的需求一定是客戶,客戶的需求有很多,產(chǎn)品開發(fā)中肯定是以客戶需求作為主要的,在我們看來一方面客戶的需求,一個是安全,發(fā)電反倒是第二位,安全性在風(fēng)電有很多慘痛的教訓(xùn),不光是風(fēng)電,各行各業(yè)都會有,我們會遇到一些飛車、倒塔、著火等等問題。所以在系統(tǒng)設(shè)計之前我們要做充分的視效分析、可靠性保證。
再一個業(yè)主對發(fā)電的需求,這是直接和收入相關(guān)的,像做很多老舊機組的升級改造也是這個道理。由于需求的驅(qū)動,可以做很多的升級改造。再一個就是用戶對可靠性,發(fā)電量提升分兩方面,一方面是增功,一方面是可靠性的提高,換言之就是故障率的下降,這方面對設(shè)備的可靠性帶來了更多的要求。
另外就是我們在開發(fā)中有電網(wǎng)的需求,電網(wǎng)更多來說是要求。不光包括簡單常見的高低穿、電網(wǎng)適應(yīng)性,還有電壓頻率、保護定值的要求等。相對應(yīng)的除了電網(wǎng)的標(biāo)準(zhǔn),還有一些國家一些設(shè)計標(biāo)準(zhǔn),這些標(biāo)準(zhǔn)也都是在設(shè)計時必須要滿足的。除了客戶、電網(wǎng)等相關(guān)方的約束之外,對下游也是有責(zé)任的,SCADA、能管、疾控都會對控制去提出一些要求。
我們在做需求分析的時候,要想到各個方面,不光是內(nèi)部,也有外部,需求分析的要求第一個要完整,不僅要說明正常的時候做什么,還要說在其他情況下做什么。
研制流程比較簡單,都會有一個架構(gòu),軟件架構(gòu)其實還是兩塊,一個分層的思想,如果你是一個公司的CEO或者是領(lǐng)導(dǎo),肯定會考慮公司的組織架構(gòu),你怎么去分配這些部門讓這些部門去協(xié)同工作,達到一個最好的效益,一定要加強模塊的內(nèi)距,加上他們之間的耦合。同理,你去做一個車間的制造也是這樣,每個工位怎么安排,工位之間怎么協(xié)同配合,軟件也是這樣,最重要達到最優(yōu)的配置。
另外軟件研制的流程,一定要突出需求的作用,我們要在需求、設(shè)計和測試之間有追蹤關(guān)系,你需求變了,一定要保證它到設(shè)計、測試階段要一致,不能領(lǐng)導(dǎo)這邊定了一個目標(biāo),到下邊又歪了,最終是實現(xiàn)不了這個目標(biāo)的。
需求正向設(shè)計帶來的優(yōu)勢,首先是從被動設(shè)計到主動設(shè)計,把所有的點關(guān)注在需求階段,第二個從需求驅(qū)動它的目標(biāo)是更清晰的,最后以前是基于文檔開發(fā)的,現(xiàn)在還是機遇客戶需求開發(fā),然后建立一個標(biāo)準(zhǔn)化,標(biāo)準(zhǔn)化不管是說各個階段都要有標(biāo)準(zhǔn)動作。再一個通用化,保證和控制器平臺無關(guān),最后就是時間成本,它可以工作在前邊,后面驗證會大大的減少。
最后一個案例分享,三一重能的重心通過從代碼轉(zhuǎn)到需求只求帶來的收益,一個是開發(fā)周期,這個其實就是需求的厘清,通過組件協(xié)同、通用性的平臺,我們可以實現(xiàn)工廠體制迭代的速度,這分析對于現(xiàn)場運維來說是非常有用的。舉個例子,風(fēng)機規(guī)模不是很大,管理這么多的配置有很多的挑戰(zhàn),把這個做成通用的,在一天兩天就可以把所有的程序都升級一遍,對于老舊機組的改造這也是有很大意義。然后是控制可靠,通過對比,之前的軟件和現(xiàn)有的軟件故障率真的是有數(shù)量級的變化,有三個點,沒有需求的錯誤,消除了后面手工編碼和測試錯誤,測試的錯誤率百分之百,因此時間關(guān)系就介紹到這兒,希望各位專家批評指正,謝謝大家。
(根據(jù)演講速記整理,未經(jīng)演講人審核)
評論