Невозможно установить уравнение в компоненте redhawk's fcalc - PullRequest
0 голосов
/ 01 января 2019

В REDHAWK IDE (v2.12) я пытаюсь использовать компонент fcalc для некоторых математических вычислений.Я попытался последовать примеру в документе, поместив math.sin(a+b)+random.random() в поле уравнения, но я получил следующую ошибку:

CF.PropertySetPackage.InvalidConfiguration: Failure: . Properties: equation
IDL:CF/PropertySet/InvalidConfiguration:1.0

Я также попробовал другие математические функции, такие как sqrt.Однако ни один из них не сработал.Также очень сложно добавить какие-либо модули в поле импорта.

Что-то не так сделал при использовании этого компонента fcalc?

1 Ответ

0 голосов
/ 07 января 2019

Похоже, что слушатель изменения свойства не запускается для начальной конфигурации свойства при запуске в изолированной программной среде IDE.Существует несколько обходных путей:

  1. Вручную настройте свойство import после запуска компонента, что вызовет прослушиватель изменения свойства.Например, добавление time в список импорта приведет к импорту math и random.
  2. Использование изолированной программной среды Python вместо изолированной программной среды IDE

    >>> from ossie.utils import sb
    >>> fcalc = sb.launch('rh.fcalc')
    2019-01-04 11:55:44 WARNING rh_fcalc:176 - NOT overriding global namespace with random from random
    >>> fcalc.equation = 'sin(a+b)+random.random()'
    

    Предупреждение ожидается и просто указывает на то, что вы не можете использовать random() в уравнении без полного пространства именrandom.random(), поскольку он конфликтует с библиотекой random.

  3. Запускает rh.fcalc в форме сигнала в домене
...