sys_iRingCounter_100us

グループ

PLCステータス情報

データ型

INT

名称

リングカウンタ100ms

このデータレジスタは、リングカウンタとして働きます。 レジスタ値が、100ms毎に増加します(計数範囲: 0–32767および-32768–0)。 レジスタの値(v)を2つの異なる時間(v1v2)で比較すると、経過値(t)が測定されます。 t = (v2-v1) x 100ms.

if (NOT bIsInitialized) then
    bIsInitialized:=TRUE;
    iRingCounter_Old:=sys_iRingCounter_100us;
    iScans:=1;
else
    iRingCounter_New:=sys_iRingCounter_100us;
    iRingCounterDiff:=iRingCounter_New-iRingCounter_Old;        
    if (iRingCounterDiff>0) then (* Important to work also for shorter scan times *)
        diScanTime_µs:=(INT_TO_DINT(iRingCounterDiff)*10000)/INT_TO_DINT(iScans);
        iRingCounter_Old:=iRingCounter_New;
        iScans:=1;
    else
        iScans:=iScans+1; 
    end_if;
end_if;

最終修正日:2020-02-12このページに関するフィードバックお問い合わせ窓口