趙正旭,薛曉榮,郭陽,李東年,鐘謙,張蜀新
(1.青島理工大學(xué)機(jī)械與汽車工程學(xué)院,青島266520;2.石家莊鐵道大學(xué)復(fù)雜網(wǎng)絡(luò)與可視化研究所,石家莊050043;3.中國科學(xué)院國家天文臺(tái),北京100012)
建筑是人類賴以生存、工作的人工環(huán)境。鋼結(jié)構(gòu)建筑是一種新興產(chǎn)業(yè),我國鋼結(jié)構(gòu)建筑的發(fā)展和應(yīng)用滯后于國外,國內(nèi)普遍偏向于建造大型的建筑,而這些大型建筑的背后就需要有好的鋼結(jié)構(gòu)[2]。復(fù)雜的鋼結(jié)構(gòu)建筑由于其設(shè)計(jì)想法和理念僅僅通過圖紙不容易被理解和接受,而通過建模實(shí)現(xiàn)鋼結(jié)構(gòu)建筑的可視化可以很好地表達(dá)設(shè)計(jì)師的設(shè)計(jì)理念,設(shè)計(jì)師可以通過虛擬仿真技術(shù)實(shí)現(xiàn)鋼結(jié)構(gòu)建筑的虛擬仿真。在虛擬仿真的過程中,建模是最重要環(huán)節(jié)[3]。隨著計(jì)算機(jī)技術(shù)、三維仿真技術(shù)、信息技術(shù)的高速發(fā)展,耗時(shí)而低效的傳統(tǒng)手工建模建筑方法已經(jīng)遠(yuǎn)遠(yuǎn)無法滿足應(yīng)用市場的需求,快速化、智能化、自動(dòng)化的建筑建模方法已經(jīng)逐漸受到人們重視[4]。而建于貴州黔南布依族苗族自治州平塘縣克渡鎮(zhèn)金科村的大窩凼的世界上最大口徑射電望遠(yuǎn)鏡(簡稱FAST),同樣需要模型來傳遞天眼設(shè)計(jì)理念。天眼模型的圈梁部分由圓鋼管和焊接異型構(gòu)件組成,通過焊接球和節(jié)點(diǎn)板連接,盡管設(shè)計(jì)圖已經(jīng)給出了所有圓鋼管和焊接異型構(gòu)件的幾何信息和截面信息,但是圓鋼管和焊接異型構(gòu)件尺寸不一,結(jié)構(gòu)復(fù)雜,采用手動(dòng)建模的方式不僅耗時(shí)耗力,而且建模精度不易控制,所以通過手動(dòng)建模很難快速完成。
基于以上背景,本文將使用Blender 建模軟件,利用Python 內(nèi)建腳本實(shí)現(xiàn)Fast 圈梁三維模型的快速自動(dòng)化構(gòu)建,可以大大減少了手動(dòng)建模的工作量,加快建模任務(wù)的進(jìn)度。
在計(jì)算機(jī)網(wǎng)絡(luò)時(shí)代,信息安全對于國家安全有著至關(guān)重要的作用,網(wǎng)絡(luò)是信息傳遞的媒介,操作系統(tǒng)作為網(wǎng)絡(luò)安全的保障,也是國家信息安全的保障。FAST作為國家重大科技基礎(chǔ)設(shè)施,我們將采用國產(chǎn)操作系統(tǒng)中標(biāo)麒麟操作系統(tǒng)來進(jìn)行建模。中標(biāo)麒麟操作系統(tǒng)是一種采用Linux 內(nèi)核的操作系統(tǒng),安全性、穩(wěn)定性、可靠性和免費(fèi)性是Linux 的優(yōu)點(diǎn)[5]。作為一個(gè)開源操作系統(tǒng),中標(biāo)麒麟有以下優(yōu)點(diǎn):
(1)強(qiáng)大的跨平臺(tái)應(yīng)用部署能力。
(2)強(qiáng)大的軟硬件適配能力。
(3)強(qiáng)大的設(shè)備管理能力和多任務(wù)管理能力。
(4)高效、易用的桌面操作環(huán)境。
3DS Max 是一款非常好的3D 建模軟件,它擁有性價(jià)比高、使用者多,上手容易的優(yōu)點(diǎn),但是它不兼容中標(biāo)麒麟操作系統(tǒng),所以我們選擇了Blender 這一款開源的多平臺(tái)輕量級全能三維動(dòng)畫制作軟件。Blender 具有建模、雕刻、綁定、粒子、動(dòng)力學(xué)、動(dòng)畫、交互、材質(zhì)、渲染,音頻處理,視頻剪輯以及運(yùn)動(dòng)跟蹤,后期合成等的一系列動(dòng)畫短片制作解決方案,并以Python 為內(nèi)建腳本,支持yafaray 渲染器,同時(shí)還內(nèi)建游戲引擎,商業(yè)創(chuàng)作永久免費(fèi)。
500m 口徑射電望遠(yuǎn)鏡(Five-hundred-meter-Aperture-Spherical-Telescope),簡稱FAST,為國家重大科學(xué)工程。FAST 建于貴州黔南布依族苗族自治州平塘縣克渡鎮(zhèn)金科村的大窩凼,貴州屬于卡斯特地貌,有著得天獨(dú)厚的地理優(yōu)勢,選取貴州山區(qū)洼地作為FAST 的臺(tái)址,建造完成500m 口徑射電望遠(yuǎn)鏡。
FAST 目前是世界上第一大單口徑射電望遠(yuǎn)鏡,將在未來20 至30 年保持世界一流地位。天眼工程利用貴州喀斯特地區(qū)的洼坑作為望遠(yuǎn)鏡臺(tái)址,加之全新的設(shè)計(jì)思路,使其突破了望遠(yuǎn)鏡的百米工程極限,開創(chuàng)了建造巨型射電望遠(yuǎn)鏡的新模式。整體效果如圖1所示。
圖1 FAST整體效果圖
FAST 整體結(jié)構(gòu)由以下部分組成:
(1)主索:主索用于支承FAST 反射面板,主索網(wǎng)呈球面結(jié)構(gòu),以網(wǎng)格方式編織而成,球面直徑為500m,總計(jì)6740 根。
(2)下拉索:索網(wǎng)通過下拉索與地面設(shè)置的促動(dòng)器相連,促動(dòng)器通過收縮和拉伸來控制下拉索,從而控制面板角度的變化,實(shí)現(xiàn)觀測拋物面。
(3)格構(gòu)柱與圈梁:用于支承主索網(wǎng)。
(4)格構(gòu)柱基礎(chǔ):用于支承格構(gòu)柱。
圖2 FAST結(jié)構(gòu)布置三維圖
本文將對500m 口徑射電望遠(yuǎn)鏡天眼的圈梁部分進(jìn)行建模,圈梁內(nèi)圈直徑500.8m,外圈直徑522.8m,高5.5m,寬11m,為立體桁架結(jié)構(gòu),由圓鋼管和焊接異型構(gòu)件組成。圈梁布置分為A 區(qū)、B 區(qū)、C 區(qū)、D 區(qū)和E區(qū),每個(gè)區(qū)左右跨度呈72 度角,5 個(gè)區(qū)的圈梁構(gòu)件布置與構(gòu)件截面具有1/5 旋轉(zhuǎn)對稱性。所以,圈梁的建模只需要建1/5 單元,剩余部分只需旋轉(zhuǎn)復(fù)制即可。A 區(qū)結(jié)構(gòu)由60 個(gè)單元組成,每個(gè)單元之間呈0.99-1.45 度,每個(gè)單元由上弦、下弦、上下弦間連桿組成。
圈梁建模將分為兩個(gè)部分,圈梁主體部分和滑動(dòng)支座建模。圈梁主體部分主要分為圈梁上弦構(gòu)件,圈梁下弦構(gòu)件,圈梁立面構(gòu)件。圈梁上弦構(gòu)件包括上弦環(huán)向弦桿,上弦徑向弦桿,上弦面內(nèi)斜腹桿。圈梁下弦構(gòu)件包括下弦環(huán)向弦桿,下弦徑向弦桿,下弦面內(nèi)斜腹桿。圈梁立面構(gòu)件包括上弦環(huán)向弦桿,環(huán)向斜腹桿,豎腹桿,徑向斜腹桿。圈梁整體結(jié)構(gòu)如圖3 所示。
圖3 圈梁整體結(jié)構(gòu)
圈梁鋼結(jié)構(gòu)主要由圓鋼管、焊接球和焊接工字鋼連接組成。由于工程實(shí)際需要,每個(gè)圓鋼管、焊接球、焊接工字鋼構(gòu)件長度,尺寸不盡相同。圓鋼管構(gòu)件截面表如表1 所示。
表1
圈梁上弦構(gòu)件可以分為A 區(qū)、B 區(qū)、C 區(qū)、D 區(qū)、E區(qū)5 個(gè)區(qū),A 區(qū)可以分為60 個(gè)單元,每個(gè)單元的平面構(gòu)件說明圖如圖4 所示。
圖4 上弦平面構(gòu)件說明圖
圈梁下弦構(gòu)件可以分為A 區(qū)、B 區(qū)、C 區(qū)、D 區(qū)、E區(qū)5 個(gè)區(qū),A 區(qū)可以分為60 個(gè)單元,每兩個(gè)單元對稱分布,每兩個(gè)單元的平面構(gòu)件說明圖如圖5 所示。
圖5 下弦平面構(gòu)件說明圖
圈梁立面構(gòu)件可以分為A 區(qū)、B 區(qū)、C 區(qū)、D 區(qū)、E區(qū)5 個(gè)區(qū),A 區(qū)可以分為60 個(gè)單元,每個(gè)單元的立面構(gòu)件說明圖如圖6 所示。
圖6 立面構(gòu)件說明圖
圈梁三維模型的構(gòu)建需要進(jìn)行三方面工作:①圈梁構(gòu)件數(shù)據(jù)的收集和處理。②通過Python 構(gòu)建圈梁三維實(shí)體模型。③通過手動(dòng)建模完成滑動(dòng)支座部分模型。其中,構(gòu)建圈梁三維實(shí)體模型需要Blender 內(nèi)建腳本Python 的支持。Python 語言是一種面向?qū)ο蟆⒔忉屝缘挠?jì)算機(jī)語言,具有功能強(qiáng)大、語言簡練的特點(diǎn),它提供了大量運(yùn)算、建模、仿真模塊[6]。Blender 是一款三維動(dòng)畫制作軟件,它可以實(shí)現(xiàn)跨平臺(tái),雖然Blender 這款軟件簡單小巧,但是它可以實(shí)現(xiàn)建模、渲染、動(dòng)畫等多種功能。而且Blender 支持Python 內(nèi)建腳本,利用Python 可以實(shí)現(xiàn)圈梁模型的自動(dòng)快速化構(gòu)建。
首先,需要根據(jù)圈梁結(jié)構(gòu)設(shè)計(jì)圖,分解圈梁結(jié)構(gòu)得到不同的構(gòu)件類型,如連接桿件、焊接球、滑動(dòng)支座等。并記錄不同類型構(gòu)件的數(shù)量、長度、尺寸以及連接方式。匯總所有信息生成Excel 文件并保存。
要想通過Python 是實(shí)現(xiàn)圈梁的建模,關(guān)鍵在于能夠表示每個(gè)構(gòu)件的中心點(diǎn)坐標(biāo),和它相對于初始位置的旋轉(zhuǎn)角度。我們以h1 立面的下弦環(huán)向弦桿為例,介紹如何通過數(shù)學(xué)的方法建立模型。簡化模型如圖7所示。
圖7 下弦環(huán)向弦桿簡化圖
圖中AB 代表下弦環(huán)向弦桿,下弦環(huán)向弦桿長度已知,C 為AB 中點(diǎn),OA 和OB 代表圈梁內(nèi)圈半徑,半徑長為250.4m。圖中已知圈梁半徑OB 和下弦環(huán)向弦桿長度AB,勾股定理可以得到角度AOB 和角度COB 和OC 長度,角度COX 可以表示出來,已知角度COX 和圓心到下弦環(huán)向弦桿中心的距離OC,通過這兩個(gè)已知量可以求得AB 中心點(diǎn)C 的坐標(biāo)。然后需要知道下弦桿的旋轉(zhuǎn)角度,新建下弦桿的默認(rèn)初始位置垂直于X軸與Y 軸所在平面,在C 點(diǎn)建立一根圓柱,然后將圓柱繞X 軸旋轉(zhuǎn)90。,再繞Z 軸旋轉(zhuǎn)角度COX,這樣AB 下弦環(huán)向弦桿的位置和旋轉(zhuǎn)角度就可以確定了。每一個(gè)下弦環(huán)向弦桿的中心點(diǎn)坐標(biāo)和它相對于初始位置的旋轉(zhuǎn)角度就都可以得到,通過Python 代碼循環(huán)的建立每一個(gè)構(gòu)件即可得到跨度為72。的下弦環(huán)向弦桿。下弦環(huán)向弦桿在H1、H2、H3 立面共有3 個(gè)圓環(huán),3 個(gè)圓環(huán)建模原理相同,實(shí)際建模模型如圖8 所示。
圖8 下弦環(huán)向弦桿
接下來是下弦焊接球和下弦徑向豎桿的建模過程。簡化模型如圖9 所示。
CD 表示下弦環(huán)向弦桿,C 點(diǎn)和D 點(diǎn)是焊接球的位置,AC 和BD 代表下弦徑向豎桿,長度為5.5m,可以利用圖7 中求得的角度和已知的OC、OD、AC、BD 長度分別表示C 和D 點(diǎn)焊接球以及AC 和BD 下弦徑向豎桿的坐標(biāo)。接下來需要確定AC 徑向豎桿的旋轉(zhuǎn)角度,首先在AC 中點(diǎn)新建圓柱,圓柱默認(rèn)位置垂直于X 軸和Y 軸所在平面,將圓柱以Y 軸為中心旋轉(zhuǎn)90。,再以Z軸為中心旋轉(zhuǎn)角度AOX。已知中心點(diǎn)坐標(biāo)和旋轉(zhuǎn)角度,利用Python 代碼實(shí)現(xiàn)模型構(gòu)建。
接下來是下弦面內(nèi)斜腹桿的建模,下弦面內(nèi)斜腹桿簡化模型如圖10 所示。
圖10 下弦面內(nèi)斜腹桿
AE、CE、GE、IE 表示下弦面內(nèi)斜腹桿,長度已知,OG 表示圈梁內(nèi)圈半徑,OA 表示圈梁外圈半徑,以CE斜桿為例,首先需要找出CE 斜桿的中心點(diǎn)坐標(biāo),OC 和OE 長度已知,由圖7 易知,角度EOX 和角度COX 可以求得,通過OC 和OE 長度以及角度EOX 和角度COX 可以求得C 點(diǎn)和E 點(diǎn)的坐標(biāo),通過E 點(diǎn)和C 點(diǎn)的坐標(biāo)可以求出求出CE 中心點(diǎn)的坐標(biāo)。已知BC、BE、CE 的長度,通過余弦公式,易求得角度BEC。先在CE中心點(diǎn)坐標(biāo)建一根圓柱,然后繞Y 軸旋轉(zhuǎn)90。,再繞Z軸旋轉(zhuǎn)角度BOX,再繞Z 軸負(fù)方向旋轉(zhuǎn)角度BEC,即可得到CE 下弦面內(nèi)斜腹桿。AE、GE、IE 建模原理相同,實(shí)際建模模型如圖11 所示。
圖11 下弦模型
圈梁上弦構(gòu)件、下弦構(gòu)件和立面構(gòu)件建模原理基本相同,最終圈梁主體部分的三維模型如圖12 所示。
圖12 圈梁模型
(1)滑動(dòng)支座
圈梁與格構(gòu)柱之間通過滑動(dòng)支座連接,滑動(dòng)支座共100 個(gè),分別位于50 個(gè)格構(gòu)柱頂。滑動(dòng)支座作為圈梁的支承結(jié)構(gòu),主要為了解決格構(gòu)柱高度分布不均勻?qū)φw結(jié)構(gòu)剛度的影響,通過滑動(dòng)支座釋放圈梁的環(huán)向約束。
(2)滑動(dòng)支座結(jié)構(gòu)
滑動(dòng)支座包括圈梁與格構(gòu)柱支撐節(jié)點(diǎn)以及圈梁與格構(gòu)柱滑動(dòng)連桿。支撐節(jié)點(diǎn)結(jié)構(gòu)簡單,包括加勁板、圓管、拉索耳板、主索、雙向滑動(dòng)支座?;瑒?dòng)連桿包括圓管、節(jié)點(diǎn)耳板、桿端封板、水平連桿、單耳板、加勁板。水平連桿長度根據(jù)放樣決定。
(3)滑動(dòng)支座的建模
滑動(dòng)支座的建模需要找準(zhǔn)每個(gè)物體相對于坐標(biāo)原點(diǎn)的位置,以及每個(gè)物體的尺寸大小,然后把各個(gè)物體組裝起來。有一些特殊形狀的物體需要用到布爾工具,Blender 中的布爾修改器可以在模型之間計(jì)算得出新的物體,可以得到模型之間交集、并集、差值后的模型效果。其中雙向滑動(dòng)支座的建模需要用到布爾操作,新建兩個(gè)圓柱,通過布爾差值運(yùn)算得到雙向滑動(dòng)支座底座。圈梁與格構(gòu)柱支撐節(jié)點(diǎn)中的6 塊加勁板,前后左右對稱,可以通過旋轉(zhuǎn)復(fù)制得到。其實(shí)際建成模型如圖13 所示。
圖13 滑動(dòng)支座模型
FAST 是目前世界上最大的單口徑射電望遠(yuǎn)鏡,擁有中國自主知識(shí)產(chǎn)權(quán),它的設(shè)計(jì)體現(xiàn)了我國自主創(chuàng)新能力和綜合國力。FAST 圈梁結(jié)構(gòu)是望遠(yuǎn)鏡的索網(wǎng)的之承結(jié)構(gòu),本文對FAST 圈梁結(jié)構(gòu)的建模是基于中標(biāo)麒麟國產(chǎn)操作系統(tǒng),在開源的三維動(dòng)畫制作軟件中,利用Python 內(nèi)建腳本建模和手動(dòng)建模方法相結(jié)合,在數(shù)據(jù)信息翔實(shí)的情況下,可以對圈梁模型進(jìn)行快速構(gòu)建,大大提高了建模效率。然而,本文對FAST 圈梁的建模依然有它的局限性,因?yàn)樗贿m合于有規(guī)律可循的模型構(gòu)建,對于結(jié)構(gòu)復(fù)雜,無規(guī)律可循的模型還需要去找尋其他的建模方法。