Отправьте сообщения с данными о строке

В этом примере показано, как сконфигурировать пару графиков 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".

Смотрите также

Похожие темы