
發(fā)布
注冊(cè)
/
登錄ansys中的編程語言的案例
學(xué)習(xí)STAR-CCM+編程語言:在Eclipse中進(jìn)行二次開發(fā)調(diào)試
STARCCM+提供了非常完善的二次開發(fā)支持,可惜的是,它使用了JAVA這樣太專業(yè)的編程語言,遠(yuǎn)不如MATLAB、Python這樣平易近人。此外,無論是中文還是英文互聯(lián)網(wǎng),有關(guān)StarCCM二次開發(fā)的資料幾為空白,更可恨的是,CCM進(jìn)入調(diào)試模式的方式竟然如此奇怪,讓我走了不少彎路。當(dāng)然,導(dǎo)致以上問題的主要原因當(dāng)然還是我自己從來沒用過JAVA和Eclipse。在這里寫下摸索出的正確過程,算留個(gè)記錄吧。
在進(jìn)入正題之前,總結(jié)一下我接觸過二次開發(fā)的專業(yè)軟件是如何進(jìn)入調(diào)試模式的。
COMSOL,可以使用MATLAB調(diào)試,直接執(zhí)行COMSOL with MATLAB文件,會(huì)直接打開MALTAB窗口和一個(gè)控制臺(tái)窗口。你還可以再開一個(gè)COMSOL窗口,輸入端口、帳號(hào)密碼連接上本地服務(wù)器,這樣你在MATLAB里寫的每一句命令,都可以在COMSOL中得到即時(shí)的圖形反饋。
KULI,可以使用MATLAB,VBA,Python調(diào)試,KULI利用了微軟的COM server,只要注冊(cè)KuliAnalysisServer這個(gè)DLL/EXE(一般在安裝時(shí)就已經(jīng)注冊(cè)好了),就可以在任何支持COM的語言中調(diào)用其進(jìn)行計(jì)算,寫一句就能得到反饋(非圖形的)。
Amesim,這個(gè)我還沒怎么接觸過,但現(xiàn)在慢慢開始欣賞、學(xué)習(xí),可恨資料比CCM+還少。Amesim可以用MATLAB和Python進(jìn)行二次開發(fā),很久之前用MATLAB連過一次,并不麻煩,記得也是MATLAB寫一句,都能得到反饋(非圖形的)。
STARCCM,可以使用JAVA。以一個(gè)特定的bat腳本令其運(yùn)行在調(diào)試模式下,打開一個(gè)模型。再在Eclipse中新建項(xiàng)目,引用CCM的所有JAR,添加調(diào)試器,寫腳本,添加斷點(diǎn),再在CCM(而不是Eclipse)里執(zhí)行這個(gè)腳本!!!
展開 三菱ST語言編程中常用的函數(shù)/功能塊使用方法
工控課堂
工控課堂【www.gkket.com】工程師必備網(wǎng)站
添加微信:gkket123 加入500人工控微信群
電氣工控自動(dòng)化-超萬元免費(fèi)資料
點(diǎn)我免費(fèi)下載
(DownLoad)
大部分PLC都會(huì)內(nèi)置很多基本的函數(shù)和功能塊供編程人員調(diào)用,而且很多具有通用性,也就是在不同品牌的PLC中,這些函數(shù)和功能塊的名稱、用法和功能相同,記住這些函數(shù)和功能塊的名稱和使用方法,能讓我們編程時(shí)更加便捷。下面以三菱PLC的編輯軟件GX Works3為例,展示這些函數(shù)、功能塊的使用方法。
邊緣檢測(cè)與計(jì)時(shí)器
1, R_TRIG/F_TRIG(上升/下降沿檢測(cè)功能塊)
上升沿和下降沿應(yīng)該是所有程序里最常用的FB(功能塊)之一了,他的功能是檢測(cè)一個(gè)bool變量變化的邊緣,輸出一個(gè)掃描周期,下面通過一個(gè)例子介紹一下常用的命名方法和編程格式:檢測(cè)開始按鈕X1的上升沿, 置位Y0,檢測(cè)停止按鈕X2的下降沿,復(fù)位Y0。
第一步聲明標(biāo)簽, 我個(gè)人習(xí)慣將上升沿加前綴“rt”,下降沿加“ft”:
聲明標(biāo)簽
第二步編程,F(xiàn)B的輸入引腳賦值要在()內(nèi)操作,而輸出引腳可以當(dāng)作變量直接使用,節(jié)省一個(gè)標(biāo)簽:
編程格式
增加變量前綴,無論在程序的什么地方使用,都能一眼看出變量的類型,方便閱讀程序。
展開 ANSYS經(jīng)典中使用APDL語言施加移動(dòng)高斯熱源
很多人在使用ANSYS模擬焊接和增材制造過程中都面臨高斯熱源施加的難題,現(xiàn)在我來演示一下如何在ANSYS經(jīng)典中使用APDL語言施加高斯熱源,以及如何實(shí)現(xiàn)熱源的移動(dòng)。
打開經(jīng)典界面,然后選擇Parameters→Functions→Define/Edit
然后在彈出的Function Editor中選取你想要輸入的熱源函數(shù),我這里使用了一個(gè)高斯體熱源函數(shù),也可以替換成高斯面熱源或者雙橢球熱源,具體函數(shù)請(qǐng)自行查找文獻(xiàn)
點(diǎn)擊Save后,保存后綴名為.func的函數(shù)文件,其名稱為func11.func
然后退出,重新選擇Parameters→Functions→Read From file
選擇剛才定義的函數(shù)
此時(shí)彈出對(duì)話框,要求輸入函數(shù)的名稱,及對(duì)應(yīng)的參數(shù)的大小,我們定義名稱為gauss,兩個(gè)參數(shù)常量分別為qmx=1,r=1,局部坐標(biāo)系選0就意味著這個(gè)函數(shù)是在全局坐標(biāo)系中施加的,可以換成其他已經(jīng)定義的任何局部坐標(biāo)系
然后點(diǎn)擊List→Files→Log file
然后我們就可以發(fā)現(xiàn)在Log file文件里自動(dòng)生成了函數(shù)func11對(duì)應(yīng)的數(shù)據(jù)表,其是一個(gè)維度6*20的Table表,我們?cè)赼rray parameter中也可以查看其具體數(shù)據(jù),為什么會(huì)生成這段呢,其實(shí)就是ANSYS根據(jù)你所定義的函數(shù),自動(dòng)生成了一個(gè)Table表做了這個(gè)函數(shù)的插值,這樣系統(tǒng)在計(jì)算時(shí)就可以根據(jù)這個(gè)Table表進(jìn)行對(duì)應(yīng)的索引,生成任何你想要的函數(shù)值了。
展開