付工這一嗓子,像是往滾油里潑了一瓢涼水,整個(gè)車間瞬間炸開(kāi)了鍋。
三周,對(duì)于這樣一個(gè)劃時(shí)代的龐大系統(tǒng)工程,聽(tīng)起來(lái)簡(jiǎn)直是天方夜譚。
可看著付工那張漲紅的臉和幾乎要噴出火來(lái)的眼睛,沒(méi)人覺(jué)得他是在吹牛。
那是一種被點(diǎn)燃了所有激情的工程師,才會(huì)有的瘋狂。
接下來(lái)的日子,整個(gè)研究所徹底進(jìn)入了一種白熱化的狀態(tài)。
沒(méi)有白天黑夜之分,只有任務(wù)節(jié)點(diǎn)。巨大的車間里,永遠(yuǎn)亮著燈,永遠(yuǎn)有人在忙碌。
空氣中彌漫著焊錫的松香味、機(jī)油的獨(dú)特氣味,還有偶爾從食堂飄來(lái)的飯菜香氣,混合成一種屬于奮斗的特殊味道。
劉宇成了整個(gè)項(xiàng)目的絕對(duì)核心。
他就像一個(gè)永不疲倦的陀螺,上午還在和機(jī)械組的老師傅們,用千分尺一微米一微米地校對(duì)著導(dǎo)軌的直線度;
下午就一頭扎進(jìn)了計(jì)算機(jī)組,和一群頂尖的軟件工程師討論著算法的優(yōu)化。
起初,計(jì)算機(jī)所的這些天之驕子們,雖然嘴上客氣,但心里還是把劉宇當(dāng)成一個(gè)需要他們配合的“甲方”。可沒(méi)過(guò)兩天,所有人的看法都變了。
“劉工,不行啊…這個(gè)同步精度怎么都上不去,總有零點(diǎn)幾毫秒的偏差!”一個(gè)年輕的助理工程師滿頭大汗,盯著示波器上那條不斷抖動(dòng)的波形,急得快要抓頭發(fā)。他已經(jīng)連續(xù)熬了兩個(gè)通宵,換了三種算法,可這個(gè)微小的偏差就像個(gè)牛皮糖,怎么都甩不掉。
劉宇聞聲走了過(guò)來(lái),沒(méi)有看屏幕上的數(shù)據(jù),而是直接走到了那臺(tái)正在進(jìn)行空載測(cè)試的五軸加工頭前。
他側(cè)耳聽(tīng)了聽(tīng)主軸旋轉(zhuǎn)時(shí)發(fā)出的細(xì)微聲響,又用手背輕輕貼了一下主軸箱的外殼。
“不是算法的問(wèn)題。”他轉(zhuǎn)過(guò)身,語(yǔ)氣平靜得像是在說(shuō)一件微不足道的小事,“主軸軸承的預(yù)緊力不對(duì),大了。
去查一下手冊(cè),NSK的7014C角接觸球軸承,預(yù)緊力調(diào)到150牛。另外,潤(rùn)滑油路的氣壓再降低兆帕。”
那個(gè)助理工程師愣住了,機(jī)械上的問(wèn)題,怎么會(huì)影響到軟件的同步精度?
他半信半疑地帶著兩個(gè)老師傅,按照劉宇給出的精確參數(shù),重新調(diào)整了半天。
當(dāng)測(cè)試程序再次跑起來(lái)時(shí),示波器上那條抖動(dòng)的波形,瞬間變成了一條筆直的水平線。
整個(gè)計(jì)算機(jī)組鴉雀無(wú)聲。所有人都用一種看怪物的眼神看著劉宇。
如果說(shuō)之前是佩服,現(xiàn)在就是敬畏了。
從那天起,組里的人,無(wú)論資歷深淺,見(jiàn)到他都恭恭敬敬地喊一聲:“劉工程師。”這一個(gè)字的差別,代表著從合作者到指導(dǎo)者的身份轉(zhuǎn)變。
更大的震動(dòng)還在后面。項(xiàng)目進(jìn)行到第二周的深夜,負(fù)責(zé)核心算法的付工遇到了一個(gè)繞不開(kāi)的坎。
在進(jìn)行五軸高速聯(lián)動(dòng)的模擬測(cè)試時(shí),系統(tǒng)總會(huì)在某個(gè)特定的復(fù)雜曲面加工路徑上出現(xiàn)零點(diǎn)幾秒的卡頓,就像人走路突然絆了一下。
“見(jiàn)鬼了!”付工一拳砸在桌子上,厚厚的鏡片后面,雙眼布滿血絲,“所有的邏輯都查過(guò)了,內(nèi)存調(diào)用也優(yōu)化到了極致,怎么還會(huì)卡?”
劉宇端著一杯濃茶走過(guò)來(lái),看了一眼屏幕上密密麻麻的代碼,又調(diào)出了系統(tǒng)底層的信號(hào)時(shí)序圖。只看了不到三分鐘,他便指著其中一段。
“問(wèn)題在這兒。”他用筆在圖紙上畫了個(gè)圈,“你們?cè)谔幚頂[頭旋轉(zhuǎn)和主軸進(jìn)給的信號(hào)時(shí),沒(méi)有做優(yōu)先級(jí)處理。
當(dāng)兩個(gè)指令同時(shí)到達(dá),系統(tǒng)為了確保絕對(duì)同步,會(huì)產(chǎn)生一個(gè)極短的等待校驗(yàn),這就是卡頓的來(lái)源。”
“那…那該怎么辦?”付工有些發(fā)懵,這個(gè)問(wèn)題已經(jīng)超出了常規(guī)軟件優(yōu)化的范疇。
“簡(jiǎn)單。”劉宇拿起筆,在旁邊的草稿紙上飛快地寫下了一段簡(jiǎn)短的子程序代碼,“在底層驅(qū)動(dòng)里加上這個(gè)判斷。
當(dāng)A軸(擺頭)和Z軸(主軸)的運(yùn)動(dòng)矢量夾角小于5度時(shí),賦予Z軸更高的中斷優(yōu)先級(jí)。這樣,系統(tǒng)就不會(huì)再猶豫了。”
付工和程工湊過(guò)來(lái)看那段代碼,越看越心驚。
這個(gè)思路,巧妙地用一個(gè)極小的軟件補(bǔ)丁,繞開(kāi)了復(fù)雜的硬件底層沖突,簡(jiǎn)直是神來(lái)之筆。
這已經(jīng)不是簡(jiǎn)單的編程技巧,而是對(duì)整個(gè)機(jī)、電、算控制體系的深刻洞察。
當(dāng)付工將這段代碼添加進(jìn)去后,再次運(yùn)行模擬程序,那惱人的卡頓消失得無(wú)影無(wú)蹤,整個(gè)加工路徑如絲般順滑。
“我服了…我是徹底服了!”付工摘下眼鏡,用力地揉著眼睛,語(yǔ)氣里是難以掩飾的激動(dòng)和欽佩,“劉工程師,您這腦子到底是怎么長(zhǎng)的?”
程工在一旁也是連連點(diǎn)頭,他鄭重地對(duì)劉宇說(shuō):“劉工程師,看來(lái)我們之前還是低估了項(xiàng)目的復(fù)雜性。
我建議,明天上午,我們?nèi)w開(kāi)個(gè)會(huì),由您來(lái)重新梳理一下接下來(lái)的攻關(guān)節(jié)點(diǎn),我們所有人,都聽(tīng)您的指揮。”
午飯時(shí)間,研究所的食堂里難得地坐滿了人。
程工、付工帶著一群年輕的工程師,硬是把劉宇圍在了飯桌中間。
“劉工程師,我們是真的好奇,”程工扒拉著碗里的紅燒肉,忍不住問(wèn),“您對(duì)計(jì)算機(jī)底層算法的了解,比我們這些搞了一輩子計(jì)算機(jī)的人還透徹,您這些知識(shí)都是從哪兒學(xué)的?”
劉宇喝了口湯,笑著擺了擺手:“沒(méi)什么秘訣,就是書看得雜一些。
機(jī)械是骨架,電子是經(jīng)絡(luò),計(jì)算機(jī)就是大腦。這三樣?xùn)|西本來(lái)就是一體的,分開(kāi)了看,路就走窄了。
我只是把它們重新拼到了一起,想著能為國(guó)家少走點(diǎn)彎路。”
這番話說(shuō)得樸實(shí),卻讓在場(chǎng)的所有人肅然起敬。
正說(shuō)著,食堂門口傳來(lái)一陣爽朗的笑聲,紅星廠的王建國(guó)大步流星地走了進(jìn)來(lái),他滿面紅光,手里捏著一份文件,人還沒(méi)到跟前,聲音就先到了:
“劉工!大喜事!這個(gè)月,咱們廠的數(shù)控機(jī)床,一共生產(chǎn)了十二臺(tái)!創(chuàng)紀(jì)錄了!”
他三步并作兩步走到桌前,將一份調(diào)庫(kù)單遞給劉宇:“您快給簽個(gè)字,車隊(duì)都在外頭等著了!”
劉宇接過(guò)單子,看了一眼上面的調(diào)撥單位,拿起筆迅速簽上了自己的名字。“老王,告訴運(yùn)輸隊(duì),路上務(wù)必小心。
這批機(jī)床,要優(yōu)先供給冶金口那幾個(gè)重點(diǎn)軋鋼廠,他們等著這批設(shè)備生產(chǎn)新型殲擊機(jī)起落架的特種鋼材,一分鐘都不能耽擱。”
“明白!”
王建國(guó)響亮地應(yīng)了一聲,接過(guò)單子,卻沒(méi)馬上走。
他搓著手,臉上露出一絲不好意思的笑容,湊到劉宇身邊,壓低了聲音:
“劉工,您看…這批機(jī)床,能不能…給咱們紅星廠自己,也留下兩臺(tái)?我們那些老掉牙的母機(jī),實(shí)在是跟不上趟了…”
劉宇臉上的笑容瞬間收斂了,他放下筷子,目光變得銳利起來(lái),盯著王建國(guó):“老王,你說(shuō)什么?”
周圍的空氣仿佛都凝固了。
“你知道這批機(jī)床意味著什么嗎?”劉宇的聲音不高,但每個(gè)字都像錘子一樣砸在王建國(guó)心上,“這是國(guó)家調(diào)配的戰(zhàn)略物資!
每一臺(tái)都有它的使命!你現(xiàn)在跟我說(shuō)要截留?這是違規(guī)操作,這個(gè)口子,絕對(duì)不能開(kāi)!”
王建國(guó)被他看得額頭冒汗,吶吶地不敢再說(shuō)話。
看著他那副樣子,劉宇的語(yǔ)氣又緩和了一些:“我知道廠里困難,但眼光要放長(zhǎng)遠(yuǎn)。
等咱們的五軸聯(lián)動(dòng)搞成功了,數(shù)控機(jī)床的產(chǎn)量至少能再翻一番。到時(shí)候,我保證,第一批就給咱們紅星廠,把所有老舊設(shè)備全都換掉!”