凹凸曼
級(jí)別: 探索解密
![]() |
我在觸摸屏上做了兩個(gè)輸入值顯示,一個(gè)是直徑,一個(gè)周長(zhǎng)。觸摸屏上輸入直徑然后周長(zhǎng)根據(jù)程序運(yùn)算變化,同時(shí)如果改變周長(zhǎng),直徑也會(huì)根據(jù)程序運(yùn)算變化。但是現(xiàn)在只能輸入直徑周長(zhǎng)跟著變化,反過來就不行了 |
---|---|
|
laihuaxun200
級(jí)別: 略有小成
![]() |
可能通過宏指令實(shí)現(xiàn)啊,條件設(shè)為顯示元件輸入后執(zhí)行。要做兩個(gè)不同宏指令,一個(gè)是直徑轉(zhuǎn)換為周長(zhǎng)的,當(dāng)輸入直徑后,把計(jì)算出的周長(zhǎng)傳送給周長(zhǎng)顯示元件;一個(gè)是周長(zhǎng)轉(zhuǎn)換為直徑的,當(dāng)輸入周長(zhǎng)后把計(jì)算出的直徑傳送給直徑顯示元件。這兩個(gè)宏指令分別對(duì)應(yīng)相應(yīng)的顯示輸入元件。 |
---|---|
|
laihuaxun200
級(jí)別: 略有小成
![]() |
沒用宏指令的話,可以通過PLC來執(zhí)行轉(zhuǎn)換程序。 |
---|---|
|
凹凸曼
級(jí)別: 探索解密
![]() |
我是程序里寫了直徑換算周長(zhǎng)的程序,還有周長(zhǎng)逆推直徑的程序。但是觸摸屏的設(shè)置監(jiān)控地址和寫入地址是分開設(shè)置的。比如直徑的寫入地址是D0 監(jiān)控地址是D1 周長(zhǎng)的寫入地址是D2,監(jiān)控地址是D3. 我輸入直徑D0是60,監(jiān)控地址沒有變化還是0 周長(zhǎng)的監(jiān)控地址D3是188.4 寫入地址d2 是0. 反過來再輸入周長(zhǎng)寫入地址d2為300,周長(zhǎng)監(jiān)控地址D3沒有變還是188.4, 直徑的監(jiān)控地址D1是95.4 寫入地址D0還是60.。這些數(shù)據(jù)無法整合,數(shù)據(jù)混亂的 |
---|---|
|
凹凸曼
級(jí)別: 探索解密
![]() |
宏指令沒用過,不會(huì),我就是想通過程序的轉(zhuǎn)換來實(shí)現(xiàn),但是現(xiàn)在不能達(dá)到數(shù)據(jù)的同步 |
---|---|
|
laihuaxun200
級(jí)別: 略有小成
![]() |
1、監(jiān)控地址和寫入址用一個(gè)就好了,沒有必要另外搞一個(gè)監(jiān)控地址。這樣數(shù)據(jù)太多,容易把自己搞暈。 2、觸摸屏如果輸入的是32位數(shù)據(jù),你的PLC的D寄存器應(yīng)該是每?jī)蓚(gè)為一個(gè)雙字節(jié)數(shù)據(jù)。單個(gè)D寄存器是16位的。浮點(diǎn)數(shù)的話是32位的,一個(gè)數(shù)據(jù)要占用兩個(gè)D寄存器。如:D0,D1只能表示一個(gè)小數(shù)的數(shù)據(jù)。 你只需要設(shè)定直徑為D0 ,周長(zhǎng)為D2,觸摸屏輸入直徑后后把D0,的數(shù)據(jù)轉(zhuǎn)換后傳送給D2,觸摸屏輸入周長(zhǎng)后,把D2的數(shù)據(jù)轉(zhuǎn)換后傳送給D0就好了,要用DMOV指令。 |
---|---|
|
凹凸曼
級(jí)別: 探索解密
![]() |
可能是程序?qū)懙牟粚?duì)。我這樣 LD M1000 DEMUL D0 K314 D4 DEDIV D4 K100 D2 DEMUL D2 K100 D6 DEDIV D6 K314 D0 |
---|---|
|
凹凸曼
級(jí)別: 探索解密
![]() |
不對(duì)啊,這樣我D2是一直占位的,在觸摸屏上是不能輸入的,D2和D3的數(shù)據(jù)處于占位狀態(tài),輸入不進(jìn)去的 |
---|---|
|
小飛哥
級(jí)別: 探索解密
![]() |
應(yīng)該可以了。。 |
---|---|
本帖最近評(píng)分記錄: |