州流程®チャートにチャート阶层と高清相关性ををもつもつがれれいるいるいるは,“アクティブアクティブデータ”を用いて設計を簡素化することができます。アクティブステートデータを有効にすることで、以下が可能になります。
チャートアクティビティを反映させる手动のデータ更新を回避する。
シミュレーションデータインスペクターでチャートアクティビティのログを取り监视を行う。
〖〗
Simulinkチャートチャートアクティ金宝appビティデータをを他他他他®ブロックにエクスポートする。
詳細については,システムの複雑度を管理する階層の作成を参照してください。
アクティブアクティブデータのの力を使と,一道の状态流チャートの设计素素でき。たとえば,次の信号机のモデルは,アクティブなステートによってシンボル颜色
の値が決まります。アクティブステートデータを有効にすると,Stateflowはステートアクティビティを追跡することにより信号機の色を提示できます。颜色
の明示的な新闻が不错にになる,このこのシンボルを削除してチャートのを素素でき
StateFlowでは,アクティブアクティブステートデータデータを出出を介金宝appし介し提供提供しししし表表は.
アクティビティモード | データ型 | 说明 |
---|---|---|
自给力 | 布尔 | ステートステートがアクティブかどうか |
子アクティビティ | 枚举 | アクティブな子ステートはどれか |
リーフステートアクティビティ | 枚举 | アクティブなリーフステートはどれか |
アクティブステートデータを有效にするには,プロパティインスペクターを使用します。
[监视监视する力の作物チェックボックスを選択します。
ドロップドロップダウンリストからからアクティビティを选択しし
アクティブステートデータシンボルの[データ名]を入力します。
(オプション)子ステートアクティビティまたはリーフステートに対し,アクティブステートのデータ型として(枚举名)を入力します。
既定では,eventflingはステートアクティビティを出データとしてのますをに変更するには,[シンボル]
この例では,アクティブステートデータを使用して1組の信号機用のコントローラーシステムをモデル化します。
この交通控制器チャートチャートは,2つのパラレルサブチャート,信号を制御するロジックをししいい各各サブチャートにはははは3つの子ステート红色的
那黄色
那绿
でで成される同のの阶层がありあり出出データデータlight1.
とLight2.
は,サブチャート内のな子ステートに対応します。
アニメーション化された信号机のフェーズを判定する。
各信号均可待自动车辆のののの报警
2つの信号机が同に青にことが决しないように,安全断言サブサブシステムを作用
流量控制器チャート内でサブチャートを表示するには,チャートの左下隅にある矢印をクリックします。
各各トラフィックコントローラー,その子ステートを,红色的
から绿
,さらに黄色
を経て,红色的
に戻るという順序で繰り返します。各ステートは信号機のサイクルにおける1フェーズに対応します。出力信号のlight1.
とLight2.
は,特定の时点でどのステートがアクティブかを示します。
红色的
ステートがアクティブにと,信号のサイクルが开放されます。短い遅延の后,コントローラーは后点で待っいる自动车がかかし少なくとも少なくとも少なくとも自动车辆が検知さかかかか,または一件事経过すると,コントローラーはGreenlightrequest.
を真正的
に设定して青信号をを行た后,コントローラーをった,コントローラーはもう一方の信号机が赤であること検出するするする红色的
ステートを短时间维持维持ますます后,コントローラーは绿
へ迁移します。
绿
ステートステートがアクティブになるなる,コントローラーコントローラーGreenlightrequest.
を错误的
に設定してその青信号のリクエストをキャンセルします。コントローラーはgreenLightLocked
を真正的
に设定し,もう一方の信号系统が経过すると,コントローラーは黄色
ステートへ迁移します。
红色的
ステートへ迁移する前に,コントローラーは一定の时间黄色
ステートを维持します。黄色
ステートステートが非アクティブにになる,コントローラーコントローラーgreenLightLocked
を错误的
に設定し,もう一方の信号機が青になっても安全であることを示します。その後,信号機のサイクルが再開されます。
信号サイクルのはいくつかパラメーターによって定义ますれれますを。流量控制器チャートをダブルクリックして,[ブロックパラメーター]ダイアログボックスに新しい値を入力します。
パラメーター | 事前设定値 | 说明 |
---|---|---|
reddelay. |
6岁 | コントローラーが交差点で自动车の确认を开启するするのののののののリクエスト后信号が青青まで最短最短 |
MAXREDDELAY |
360秒 | 青信号をリクエストする前にコントローラーが自动车を确认する最长时间。 |
格雷德莱 |
180秒 | 通信机が青を维持维持最长长长长长长长长长长 |
MINGREENDELAY |
120岁 | 通信机が青を维持维持最短短短短短短短短短短 |
yellowdelay. |
15岁 | 信号均が黄色维持维持する空。 |
[シンボル]ペインで,各シンボルをしますプロパティで,各のの。[ログ]で[信号データの]を选択します。
greenLightRequested
greenLightLocked
light1.
Light2.
[シミュレーション]タブで,[実行]をクリックします。
[シミュレーション]タブで,[结果结果の]にある[データインスペクター]をクリックします。
シミュレーションデータインスペクターで,ログに記録された信号を個別の座標軸に表示します。布尔信号のgreenLightRequested
とgreenLightLocked
は,0または1の数据としてささます。ステートステート信号のlight1.
とLight2.
は,値が绿
那黄色
那红色的
,および没有任何
の列挙型データとして表示されます。
00
时空 | 说明 | 灯1 |
Light2. |
greenLightRequested |
greenLightLocked |
---|---|---|---|---|---|
t = 0. | シミュレーションの开始时は両方の信号机が赤です。 | 红色的 |
红色的 |
错误的 |
错误的 |
T = 6. | 6秒后(reddelay. ),両方向通りで自动车が待机しています。greenLightRequested =真正的 を设定して青信号をリクエストします。 |
红色的 |
红色的 |
真正的 |
错误的 |
t = 12. | さらに6秒后(
|
绿 |
红色的 |
错误的 の后真正的 |
真正的 |
t = 132. | 120秒后( |
黄色 |
红色的 |
真正的 |
真正的 |
T = 147. | 15秒后(
|
红色的 |
绿 |
错误的 |
错误的 の后真正的 |
t = 153 | 6秒后( |
红色的 |
绿 |
真正的 |
真正的 |
t = 267. | 光2が青になってから120秒後( |
红色的 |
黄色 |
真正的 |
真正的 |
t = 282 | 15秒后(
|
绿 |
红色的 |
错误的 |
错误的 の后真正的 |
t = 288 | 6秒后( |
绿 |
红色的 |
真正的 |
真正的 |
シミュレーションがt = 1000.秒で終了するまでサイクルが繰り返されます。