作者:楊福宇 2012年6月神九升天蛟龍下海深深地鼓舞著中國人:別人能做到的事我們現(xiàn)在也能做到了,特別是那些能為國家實現(xiàn)這些壯舉的人是何等年輕,可以預(yù)期在未來的磨練里他們會更成熟更老練,會做得越來越好,也就是預(yù)示著我們的明天會越來越輝煌。 我關(guān)心著后續(xù)的報道,因為我一直在研究CAN,看到其中關(guān)于神九用到CAN總線的事有二條,: 1. 九問“神九”精裝修遠超老前輩_北青網(wǎng) “艙載醫(yī)監(jiān)設(shè)備主機、數(shù)管分系統(tǒng)中央單元、航天員語音處理組件……中國航天科技集團公司九院771所是我國微電子和計算機領(lǐng)域的核心研制生產(chǎn)單位,這些由該所研制的與神舟九號飛行任務(wù)配套的產(chǎn)品均為飛行和返回的重要設(shè)備。 艙載醫(yī)監(jiān)設(shè)備主機安裝在載人飛船艙內(nèi)大底區(qū),也就是航天員座椅下面,是航天員生理信息測量系統(tǒng)的數(shù)據(jù)處理中心,相當于航天員的“臨床護士”,通過“聽診器”——CAN通訊系統(tǒng),負責對各個航天員的“心電、呼吸、血壓、體溫”四項生理健康指標信號進行實時接收,再通過總線傳輸至儀表系統(tǒng)顯示,完成飛行期間對航天員的醫(yī)學(xué)監(jiān)督與醫(yī)學(xué)保障! 2. “手眼通天”神九相約天宮-儀表板,航天員,人機交互,減振器,檢漏儀-北方網(wǎng)-新聞中心 “2011年春節(jié)剛過,在510所載人機電室的低頻實驗室里,正緊張的進行著神舟九號飛船儀表設(shè)備正樣件落焊后的出所測試,這是設(shè)備交付的最后一個關(guān)口。一個身影坐在幾臺手控設(shè)備前,正逐一進行著手控指令的通訊測試,他不是一名普通的測試人員,而是510所載人航天機電研究室主任——李文新。 李文新承擔了載人二期輔助儀表的研制和部分關(guān)鍵技術(shù)的攻關(guān),組織完成了新一代輔助儀表原理樣機、初樣設(shè)備和正樣設(shè)備的研制。其中,CAN總線作為新一代儀表總線已應(yīng)用到神舟九號飛船和目標飛行器上! 我猜想,實際的應(yīng)用還不止這些,因為從工程角度,用盡量少的技術(shù)品種在開發(fā)、維護、培訓(xùn)是較合理的。 各位從我以前發(fā)表的博客可以知道,我關(guān)注的面很窄,就是CAN通信協(xié)議,不過CAN實在用得太廣了,只要你開車,你就在用到CAN。國外也有用于上天下海的例子,就是今天,別人也在用,沿用別人的經(jīng)驗是非常自然的事。不過從我的觀點來看,CAN是有安全隱患的,我在博客里寫了,也寫了些文章,在“單片機與嵌入式系統(tǒng)應(yīng)用”雜志上發(fā)表了。為了使這種風(fēng)險減低,我是有責任重申我的觀點,這是國家興亡匹夫有責之責。是不是炒冷飯?不是的,因為那是關(guān)系航天員的安危,關(guān)系到我國航天事業(yè)的大事,我寧愿被徹底駁回,直到放心為止。 我發(fā)現(xiàn)的CAN安全隱患有二條,第一,它的錯幀漏檢率很大,即錯誤的幀未查出來,溜過去了你還不知道。遠非Bosch聲村稱的錯幀率*4.7*10-11,早已有人提到為1.3*10-7,我的數(shù)據(jù)為1.0*10-7: M.S. Thesis : Eushiuan Tran,”Multi-Bit flip Vulnerabilities in the Controller Area Network Protocol” Carnegie Mellon University Pittsburgh, PA, May 1999 [online] http://www.cs.cmu.edu/~koopman/thesis/etran.ps.qz accessed at 2007-12-31。 Simulations of the widely used Controller Area Network (CAN) protocol indicate that this problem can cause a double-bit error to result in a 1.3 x 10-7 probability of undetected corruption. 我提出了重構(gòu)可疑幀的方法,簡要中文版見:楊福宇,“CAN協(xié)議的錯幀漏檢率改進“,《單片機與嵌入式系統(tǒng)應(yīng)用》,2011, No.9,p.8-11,詳細的英文版見Fuyu YANG, On Residual Error Probability of CAN Protocol, http://www.frogenyozurt.com/wp-c ... or-Probabilioty.pdf。 第二,在error passive狀態(tài)會產(chǎn)生未預(yù)計到的通信連續(xù)出錯而收發(fā)中斷的狀態(tài),有可能達到數(shù)十毫秒,就如病人雖還在崗位上但未在工作。中文見:楊福宇,“CAN總線中的一種安全隱患“,《單片機與嵌入式系統(tǒng)應(yīng)用》,2009, No.1,p.20-22 , 楊福宇,“CAN消極報錯發(fā)送節(jié)點變?yōu)殡x線狀態(tài)的故障“,《單片機與嵌入式系統(tǒng)應(yīng)用》,2009, No.5,p18-20, 楊福宇,“關(guān)于CAN隱患的爭辨“,《單片機與嵌入式系統(tǒng)應(yīng)用》,2009, No.6,p.5-7,英文見Fuyu Yang, “An Undiscovered Safety Related Fault in CAN”: http://www.techonline.com/learning/techpaper/212902174。Fuyu Yang, “A Bus off Case of CAN Error Passive Transmitter”: http://www.techonline.com/learning/techpaper/212902170。 我在發(fā)表之前,曾在網(wǎng)上搜索國內(nèi)外從事CAN應(yīng)用與研究的專家,先將文章發(fā)給能聯(lián)系上的國內(nèi)專家,不久再發(fā)可以送達的國外專家。在2008年以后數(shù)次在上海舉行的汽車電子會議上,征詢他們收到文章后的看法,但是沒有見到實質(zhì)性的響應(yīng)(支持或反駁),這令我很失望。但是,沒有實質(zhì)性的反駁使我增強了信心。2011年11月上海工博會上我遇到了CiA(CAN in Automation)協(xié)會的會長Holger Zeltwanger,我問他文章收到?jīng)]有,有什么看法。他說收到了,歡迎這樣討論,認為我研究得很深,建議我關(guān)注一下CAN FD。這當然是外交辭令,但至少沒有反駁,相反,CAN FD中已經(jīng)把CRC檢驗部分作了修改,不是證明了原來的CAN CRC方法有毛病嗎,可惜舊錯有改,并未改好,又添新錯。詳見:楊福宇,“有關(guān)CAN FD的評論“,《單片機與嵌入式系統(tǒng)應(yīng)用》,2012, No.7,p.34-36。 對于這種反應(yīng),我唯有等待,我想換位思考:許多人士是太忙了,無暇顧及,我是做過項目的,知道當項目壓在頭上時,你會被它淹沒,沒有機會重起爐灶的,F(xiàn)在如果承認CAN 不安全,誰來擔損失,誰給你更安全的替代物?每一個人都被現(xiàn)實綁架了。 換位思考是有局限的,它不能成為不作為的理由。過去,煙草業(yè)是為國家積累資金出了大力的,但現(xiàn)在中國也有越來越多的認認同吸煙有害健康,所以要選煙草業(yè)有關(guān)的科學(xué)院院士都遭人反對。這說明人是有立場的,用“國家損失”或“農(nóng)業(yè)損失”是對抗不了“人的生命是第一位“的。同樣的道理用到CAN安全問題上,在損失和安全中必須有選擇。 CAN 問題的發(fā)現(xiàn)是打開一個重新洗牌的機會:我們不是經(jīng)常說不掌握核心技術(shù)嗎?當別人的核心技術(shù)有一環(huán)斷了,影響到整體時,你的改進不是使我們的差距大為縮小嗎? 你不是要找內(nèi)需嗎?當CAN有問題時,我們造車的需要不是很大的內(nèi)需嗎? 我們不是要避免低價的同質(zhì)化競爭嗎?要知道低價的同質(zhì)化競爭的根源是人才的低價的同質(zhì)化,創(chuàng)新就可以避免同質(zhì)化。 抱殘守缺,明知有問題而不作為實際上是希望等別人先解決問題,背靠大樹好乘涼。這種想法會害了自己,不知自己已立于危墻之下,隨時可能遭災(zāi),沒有腳踏實地而站在別人肩上的人,巨人摔跤了你會跌得更痛! 我們的國家經(jīng)過改革開放三十年的發(fā)展,新一代學(xué)者已經(jīng)成長,你們不應(yīng)當因循守舊。從我2009年公開發(fā)表來已經(jīng)4年,算算該有一批研究生畢業(yè)了,他們可能會思想開放,更能接受新的事物。寄希望于未來有更多的人能同意我的吸煙有害健康的比喻。我希望有更多的電子工程師關(guān)心CAN 安全問題,雖然你未必以此為業(yè),至少你要關(guān)心你開的車是不是安全,沒有車也要想到可能有別人的車傷到你。所以你應(yīng)該參與討論與解決問題的。 理解CAN 安全問題并不難,我將盡力深入淺出把問題給你講清楚,這是我新一批博客要做的事。 年輕是多么美好,精力充沛,跌倒了可以重來。我偶爾去張江的電影院看電影,一般是乘白天人少的時侯去,散場時看到滿街的二三十歲的年輕人,似乎自己也年輕了,有一種感動是別人很難理解的。當我年輕的時候,萬事都那么難,1961年的時候我為了計算一個四連桿機構(gòu)的非線性誤差,那時沒有計算器,只有一個手搖的計算機,再找了一本十位三角函數(shù)表,算一下,查些表,這中間的輸入輸出非常容易錯,因為對著密密麻麻的表和長長的數(shù)據(jù),很快就疲勞而出錯,只要有一個錯,就不準確,甚至前功盡棄。這件工作足足花了一個星期。而現(xiàn)在,你只需要寫好程序,幾秒鐘就得到結(jié)果,而且不會錯。再舉個例子,我們當時要看國外的文章,要等到國外的書或雜志寄到中國,然后內(nèi)部復(fù)制(當時還沒有復(fù)。┓职l(fā)到單位,有的要等數(shù)年之后,而現(xiàn)在甚至在會還沒開,只要你知道作者并與他聯(lián)系上,就可學(xué)到最新的知識。技術(shù)的發(fā)展、國家的開放為年輕人提供了多好的條件啊!你們沒有理由不大大地超越我們。 滿街的二三十歲的年輕人在國家的高科技園區(qū)工作,也讓我特別的高興,因為說到底國家的未來在年輕人,他們能擔當就表示國家的興旺已是指日可待。 |