Сконфигурируйте коммуникацию AUTOSAR получателя отправителя

В основанном на порте получателе отправителя AUTOSAR (S-R) коммуникация, чтение компонентов программного обеспечения AUTOSAR и записывают данные к другим компонентам или сервисам. Чтобы реализовать коммуникацию S-R, компоненты программного обеспечения AUTOSAR задают, обеспечивают и требуют портов, которые отправляют и получают данные.

В Simulink® можно создать AUTOSAR S-R интерфейсы и порты, и сопоставить импорт Simulink и выходные порты к портам AUTOSAR. Вы модель AUTOSAR обеспечивает и требует портов с выходными портами корневого уровня Simulink и импортом, как описано в Интерфейсе Получателя Отправителя.

Для коммуникации получателя отправителя с очередями смотрите, Конфигурируют AUTOSAR Коммуникация Получателя Отправителя С очередями.

Сконфигурируйте интерфейс AUTOSAR получателя отправителя

Создать интерфейс S-R и порты в Simulink:

  1. Откройте Словарь AUTOSAR и выберите S-R Interfaces. Нажмите кнопку Add, чтобы создать новый AUTOSAR S-R интерфейс данных. Задайте его имя и количество связанных элементов данных S-R.

  2. Выберите и расширьте новый интерфейс S-R. Выберите DataElements и измените атрибуты элемента данных AUTOSAR.

  3. В Словаре AUTOSAR расширьте узел AtomicComponents и выберите компонент AUTOSAR. Расширьте компонент.

  4. Выберите и используйте ReceiverPorts, SenderPorts и представления SenderReceiverPorts, чтобы добавить порты AUTOSAR S-R, которые вы хотите сопоставить с новым интерфейсом S-R. Для каждого нового порта S-R выберите интерфейс S-R, который вы создали.

    Опционально, исследуйте коммуникационные атрибуты на каждый порт S-R и измените при необходимости. Для получения дополнительной информации смотрите, Конфигурируют Порт AUTOSAR Sender-Receiver ComSpecs.

  5. Редактор Отображений Открытого кода. Выберите и используйте Inports, и Outports переходит, чтобы сопоставить импорт Simulink и выходные порты к портам AUTOSAR S-R. Для каждого импорта или выходного порта, выберите порт AUTOSAR, элемент данных и режим доступа к данным.

Сконфигурируйте AUTOSAR, обеспечивают - требуют порта

Релиз 4.1 AUTOSAR ввел AUTOSAR, обеспечивают - требуют порта (PRPort). Моделирование PRPort AUTOSAR включает использование импорта Simulink и пары выходного порта с соответствием с типом данных, размерностью и типом сигнала. Можно сопоставить PRPort с интерфейсом (S-R) получателя отправителя или энергонезависимым интерфейсом данных (NV).

Сконфигурировать PRPort AUTOSAR для коммуникации S-R в Simulink:

  1. Откройте модель, которая сконфигурирована для AUTOSAR, и в котором выполнимое имеет импорт и выходной порт, подходящий для соединения в PRPort AUTOSAR. В этом примере импорте RPort_DE1 и выходном порту PPort_DE1 и тип данных использования int8, размерность порта 1, и сигнал вводит real.

  2. Откройте Словарь AUTOSAR и перейдите к представлению SenderReceiverPorts. (Чтобы сконфигурировать PRPort для коммуникации NV, используйте представление NvSenderReceiverPorts вместо этого.)

  3. Чтобы добавить порт получателя отправителя, нажмите кнопку Add. В диалоговом окне Add Ports задайте Name как PRPort и выберите Interface из списка доступных интерфейсов S-R. Нажмите Add.

  4. Редактор Отображений Открытого кода и выбор вкладка Inports. Чтобы сопоставить импорт Simulink в порт получателя отправителя AUTOSAR, вы создали, выберите импорт, установите Port на значение PRPort и установите Element на элемент данных, который совместно используют импорт и выходной порт.

  5. Выберите вкладку Outports. Чтобы сопоставить выходной порт Simulink с портом получателя отправителя AUTOSAR, вы создали, выберите выходной порт, установите Port на значение PRPort и установите Element на тот же элемент данных, выбранный на предыдущем шаге.

  6. Нажмите кнопку Validate, чтобы подтвердить обновленную настройку компонента AUTOSAR. Если об ошибках сообщают, обращаются к ним и затем повторяют валидацию. Распространенная ошибка, отмеченная валидацией, является свойствами, которым не соответствуют, между импортом и выходным портом, которые сопоставлены с PRPort AUTOSAR.

Также можно программно добавить и сопоставить порт PRPort с помощью свойства AUTOSAR и сопоставить функции. Следующий пример добавляет PRPort AUTOSAR (порт получателя отправителя) и затем сопоставляет его с импортом Simulink и парой выходного порта.

hModel = 'my_autosar_expfcns';
open_system(hModel)
arProps = autosar.api.getAUTOSARProperties(hModel);
swcPath = find(arProps,[],'AtomicComponent')
swcPath = 
    'ASWC
add(arProps,'ASWC','SenderReceiverPorts','PRPort','Interface','Interface1')
prportPath = find(arProps,[],'DataSenderReceiverPort')
prportPath = 
    'ASWC/PRPort'
slMap = autosar.api.getSimulinkMapping(hModel);
mapInport(slMap,'RPort_DE1','PRPort','DE1','ImplicitReceive')
mapOutport(slMap,'PPort_DE1','PRPort','DE1','ImplicitSend')
[arPortName,arDataElementName,arDataAccessMode] = getOutport(slMap,'PPort_DE1')
arPortName =
PRPort

arDataElementName =
DE1

arDataAccessMode =
ImplicitSend

Сконфигурируйте порт получателя AUTOSAR для сервиса IsUpdated

AUTOSAR задает атрибуты качества сервиса, такие как ErrorStatus и IsUpdated, для интерфейсов получателя отправителя. Атрибут IsUpdated позволяет явному получателю AUTOSAR обнаруживать, получил ли элемент данных порта получателя данные, поскольку последнее чтение произошло. Когда данные неактивны, получатель может сохранить вычислительные ресурсы.

Для отправителя Среда выполнения AUTOSAR (RTE) устанавливает состояние флага обновления, указывая, был ли элемент данных записан. Получатель вызывает API Rte_IsUpdated_Port_Element, который читает, обновление отмечают, и возвращает значение, указывающее, был ли элемент данных обновлен начиная с последнего чтения.

В Simulink вы можете:

  • Импортируйте порт получателя AUTOSAR, для которого сконфигурирован сервис IsUpdated.

  • Сконфигурируйте порт получателя AUTOSAR для сервиса IsUpdated.

  • Сгенерируйте C и код arxml для порта получателя AUTOSAR, для которого сконфигурирован сервис IsUpdated.

К сервису модели IsUpdated в Simulink вы соединяете импорт, который сконфигурирован для доступа к данным ExplicitReceive с новым импортом, сконфигурированным для доступа к данным IsUpdated. Сконфигурировать порт получателя AUTOSAR для сервиса IsUpdated:

  1. Откройте модель, для которой сконфигурирован интерфейс получателя отправителя AUTOSAR.

  2. Идентифицируйте импорт, который соответствует порту получателя AUTOSAR, для которого требуется сервис IsUpdated. Создайте второй импорт, установите его тип данных на boolean и соедините его с тем же блоком. Например:

  3. Редактор Отображений Открытого кода. Выберите вкладку Inports. В представлении импорта сконфигурируйте свойства отображения для обоих импорта.

    1. Если импорт данных уже не сконфигурирован, установите DataAccessMode на ExplicitReceive. Выберите Port и значения Element, которые сопоставляют импорт в порт получателя AUTOSAR и элемент данных, для которого требуется сервис IsUpdated.

    2. Для импорта качества сервиса, набор DataAccessMode к IsUpdated. Выберите Port и значения Element, которые точно совпадают с импортом данных.

  4. Чтобы подтвердить настройку компонента AUTOSAR, нажмите кнопку Validate.

  5. Создайте модель и осмотрите сгенерированный код. Сгенерированный код C содержит вызов API Rte_IsUpdated.

    if (Rte_IsUpdated_Input_DE1()) {
      …
      Rte_Read_Input_DE1(&tmp);
      …
    }

    Экспортируемый код arxml содержит установку ENABLE-UPDATE true для порта получателя AUTOSAR.

    <R-PORT-PROTOTYPE UUID="...">
        <SHORT-NAME>Input</SHORT-NAME>
        <REQUIRED-COM-SPECS>
            <NONQUEUED-RECEIVER-COM-SPEC>
                <DATA-ELEMENT-REF DEST="VARIABLE-DATA-PROTOTYPE">/pkg/if/Input/DE1
                                                               </DATA-ELEMENT-REF>
                …
                <ENABLE-UPDATE>true</ENABLE-UPDATE>
                …
            </NONQUEUED-RECEIVER-COM-SPEC>
        </REQUIRED-COM-SPECS>
        …
    </R-PORT-PROTOTYPE>

Сконфигурируйте аннулирование данных AUTOSAR получателя отправителя

Стандарт AUTOSAR задает механизм аннулирования для элементов данных AUTOSAR, используемых в получателе отправителя (S-R) коммуникация. Компонент отправителя может уведомить нисходящий компонент получателя, что данные в порте отправителя недопустимы. Каждый элемент данных S-R может иметь политику аннулирования. В Simulink вы можете:

  • Импортируйте элементы данных получателя отправителя AUTOSAR, для которых сконфигурирована политика аннулирования.

  • Используйте блок Signal Invalidation для образцового аннулирования данных получателя отправителя для симуляции и генерации кода. Используя параметры блоков, можно задать политику аннулирования сигнала и начальное значение для элемента данных S-R.

  • Сгенерируйте код С и описания arxml для элементов данных получателя отправителя AUTOSAR, для которых сконфигурирована политика аннулирования.

Для каждого элемента данных S-R можно установить параметры блоков Аннулирования Сигнала Signal invalidation policy на Keep, Replace или DontInvalidate. Если значение входных данных недопустимо (флагом управления аннулированием является true), получившееся действие определяется значением Signal invalidation policy:

  • Keep - Замените значение входных данных на последнее допустимое значение сигналов.

  • Замена- Замените значение входных данных на параметр Initial value.

  • DontInvalidate - Не заменяйте значение входных данных.

Сконфигурировать политику аннулирования для AUTOSAR S-R элемент данных в Simulink:

  1. Откройте модель, для которой сконфигурирован интерфейс получателя отправителя AUTOSAR. Например, предположите что:

    • Выходной порт Simulink под названием Out сопоставлен с портом PPort отправителя AUTOSAR и элементом данных OutElem. В Словаре AUTOSAR порт PPort отправителя AUTOSAR выбирает интерфейс S-R Out, который содержит элемент данных OutElem.

    • Импорт Simulink под названием In1 сопоставлен с портом RPort1 получателя AUTOSAR и элементом данных InElem1. В Словаре AUTOSAR порт RPort1 получателя AUTOSAR выбирает интерфейс S-R In1, который содержит элемент данных InElem1.

  2. Добавьте блок Signal Invalidation в модель.

    1. Блок должен быть соединен непосредственно с корневым блоком выходного порта. Соедините блок, чтобы базироваться выходной порт Out.

    2. Соедините первый вход блока, значение данных, к информационному каналу от корневого импорта In1.

    3. Для второго входа блока, флага управления аннулированием, добавляет корневой импорт под названием In2 к модели. Установите его тип данных на скалярный boolean. Сопоставьте новый импорт во второй порт отправителя AUTOSAR. Если второй порт отправителя AUTOSAR не существует, используйте Словарь AUTOSAR, чтобы создать порт AUTOSAR, интерфейс S-R и элемент данных.

      В этом примере импорт Simulink In2 сопоставлен с портом RPort2 получателя AUTOSAR и элементом данных InElem2. В Словаре AUTOSAR порт RPort2 получателя AUTOSAR выбирает интерфейс S-R In2, который содержит элемент данных InElem2.

      Соединитесь второй вход блока, чтобы базироваться импортируют In2.

  3. Просмотрите параметры блоков Аннулирования Сигнала, например, в Property Inspector или диалоговом окне параметров блоков. Исследуйте атрибуты Initial value и Signal invalidation policy. Для получения дополнительной информации смотрите страницу с описанием блока Signal Invalidation.

  4. Редактор Отображений Открытого кода и выбор вкладка Outports. Для корневого выходного порта Out проверьте, что режим доступа к данным AUTOSAR установлен в ExplicitSend или EndToEndWrite.

  5. Подтвердить настройку компонента AUTOSAR, редактор Отображений открытого кода и нажать кнопку Validate.

  6. Создайте модель и осмотрите сгенерированный код. Когда сигнал допустим, сгенерированный код C вызывает Rte_Write_Port_Element. Когда сигнал недопустим, код С вызывает Rte_Invalidate_Port_Element.

    /* SignalInvalidation: '<Root>/Signal Invalidation' incorporates:
     *  Inport: '<Root>/In2'
     */
    if (!Rte_IRead_Runnable_Step_RPort2_InElem2()) {
      /* Outport: '<Root>/Out' */
      (void) Rte_Write_PPort_OutElem(mSignalInvalidation_B.Gain);
    } else {
      Rte_Invalidate_PPort_OutElem();
    }

    Экспортируемый код arxml содержит установку аннулирования для элемента данных.

    <INVALIDATION-POLICY>
        <DATA-ELEMENT-REF DEST="VARIABLE-DATA-PROTOTYPE">/pkg/if/Out/OutElem</DATA-ELEMENT-REF>
        <HANDLE-INVALID>KEEP</HANDLE-INVALID>
    </INVALIDATION-POLICY>
    

Сконфигурируйте интерфейсный порт AUTOSAR S-R для сквозной защиты

AUTOSAR сквозная защита (E2E) для отправителя и портов получателя основан на библиотеке E2E. E2E является библиотекой C, которой вы пользуетесь, чтобы передать данные надежно между компонентами AUTOSAR. Сквозная защита добавляет дополнительную информацию в исходящий пакет данных. Компонент, получающий пакет, может затем проверить независимо, что полученный пакет данных совпадает с отправленным пакетом. Потенциально, компонент получения может обнаружить ошибки и принять меры.

Для более легкого интегрирования сгенерированного кода AUTOSAR с решениями AUTOSAR E2E Embedded Coder® поддерживает защиту AUTOSAR E2E. В Simulink вы можете:

  • Импортируйте порт отправителя AUTOSAR и порты получателя, для которых сконфигурирована защита E2E.

  • Сконфигурируйте отправителя AUTOSAR или порт получателя для защиты E2E.

  • Сгенерируйте C и код arxml для отправителя AUTOSAR и порты получателя, для которых сконфигурирована защита E2E.

Необходимо сконфигурировать защиту E2E для отправителя AUTOSAR и портов получателя, которые используют явную запись и читают режимы доступа к данным. Когда вы изменяете режим доступа к данным порта AUTOSAR от явной записи, чтобы от начала до конца записать, или из явного чтения, чтобы от начала до конца читать:

  • Поведение симуляции незатронуто.

  • Генерация кода подобна явной записи, и читайте с этими различиями:

    • Вызовы API обертки инициализации E2E появляются в коде инициализации C.

    • Вызовы API обертки защиты E2E появляются в коде шага C.

    • Когда объединено с ошибочным импортом состояния, сквозное чтение возвращает uint32, а не uint8.

    • Для получателя и отправителя COM-SPECs, средство экспорта arxml генерирует свойство USES END TO END PROTECTION со значением true.

Сконфигурировать отправителя AUTOSAR или порт получателя для защиты E2E:

  1. Откройте модель, для которой сконфигурирован интерфейс получателя отправителя AUTOSAR.

  2. Редактор Отображений Открытого кода. Перейдите к импорту Simulink или выходному порту, который моделирует получатель AUTOSAR или порт отправителя, для которого вы хотите сконфигурировать защиту E2E. Выберите порт.

  3. Установите режим доступа к данным AUTOSAR на EndToEndRead (импорт) или EndToEndWrite (выходной порт).

  4. Чтобы подтвердить настройку компонента AUTOSAR, нажмите кнопку Validate.

  5. Создайте модель и осмотрите сгенерированный код. Сгенерированный код C содержит вызовы API E2E.

    void Runnable_Step(void)
    {
      …
      /* Inport: '<Root>/Input' */
      E2EPW_Read_RPort_InputDE(…);
      …
      /* Outport: '<Root>/Output'... */
      (void) E2EPW_Write_PPort_OutputDE(…);
      …
    }
    …
    void Runnable_Init(void)
    {
      …
      /* End-to-End (E2E) initialization */
      E2EPW_ReadInit_RPort_InputDE();
      E2EPW_WriteInit_PPort_OutputDE();
      …
    }
    

    Экспортируемый код arxml содержит настройки E2E для получателя AUTOSAR и портов отправителя.

    <NONQUEUED-RECEIVER-COM-SPEC>
        …
        <USES-END-TO-END-PROTECTION>true</USES-END-TO-END-PROTECTION>
    …
    <NONQUEUED-SENDER-COM-SPEC>
        …
        <USES-END-TO-END-PROTECTION>true</USES-END-TO-END-PROTECTION>

Сконфигурируйте порт получателя AUTOSAR для DataReceiveErrorEvent

В связи получателя отправителя AUTOSAR между компонентами программного обеспечения Среда выполнения (RTE) повышает DataReceiveErrorEvent, когда коммуникационный слой сообщает об ошибке в приеме данных компонентом получателя. Например. событие может указать, что компоненту отправителя не удалось ответить в пределе AliveTimeout, или что компонент отправителя отправил недопустимые данные.

Поддержки Embedded Coder, создающие DataReceiveErrorEvent s в компонентах получателя AUTOSAR. В Simulink вы можете:

  • Импортируйте определение DataReceiveErrorEvent AUTOSAR.

  • Задайте DataReceiveErrorEvent.

  • Сгенерируйте код arxml для портов получателя AUTOSAR, для которых сконфигурирован DataReceiveErrorEvent.

Необходимо сконфигурировать DataReceiveErrorEvent для порта получателя AUTOSAR, который использует ImplicitReceive, ExplicitReceive или режим доступа к данным EndToEndRead.

Сконфигурировать порт получателя AUTOSAR для DataReceiveErrorEvent:

  1. Откройте модель, для которой сконфигурирована сторона получателя интерфейса получателя отправителя AUTOSAR.

  2. Редактор Отображений Открытого кода. Выберите вкладку Inports. Выберите импорт данных, который сопоставлен с портом получателя AUTOSAR, для которого вы хотите сконфигурировать DataReceiveErrorEvent. Установите его режим доступа к данным AUTOSAR на ImplicitReceive, ExplicitReceive или EndToEndRead. Вот два примера, без и с двойным портом ErrorStatus.

  3. Откройте Словарь AUTOSAR. Расширьте узел AtomicComponents. Расширьте компонент получателя и выберите Runnables.

  4. В представлении runnables создайте выполнимое, чтобы обработать DataReceiveErrorEvent s.

    1. Нажмите кнопку Add, чтобы добавить выполнимую запись.

    2. Выберите новую выполнимую запись, чтобы сконфигурировать ее имя и другие свойства.

    3. Перейдите к панели Events и сконфигурируйте DataReceiveErrorEvent для выполнимого. Нажмите Add Event, выберите, вводят DataReceiveErrorEvent и вводят имя события.

    4. Под Event Properties выберите триггер для события. Выбранное триггерное значение указывает на порт получателя AUTOSAR и элемент данных, для которого выполнимое обрабатывает DataReceiveErrorEvent s.

      Также можно программно создать DataReceiveErrorEvent.

      arProps = autosar.api.getAUTOSARProperties(mdlname);
      add(arProps,ibQName,'Events','DRE_Evt',...
          'Category','DataReceiveErrorEvent','Trigger','rPort.DE1',...
          'StartOnEvent',runnableQName);
  5. Создайте модель и осмотрите сгенерированный код. Экспортируемый код arxml задает выполнимую обработку ошибок и ее инициирующее событие.

    <EVENTS>
        <DATA-RECEIVE-ERROR-EVENT UUID="...">
            <SHORT-NAME>DRE_Evt</SHORT-NAME>
            <START-ON-EVENT-REF DEST="RUNNABLE-ENTITY">
              /Root/mDemoModel_swc/ReceivingASWC/IB/Run_ErrorHandling</START-ON-EVENT-REF>
            <DATA-IREF>
                <CONTEXT-R-PORT-REF DEST="R-PORT-PROTOTYPE">
                  /Root/mDemoModel_swc/ReceivingASWC/rPort</CONTEXT-R-PORT-REF>
                <TARGET-DATA-ELEMENT-REF DEST="VARIABLE-DATA-PROTOTYPE">
                  /Root/Interfaces/In/DE</TARGET-DATA-ELEMENT-REF>
            </DATA-IREF>
        </DATA-RECEIVE-ERROR-EVENT>
    </EVENTS>
    ...
    <RUNNABLES>
        ...
        <RUNNABLE-ENTITY UUID="...">
            <SHORT-NAME>Run_ErrorHandling</SHORT-NAME>
            <MINIMUM-START-INTERVAL>0</MINIMUM-START-INTERVAL>
            <CAN-BE-INVOKED-CONCURRENTLY>false</CAN-BE-INVOKED-CONCURRENTLY>
            ...
            <SYMBOL>Run_ErrorHandling</SYMBOL>
        </RUNNABLE-ENTITY>
    </RUNNABLES>

Сконфигурируйте порт AUTOSAR получателя отправителя ComSpecs

В компонентах программного обеспечения AUTOSAR отправитель или порт получателя опционально могут задать коммуникационную спецификацию (ComSpec). ComSpecs описывают дополнительные коммуникационные требования для данных порта.

К отправителю модели AUTOSAR и получателю ComSpecs в Simulink, вы можете:

  • Импортируйте отправителя и получатель ComSpecs из файлов arxml

  • Создайте отправителя и получатель ComSpecs в Simulink

  • Для отправителя нес очередями и портов получателя, измените атрибут ComSpec InitValue

  • Для портов получателя нес очередями измените атрибуты ComSpec AliveTimeout и HandleNeverReceived

  • Экспортируйте ComSpecs в файлы arxml

Например, если вы создаете порт получателя AUTOSAR в Simulink, вы используете редактор Отображений Кода, чтобы сопоставить импорт Simulink в порт получателя AUTOSAR и элемент данных S-R. Можно затем выбрать порт и задать его атрибуты ComSpec.

Если вы импортируете или создаете порт получателя AUTOSAR, можно использовать Словарь AUTOSAR, чтобы просмотреть и отредактировать атрибуты ComSpec сопоставленных элементов данных S-R в порте AUTOSAR.

Программно изменить атрибуты ComSpec AUTOSAR не поставило в очередь отправителя или порт получателя, используйте функцию свойства AUTOSAR set. Например:

hModel = 'autosar_swc';
open_system(hModel);
arProps = autosar.api.getAUTOSARProperties(hModel);

% Find ComSpec path
portPath = find(arProps,[],'DataReceiverPort','PathType','FullyQualified');
ifPath = find(arProps,[],'SenderReceiverInterface','Name','Input_If','PathType','FullyQualified');
dataElementPath = find(arProps,ifPath{1},'FlowData','Name','In1','PathType','FullyQualified');
infoPath = find(arProps,portPath{1},'PortInfo',...
    'PathType','FullyQualified','DataElements',dataElementPath{1});
comSpecPath = find(arProps,infoPath{1},'PortComSpec','PathType','FullyQualified');

% Set ComSpec attributes
set(arProps,comSpecPath{1},'AliveTimeout',30,'HandleNeverReceived',true,'InitValue',1);
get(arProps,comSpecPath{1},'AliveTimeout')
get(arProps,comSpecPath{1},'HandleNeverReceived')
get(arProps,comSpecPath{1},'InitValue')

Когда вы генерируете код для модели AUTOSAR, которая задает атрибуты ComSpec, экспортируемые описания порта arxml включают значения атрибута ComSpec.

<PORTS>
    <R-PORT-PROTOTYPE UUID="...">
        <SHORT-NAME>ReceivePort</SHORT-NAME>
        <REQUIRED-COM-SPECS>
            <NONQUEUED-RECEIVER-COM-SPEC>
                <DATA-ELEMENT-REF DEST="VARIABLE-DATA-PROTOTYPE">
                  /Company/Powertrain/Interfaces/Input_If/In1
                </DATA-ELEMENT-REF>
...
                <ALIVE-TIMEOUT>30</ALIVE-TIMEOUT>
                <HANDLE-NEVER-RECEIVED>true</HANDLE-NEVER-RECEIVED>
...
                <INIT-VALUE>
                    <CONSTANT-REFERENCE>
                        <SHORT-LABEL>DefaultInitValue_Double_1</SHORT-LABEL>
                        <CONSTANT-REF DEST="CONSTANT-SPECIFICATION">
                          /Company/Powertrain/Constants/DefaultInitValue_Double_1
                        </CONSTANT-REF>
                    </CONSTANT-REFERENCE>
                </INIT-VALUE>
            </NONQUEUED-RECEIVER-COM-SPEC>
        </REQUIRED-COM-SPECS>
    </R-PORT-PROTOTYPE>
</PORTS>
...
<CONSTANT-SPECIFICATION UUID="...">
    <SHORT-NAME>DefaultInitValue_Double_1</SHORT-NAME>
    <VALUE-SPEC>
      <NUMERICAL-VALUE-SPECIFICATION>
          <SHORT-LABEL>DefaultInitValue_Double_1</SHORT-LABEL>
          <VALUE>1</VALUE>
      </NUMERICAL-VALUE-SPECIFICATION>
  </VALUE-SPEC>
</CONSTANT-SPECIFICATION>

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

Связанные примеры

Больше о