Visual HMIデータロギングコントロール:record_* API数値/文字リスト操作

無料無料技术资料

这篇内容可直接阅读,适合用于基础学习和検索引流。

データロギングコントロール+record_* API:HMI 上でメンテナンス履歴データシート数値(電圧曲線データなど)と文字列(オペレーショナルログなど)の両方を保存でき、テーブルコントロール表示、ページめくり、タイムスタンプの位置決めが可能です。snはデータサンプルチャネルインデックス範囲0~19の合計20チャンネル、制御データソースが選択した“データ収集”チャネル、APIが操作するもの。

1. record_* APIの概要

関数の機能説明書は
record_get_count(sn)チャネルの保存レコードの数
record_write_data(sn, data)データをワード配列として追加する(インデックスは1から始まる)
record_read_data(sn, index)データ(1からのインデックス)とタイムスタンプ(32ビットUnix 秒)を返します。
record_modify_data(sn, index, data)インデックスは0から始まり、record_get_count snを指定します。
record_write_string(sn, strings)フィールドをセミコロン;で区切った文字列レコードを追加
record_read_string(sn, index)文字列レコードを読み込み、文字列とタイムスタンプを返す
record_modify_string(sn, index, strings)文字列レコードの変更
record_clear(sn)チャンネルのすべてのレコードを空にする(数値/文字列行)

️サンプルが有効な場合ブロックアドレス記憶モード記録した。不変の変更Modifyは失敗する。

2.数値表のケース(追加/修正/読み取り/消去/チェックアウト)

データ収集構成:トリガサンプリング、記録本数100、データアドレスLW2000、UINT16、データ数10、制御アドレスLW1001、サンプリング制御アドレスLW1002、起動モードOFF→ON。データ記録制御:データソース“[0]数値配列”、時間逆順、チャンネル数 10、ページあたり5 行、ページめくり制御LW100 4、ページめくり許可LW100 5(読み取り専用)、タイムスタンプ位置指定LW100 6(UINT32)、選択行通知LW100 8(UINT32)。LW1000を書き込む5つのボタン、定数1=追加/2=変更/3=読み取り/4=クリア/5=読み取りバーの数。

addByteRatio = 0     アキュムレータは、追加するたびに異なるデータを保持します。

function on_update slave vtype
  if vtype ==_LW then
    addr === 0 x 1100の場合              - 操作ボタン。
      local key = get_uint16 VT_LW、0x1100
      local datat = {}
      key == 1 thenの場合                  --追加。
        addBeR = addBeR + 1
        I = 1,10の場合
          data [i] = i * addBeR--初めて1.. 10、2回目。20
        End of Endシングル
        record_write_data 0 dataTb
      Elseifキー == 2 then              選択した行の変更
        local cnt = record_get_count(0)
        local line = cnt-get_uint32 VT_LW、0 x 1105-1--逆順のテーブル行マッピング
        for i = 1 10 do data [i] = 12345 end
        record_modify_data 0 line data
      Elseifキー == 3 then              - 選択した行を読む
        local cnt = record_get_count(0)
        local line = c-get_uint32_LW、0x1105 - 1
        local data Unix = record_read_data 0 line
        local msg = "".. timeUnix..“データ”
        for i = 1 10 do msg = msg.. data[i]..”“end”
        set_string_LW、0x1160、msg
      elseifキー == 4 then
        record_clear 0                 【Clearing】
      Elseifキー == 5 then
        set_string VT_LW、0x1160、"バー数".. record_get_count 0
      End of Endシングル
    End of Endシングル
  End of Endシングル
End of Endシングル

逆順序表の行マッピング制御時間は逆順で表示され、行0が最新のレコードです。表示位置、換算式を示す行の選択line = cnt - select - 1。

3.文字リストの例

データ収集:トリガサンプリング、記録本数100、データアドレスLW3000、STRING、データ個数50、制御アドレスLW1501、サンプリング制御アドレスLW1502、起動モードOFF→ON。コントロール:データソース“[1] string”、文字列テーブル√、GB CODE、時系列の順序(数値ケースとは逆順が異なることに注意)、チャンネル数 10、1ページあたり5 行、ページめくりLW1201、ページめくり許可LW1202、タイムスタンプ位置決めLW1203、選択行通知LW1205。LW1200を書く5つのボタン。

addStr = 0
function on_update slave vtype
  もしvtype == VT_LWとaddr == 0 x 1200の場合
    local key = get_uint16 VT_LW、0x1200
    key == 1 thenの場合                    --追加。
      local c = record_get_count 1
      local line = get_uint32 VT_LW、0x1205   --順序表は反転しない
      CNTライン-1が終了した場合
      addStr = addStr + 10
      local dataStr =""
      I = 1,10の場合
        dataStr = dataStr..& Quot:..。addStr - 10 + i quot;一つ;"
      End of Endシングル
      record__string 1 dataStr   1番目の..。第10話。"
    Elseifキー == 2 then                --変更。
      local line = get_uint32 VT_LW、0x1205
      record_modify_string 1 line change; change;change; change; change; change; change; change; change; change; change; change; change;
    Elseifキー == 3 then                【Read ing】
      local line = get_uint32 VT_LW、0x1205
      local dataStr timeUnix = record_read_string 1 line
      set_string VT_LW、0x1260、timeUnix.. dataStr
    elseifキー == 4 then
      record_clear 1
    Elseifキー == 5 then
      set_string VT_LW、0x1260、本数.. record_get_count 1
    End of Endシングル
  End of Endシングル
End of Endシングル

文字列レコードはセミコロンで区切られ、テーブルコントロールの解決規則に従います。順序テーブルの選択行反転なし。略称はLW 120 5。

4つの穴SN-チャネル番号は、制御データソースが選択したデータ収集インデックスと一致する必要があります。;2数値レコードdataは添字1からの配列です。習慣Cを0から始めないでください。③逆順テーブル行マッピングを反転する(line = cnt-select-1),順序テーブルは不要です。④ブロックアドレス記憶モードでの記録はModify不可データを変更するには、電源を切らないでください。

Guangzhou Dai Technology Visual HMI開発ドキュメント(hmi-doc.gz-dc.com)LUAチュートリアル“データ記録”、著作権はDai Dai Technologyにあります。

この資料を実際のプロジェクトに活用しませんか?

ツールセンターで電文解析、CRCチェック、デバイスデバッグを行うか、要件を送信して選定と接続のアドバイスを受けましょう。

エンジニア会員

この記事を実行可能なデバッグ資料に

登録すると、高度な電文解析、資料パックのダウンロード、コード例、エンジニアリングケース、優先技術サポートが利用可能に。実際のプロジェクト納品に最適です。

高度なツール無制限
資料パックとコードパック
完全なエンジニアリングケースライブラリ
優先技術サポート窓口

发表回复

あなたのメールアドレスアドレス不会被公开。 必須項目已用 * 标注