設定できるサイクルタイム(スキャンタイム)の最小値は?


ワークベンチ側ではサイクルタイムの設定は1ms単位で行えますが、ターゲット側でそれを守れるかどうかはコンピュータやOSの種類に依存します。

ターゲット 最小サイクルタイム
ISaGRAF Ver.4未満    OS-9 ハードウェアに依存
DOS 55ms
VxWorks ハードウェアに依存
WindowsNT 1ms。ただし、旧バージョンでマルチメディアタイマー未使用のもので10ms。
WindowsNT-RT(Intime版)(ISaGRAF開発ツールキットにソースが付属) 1ms
WindowsNT-RT(RTX版)(ツールキットにソースが付属) 1ms
Windows95-RT(受注対応) 1ms
OS/2* 32ms
ISaGRAF Ver.4 WindowsNT 1ms
OS-9 ハードウェアに依存
VxWorks ハードウェアに依存

*OS/2ターゲットは現在のバージョン(Ver3.23以降)では未サポートです。

時間管理の精度
システムのタイマーの周期によっては、精度に問題が出る場合もあります。
例えば、256Hzでスケジューリングが行えるようなシステムを考えます。

この場合、システムチックは

    1000ms ÷ 256= 3.9ms

になります。ISaGRAF ver.4の仕様上でのタイマ単位は1msですので、バーチャルマシンでは
    0.9ms × 1サイクルで消費したチック数

の誤差が出るということになります。可能であるならば、スケジューリングの周期を、1000÷周波数[Hz]の小数点以下を四捨五入したms単位の値に変更した方が好ましい結果となります。
最終更新:
2008-08-01 11:16
改訂:
1.0
評価点数:0 (0 件の投票)
Chuck Norris has counted to infinity. Twice.

このカテゴリー内のレコード

タグ