0

我正在使用红鹰 1.9。我创建了一个虚拟组件使用的虚拟设备。我有一个包含虚拟设备的虚拟节点。具有虚拟分量的虚拟波形。我有两个问题:

  • 在设备管理器控制台(从 TARGET SDR 在 IDE 中启动)我收到警告消息,指示设备无法连接到 IDM 通道。我检查以确保命名和事件服务仍然启动。我不确定要追查这个问题。我使用跟踪级别的日志记录启动设备管理器,但我没有看到任何可以帮助我的东西。

INFO:DeviceManager - 使用 /nodes/DummyNode/DeviceManager.dcd.xml 启动设备管理器 INFO:DeviceManager_impl - 连接到域管理器 REDHAWK_DEV/REDHAWK_DEV 信息:DeviceManager - 启动 ORB!WARN:Device_impl - 无法连接到 IDM 通道 INFO:DeviceManager_impl - 在设备管理器 DummyNode 上注册设备 DummyDevice_1 INFO:DeviceManager_impl - 在设备管理器 DummyNode 上初始化设备 DummyDevice_1 INFO:DeviceManager_impl - 在域管理器上注册设备 DummyDevice_1

  • 当我从 IDE 启动虚拟波形时,我收到 invalidCapacity 错误消息。虚拟组件使用虚拟设备。它查找属性 device_kind = dummy_device_kind。我覆盖了 DummyDevice 中的 allocateCapacity 方法以返回 true。我在 python 命令行中检查了 dummyDevice,并且 allocateCapacity 返回了 true。

错误信息:

NFO:DomainManager_impl - Installing application /waveforms/DummyWaveform/DummyWaveform.sad.xml
DEBUG:ComponentInfo - Loading component properties from /components/DummyComponent/DummyComponent.prf.xml
DEBUG:ComponentInfo - Parsing component properties
DEBUG:ApplicationFactory_impl - UsesDevice Impl Vec of length 1
DEBUG:ComponentImplementationInfo - Attempting to match allocation properties
DEBUG:ComponentImplementationInfo - Trying to match for property id DCE:cdc5ee18-7ceb-4ae6-bf4c-31f983179b4d
DEBUG:ComponentImplementationInfo -  It's a matching prop
DEBUG:ApplicationFactory_impl - Trying to find the device
DEBUG:ApplicationFactory_impl - Device Allocation Failed.. need to clean up
DEBUG:ApplicationFactory_impl - --FAILED-- Allocation of component's implementation cpp of DummyComponent_1. Undoing allocate devices
ERROR:ApplicationFactory_impl - The following CORBA exception occurred: InvalidCapacity while creating the application
INFO:DomainManager_impl - Uninstalling application DCE:8d0a6e63-24f6-4766-9a3f-7db7fd516078
4

1 回答 1

0

至于您的事件通道问题,请仔细检查您的域管理器的启动消息。例如,当我在没有运行 omniEvents 的情况下启动域管理器时,我看到:

$ nodeBooter -D
INFO:DomainManager - Starting Domain Manager
WARN:EventChannelSupport - Event channel REDHAWK_DEV.ODM_Channel not created
WARN:EventChannelSupport - Event channel REDHAWK_DEV.IDM_Channel not created
INFO:DomainManager - Starting ORB!

如果omniEvents 显示为已启动,但域在创建事件通道时似乎仍然存在问题,您可以尝试重置omniEvents。请参阅文档的附录 H,第 6 节

如果您没有看到来自域管理器的警告消息,那么我将使用 nameclt 来验证事件通道是否显示在您的域中,例如:

$ nameclt list REDHAWK_DEV
ODM_Channel
IDM_Channel
REDHAWK_DEV

您还可以使用 eventviewer 来帮助调试/查看事件。根据事件通道是否已注册,您会看到:

$ eventviewer REDHAWK_DEV IDM_Channel
Receiving events. Press 'enter' key to exit

如果一切正常,或者如果没有:

$ eventviewer REDHAWK_DEV IDM_Channel
No such channel exists
于 2013-11-21T18:02:55.873 回答