yangchunyao
級(jí)別: 正式會(huì)員
![]() |
最近在做一個(gè)觸摸屏直接通過(guò)MODBUS控制變頻器頻率的程序,通過(guò)宏指令把實(shí)際的工程值轉(zhuǎn)換成變頻器的頻率,比如線速度10M/S轉(zhuǎn)換成50HZ,下面是宏指令,在觸摸屏上設(shè)置3個(gè)數(shù)值元件,地址分別是LW0,LW1,LW2,LW2對(duì)應(yīng)的數(shù)值元件用來(lái)顯示計(jì)算結(jié)果,請(qǐng)問(wèn)怎么把計(jì)算的結(jié)果寫(xiě)入變頻器,變頻器主頻率給定的地址是0x6203,謝謝。 macro_command main() short a[3] GetData(a[0], "Local HMI", LW, 0, 2) a[2]=a[0]*a[1] SetData(a[2], "Local HMI", LW, 2, 1) end macro_command |
---|---|
本帖最近評(píng)分記錄: |
ajiang_th
級(jí)別: 略有小成
![]() |
那有那么麻煩,想必用了觸摸屏的話一定也用了PLC吧,我曾經(jīng)做過(guò)這樣的控制很簡(jiǎn)單,只要用觸摸屏把要寫(xiě)到變頻器的參數(shù)輸入到PLC的暫存器里,然后通過(guò)PLC的MODBUS指令把參數(shù)直接寫(xiě)到變頻器上就可了很方便。不用做任何轉(zhuǎn)換,讀取也同樣方便,只要反過(guò)來(lái)就可以了。不過(guò)我用的是匯川的PLC,匯川的PLC有很方便的MODBUS指令,在程序里也是直接指定就可以搞定了。不仿試試我的這個(gè)方法,根本用不著難懂的宏指令。 |
---|---|
|
moder7364
緣起我在人群中看見(jiàn)你,緣散我看見(jiàn)你在人群中。
級(jí)別: 網(wǎng)絡(luò)英雄
![]() |
macro_command main() short a[3] GetData(a[0], "Local HMI", LW, 0, 2) a[2]=a[0]*a[1] SetData(a[2], "Local HMI", LW, 2, 1) SetData(a[2], "MODBUS ASCII", 6x, 1#6203, 1) end macro_command |
---|---|
本帖最近評(píng)分記錄: |
924011476
級(jí)別: 略有小成
![]() |
1樓的方法簡(jiǎn)單易懂,不過(guò)樓主好像沒(méi)有用PLC,學(xué)習(xí)了,謝謝。 [ 此帖被924011476在2015-07-22 17:58重新編輯 ] |
---|---|
|
yangchunyao
級(jí)別: 正式會(huì)員
![]() |
謝謝,根據(jù)你的方法問(wèn)題已經(jīng)解決了。 |
---|---|
|
yangchunyao
級(jí)別: 正式會(huì)員
![]() |
沒(méi)辦法,為了節(jié)約成本,把PLC省掉了 |
---|---|
|