應用領域 | 環保,化工,生物產業,電子/電池,電氣 |
---|
MC55集成了完整的RF射頻電路和GSM的基帶處理器,十分適合開發一些基于GSM/GPRS的無線應用產品,如監控、調度、車載、遙控、遠程測量、定位和導航等領域的系統和產品,應用范圍十分廣泛。用戶只需投入少量的研發費用,就可以在較短的研發周期內集成自己的應用系統。
![]() |
參考價 | 面議 |
更新時間:2023-08-14 14:32:13瀏覽次數:606
聯系我們時請說明是化工儀器網上看到的信息,謝謝!
6ES7526-2BF00-0AB0
Siemens PLM Software旗下的二三維一體化設計仿真軟件Solid Edge最新版本ST10融合了三大建模核心:順序建模、同步建模、收斂建模,具有正向設計和逆向設計能力,覆蓋了當今產品設計的所有方面。
那么,什么是順序建模,什么是同步建模,什么是收斂建模,他們各自應用的場景是什么,想必大家不一定非常清楚。所以本篇文章,將為你詳細闡述三大建模技術的優勢和差異點。
講到建模技術,那就離不開CAD的發展歷史。下面這張圖,非常形象地說明了這個進展。
三維CAD,經歷將近半個世紀的發展,從線框建模、實體建模,到現在的特征建模(也就是Solid Edge所提到的順序建模)、同步建模、收斂建模,每個建模技術,都與當時的時代條件相匹配。
由于時間久遠,我們就不去關注線框建模和實體建模,而把注意力集中于特征建模(Solid Edge所對應的順序建模)。
80年代末期,以基于特征、全尺寸約束、全數據相關、尺寸驅動設計修改的參數化實體建模方法的出現,大大提振了整個CAD的發展,代表軟件就是PTC公司的Pro Engineering。雖然后續的參數化設計、欠尺寸約束,Windows平臺等等,但都是這種技術的延伸和發展。歷時三十余年的發展,至今仍然在發揮作用。
基于歷史特征的順序建模的特點是:
智能草圖:草圖需要*約束(到后續Windows平臺上,草圖則可以欠約束),并且通過草圖驅動三維模型。
歷史樹特征:嚴格基于操作歷史的前后順序過程,特征之間存在父子關系。前端特征做了修改,后續特征必須重新計算、生成。
特征關聯:以草圖為載體,特征和尺寸,可以做到多重鏈接,以保證設計理念的貫徹。
基于單個零件的設計修改:特征的修改必須基于草圖,因此設計修改必須通過激活零件,在零件環境下完成參數修改。然后通過隱性的特征鏈接傳遞到相關零件。整個裝配的變化有點類似黑箱操作。
FC塊講解
首先,我們從兩者的名字就可以進行區分,可以用一個公式即FB=FC+DB來表示,FB是具有DB背景塊的特殊FC,也就是說FB具有FC的功能,同時擁有一個DB塊。FC全稱是Function函數。
注:DB塊 全稱DataBlock 數據存儲區域,類似數據庫中關系表結構。
那首先什么函數呢?
以模塊MC55為例,MC55是SIEMENS(西門子)公司推出的GSM/GPRS三頻模塊,主要為語音傳輸、短消息和GPRS數據業務提供無線接口。MC55集成了完整的RF射頻電路和GSM的基帶處理器,十分適合開發一些基于GSM/GPRS的無線應用產品,如監控、調度、車載、遙控、遠程測量、定位和導航等領域的系統和產品,應用范圍十分廣泛。用戶只需投入少量的研發費用,就可以在較短的研發周期內集成自己的應用系統。
常用的AT命令如下表所示:
功能名稱 | AT命令 | 解釋 |
廠家認證 | AT+CGMI | 獲得廠家的標識 |
模式認證 | AT+CGMM | 查詢支持頻段 |
修訂認證 | AT+CGMR | 查詢軟件版本 |
生產序號 | AT+CGSN | 查詢IMEI序號 |
查詢IMSI | AT+CIMI | 查詢國際支持認證 |
卡的認證 | AT+CCID | 查詢SIM的序列號 |
關閉電源 | AT+CPOE | 暫停模塊的運行 |
報告錯誤 | AT+CMEE | 報告模塊設備錯誤 |
撥號命令 | ATD | |
掛機命令 | ATH | 掛機 |
回應呼叫 | ATA | 當模塊被呼叫時回應呼叫 |
關機命令 | AT+CPOF | 停止GSM軟件堆棧和硬件層 |
聲音控制 | AT+CRSL | 設定電話鈴聲的聲音級別 |
時鐘管理 | AT+CCLK | 設置或獲得真實時鐘 |
警報管理 | AT+CALA | 設定警報日期 |
設定電話機能 | AT+CFUN | 選擇移動站點的機能水平 |
網絡連接設置 | AT^SICS | 創建Internet連接到GPRS |
網絡服務設置 | AT^SISS | 服務器類型 |
開啟網絡服務 | AT^SISO | 啟動GPRS連接 |
關閉網絡服務 | AT^SISC | 關閉GPRS連接 |
讀網絡數據 | AT^SISR | 讀取GPRS接收數據 |
寫網絡數據 | AT^SISW | 通過GPRS發送數據 |
(1)AT^SICS(Internet Connection Setup Profile)
命令格式:AT^SICS: <conProfileId>, <conParmTag>, <conParmValue>
conProfileId指連接平臺,可以建立0-5共6個不同的連接。conParmTag指連接參數,包括user、passwd、apn等,conParmValue指提供的連接類型,包括GPRS0、CSD(電路交換數據業務)、none(清空)三種方式。
舉例說明如下:
AT^SICS: 0,"conType","GPRS0" //連接平臺0,連接方式是GPRS
AT^SICS: 0,"user","nd" //連接平臺0,設置用戶名
AT^SICS: 0,"passwd","nd" //連接平臺0,設置密碼
AT^SICS: 0,"apn","cmnet" //連接平臺0,設置APN
AT^SICS: 1,"conType","" //連接平臺1,空
AT^SICS: 2,"conType","" //連接平臺2,空
AT^SICS: 3,"conType","" //連接平臺3,空
AT^SICS: 4,"conType","" //連接平臺4,空
AT^SICS: 5,"conType","" //平連接臺5,空
(2)AT^SISS(Internet Service Setup Profile)
命令格式:AT^SISS=<srvProfileId>, <srvParmTag>, <srvParmValue>
Srvprofield是服務配置ID,可以建立0-9共10個配置ID,如說可以用AT^SISS將配置0作socket,配置1作HTTP,配置2作FTP等,然后要啟用哪個服務,就用AT^SISO=0或1或2打開哪個服務,要關掉哪個服務就用AT^SISC=0或1或2關閉哪個服務。一般的數據傳輸用的都是socket服務, SISS指令里的ConID是指當前服務調用哪個連接配置ID,連接配置ID可以設定6個,可以用AT^SICS=0,apn,cmnet或者AT^SICS=1,apn,cmwap設定不同的APN,根據不同的應用,調用不同的連接配置。
舉例說明如下:
AT^SISS: 0,"srvType","Socket" //第0個服務平臺,服務類型為socket
AT^SISS: 0,"conId","0" //第0個服務平臺,使用的連接平臺為0
AT^SISS: 0,"address","" //第0個服務平臺,目前設備的地址為空
AT^SISS: 1,"srvType","" //第1個服務平臺
AT^SISS: 2,"srvType","" //第2個服務平臺
AT^SISS: 3,"srvType","" //第3個服務平臺
AT^SISS: 4,"srvType","" //第4個服務平臺
AT^SISS: 5,"srvType","" //第5個服務平臺
AT^SISS: 6,"srvType","" //第6個服務平臺
AT^SISS: 7,"srvType","" //第7個服務平臺
AT^SISS: 8,"srvType","" //第8個服務平臺
AT^SISS: 9,"srvType","" //第9個服務平臺
GPRS通訊模塊MC55在使用時,需要進行通訊模塊的初始化設置,校驗用戶名和密碼,設置TCP/IP的地址與端口等。初始化時,需要MCU通過串行口按順序給模塊發送以下AT指令,設置模塊及網絡工作參數。
at^sics=0,conType,GPRS0 //設置GPRS工作模式
at^sics=0,user,cm //用戶名稱
at^sics=0,passwd,gprs //密碼
at^sics=0,apn,cmnet //網絡接入點名稱
at^siss=1,srvType,socket // 設置服務類型為socket
at^siss=1,conId,0 //I.D.
at^siss=1,address,"socktcp://219.238.229.74:3000" //設置服務器地址及端口
at^siso=1 //打開端口,開始工作
(3)AT^SISO(Interner Service Open)
命令格式:AT^SISO=<srvProfileId>
啟動GPRS連接。
(4)AT^SISC(Internet Service Close)
命令格式:AT^SISC=<srvProfileId>
關閉GPRS連接。
(5)AT^SISR(Internet Service Read Data)
命令格式:AT^SISR=<srvProfileId>, <reqReadLength>
通過GPRS發送數據,實際上是通過串行口把數據寫入到GPRS通訊模塊,然后由GPRS模塊發送到的IP端口。發送時需要按照以下順序進行操作。
寫串口:at^sisw=0,10 // 使用通道0, 發送10字節的數字
讀串口:^SISW: 0, 10 // 網絡響應
寫串口:12312312342342342345 // 發送數據
讀串口:OK // 接收響應 OK
讀串口:^SISW: 0, 1 //接收網絡響應,收到則已經發送成功
(6)AT^SISW(Internet Service Write Data)
命令格式:AT^SISW=<srvProfileId>, <reqWriteLength>
接收GPRS的數據,即接收已經連接上的服務器發來的數據,可以通過串行口從GPRS模塊中讀取,按以下順序進行操作:
讀串口:^SISR: 0, 1 //接收到該信息則準備接收數據
寫串口:at^sisr=0,20 //發送需要接收的數據長度
讀串口:^SISR: 0, 20 //返回實際的數據長度
讀串口:12312312342342342345 //所接收的數據
讀串口:OK //接收成功
進行GPRS通信首先需要與服務器建立GPRS連接,即實現GPRS登陸。在登陸前需要使用AT指令對無線通信模塊MC55進行初始化設置,設置內容包括連接方式、服務類型、接入點名稱、服務器地址及端口。初始化完成后即可開啟網絡服務,模塊會自動登錄到服務器的相應端口上,登陸完成后就可以進行數據通信了。
具體實現程序如下所示:
(1)OutPut("at^sics=1,contype,gprs0/r/0"); //連接平臺1,設置網絡連接類型為gprs方式
// void OutPut(char *strings)函數的功能是通過串口向MC55輸出數據
檢測到通信模塊返回“OK"則設置成功。
(2)OutPut("at^sics=1,apn,cmnet"); //設置apn為cmnet
檢測到通信模塊返回“OK"則設置成功。
(3)OutPut("at^siss=2,srvtype,socket/r/0"); //第2個服務平臺,設置服務類型為socket
檢測到通信模塊返回“OK"則設置成功。
(4)OutPut("at^siss=2,conid,1/r/0"); //第2個服務平臺,使用的連接平臺為1
檢測到通信模塊返回“OK"則設置成功。
(5)OutPut("at^siss=2,address,socktcp://219.238.229.74:1200");//設置服務器地址及端口
檢測到通信模塊返回“OK"則設置成功。
(6)OutPut("at^siso=2/r/0"); //打開網絡服務,MC55登陸到服務器相應的端口上
檢測到通信模塊返回“OK"則設置成功。
(7)OutPut("at^sisw=2,10/r/0"); //使用平臺2向服務器發送10字節的數據包
if(strstr(buffer,"^SISW:")!=0) //檢測到模塊返回數據“^SISW:"后通過模塊將需要發送的數據發送到服務器相應端口上
OutPut("1234567890/r/0"); //發送數據包
通過GPRS發送數據,實際上是通過串行口把數據寫入到GPRS通訊模塊,然后由GPRS模塊發送到的IP端口。
(8)寫串口:at^sisr=0,20 //發送需要接收的數據長度
讀串口:^SISR: 0, 20 //返回實際的數據長度
讀串口:12312312342342342345 //接收的數據
接收GPRS的數據,即接收已經連接上的服務器發來的數據,可以通過串行口從GPRS模塊中讀取。
函數
函數 f(x)就像機器或黑箱,給予輸入值x便產生輸出值f (x)。x是自變量,f(x)是因變量。舉一個我們常見的公式,求圓的面積,s=π*r*r。輸入r值,便得到圓的面積s,這就是的函數,r是自變量,s是因變量。
圖一 變量聲明
圖2 FC函數內容
Input:輸入型參數,提供外部輸入接口。類似于函數f(x)中的x,是一個自變量。Input類型參數,是外部變量的拷貝副本,修改其值,外部變量無變化。假設在程序中修改R的值,從圖2編譯信息發現,傳遞的并不是實際參數,所以修改外部接口變量無變化。
Output:輸出型參數,提供外部輸出接口。該類型參數由于直接引用外部變量地址,可以修改其值。
InOut:輸入輸出型參數,既做輸入又做輸出。同Output類型一樣,可以修改外部接口變量的值。在適當地方,使用InOut類型變量,可以減少占用plc的變量聲明空間。
Temp:局部變量,在函數內部使用,不提供外部的接口。我們常常把temp變量用于數據轉換的中間值,或者用于循環變量,比如用于For 或者While循環。由于Temp是局部變量,它的值是隨機,使用必須初始化,對其賦值。
Return:函數返回值,存儲計算結果。默認為無返回值,所以聲明為void。在我們的數學知識里面函數應該是要有返回值的,但是在TIA PORTAL可以沒有返回值,我們把這種無返回類型的函數,稱為procedure(過程)。我們這里設置為Real類型,返回圓的面積。有讀者可能有疑問,return變量和Output類型都可以用來存儲計算結果,兩者的區別是什么呢?其中有一個顯著的區別是Output類型輸出參數可以聲明若干個,但是return類型的返回變量,只能聲明一個,且變量名字無法修改。其他區別,等講解SCL的時候,再做解答。
在main[OB1]程序塊里面拖動FC1函數,得到如下運行結果:
圖3 程序運行結果
圖4 DB塊值監控
程序解讀:
由于PLC程序是從左到右執行,所以'Func'函數塊的左側是輸入接口,右側是輸出接口。觀察函數塊的內部變量名字,發現和函數中的聲明一一對應,除了
程序一是對模擬量值進行轉換,采樣的分辨率下限是0,上限為27648,采樣的數字量值15000,通過調用函數把轉換出來的值放在變量<'data'.電壓值>,得到轉換值為0.5425347.
把變量<'data'.電壓值>放在FC函數的Inout接口中,利用PLC的掃描周期,通過DB塊可以看到最終值5.425347。若不放在Inout,把其放在Input接口,我們必須在OutPut接口再聲明一個變量,用于存儲最終的轉換值。這樣聲明就可以節省PLC的內存空間了,同樣使程序看起來更簡潔。
FC函數塊的代碼內容比較簡單,請自行閱讀理解,若有問題,可以留言。
FB塊講解
要了解FB和FC的區別,讓我們剖析一下這兩個模塊的變量聲明結構:
圖5 FB塊變量聲明
圖6 FB占用DB背景塊內部變量
通過FB和FC的變量聲明,我們可以看到三個明顯的區別:
1、FB塊增加了Static靜態區聲明
2、FB增加了保持性和可訪問性選擇
上述兩個區別正好說明了FB=FC+DB公式的成立,因為這兩個特性是DB塊才有的特性哦。我們在普通DB塊里面聲明的變量都在Static區聲明,不信的話,你可以打開來看看。我們可以通過訪問FB擁有的背景塊來訪問FB中變量的值。
當FC調用結束后,各種接口中聲明的變量值無法保存,FB調用結束后,仍然可以保留變量的值,你可以通過FB的背景DB塊進行訪問。FB的每次調用都會自動生成一個DB塊,想想我們編程當中,進行哪類操作也會有類似行為?其實就是我們用的非常頻繁的定時器操作,每一次拖動
圖7 定時器DB背景塊結構
由于定時器擁有背景塊,當我們停止計時后,PLC無論經過多少個掃描周期,還是可以讀取停止計時時刻的值,這就是擁有DB背景塊的好處,FB塊與此類似。
3、FB塊沒有Return接口
由于可以通過Output接口存儲返回值,所以沒有Return接口影響不大。
圖8 FB程序增加部分
由于程序類似,FB程序只列出增加部分。我們可以看到該程序,每次調用都會把最大電壓值放在
讀者可能會有疑問,如果我自己寫一個FC函數,然后外部添加一個DB塊,不是一樣可以實現此功能嗎?看上去好像講的很有道理呀,不過這個想法是錯誤的。
如果你在PLC程序中只調用FB塊一次,那么可以采用此方法。如果你在PLC程序里面,既要比較電壓,還要比較如電流、溫度和濕度等,如果用同一個FC怎么實現呢?用FB可以很好的解決此問題,不明白的,可要仔細想想!
基于歷史特征的順序建模存在的問題在于:
1. 由于特征都有父子關系,因此當前的設計方法都要求預先規劃設計工作。先做什么,后做什么,必須預先規劃好。
2. 由于特征需要重新生成,因此只要草圖發生了修改,那么所有的特征都必須重新生成一遍。如果零件復雜,特征比較多的情況下,那么生成時間就會比較長,不能快速反應設計變更。
3. 異種CAD數據讀入以后,所有的特征參數都丟失了,因此只能是死疙瘩一塊,導致不能編輯修改異種CAD數據,造成信息孤島,阻礙了模型信息的傳遞。
4. 無法重用異種CAD數據和經驗。由于異種CAD數據沒有任何參數和特征,因此無法使用參數驅動、特征拷貝的方式來重用已有經驗數據。
5. 特征之間的鏈接關系是隱性的,導致設計變更也是隱性完成。如果預先不知道他們之間的鏈接關系,那么有時候會產生意想不到的災難。因此也導致工程師寧可重新建模,也不敢修改別人的設計數據。
6ES7526-2BF00-0AB0
正式因為存在以上順序建模無法克服的問題,西門子公司經過多年研發,于2008年正式推出同步建模技術,它一舉突破了順序建模的設計瓶頸,大幅提高設計效率,給三維CAD注入新的活力。
同步建模技術同時加入到西門子旗下的兩款產品:Solid Edge和NX。但由于兩款產品的使用方法和場景不一樣,同步建模的應有也有所差異。NX僅用于無參模型的修改方面,而Solid Edge則作為一個新的建模方法,用于新模型的創建、異種CAD數據的修改、數據重用等各個設計領域。而且只要學會操控下圖的方向盤,就能直觀地進行所見即所得地創建三維模型。
同步建模,顧名思義,就是在進行三維建模,拖動幾何體的時候,同步解算三維驅動尺寸、三維幾何約束、三維幾何關系,并賦予參數特征,實現直觀式的所見即所得三維設計模式。
同步建模自2008年誕生以來,Solid Edge將產品編號從V系列,變更到ST系列(Synchronous Technology),到2017年,Solid Edge的最新版本ST10。
那么,同步建模的特點:
1. 融合了二、三維的操作環境。無需刻意去創建草圖,系統會自動捕捉草圖平面,實現從2D到3D的自然過渡。整個操作過程,可以在全三維環境下完成,也可以切換到二維平面視圖,自然方便。
2. 圖形化的操作手柄方向盤,實時操控整個三維建模過程。它融合拉伸、旋轉、平移、對齊等眾多可視化操作過程。換句話說,只要學會了控制方向盤,就能得心應手地用同步建模創建三維模型。
3. 將二維草圖的尺寸和幾何約束上升到三維空間,實現三維可驅動尺寸、三維幾何約束的建模體系。三維可驅動尺寸即為PMI,可以實現從CAD到CAM的完整尺寸鏈的傳遞。修改三維尺寸的同時,自動實時捕獲幾何約束關系,實時規則自動賦予,以保證所有的設計修改在可控的范圍內完成。而且由于都是實時操作,無需等待,即可完成設計修改。