
發(fā)布
注冊(cè)
/
登錄adams子程序的案例
直播預(yù)告 | 從編譯到實(shí)戰(zhàn):Adams用戶子程序使用基礎(chǔ)
精彩直播預(yù)告
在復(fù)雜機(jī)械系統(tǒng)動(dòng)力學(xué)仿真領(lǐng)域,Adams用戶子程序已被廣泛用于模擬各類(lèi)非標(biāo)準(zhǔn)現(xiàn)象。作為突破軟件原生功能邊界的關(guān)鍵開(kāi)發(fā)接口,用戶可通過(guò)編寫(xiě)具體代碼實(shí)現(xiàn)功能擴(kuò)展,實(shí)現(xiàn)特定場(chǎng)景的定制化建模。Adams軟件提供了豐富多樣的子程序類(lèi)型,用戶編寫(xiě)子程序用于代碼的具體實(shí)現(xiàn),實(shí)用子程序一般在用戶編寫(xiě)子程序內(nèi)配合使用,它在系統(tǒng)狀態(tài)查詢、數(shù)學(xué)和信息傳遞、接口交互以及文件輸入、輸出等方面發(fā)揮著重要作用,極大增強(qiáng)了仿真系統(tǒng)的靈活性和適用性。
用戶選擇使用 Adams 用戶子程序,主要基于以下五個(gè)方面:
1、擴(kuò)展Adams原生功能;
2、實(shí)現(xiàn)某個(gè)復(fù)雜邏輯;
3、引入元件或控制系統(tǒng);
4、進(jìn)行數(shù)據(jù)交換;
5、隱藏源代碼。
然而,作為高級(jí)定制化開(kāi)發(fā)工具,Adams 用戶子程序的應(yīng)用也面臨諸多挑戰(zhàn)。當(dāng)前用戶普遍存在三大痛點(diǎn):一是對(duì)子程序的基礎(chǔ)調(diào)用機(jī)制缺乏系統(tǒng)性認(rèn)知;二是難以掌握用戶子程序的編寫(xiě)技巧;三是在子程序編譯與鏈接環(huán)節(jié)存在操作障礙。
本次直播我們請(qǐng)到了Adams技術(shù)工程師狄亞鵬,通過(guò)介紹Adams用戶子程序的基本知識(shí),使用方法,子程序編寫(xiě)的最佳實(shí)踐以及如何編譯和鏈接用戶子程序,幫助用戶建立對(duì)Adams用戶子程序的基本認(rèn)識(shí),邁出使用和開(kāi)發(fā)用戶子程序的第一步。精彩不容錯(cuò)過(guò),趕快預(yù)約報(bào)名!
4月18日 14:00
▲ 掃碼參與報(bào)名
立即預(yù)定
直播內(nèi)容聚焦
? Adams子程序的使用方法介紹
? Adams子程序關(guān)鍵參數(shù)介紹
? Adams子程序編寫(xiě)的最佳實(shí)踐
狄亞鵬
??怂箍倒I(yè)軟件技術(shù)工程師
具有多年Adams軟件使用經(jīng)驗(yàn),擅長(zhǎng)Adams二次開(kāi)發(fā)以及工程機(jī)械產(chǎn)品的動(dòng)力學(xué)仿真分析。
展開(kāi) 設(shè)計(jì)仿真 | Adams線性化分析子程序應(yīng)用
文件路徑為E:\MSC.Software\Adams\2022_1_875404\solver\samples
Linear_utility.acf, Linear_utility.adm,Linear_utility.c(c碼轉(zhuǎn)化為dll需要參考Adams用戶子程序一般流程,需要相關(guān)編譯環(huán)境支持)。
此文摘自:海克斯康工業(yè)軟件
設(shè)計(jì)仿真 | Adams線性化分析子程序應(yīng)用
文件路徑為E:\MSC.Software\Adams\2022_1_875404\solver\samples
Linear_utility.acf, Linear_utility.adm,Linear_utility.c(c碼轉(zhuǎn)化為dll需要參考Adams用戶子程序一般流程,需要相關(guān)編譯環(huán)境支持)。
文章來(lái)源:??怂箍倒I(yè)軟件
設(shè)計(jì)仿真 | Adams回調(diào)函數(shù)功能解析
01
概 述
在應(yīng)用Adams處理工程問(wèn)題時(shí),尤其面對(duì)復(fù)雜工況條件下,需要對(duì)求解器在仿真過(guò)程中進(jìn)行更為細(xì)致和靈活的設(shè)置,此時(shí),基于軟件界面上的功能已經(jīng)很難滿足實(shí)際需求。CBKSUB子程序作為Adams的回調(diào)函數(shù),其主要作用是幫助用戶優(yōu)化仿真的執(zhí)行,可以對(duì)仿真進(jìn)行控制和相應(yīng)內(nèi)存分配,還可以緩存仿真過(guò)程中計(jì)算的數(shù)值。
02
回調(diào)函數(shù)子程序
Adams求解器每次運(yùn)行,其實(shí)會(huì)劃分很多細(xì)小的階段,比如完成模型讀入、仿真求解命令開(kāi)始、迭代運(yùn)行開(kāi)始、迭代終止、靜力分析開(kāi)始、傳感器觸發(fā)等等,CBKSUB就可以這些事件作為其觸發(fā)的條件。Adams回調(diào)函數(shù)的架構(gòu),旨在為高級(jí)用戶定制執(zhí)行自定義解決方案的數(shù)值密集型模型,通過(guò)該架構(gòu)的輔助代碼,實(shí)現(xiàn)初始化內(nèi)存、運(yùn)行各類(lèi)仿真計(jì)算、生成供其它用戶子程序共享的結(jié)果數(shù)據(jù)以及優(yōu)化自定義模型等。可以基于Fortran或者C/C++編寫(xiě)回調(diào)函數(shù)子程序CBKSUB,另外,擁有回調(diào)函數(shù)子程序的計(jì)算消耗可以忽略不記,除非用戶在其中執(zhí)行冗長(zhǎng)的數(shù)值計(jì)算。
回調(diào)函數(shù)子程序的一般形式
CBKSUB/id,priority=I,function=user(0),routine=libname::subname
其中,
●Priority,描述多個(gè)回調(diào)子程序存在時(shí),它們的調(diào)用次序,有高優(yōu)先級(jí)的回調(diào)函數(shù)先調(diào)用,如果兩個(gè)有相同的優(yōu)先級(jí),相當(dāng)于沒(méi)有次序。該值沒(méi)有默認(rèn)值,可設(shè)置為任意整數(shù)。
●Function,設(shè)置為當(dāng)前模式Adams求解器不給回調(diào)函數(shù)傳遞輸入?yún)?shù)。
●Routine,用于指定所調(diào)用的庫(kù)及函數(shù)名稱(chēng)。
回調(diào)子程序在仿真中,當(dāng)每個(gè)預(yù)定義事件觸發(fā)時(shí)進(jìn)行調(diào)用。在回調(diào)函數(shù)內(nèi)部,用戶可編寫(xiě)代碼進(jìn)行準(zhǔn)備計(jì)算,運(yùn)行自定義解決方案等進(jìn)行優(yōu)化復(fù)雜Adams模型的工作。
展開(kāi) 
《機(jī)械系統(tǒng)動(dòng)力學(xué)分析及ADAMS應(yīng)用教程》
建模和仿真的步驟
5.1.2 創(chuàng)建模型
5.1.3 測(cè)試并驗(yàn)證模型
5.1.4 優(yōu)化模型
5.1.5 用戶化和宏功能
5.1.6 啟動(dòng)ADAMS/View
5.1.7 定義建模環(huán)境
5.2 幾何建模工具
5.2.1 建模工具調(diào)用的兩種方式
5.2.2 基本幾何形狀的繪制
5.2.3 簡(jiǎn)單形體的建模
5.2.4 復(fù)雜形體的建模
5.2.5 幾何形體的修改
5.2.6 Body特性的修改
5.3 約束建模
5.3.1 約束簡(jiǎn)介
5.3.2 創(chuàng)建約束
5.3.3 定義驅(qū)動(dòng)
5.3.4 約束建模時(shí)需要注意的幾點(diǎn)
5.4 施加外力
5.4.1 基本概念
5.4.2 作用力
5.4.3 柔性連接
5.5 仿真分析
5.5.1 設(shè)置仿真分析輸出
5.5.2 模型檢查
5.5.3 樣機(jī)調(diào)試
5.5.4 樣機(jī)仿真分析和試驗(yàn)
5.5.5 仿真過(guò)程中參數(shù)的設(shè)置
5.5.6 仿真結(jié)果的保存和刪除
5.6 ADAMS/View應(yīng)用實(shí)例
5.6.1 幾何建摸
5.6.2 添加約束
5.6.3 添加運(yùn)動(dòng)和力
5.6.4 仿真分析
第6章 ADAMS模型語(yǔ)言及仿真控制語(yǔ)言
……
第7章 ADAMS/PostProcessor使用方法
第8章 ADAMS/View函數(shù)及ADAMS/Solver函數(shù)
第9章 ADAMS用戶子程序
第10章 ADAMS參數(shù)化建模及優(yōu)化設(shè)計(jì)
第11章 ADAMS二次開(kāi)發(fā)及實(shí)例
第12章 ADAMS應(yīng)用實(shí)例
參考文獻(xiàn)
展開(kāi) 設(shè)計(jì)仿真 | Adams 新功能全面解析
用戶對(duì)柔性體創(chuàng)建接觸子程序(CNFSUB、CFFSUB)時(shí),增加了兩個(gè)子程序識(shí)別節(jié)點(diǎn)及詳細(xì)的接觸:
N_NODE_INCIDENTS和FLEX_CONTACT_DATA。
2. 內(nèi)部增加了描述角度的方法,對(duì)某些模型,計(jì)算速度及魯棒性都會(huì)提升。新的方法避免了計(jì)算過(guò)程中的角度奇異。
角度設(shè)置
3. 新的斜坡函數(shù),RAMP(x,x0,h0,m,rp)。
斜坡函數(shù)
04-Adams/Flex新功能
1. 模態(tài)中性文件可以識(shí)別有限元軟件計(jì)算的轉(zhuǎn)子動(dòng)力學(xué)效果。提供新的按鈕進(jìn)行轉(zhuǎn)子動(dòng)力學(xué)分析,并支持Campbell圖。
識(shí)別轉(zhuǎn)子動(dòng)力學(xué)效果
2. 改變?nèi)嵝泽w的模態(tài)剛度及質(zhì)量。用戶可以通過(guò)系數(shù)改變?nèi)嵝泽w的自由頻率,不需要重新生成MNF。
新增stiffness scale、Global Stiffness Scale、Global Mass Scale等
3. Flex工具取消了“Standard Portable”,將“Platform Specific”設(shè)置為默認(rèn),可以加快動(dòng)畫(huà)顯示,并且可以全平臺(tái)工作。
默認(rèn)“Platform Specific”
05-Adams/Tire新功能
1. 在使用Ftire進(jìn)行計(jì)算時(shí),可以通過(guò)函數(shù)指定輪胎胎壓變化。
胎壓變化
06-Adams/Controls新功能
1. AdamsControls導(dǎo)出的FMU支持對(duì)柔性體進(jìn)行加密。選擇加密后,F(xiàn)MU中不包含MNF文件,使用加密的mtx文件表示柔性體的信息。
FMU加密選項(xiàng)
2. Adams Real Time支持即將到來(lái)的CDTire/RealTime,CDTire的這個(gè)版本將會(huì)在2025年釋放。
3.
展開(kāi) 設(shè)計(jì)仿真 | Adams 2022 新功能回顧
圖:通用襯套及IPIT工具箱
Adams/Solver新功能
1)以前Adams線性狀態(tài)空間(ABCD)矩陣只能通過(guò)用戶自定義子程序獲取,22.1版本中新增子程序c_get_linear_mat_states()允許用戶獲取上述矩陣。具體實(shí)例可參見(jiàn)公眾號(hào)“海克斯康工業(yè)軟件”中的《Adams線性化分析子程序應(yīng)用》。
2)接觸函數(shù)中的摩擦以前僅支持滑動(dòng)的摩擦,即兩者之間必須存在相對(duì)運(yùn)動(dòng)。22.2版本中引入了靜摩擦(stiction),兩者之間無(wú)相對(duì)運(yùn)動(dòng)也可以產(chǎn)生摩擦力,此功能早已在約束副上實(shí)現(xiàn)。
展開(kāi) 設(shè)計(jì)仿真 | Adams 2022 新功能回顧
圖:通用襯套及IPIT工具箱
Adams/Solver新功能
1)以前Adams線性狀態(tài)空間(ABCD)矩陣只能通過(guò)用戶自定義子程序獲取,22.1版本中新增子程序c_get_linear_mat_states()允許用戶獲取上述矩陣。具體實(shí)例可參見(jiàn)公眾號(hào)“海克斯康工業(yè)軟件”中的《Adams線性化分析子程序應(yīng)用》。
2)接觸函數(shù)中的摩擦以前僅支持滑動(dòng)的摩擦,即兩者之間必須存在相對(duì)運(yùn)動(dòng)。22.2版本中引入了靜摩擦(stiction),兩者之間無(wú)相對(duì)運(yùn)動(dòng)也可以產(chǎn)生摩擦力,此功能早已在約束副上實(shí)現(xiàn)。
展開(kāi)