為什么自己設(shè)計(jì)的嵌入式系統(tǒng)不如工業(yè)級(jí)產(chǎn)品穩(wěn)定?
[導(dǎo)讀] 在知乎上看到一個(gè)網(wǎng)友的問(wèn)題:為什么自己設(shè)計(jì)的嵌入式系統(tǒng)穩(wěn)定性遠(yuǎn)不如工業(yè)級(jí)產(chǎn)品?我覺(jué)得這是一個(gè)非常好的問(wèn)題,尤其國(guó)內(nèi)很多中小企業(yè)可能關(guān)注點(diǎn)更多在于產(chǎn)品的功能,而不在性能,產(chǎn)品功能很炫可是穩(wěn)定性往往差強(qiáng)人意。所以就產(chǎn)品穩(wěn)定性,來(lái)聊聊我的一些認(rèn)知和體會(huì)。
什么是穩(wěn)定性?
穩(wěn)定性,英文中用(可靠性)Reliability engineering來(lái)研究,可靠性工程是系統(tǒng)工程的一個(gè)子學(xué)科,它主要研究設(shè)備無(wú)故障運(yùn)行的能力??煽啃悦枋隽讼到y(tǒng)或組件在指定條件下持續(xù)指定時(shí)間段內(nèi)運(yùn)行的能力。
一個(gè)產(chǎn)品一般從設(shè)計(jì)的角度基本包含哪些主要的設(shè)計(jì)呢?常見(jiàn)的嵌入式系統(tǒng),可能包含機(jī)械設(shè)計(jì)、硬件設(shè)計(jì)、軟件設(shè)計(jì),那么從設(shè)計(jì)來(lái)談一個(gè)產(chǎn)品的可靠性,就必然要從這幾個(gè)主要的方面下功夫。另外工業(yè)級(jí)產(chǎn)品為什么表現(xiàn)的更加可靠呢?
為了要相對(duì)深入的談這個(gè)問(wèn)題,來(lái)看看這個(gè)相關(guān)的一些術(shù)語(yǔ)指標(biāo)是怎么描述一個(gè)系統(tǒng)或者零件的可靠性的。
啥是可靠性概率?
可靠性定義為設(shè)備在規(guī)定條件下在指定時(shí)間段內(nèi)將執(zhí)行其預(yù)期功能的概率。從數(shù)學(xué)上講,這可以表示為系統(tǒng)的可靠性是指在時(shí)間t內(nèi)沒(méi)有發(fā)生某F類故障的概率。
作何理解呢? 系統(tǒng)開(kāi)始工作的時(shí)間, 是發(fā)生類故障的時(shí)刻。也即表征系統(tǒng)由于某類故障而失效的概率
啥是失效概率
有可靠性概率,自然就有失效概率 ,失效概率剛好與可靠性概率是互補(bǔ),滿足下面關(guān)系:
上面的概念是針對(duì)某類故障的統(tǒng)計(jì)規(guī)律,那么推廣開(kāi)來(lái),從系統(tǒng)而言去掉下標(biāo)F,也滿足上述關(guān)系。一個(gè)系統(tǒng)由不同的組件組成。
系統(tǒng)失效率
當(dāng)系統(tǒng)的壽命呈指數(shù)分布時(shí),系統(tǒng)的可靠性為: ,其中 就是失效率(failure rate)的概念
這個(gè)曲線相信很多人應(yīng)該見(jiàn)過(guò),這就是產(chǎn)品的澡盆曲線,在產(chǎn)品前期老化階段比較容易暴露故障,失效率比較高。不要問(wèn)我為什么,這是無(wú)數(shù)先輩們統(tǒng)計(jì)所得的統(tǒng)計(jì)規(guī)律,對(duì)于工程應(yīng)用相信即可(當(dāng)然如果是做理論研究的則另當(dāng)別論)。這個(gè)規(guī)律也解釋了為何有的廠家出廠的產(chǎn)品需要做老化試驗(yàn)的原因,因?yàn)樽隼匣囼?yàn)可以將故障充分暴露出來(lái),如此篩選出來(lái)的產(chǎn)品在客戶端將很少會(huì)出故障。
為啥費(fèi)這么多話來(lái)討論這個(gè)失效率呢,來(lái)看看這個(gè)例表:
汽車嵌入式系統(tǒng)組件 | 失效率 |
---|---|
軍工級(jí)微處理器 | 0.022 |
車規(guī)級(jí)微處理器 | 0.12 |
電動(dòng)馬達(dá) | 16.9 |
不同的組件的失效率是不一樣的,那么在設(shè)計(jì)之初在成本允許的情況下,就需要盡量選取失效率低的組件。
失效模式
不同的組件的失效模式是不一樣的,啥概念呢?也就是組件產(chǎn)生故障的原因各異,比如電路板上的電阻其失效模式就有可能是短路失效,斷路失效、參數(shù)漂移失效,對(duì)于軟件而言其失效模式就有可能有很多,比如棧溢出、RAM數(shù)據(jù)錯(cuò)誤、芯片總線錯(cuò)誤等等。每種失效模式,其失效率也是不一樣的。如要深入其了解這些指標(biāo)的含義可以參考IEC61508或者其他等同的標(biāo)準(zhǔn)。
如何提高產(chǎn)品的可靠性呢?
如果產(chǎn)品老是出問(wèn)題,不光攻城獅惱火,甚至?xí)Q定一個(gè)公司的前途命運(yùn),所以如何提升產(chǎn)品的可靠性,絕對(duì)是一個(gè)需要花大力氣去研究的課題,也是每個(gè)從業(yè)人員需要在靈魂深處深深刻下烙印。 做產(chǎn)品不是兒戲,產(chǎn)品不穩(wěn)定,不僅僅會(huì)影響升職加薪,可能一個(gè)公司就會(huì)因此歇菜。
那么究竟如何能提高產(chǎn)品的可靠性呢?我想大體上可以從這幾個(gè)方面著手:
-
成功的開(kāi)發(fā)流程 -
成功的項(xiàng)目管理 -
嚴(yán)格的質(zhì)量控制
開(kāi)發(fā)流程
這是IEC61508界定軟件、硬件都須采用如下的V&V開(kāi)發(fā)模型(注明IEC61508標(biāo)準(zhǔn)里圖不太一樣),簡(jiǎn)單介紹一下這個(gè)模型:
現(xiàn)在流行很多的開(kāi)發(fā)流程,比如敏捷開(kāi)發(fā)模型就比較受追捧,個(gè)人并不反對(duì)敏捷開(kāi)發(fā)模型,但是從產(chǎn)品開(kāi)發(fā)的可靠性角度更推崇這種雙V模型,其實(shí)很多跑敏捷的項(xiàng)目在每一個(gè)迭代中其實(shí)可以融入這種雙V模型。這個(gè)模型從設(shè)計(jì)的需求>架構(gòu)>詳細(xì)子模塊設(shè)計(jì)每向下走一步,都需要verfication 測(cè)試檢驗(yàn)前級(jí),同時(shí)還最終輸出validation確認(rèn)設(shè)計(jì)。
在IEC 61508(功能安全等級(jí)標(biāo)準(zhǔn))等標(biāo)準(zhǔn)中都有體現(xiàn)這一套路,簡(jiǎn)略看看相關(guān)標(biāo)準(zhǔn):
IEC 61508是適用于各種行業(yè)的基本功能安全標(biāo)準(zhǔn)。它將功能安全定義為:“與EUC(受控設(shè)備)和EUC控制系統(tǒng)相關(guān)的整體安全的一部分,它依賴于E/E/PE安全相關(guān)系統(tǒng)、其他技術(shù)安全相關(guān)系統(tǒng)和外部風(fēng)險(xiǎn)降低設(shè)施的正確運(yùn)行?!薄盎镜母拍钍牵喝魏伟踩嚓P(guān)的系統(tǒng)都必須正確工作或以可預(yù)測(cè)的(安全的)方式失效?!?/p>
個(gè)人對(duì)于V&V模型理解的幾個(gè)要點(diǎn):
-
要可執(zhí)行的流程,不要形式化套路! -
標(biāo)準(zhǔn)規(guī)定的科學(xué)嚴(yán)謹(jǐn)套路,遵循從需求到設(shè)計(jì)的雙向可追溯,從設(shè)計(jì)到測(cè)試的雙向可追溯。 -
可靠性從一開(kāi)始轉(zhuǎn)化市場(chǎng)需求時(shí)就需引入,中小型企業(yè)更多聚焦于功能實(shí)現(xiàn),而忽略了性能、可靠性需求。注意這些可靠性需求都是設(shè)計(jì)目標(biāo),沒(méi)有目標(biāo)如何能從體系上產(chǎn)出一個(gè)優(yōu)良的產(chǎn)品呢?如不遵循嚴(yán)格的體系流程,或許一個(gè)公司偶然能出一個(gè)高質(zhì)量產(chǎn)品,但個(gè)人認(rèn)為一定很難保證出來(lái)的產(chǎn)品的整體質(zhì)量 -
需求環(huán)節(jié):可靠性是需要提需求的,舉些栗子: -
環(huán)境需求,比如溫度、濕度、振動(dòng)等,這些在需求階段就應(yīng)界定相關(guān)的測(cè)試等級(jí),其實(shí)即便公司的產(chǎn)品不需要去做相關(guān)強(qiáng)制認(rèn)證,但是從可靠性角度,提出這樣的需求,勢(shì)必需要相應(yīng)的設(shè)計(jì)以及測(cè)試去保證。那么定然從這些維度會(huì)提升產(chǎn)品的可靠性。 -
EMC需求:比如常規(guī)的抗擾度測(cè)試要求,都需要需求階段明確提出。 -
..... -
設(shè)計(jì)環(huán)節(jié),可靠性需要提出需求,更需要設(shè)計(jì)去實(shí)現(xiàn)。對(duì)于每項(xiàng)可靠性需求,事實(shí)上都可以盡量轉(zhuǎn)化成設(shè)計(jì)的檢查項(xiàng)去追溯。比如硬件中的器件失效模型及影響分析FMEA(Failure mode and effects analysis),軟件中同樣也有對(duì)應(yīng)的失效模型可做分析以及影響分析,通過(guò)失效模型分析,可參考標(biāo)準(zhǔn)中的推薦做法去從設(shè)計(jì)的角度采取對(duì)策。 -
測(cè)試環(huán)節(jié):測(cè)試包含驗(yàn)證(verification)和確認(rèn)(validation) ,V&V模型每向下一步,都應(yīng)向上一步去verification,每一個(gè)設(shè)計(jì)輸出,其實(shí)都應(yīng)有對(duì)應(yīng)的驗(yàn)證去保障,最終的產(chǎn)品級(jí)還需要確認(rèn)環(huán)節(jié)。另一個(gè)重要的要點(diǎn)就是工業(yè)級(jí)產(chǎn)品開(kāi)發(fā),往往在需求階段,設(shè)計(jì)就已然介入。
開(kāi)發(fā)流程每個(gè)公司都各有不同,但是從產(chǎn)品生命周期以及產(chǎn)品可靠性自身規(guī)律角度,個(gè)人覺(jué)得還是應(yīng)該考慮這些要點(diǎn)。關(guān)于開(kāi)發(fā)流程以及功能安全標(biāo)準(zhǔn)內(nèi)容很多,這里泛泛總結(jié)這些個(gè)人體會(huì)。
成功的項(xiàng)目管理
項(xiàng)目管理是在特定的時(shí)間內(nèi)領(lǐng)導(dǎo)團(tuán)隊(duì)實(shí)現(xiàn)目標(biāo)和達(dá)到成功標(biāo)準(zhǔn)的過(guò)程。項(xiàng)目管理的主要挑戰(zhàn)是在給定的約束條件下實(shí)現(xiàn)所有的項(xiàng)目目標(biāo)。這些信息通常在項(xiàng)目文檔中描述,在開(kāi)發(fā)過(guò)程的開(kāi)始創(chuàng)建。主要的限制是范圍、時(shí)間、質(zhì)量和預(yù)算。其次的挑戰(zhàn)是優(yōu)化必要投入的分配,并應(yīng)用它們來(lái)滿足預(yù)先確定的目標(biāo)。
一個(gè)可靠性很高的的產(chǎn)品開(kāi)發(fā),與一個(gè)完善的項(xiàng)目管理是密不可分的。項(xiàng)目管理在項(xiàng)目的執(zhí)行過(guò)程中作用是非常重要的,從啟動(dòng)、計(jì)劃、執(zhí)行、監(jiān)管、收尾中對(duì)項(xiàng)目進(jìn)行管理。
項(xiàng)目管理在這些過(guò)程中,所需的知識(shí)以及在每個(gè)階段需從事的活動(dòng)可參考下圖(來(lái)源:PMBOK 第6版):
嚴(yán)格的質(zhì)量控制
好的設(shè)計(jì)發(fā)布,如沒(méi)有嚴(yán)格的生產(chǎn)質(zhì)量控制,所出售的產(chǎn)品質(zhì)量也定然沒(méi)有保障。對(duì)于這一點(diǎn)不怎么了解,就不做過(guò)多的描述了。
總結(jié)一下
回到問(wèn)題本身,如想得到一個(gè)可靠的產(chǎn)品,個(gè)人認(rèn)為從產(chǎn)品設(shè)計(jì)流程、項(xiàng)目管理、以及生產(chǎn)質(zhì)控方面都應(yīng)有完善的要求且須很好的落實(shí),工業(yè)級(jí)產(chǎn)品砸錢做那么多的認(rèn)證,不是沒(méi)有緣由的。這些認(rèn)證里有很多就是可靠性的具體考核。
-END-
推薦閱讀
免責(zé)聲明:本文內(nèi)容由21ic獲得授權(quán)后發(fā)布,版權(quán)歸原作者所有,本平臺(tái)僅提供信息存儲(chǔ)服務(wù)。文章僅代表作者個(gè)人觀點(diǎn),不代表本平臺(tái)立場(chǎng),如有問(wèn)題,請(qǐng)聯(lián)系我們,謝謝!