国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

840D系統(tǒng)NC加工程序向PLC存儲器傳送數(shù)據(jù)

2014-06-20 21:19:40楊偉光
無線互聯(lián)科技 2014年2期
關(guān)鍵詞:數(shù)據(jù)類型賦值字節(jié)

楊偉光

摘 要:840D系統(tǒng)中,NC和PLC有高速數(shù)據(jù)交換區(qū)。數(shù)據(jù)交換的內(nèi)容可自由配置,能夠?qū)崿F(xiàn)特定的功能:NC程序獲取PLC一側(cè)的機(jī)床傳感器狀態(tài),使NC程序更加靈活的運(yùn)行;也可以使用NC程序收集PLC所需的一些配置數(shù)據(jù)。數(shù)據(jù)交換區(qū)在NC一側(cè)是系統(tǒng)變量$A_DBB[],$A_DBW[],$A_DBD[],$A_DBR[],在PLC一側(cè)需通過FC21進(jìn)行訪問,本次試驗(yàn)將測試各基本數(shù)據(jù)類型和某些復(fù)雜數(shù)據(jù)類型的傳送,為具體的應(yīng)用提供依據(jù)。

關(guān)鍵詞:NC加工程序;PLC數(shù)據(jù)塊

使用NC加工程序在NC和PLC數(shù)據(jù)交換區(qū)上構(gòu)造S7300PLC的ANY數(shù)據(jù)類型的變量并傳送給PLC,然后PLC在數(shù)據(jù)交換區(qū)上讀取并傳輸數(shù)據(jù)到ANY變量指定的地址。

840D和840Dsl系統(tǒng)中,NC和PLC有高速數(shù)據(jù)交換區(qū)。數(shù)據(jù)交換的內(nèi)容可自由配置,利用這一特性可以在NC程序中配置地址信息,使數(shù)據(jù)傳輸?shù)絇LC存儲器任一位置。

1 NC與PLC數(shù)據(jù)的傳輸

1.1 高速數(shù)據(jù)交換區(qū)原理

高速數(shù)據(jù)交換區(qū)是一塊NC和PLC共享的內(nèi)存區(qū)域,因此:數(shù)據(jù)從NC到PLC即為NC把數(shù)據(jù)寫入數(shù)據(jù)交換區(qū),然后PLC從數(shù)據(jù)交換區(qū)讀取這個數(shù)據(jù)。數(shù)據(jù)從PLC到NC即為PLC把數(shù)據(jù)寫入數(shù)據(jù)交換區(qū),然后NC從數(shù)據(jù)交換區(qū)讀取這個數(shù)據(jù)。

1.2 高速數(shù)據(jù)交換區(qū)的訪問方式

NC使用系統(tǒng)變量$A_DBB[n],$A_DBW[n],$A_DBD[n],$A_DBR[n]訪問高速數(shù)據(jù)交換區(qū)。PLC使用FC21訪問高速數(shù)據(jù)交換區(qū)。

1.3 注意事項(xiàng)

機(jī)床數(shù)據(jù)28150 $MC_MM_NUM_VDIVAR_ELEMENTS配置可寫的數(shù)量。系統(tǒng)在賦值時對變量的取值范圍進(jìn)行檢測,如果超出范圍則報警。

2 NC對高速數(shù)據(jù)交換區(qū)的訪問

默認(rèn)情況下NC對高速數(shù)據(jù)交換區(qū)進(jìn)行讀操作,向數(shù)據(jù)區(qū)寫數(shù)據(jù)需要要通道機(jī)床數(shù)據(jù)28150 $MC_MM_NUM_VDIVAR_ELEMENTS 配置可寫的數(shù)量。否則會出現(xiàn)報警。

⑴各系統(tǒng)變量:$A_DBB[n]用來訪問1字節(jié)數(shù)據(jù),包括BYTE,CHAR;n為字節(jié)地址;$A_DBW[n]用來訪問2字節(jié)整數(shù);n為字節(jié)地址,應(yīng)為2的整數(shù)倍;$A_DBD[n]用來訪問4字節(jié)整數(shù);n為字節(jié)地址,應(yīng)為4的整數(shù)倍;$A_DBR[n]用來訪問浮點(diǎn)數(shù);n為字節(jié)地址,應(yīng)為4的整數(shù)倍。

高速數(shù)據(jù)交換區(qū)以字節(jié)地址訪問,以整數(shù)為例第一個整數(shù)$A_DBW[0],第二個整數(shù)$A_DBW[2]。如果下標(biāo)錯誤,例如$A_DBW[1]則報警。

⑵$A_DBB[n],$A_DBW[n],$A_DBD[n]的賦值數(shù)據(jù)格式

整數(shù)格式:例如$A_DBW[0]=1;$A_DBW[0]=-1

字符格式:例如$A_DBB[0]=”a”

二進(jìn)制格式:例如$A_DBB[0]=B10000010

十六進(jìn)制格式:例如$A_DBW[0]=H2E0F

⑶$A_DBR[n] 的賦值數(shù)據(jù)格式

$A_DBR[n]應(yīng)為浮點(diǎn)格式,例如$A_DBR[4]=123.456

⑷數(shù)據(jù)類型轉(zhuǎn)換

NC程序在使用高速數(shù)據(jù)交換區(qū)時可能進(jìn)行數(shù)據(jù)類型轉(zhuǎn)換,例如:對$A_DBB[n],$A_DBW[n],$A_DBD[n]賦值浮點(diǎn)類型,系統(tǒng)不認(rèn)為這是編程錯誤,而是轉(zhuǎn)換為整數(shù)后賦值。$A_DBB[0]=1.23,則結(jié)果是$A_DBB[0]=1。向浮點(diǎn)變量賦值整數(shù)也有相應(yīng)過程。如果對數(shù)據(jù)類型轉(zhuǎn)換沒有充分了解,則要盡量避免,否則與預(yù)期可能存在偏差。例如:$A_DBB[0]=-1 R10=$A_DBB[0] 結(jié)果是R10=255.0,而不是R10=-1。

⑸系統(tǒng)在賦值時對變量的取值范圍進(jìn)行檢測,如果超出范圍則報警。例如:Byte變量取值范圍0到255,則$A_DBB[0]=256會引發(fā)報警。

3 NC程序中向PLC任意位置傳送數(shù)據(jù)的步驟

⑴NC程序把要傳送的數(shù)據(jù)存儲在數(shù)據(jù)交換區(qū)的指定位置;⑵NC程序在數(shù)據(jù)交換區(qū)構(gòu)造S7300PLC的ANY數(shù)據(jù)類型的變量,ny類型中分別指定 起始地址,數(shù)據(jù)類型,重復(fù)次數(shù);⑶在數(shù)據(jù)交換區(qū)寫入所要傳送的數(shù)據(jù)在數(shù)據(jù)交換區(qū)上的位置;⑷PLC調(diào)用FC21讀取步驟2和3在數(shù)據(jù)交換區(qū)上的信息;⑸PLC再次調(diào)用FC21讀取步驟3所指的數(shù)據(jù),并傳送到步驟2所指定的PLC存儲器。

4 NC程序示例:傳送數(shù)據(jù)到PLC的數(shù)據(jù)塊

PROC XDBX(INT Source=0,INT Destination=0,INT Format=0,INT Length=0,INT DB=0)

IF (DB>0)and(Length>0)and(Destination<8192)

IF (Format==1)or(Format==2)or(Format==4)

$A_DBW[1002]=Source

$A_DBW[1004]=Format*2 B_AND 'H1000'

$A_DBW[1006]=Length

$A_DBW[1008]=DB

$A_DBW[1010]='H8400'

$A_DBW[1012]=Destination*8

$A_DBB[1000]=1

WHENEVER $A_DBB[1000]==1 DO RDISABLE

ENDIF

ENDIF

M17

這個程序在把所需傳送數(shù)據(jù)的地址存在1002,在數(shù)據(jù)交換區(qū)1004到1013處建立一個ANY結(jié)構(gòu),1000設(shè)為信號量。

5 PLC程序

6 試驗(yàn)結(jié)果分析

按照事先設(shè)定的試驗(yàn)方法,試驗(yàn)了PLC到NC變量,NC變量和PLC的1字節(jié),2字節(jié),4字節(jié)基本數(shù)據(jù)類型的數(shù)據(jù)交換,以及BOOL變量的傳輸及檢取,最后試驗(yàn)了數(shù)組和結(jié)構(gòu)體的傳輸。其中需要注意NC/PLC之間字節(jié)順序的不同,以保證數(shù)據(jù)傳送到預(yù)想的位置。

[參考文獻(xiàn)]

[1]SINUMERIK 840Dsl Basic Functions SIMENS.

猜你喜歡
數(shù)據(jù)類型賦值字節(jié)
關(guān)于1 1/2 … 1/n的一類初等對稱函數(shù)的2-adic賦值
L-代數(shù)上的賦值
No.8 字節(jié)跳動將推出獨(dú)立出口電商APP
詳談Java中的基本數(shù)據(jù)類型與引用數(shù)據(jù)類型
如何理解數(shù)據(jù)結(jié)構(gòu)中的抽象數(shù)據(jù)類型
No.10 “字節(jié)跳動手機(jī)”要來了?
強(qiáng)賦值幺半群上的加權(quán)Mealy機(jī)與加權(quán)Moore機(jī)的關(guān)系*
簡談MC7字節(jié)碼
利用賦值法解決抽象函數(shù)相關(guān)問題オ
人類進(jìn)入“澤它時代”
大港区| 武夷山市| 渭南市| 绥江县| 竹溪县| 克山县| 惠来县| 宝清县| 隆安县| 白朗县| 舟山市| 雷州市| 蒲江县| 贵州省| 加查县| 阆中市| 新兴县| 福安市| 曲沃县| 清河县| 贡嘎县| 邛崃市| 钟祥市| 龙泉市| 秀山| 上林县| 深州市| 辉县市| 同仁县| 古丈县| 安国市| 静安区| 武宣县| 衡水市| 新邵县| 甘德县| 深泽县| 禄劝| 册亨县| 托克逊县| 云霄县|