В этом примере показано, как сконфигурировать пару Stateflow® графики, которые передают сообщения, которые несут строковые данные. Для получения дополнительной информации см. Раздел «Связь с диаграммами Stateflow путем отправки сообщений».
Эта модель содержит два графиков, которые используют C в качестве языка действий. Во время симуляции Emitter график читает входу строку key из блока String Constant и отправляет сообщение в Receiver графика. Данные сообщения состоят из входа строки key. Receiver графика сравнивает строку с постоянным ключевым словом и возвращает выход строку, которая предоставляет или запрещает доступ.

Emitter графика состоит из одного состояния A. Когда состояние становится активным, оно устанавливает данные для сообщения M к входу значению key и отправляет сообщение на Receiver график.

В этой таблице перечислены возможности и тип символов на графике.
| Символ | Возможности | Напечатать |
|---|---|---|
key | Входные данные | Inherit: Same as Simulink |
M | Выход сообщения | string |
График состоит из двух состояний, соединенных переходом. Входное сообщение M охраняет переход. Если существует сообщение, и его значение данных равняется постоянной строке lock, затем активность состояния переходит от Off на On. График выводит строковое значение 'Access Granted'. Если сообщения нет, или если значение данных не равняется lockграфик не принимает переход, и выходное значение 'Access Denied'.

В этой таблице перечислены возможности и тип символов на графике.
| Символ | Возможности | Напечатать |
|---|---|---|
M | Входное сообщение | Inherit: Same as Simulink |
lock | Постоянные данные | string |
sout | Выходные данные | string |
Постоянная строка lock содержит секретный пароль, первоначально установленный на 'Open Sesame'. Можно изменить значение lock в Initial value области Property Inspector.
Во время симуляции модель реагирует на пароль, который вы вводите в блоке String Constant:
Если вы вводите неправильный пароль, например "Abracadabra", затем в модели отображается выход строка "Access Denied".

Если вы вводите правильный пароль, в этом случае "Open Sesame", затем в модели отображается выход строка "Access Granted".
