Main Content

このページの内容は最新ではありません。最新版の英語を参照するには、ここをクリックします。

Counter

指定した数値範囲でのカウント アップまたはカウント ダウン

  • Counter block

ライブラリ:
DSP System Toolbox / Signal Management / Switches and Counters

説明

Counter ブロックは、指定された数値範囲内をカウント アップまたはカウント ダウンします。[カウント方向] パラメーターを [Up] に設定すると、ブロックは [Inc] (インクリメント) 端子を有効にします。[カウント方向] パラメーターを [Down] に設定すると、ブロックは [Dec] (デクリメント) 端子を有効にします。[カウント イベント] パラメーターを [フリー ラン] に設定すると、ブロックは [Inc] 端子または [Dec] 端子を無効にして、一定の時間間隔でカウントします。[カウント イベント] パラメーターのその他すべての設定については、[Inc] 入力端子または [Dec] 入力端子でトリガー イベントが発生するたびに、ブロックがカウンターをインクリメントまたはデクリメントします。オプションの [Rst] 端子でトリガー イベントが発生した場合、ブロックはカウンターを初期状態にリセットします。

Counter ブロックは単一チャネル入力を受け入れます。スカラー入力の処理、ベクトル入力の処理、フリーランの処理の詳細については、アルゴリズムを参照してください。

端子

入力

すべて展開する

ブロックがカウンターをインクリメントまたはデクリメントするタイミングを決定するために使用される入力信号。実数値のスカラーまたはベクトルとして指定します。[Inc] 端子または [Dec] 端子への入力がベクトルの場合、ブロックはベクトルをフレームとして扱います。[Inc] 入力端子または [Dec] 入力端子でトリガー イベントが発生するたびに、ブロックがカウンターをそれぞれインクリメントまたはデクリメントします。[カウント イベント] パラメーターを使用してトリガー イベントのタイプを制御します。

依存関係

[カウント方向] パラメーターを [Up] に設定すると、ブロックは [Inc] (インクリメント) 端子を有効にします。

[カウント方向] パラメーターを [Down] に設定すると、ブロックは [Dec] (デクリメント) 端子を有効にします。

[カウント イベント] パラメーターを [フリー ラン] に設定すると、ブロックは [Inc]/[Dec] 入力端子を無効にします。フリー ラン モードでは、ブロックは一定の時間間隔でカウントします。

データ型: single | double | int8 | int16 | int32 | uint8 | uint16 | uint32 | Boolean

ブロックがカウンターをリセットするタイミングを決定するために使用される入力信号。実数値のスカラーとして指定します。[Rst] 端子は [Inc] 入力端子または [Dec] 入力端子と同じ端子サンプル時間をもっていなければなりません。[Rst] 端子でトリガー イベントが発生するたびに、ブロックはカウンターを初期状態にリセットします。トリガー イベントの詳細については、カウント イベントを参照してください。

依存関係

この端子を有効にするには、[リセット入力] チェック ボックスをオンにします。

データ型: single | double | int8 | int16 | int32 | uint8 | uint16 | uint32 | Boolean

最大カウンター サイズを [カウントのデータ型] が表現できる任意の符号なし整数として指定します。カウンター値の範囲は 0 から [Max] 端子への入力として指定する値までとなります。

依存関係

この端子を有効にするには、[カウンター サイズ] パラメーターを [Specify via input port] に設定します。

データ型: uint8 | uint16 | uint32

出力

すべて展開する

カウンターの現在の値。スカラーまたはベクトルとして指定します。[カウント イベント] パラメーターを [フリー ラン] に設定すると、[Cnt] 出力は M の各連続サンプル時間でのカウント値を含む M 行 1 列のベクトルであり、M[出力フレームあたりのサンプル数] パラメーターで指定する値です。

依存関係

この端子を有効にするには、[出力] パラメーターを [Count] または [Count and Hit] に設定します。

データ型: single | double | int8 | int16 | int32 | uint8 | uint16 | uint32 | Boolean

[ヒット値] パラメーターで指定した整数値のヒット ステータス。指定する値がカウントで発生すると、ブロックは [Hit] 端子で 1 を出力します。

メモ

[ヒットのデータ型] パラメーターの設定によって、ブロックが [Hit] 出力端子からブール値を出力することがあります。

依存関係

この端子を有効にするには、[出力] パラメーターを [Hit] または [Count and Hit] に設定します。

データ型: Boolean | Logical

パラメーター

すべて展開する

カウントを [Up] に行うか [Down] に行うかを指定します。ブロック アイコンの端子ラベルは、このパラメーターの値に基づいて [Inc] (インクリメント) または [Dec] (デクリメント) に変化します。

  • [カウント方向] パラメーターを [Up] に設定した場合、カウンターがカウンター範囲の上限に到達すると、ブロックは次回に [Inc] 端子でトリガー イベントが発生した際にカウンターをゼロで再スタートさせます。

  • [カウント方向] パラメーターを [Down] に設定した場合、カウンターがゼロに到達すると、ブロックは次回に [Dec] 端子でトリガー イベントが発生した際にカウンター範囲の上限でカウンターを再スタートさせます。

このパラメーターは Simulink® のノーマル モードで調整可能 (Simulink)です。

調整可能: Yes

[Inc]/[Dec] 端子または [Rst] 端子での受信時に、ブロックがカウンターのインクリメント、デクリメントまたはリセットをトリガーするイベントのタイプを指定します。以下の選択肢があります。

  • 立ち上がりエッジ[Inc]/[Dec] 端子または [Rst] 端子への入力が次のいずれかの動作を行う場合、カウントまたはリセット操作をトリガーします。

    • 負の値から正の値またはゼロに立ち上がる。

    • ゼロから正の値に立ち上がる。この場合、立ち上がりは負の値からゼロへの立ち上がりと連続していません (次の図を参照)。

  • 立ち下がりエッジ[Inc]/[Dec] 端子または [Rst] 端子への入力が次のいずれかの動作を行う場合、カウントまたはリセット操作をトリガーします。

    • 正の値から負の値またはゼロに立ち下がる。

    • ゼロから負の値に立ち下がる。この場合、立ち下がりは正の値からゼロへの立ち下りと連続していません (次の図を参照)。

  • 両エッジ[Inc]/[Dec] 端子または [Rst] 端子への入力が [立ち上がりエッジ] または [立ち下がりエッジ] の場合、カウントまたはリセット操作をトリガーします。

  • 非ゼロのサンプル[Inc]/[Dec] 端子または [Rst] 端子への入力がゼロでない場合、各サンプル時間でカウントまたはリセット操作をトリガーします。

  • フリー ラン[Inc]/[Dec] 端子を無効にし、[出力フレームあたりのサンプル数][サンプル時間] の両ブロック パラメーターを有効にします。ブロックはカウンターのインクリメントまたはデクリメントを一定の間隔 Ts で行います。これは [サンプル時間] パラメーターを使って指定します。詳細については、フリーランの処理を参照してください。このモードでは、ブロックは [Rst] 端子で非ゼロのサンプルを受信するたびにカウンターをリセットします。

依存関係

このパラメーターを [フリー ラン] に設定すると、ブロックは [Inc]/[Dec] 端子を無効にして [サンプル時間] パラメーターで指定した一定の間隔でカウントします。

ブロックがカウントを行う整数値の範囲を指定します。ブロックがカウンター範囲全体をカウントし終わった場合、次回に [Inc]/[Dec] 端子でトリガー イベントが発生した際に、ブロックはカウンターを以下のようにリセットします。

  • [カウント方向] パラメーターを [Up] に設定した場合に、カウンターがカウンター範囲の上限に到達すると、ブロックはカウンターをゼロで再スタートさせます。

  • [カウント方向] パラメーターを [Down] に設定した場合に、カウンターがゼロに到達すると、ブロックはカウンター範囲の上限でカウンターを再スタートさせます。

[カウンター サイズ] パラメーターは、以下のいずれかのオプションに設定することができます。

  • 8 bits0 から 255 の範囲でカウンターを指定します。

  • 16 bits0 から 65535 の範囲でカウンターを指定します。

  • 32 bits0 から 2321 の範囲でカウンターを指定します。

  • ユーザー定義[最大カウント] パラメーターを有効にします。これにより、カウントの上限を [カウントのデータ型] が表現できる任意の符号なし整数として指定することができます。カウンター値の範囲は 0 から [最大カウント] パラメーターの値までとなります。

  • Specify via input port[Max] 入力端子を有効にします。これにより、カウントの上限を [カウントのデータ型] が表現できる任意の符号なし整数として指定することができます。カウンター値の範囲は 0 から [Max] 端子への入力として指定する値までとなります。

カウンターの最大値を指定する場合、[カウンターのデータ型] パラメーターに指定するデータ型で表現可能な任意の符号なし整数です。Simulink のノーマル モードで調整可能 (Simulink)です。

調整可能: Yes

依存関係

このパラメーターを有効にするには、[カウンター サイズ][ユーザー定義] に設定します。

カウンターの初期値を [カウンター サイズ] パラメーターで定義された範囲の任意の符号なし整数として指定します。ブロックはシミュレーションの開始時にカウンターの初期値を使用し、[Rst] 端子でトリガー イベントが発生するたびにカウンターをその初期値へリセットし直します。

調整可能: Yes

有効にする出力端子を選択します。[Count][Hit] または [Count and Hit] の各端子を選択して有効にすることができます。

カウント中に発生した際に、(オプションの) [Hit] 出力端子で 1 のフラグを設定する必要がある整数または整数ベクトルを指定します。このパラメーターは、[出力] パラメーターを [Hit] または [Count and Hit] に設定した場合にのみ表示されます。

調整可能: Yes

このチェック ボックスをオンにして [Rst] 入力端子を有効にします。[Rst] 端子を有効にすると、[Rst] 端子でトリガー イベントが発生するたびに、ブロックはカウンターを初期値にリセットします。カウンターのリセットをトリガーするイベントのタイプを指定するには、[カウント イベント] パラメーターを設定します。[リセット入力] チェック ボックスをオフにすると、シミュレーション中にカウンターをリセットすることはできません。

各出力ベクトルのサンプル数 M を正の整数で指定します。

依存関係

このパラメーターを有効にするには、[カウント イベント][フリー ラン] に設定します。

ブロックがフリー ラン モードの場合、カウンターをインクリメントまたはデクリメントする一定の間隔 Ts を指定します。ゼロ以上のスカラーを指定するか、-1 の値を指定してサンプル時間を継承できます。

たとえば、ブロックでカウンターを 5 秒ごとにインクリメントするには、[カウント方向] パラメーターを [Up] に、[カウント イベント] パラメーターを [フリー ラン] に設定し、[サンプル時間] パラメーターで 5 の値を指定します。フリー ラン モードでは、出力端子のサンプル時間は常に MTs です。

依存関係

このパラメーターを有効にするには、[カウント イベント][フリー ラン] に設定します。

[Cnt] 端子での出力のデータ型を指定します。

依存関係

このパラメーターを有効にするには、[出力] パラメーターを [Count] または [Count and Hit] に設定します。

[Hit] 端子での出力のデータ型を指定します。

依存関係

このパラメーターを有効にするには、[出力] パラメーターを [Hit] に設定するか、[カウントのデータ型] パラメーターを [Double] に設定した状態で [Count and Hit] に設定します。

ブロックの特性

データ型

Boolean | double | integer | single

直達

なし

多次元信号

なし

可変サイズの信号

なし

ゼロクロッシング検出

なし

アルゴリズム

すべて展開する

拡張機能

C/C++ コード生成
Simulink® Coder™ を使用して C および C++ コードを生成します。

バージョン履歴

R2006a より前に導入