dingzyi
級(jí)別: 家園常客
精華主題: 0
發(fā)帖數(shù)量: 686 個(gè)
工控威望: 838 點(diǎn)
下載積分: 9206 分
在線時(shí)間: 455(小時(shí))
注冊(cè)時(shí)間: 2011-05-29
最后登錄: 2024-09-19
查看dingzyi的 主題 / 回貼
樓主  發(fā)表于: 2015-07-15 21:00
宏指令1

macro_command main()
short count,Realcount,i,baseaddress,getaddress,baseadd2,getadd2,on,baseadd3,getadd3,view,PLCAddr
int tempdata,realdata
unsigned char RealName[8]

//view=34
i=0
count=0
//temp baseaddr
baseaddress=910
// realdata baseaddr
Realcount=0
//PLC Addr
PLCAddr=2000
//SetData(view, "Local HMI", LW, 0, 1)
for i=0 to 7 step 1
RealName=''
next i
//獲取當(dāng)前配方序號(hào)
GetData(count, "Local HMI", RW, 900, 1)
//設(shè)置載入當(dāng)前配方序號(hào)
SetData(count, "Local HMI", RW, 900, 1)
//獲取實(shí)際數(shù)據(jù)基地址
getaddress= baseaddress+100*count
//獲取實(shí)際數(shù)據(jù)點(diǎn)數(shù)及配方名稱(chēng)
GetData(Realcount, "Local HMI", RW, getaddress-9, 1)
GetData(RealName[0], "Local HMI", RW,getaddress-8, 8)
//設(shè)置實(shí)際數(shù)據(jù)點(diǎn)數(shù)及配方名稱(chēng)
SetData(Realcount, "Local HMI", RW, 901, 1)
SetData(RealName[0], "Local HMI", RW, 902, 8)
DELAY(5)
//load other configure data for  XYZW
for i=0 to 60 step 2
     GetData(realdata, "Local HMI", RW,getaddress+i, 1)
     SetData(realdata, "Local HMI", RW,baseaddress+i, 1)  
next i
DELAY(1000)
//send data to PLC
SetData(Realcount, "DELTA DVP", D, 200, 1)
SetData(count, "DELTA DVP", D, 214, 1)
SetData(RealName[0], "DELTA DVP", D, 216, 8)
for i=0 to 60 step 2
     GetData(realdata, "Local HMI", RW,baseaddress+i, 1)
     SetData(realdata, "DELTA DVP", D, PLCAddr+i, 1)  
next i
DELAY(500)
//send exit cmd
on=1
SetData(on, "DELTA DVP", M, 1001, 1)


//view=0
//SetData(view, "Local HMI", LW, 0, 1)
//on=1
//SetData(on, "Local HMI", RW_Bit, 0, 1)
//SetData(on, "Local HMI", LB, 2, 1)

end macro_command




第二個(gè)宏指令
macro_command main()
short count,Realcount,i,number
short baseaddress,getaddress,view
int realdata,PLCAddr
unsigned char RealName[8]
i=0
count=0
baseaddress=910
Realcount=0
PLCAddr=2000
view=20
SetData(view, "Local HMI", LW, 10000, 1)
for i=0 to 7 step 1
RealName=''
next i
//view=35
//SetData(view, "Local HMI", LW, 0, 1)
//獲取PLC中實(shí)際配方數(shù)據(jù),配方號(hào),配方點(diǎn)數(shù),配方名稱(chēng)
//GetData(number, "DELTA DVP", D, 200, 1)
//GetData(Realcount, "DELTA DVP", D, 214, 1)
//GetData(RealName[0], "DELTA DVP", D, 216, 8)
//保存至HMI中臨時(shí)配方號(hào),配方點(diǎn)數(shù),配方名稱(chēng)
//SetData(number, "Local HMI", RW, 900, 1)
//SetData(Realcount, "Local HMI", RW, 901, 1)
//SetData(RealName[0], "Local HMI", RW, 902, 8)
//保存至XYZ數(shù)據(jù)至臨時(shí)區(qū)域中
for i=0 to 60 step 2
     GetData(realdata, "DELTA DVP", D, PLCAddr+i, 1)
     SetData(realdata, "Local HMI", RW,baseaddress+i, 1)  
next i
DELAY(500)

//保存臨時(shí)數(shù)據(jù)至配方區(qū)域中
//***
GetData(number, "Local HMI", RW, 900, 1)
GetData(Realcount, "Local HMI", RW, 901, 1)
GetData(RealName[0], "Local HMI", RW, 902, 8)
SetData(number, "Local HMI", RW, baseaddress-10+100*number, 1)
SetData(Realcount, "Local HMI", RW, baseaddress-10+100*number+1, 1)
SetData(RealName[0], "Local HMI", RW, baseaddress-10+100*number+2, 8)
for i=0 to 60 step 2
     GetData(realdata, "Local HMI", RW, baseaddress+i, 1)
     SetData(realdata, "Local HMI", RW, baseaddress+100*number+i, 1)  
next i
DELAY(500)
view=0
SetData(view, "Local HMI", LW, 10000, 1)

end macro_command
看看這兩個(gè)宏指令,大家給點(diǎn)意見(jiàn)
plc
忍緣善
獨(dú)自漂泊
級(jí)別: 論壇先鋒

精華主題: 0
發(fā)帖數(shù)量: 892 個(gè)
工控威望: 1807 點(diǎn)
下載積分: 20025 分
在線時(shí)間: 3986(小時(shí))
注冊(cè)時(shí)間: 2010-12-17
最后登錄: 2024-09-20
查看忍緣善的 主題 / 回貼
1樓  發(fā)表于: 2015-07-15 21:20
學(xué)習(xí)啦。謝謝!
獨(dú)自漂泊
34551842
一直在努力,還需更努力……
級(jí)別: 略有小成
精華主題: 0
發(fā)帖數(shù)量: 169 個(gè)
工控威望: 309 點(diǎn)
下載積分: 16947 分
在線時(shí)間: 446(小時(shí))
注冊(cè)時(shí)間: 2014-04-03
最后登錄: 2024-07-05
查看34551842的 主題 / 回貼
2樓  發(fā)表于: 2015-07-15 21:33
表示一點(diǎn)也看不懂,還是感謝分享!!!!!!!!!!
彭萬(wàn)生
級(jí)別: 工控俠客
精華主題: 0
發(fā)帖數(shù)量: 1893 個(gè)
工控威望: 2102 點(diǎn)
下載積分: 131755 分
在線時(shí)間: 1278(小時(shí))
注冊(cè)時(shí)間: 2013-08-04
最后登錄: 2024-04-17
查看彭萬(wàn)生的 主題 / 回貼
3樓  發(fā)表于: 2015-07-15 21:38
基本也看不懂