關鍵詞:結構設計;模型生成;RobotStructuralAnalysis;C#;間接空冷系統(tǒng);冷卻三角中圖分類號:TP311 文獻標志碼:A 文章編號:2095-2945(2025)13-0042-04
Abstract:Inthecalculationofthecolingtrianglestructureoftheintercolingsystem,inorder tosimplifythecumbersome modelingworkintheearlystage,anapplicationprogramisdevelopedusingC#language.Aftertheuserfilsinrelevant parameters,atextfileisgeneratedandimportedintotheRobotStructuralAnalysisstructuralcalculationsoftware.Astructural calculation modelcanbegenerated.Thismethodprovidesanewfastmodelingmethodformodelingcolingtriangularstructures.
Keywords: structural design;modelgeneration;RobotStructureAnalysis;C#;indirectaircoolingsystem;coolingtriangle
在間冷冷卻三角的結構設計中,通常需要根據(jù)三角的斷面形式和多層高度進行建立結構模型,再添加各種荷載進行結構計算。但在不同的項目中,三角的形式又存在差異,這就需要結構人員重新建立模型或修改已有模型的所有相關數(shù)據(jù),比較復雜繁瑣。本文介紹一種用C#程序快速生成模型文件,直接導入到RobotStructuralAnalysis結構計算軟件中,從而完成建模工作。
1設計準備
1.1 確定設計參數(shù)
根據(jù)工藝三角布置方案,確定三角角度、層高度,管束長、寬外形,三角異形柱截面壁厚、折邊長度、裝配預留間隙等,并根據(jù)項目信息確定風、雪、地震等荷載數(shù)據(jù)。這些設計參數(shù)通過程序界面由用戶輸入。
1.2 功能實現(xiàn)思路
RobotStructuralAnalysis結構計算軟件有個功能是可以導入后綴str的文本文件生成模型,文本內(nèi)容包含結構模型點的編號、坐標及點上荷載;桿單元的起點、終點、編號及其荷載;支座點編號及釋放;荷載工況、編號、分類;桿件檢驗控制參數(shù)等。
按照文件寫人規(guī)則并結合本工程特點,只需計算求得模型點、桿件、荷載等信息即可用C#程序編寫文
件。流程如下。
根據(jù)三角的角度和管束外形和異形柱的參數(shù),確定三角斷面圖形,計算出每個點的 X Y 平面坐標。
根據(jù)三角層高對斷面圖中每個點坐標進行 Z 值擴充,生成三角框架所有三維點集合。
根據(jù)三角框架橫梁、斜撐的布置形式,結合起點坐標終點坐標建立桿件單元集合。
根據(jù)用戶輸入?yún)?shù)值對點、桿件單元進行荷載計算[3]。根據(jù)需求可以添加檢驗參數(shù),如計算長度、撓度限值[4]。
將數(shù)據(jù)輸出到文本,導入到計算軟件,生成結構模型。
2 設計具體實現(xiàn)
三角的斷面形式如圖1所示,主要由2片管束,3個異形柱,百葉窗,管束內(nèi)、外梁,百葉窗梁。三角的立面如圖2所示,在三角的3個立面上都有X斜撐。經(jīng)過簡化后的結構計算模型如圖3所示。圖3中數(shù)字表示為計算節(jié)點號。節(jié)點之間的連線表示計算桿件。如節(jié)點1至6對應圖1外梁,節(jié)點2至7對應圖1內(nèi)梁,節(jié)點8至12對應圖1百葉窗梁,節(jié)點0至1、0至2為剛性桿。三角頂部、底部異形柱外形如圖4所示。圖4中數(shù)字表示桿件截面外形的角點。
設定頂部異形柱角點0為原點(0,0,0),根據(jù)三角角度求得的 ,管板寬度 b ,折邊長度
,柱壁厚
,運用三角函數(shù)求得柱截面外形10個角點坐標。
Point P 0 = new Point(O,0,0);
Point ?P l= new Point(b*Math.Cos(a), Math.Sin (a),0);
Point P2 = newPoint(P1.X-c*Math.Sin(a),P1.Y+ c*Math.Cos(a),0);
Point P3=new Point(P2.X-t*Math.Cos(a),P2.Yt*Math.Sin(a),0);
Point P4=new Point(P3.X+(c-t)*Math.Sin(a),P3. Y-(c-t)*Math.Cos(a),0);
PointP5=new Point(O,t/Math.Cos(a),O); Point P6=new Point(P4.X*-1,P4.Y,O); Point P7=new Point(P3.X*-1,P3.Y,0); Point P8 = new Point P9=new
根據(jù)形心公式計算形心坐標
同樣方式求得底部左右異形柱的坐標及形心。繼續(xù)再求出管束內(nèi)外梁的坐標、百葉窗梁的坐標,最后得到圖3結構簡圖中13個特征點坐標,其中點0為頂柱形心,點5為底部左柱形心,點9為底部右柱形心。為了后續(xù)方便查找點的信息,在此定義一個二維數(shù)組存儲13個點坐標:Listgt;allpointlist=new Listgt;(13)每個點可以用allpointlist[a][b]表示, a 取值0\~12對應平面上0\~12個點,b取值 Δ0 ~ row,對應三角桁架的相應層數(shù),如allpointlist[3][3]就表示第4層的序號4的點。根據(jù)用戶填入的三角高度數(shù)據(jù)對數(shù)組進行擴充,得到整個三角框架的所有點坐標集合,代碼如下。
introw=dataGridView1.RowCount-1;#三角層數(shù) if(rowgt;1){ 6 (204號 for(int n=O;n dataGridView1.Rows[n].Cells[1]. Value;
Double z=allpointlist[i][allpointlist[i].Count-1].Z; Point pp1=new Point; pp1.X=allpointlist[i][allpointlist[i].Count-1].X; pp1.Y=allpointlist[i][allpointlist[i].Count-1].Y; pp1.Z allpointlist[i][allpointlist[].Count - 1 ] . Z +
heightn; allpointlist[i].Add(pp );}} #開始寫人文件 StreamWriter pf=new StreamWriter( textfilename,
1,System.Text.Encoding.Default ); pf.WriteLine(\"ROBOT97\" ); pf.WriteLine( \"FRAMESPATIAL\" ); pf.WriteLine(\"NUMBERINGDISCONTINUOUS\"); pf.WriteLine( \"UNITS\"); pf.WriteLine( \"LENGTH=m\"); pf.WriteLine(\"FORCES=kN\"); pf.WriteLine(\"UNITSEND\"); pf.WriteLine(\"NODES\"); pf.WriteLine( \"COORDCART\" ); #寫入點坐標,循環(huán)點集合,并給出節(jié)點編號,由
于底層和頂層沒有橫梁及斜撐點,通過if判斷,對滿
足條件的點進行輸出 for (int i=0;ilt;13;i++){ for (int j=0 . j lt; allpointlist[i]).Count; 八 node
: text
node.ToString+\"\"+allpointlist[i][j].X.
ToString(\"f3\")+\"\"+allpointlist[i]i].YToString(\"f\") + (20
\" \"+llpointlist[i]]Z.TStrng(\"f3\"); if(條件為真){ pf.WriteLine(text);}) #寫桿件列表時,為了方便后面調用,可以定義類
robotmember,屬性有桿件對象的編號、起點坐標、終點
坐標。如下 public class robotmember# 定義桿件類{ private Point _StartPoint;#桿件起點屬性 private Point _EndPoint:#桿件終點屬性 public robotmember{}#桿件定義方法 public robotmember(int membernum,Point start
point,Point endpoint ){ this.member=membernum;# 桿件的輸出編號 this.StartPoint=startpoint; this.EndPoint=endpoit;}} pf.WriteLine(\"ELEMENTS\");#開始寫人桿件 int elementnum 定義桿件編號變量 for (int k= 0 ;k #桿件編號
(20 midcol.Add(new robotmember(elementnum,all
pointlist[O]lk],allpointlist [ 0 ] [ k+1 ] ));#存儲頂柱桿件到
midcol中 text τ= elementnum.ToString + \"\" + ( ?k+1 ) .ToString
(20 pf.WriteLine(text);#輸出頂柱的編號 + 起點節(jié)點
號 + 終點節(jié)點號) 同樣方式輸出底柱,橫桿、斜撐等。 #寫入桿件端部釋放 pf.WriteLine(\"RELEASES\"); pf.WriteLine(\"ELE\" + \"\" +midcol [0].member.
ToString \"\"
RY RZ\");#頂柱底部桿件起點
My . M z 釋放 pf.WriteLine(\"ELE\" + \" \" + midcol[midcol.Count
1].member.ToString + \"\" + \" END UX RZ\");#頂柱頂
部桿件終點軸向位移、 . M z 釋放 #寫入支座 pf.WriteLine( \"SUPPORTS\"); pf.WriteLine
+”1 ).ToString);#三角柱底節(jié)點設
為固定支座 pf.WriteLine((row + 1 ).ToString);# 三角頂部中
柱柱頂節(jié)點設為固定支座 #寫入屬性,材質,截面,gamma 角度 pf.WriteLine(\"PROPERTIES\"); pf.WriteLine(\"\\"Q345\\"); pf.WriteLine(midcol[0].member.ToString + \"TO\" +
midcol [midcol.Count - 1].member.ToString + \"CSHS
);#輸出頂柱的截面CSHS 8 0 x8 0 x5 ,材質為
Q345,gamma 角度為0 #寫入荷載 pf.WriteLine( \"LOADS\"); pf.WriteLine(\"CASE 1 DEAD LOAD\"):# 定義工
況1為恒載 pf.WriteLine(\"SELFWEIGHT \");# 自動加人桿件
的自重,默認系數(shù)1,在導入后可以修改系數(shù)
pf.WriteLine(\"PZ MINUS\");#方向為-Zpf.WriteLine(\"NODES\");#輸出節(jié)點荷載pf.WriteLine(\"2\"+\" \"+\"FZ=-\"+ bundleweight.ToString;#在節(jié)點2增加管束自重荷載,方向為-Zpf.WriteLine(\"ELEMENTS\");#輸出桿件均布荷載pf.WriteLine (leftcol [i].member.ToString rightcol[i].member.ToString + \" PZ- \" + windowweight.ToString;#輸出底部左柱和右柱上的百葉窗自重pf.WriteLine(\"CASE3WindCLOSE\");#定義工況3為風載(百葉窗關閉狀態(tài))pf.WriteLine(\"ELEMENTS\");#輸出桿件均布荷載風荷載計算公式]
,式中:
為風荷載標準值,
為 z 高度處的風振系數(shù)
為風荷載體型系數(shù);
為風壓高度變化系數(shù);
為基本風壓值,
入文件,點擊分析,即可生成已經(jīng)添加基本工況的三角框架模型。程序部分界面及導人后模型如圖5所示。
3結束語
本文提出的模型生成方法,為結構建模工作提供了一種新的解決方案,同時,該程序簡單便捷的操作,能夠顯著提高結構設計工作的效率,并且減少在軟件中手工建模的失誤。另外,由于程序采用的是參數(shù)化理念,一方面它具有廣泛的適用性,在不同的項目中只需要調整參數(shù)即可。另一方面,工程師通過對不同項目的參數(shù)進行比較,可以清晰了解到項目的結構特征,為后續(xù)計算工作可以提供一定的指導。
在此方法的基礎上,利用C#程序的可擴展性,還可增加其他模塊的建模工作或增加后續(xù)的計算輔助功能,將會對結構工程師的工作提供更大幫助。
參考文獻:
[1]DanielSolis.C#圖解教程[M].5版.竇衍森,姚琪琳,譯.北京:人民郵電出版社,2019.
[2]馬淑欣.百萬機組冷卻三角支撐結構受力性能優(yōu)化及分析[J]建筑技術開發(fā),2017,44(23):26-27.
[3]建筑結構荷載規(guī)范:GB50009—2012[S].北京:中國建筑工業(yè)出版社,2012.
[4]鋼結構設計標準:GB50017—2017[S].北京:中國建筑工業(yè)出版社,2017.
[5]工業(yè)循環(huán)水冷卻設計規(guī)范:GB/T 50102—2014[S].北京:中國計劃出版社,2014.
[6]建筑抗震設計標準:GB/T50011—2010(2024年版)[S].北京:中國建筑工業(yè)出版社,2010.