關(guān)鍵字: 宏指令 指針 歷史數(shù)據(jù)
1 引言
本文是一篇針對(duì)臺(tái)達(dá)觸摸屏功能的高級(jí)使用說(shuō)明,目的是實(shí)現(xiàn)存儲(chǔ)到U盤或者內(nèi)部RAM上的歷史數(shù)據(jù)的讀取,并可以對(duì)這些歷史數(shù)據(jù)做簡(jiǎn)單的查詢。本文并沒有做很復(fù)雜的查詢,意在對(duì)使用者提供一種思路,拋磚引玉,對(duì)實(shí)際應(yīng)用留有很大的空間供使用者發(fā)揮。
2 基礎(chǔ)知識(shí)準(zhǔn)備
歷史數(shù)據(jù)的取出:需要用GETHISTORY指令,句型如下:
V1 = GETHISTORY (V2, V3, V4, V5, V6)
V1-----表示存入資料長(zhǎng)度內(nèi)部存儲(chǔ)器
V2-----內(nèi)部存儲(chǔ)器,常數(shù) 歷史緩沖區(qū)編號(hào)
V3-----內(nèi)部存儲(chǔ)器,常數(shù) 讀取起始取點(diǎn)位置
V4-----內(nèi)部存儲(chǔ)器,常數(shù) 讀取點(diǎn)數(shù)
V5-----內(nèi)部存儲(chǔ)器,PLC 數(shù)據(jù)存入位置
V6-----內(nèi)部存儲(chǔ)器,常數(shù) 讀取數(shù)據(jù)型態(tài)(0:資料,1:時(shí)間,2:時(shí)間跟數(shù)據(jù))
指針:間接尋址緩存器區(qū) (R/W): *$
Word access: *$n (n: 0~65535)
間接尋址是尋址到內(nèi)部緩存器區(qū)。先由$n取出地址,再取此地址內(nèi)存的值。
*$n =
例如,$n = m;$m = X;則 *$n = X。 (m 不可超出 65535)
3 數(shù)據(jù)查詢的實(shí)現(xiàn)
3.1設(shè)計(jì)思路
本例想要實(shí)現(xiàn)這樣的功能,設(shè)置內(nèi)部的一個(gè)寄存器$100每隔1分鐘采集一次數(shù)據(jù),采集到15筆后停止,把數(shù)據(jù)及采集的時(shí)間存儲(chǔ)到內(nèi)部的RAM。然后通過(guò)GETHISTORY把這15筆數(shù)據(jù)讀取到$200開始的寄存器區(qū),按照用戶輸入的時(shí)間段進(jìn)行查詢。比如查詢2006/11/30 10:56~2006/11/30 10:58的數(shù)據(jù),將符合條件的查詢結(jié)果存儲(chǔ)到$20000開始的寄存器區(qū)。
3.2地址分配表
表1歷史數(shù)據(jù)取出后的存儲(chǔ)地址
時(shí)間
序號(hào) |
年 |
月 |
日 |
時(shí) |
分 |
秒 |
數(shù)據(jù) |
第一筆 |
$200 |
$201 |
$202 |
$203 |
$204 |
$205 |
$206 |
第二筆 |
$207 |
$208 |
$209 |
$210 |
$211 |
$212 |
$213 |
…… |
|
|
|
|
|
|
|
第十五筆 |
$305 |
$306 |
$307 |
$308 |
$309 |
$400 |
$401 |
表2查詢時(shí)間起始輸入地址
年 |
月 |
日 |
時(shí) |
分 |
$50 |
$51 |
$52 |
$53 |
$54 |
表3查詢時(shí)間停止輸入地址
年 |
月 |
日 |
時(shí) |
分 |
$60 |
$61 |
$62 |
$63 |
$64 |
表4查詢時(shí)間起始指針
年 |
月 |
日 |
時(shí) |
分 |
秒 |
數(shù)據(jù) |
*$70 |
*$71 |
*$72 |
*$73 |
*$74 |
*$75 |
*$76 |
表5查詢時(shí)間停止指針
年 |
月 |
日 |
時(shí) |
分 |
秒 |
數(shù)據(jù) |
*$80 |
*$81 |
*$82 |
*$83 |
*$84 |
*$85 |
*$86 |
表6控制及標(biāo)志地址
歷史數(shù)據(jù)取出完畢標(biāo)志 |
查詢到符合條件的起始地址 |
查詢到符合條件的起始地址 |
查詢到符合條件的數(shù)據(jù)總長(zhǎng)度 |
常數(shù)變量 |
數(shù)據(jù)采集地址 |
查詢/顯示標(biāo)志 | |
$185 |
$181 |
$182 |
$183 |
$60000 |
$100 |
$48.0 |
表7查詢完畢顯示結(jié)果數(shù)據(jù)地址
3.3程序流程圖(圖1)
圖1 程序流程圖
3.4程序的實(shí)現(xiàn)
(1)頁(yè)面設(shè)置
(2)歷史緩沖區(qū)設(shè)置
(3)歷史數(shù)據(jù)讀取宏程序
(4)查詢判斷宏程序
(5)將結(jié)果賦值顯示宏程序
3.5執(zhí)行結(jié)果
顯示【歷史資料信息表】中已經(jīng)采集到了10筆數(shù)據(jù)
設(shè)置查詢的開始時(shí)間是2006/12/1 10:18,結(jié)束時(shí)間是2006/12/1 10:22得到的查詢結(jié)果顯示在【查詢結(jié)果顯示表】中
4 結(jié)束語(yǔ)
本例是臺(tái)達(dá)觸摸屏Screen Editor強(qiáng)大的元件和宏指令功能綜合的體現(xiàn),可以看到,如果能夠活用軟件,Screen Editor同樣能夠?qū)崿F(xiàn)PC組態(tài)軟件才具有的一些高級(jí)功能。
中達(dá)電通PLC產(chǎn)品處 王乃全