我是否能够通过编程的方式来修改我的DeviceNet设备的MAC ID?



主要软件:
主要软件版本: 1.5
主要软件修正版本: N/A
次要软件: N/A

问题:

我想通过编程的方式来自动更改我的DeviceNet设备的MAC ID。我改如何通过NI-INdustrial Communicationsfor DeviceNet或者NI-DNET来实现。



解答:
对于NI-Industrial Communictions for DeviceNet,你能通过Set DeviceNet Attribute 功能来实现对从属设备的MAC ID进行修改。在范例查找器中你能过找到这样的范例。在labview中,你可以通过 帮助》查找 范例。在范例查找器中,导航到 Hardware Input and Output » Industrial Communications » DeviceNet » Advanced Examples选择您的硬件,打开项目并打开ChangeSlaveAddress.vi,使用这个VI作为一个编程改变从属设备MAC ID的模板。
 
NI-DNET
建议您使用NI PCI-8532,NI-PXI-8532或者NI-9882以及NI-Industrial Communications for DeviceNet driver 来实现您能够新的应用。
如果您使用NI-DNET 1.5或者更晚的版本,您可以使用NI-DNET设置器,除了在labview中通过编程的方式您能使用NI-DNET配置器来改变设备的MAC ID。
如果您使用NI-DNET 1.4或者更早的版本,MAC ID往往是63的默认值。显示报文(EM)能够被用于改变MAC ID。只需要简单的运行ncWriteDnetExplMsg.vi,如果使用labview或者使用ncWriteDnetExplMsg()函数调用基于文本语言,设置如下输入值:
 
Service Code= 10 hex(16 decimal)
ClassId=3 
InstanceId=1 
ServDataLength=2 
ServData= 1, 
 
当然,当完成MAC ID设置后必须重启所有设备。为了完成这些,必须运行thencWriteDnetExplMsg.vi来完成如下的设置:
Service Code=5 
ClassId=1 
InstanceId=1 
ServDataLength=0 
ServData= NULL
 
注意,并不是总能通过编程的方式来修改DeviceNet设备的MAC ID。许多DeviceNet设备通过设备上的DIP开关或者其他机械结构来实现MAC ID的设置。  
 


相关链接:
Product Manuals: NI-DNET Programmer Reference Manual (April 2006)
KnowledgeBase 3DNDT47T: Can I Programmatically Retrieve a List of MAC IDs for My DeviceNet Devices?
Products and Services: DeviceNet Interfaces

附件:





报告日期: 10/04/2002
最近更新: 12/06/2015
文档编号: 2Q39D58R