Modbus TCP或EtherNet/IP从站转6通道输入模拟量(AI)

FAD-3160是一款将6路模拟量输入信号(AI)连接到Modbus TCP或者EtherNet/IP网络的模块,每个模拟量输入通道支持电压型和电流型输入,且每路通道均有隔离。它作为EtherNet/IP从站,能够与包括罗克韦尔(AB)、欧姆龙、施耐德、三菱、汇川等在内的主流PLC、DCS系统无缝对接。而作为Modbus TCP从站,可以与Modbus TCP主站PLC以及组态软件等进行数据交互。

参数:

1、多通道:多达6个相互独立的通道,每通道均可配置为电流输入或电压输入;

2、强隔离:模拟输入共3组隔离,每组2通道;

3、精度高:0-20mA和4-20mA电流信号精度为1‰,0-5V和0-10V电压信号精度为5‰,具有工频干扰抑制;

4、支持双自适应以太网口,支持菊花链式连接,内置以太网交换机功能;

5、Modbus TCP端支持多达8个TCP连接,支持模拟量通道诊断功能;

6、支持DLR冗余:EtherNet/IP端支持Non-DLR,无缝融入DLR环网;

特性:

1、信号输入:

  1. 通道:支持6个通道,且通道间相互独立;
  2. 输入范围:0-20mA,4-20mA,0-5V,0-10V;
  3. 最大输入信号:电流输入:60mA,电压输入:200VDC;
  4. 输入阻抗:电流输入:250Ω±1‰,电压输入:大于1MΩ;
  5. 输入频率抑制:50Hz、60Hz;
  6. 隔离等级:1000VDC(测试时间 1 分钟,漏电流小于 1mA);
  7. 精度:≤1‰(电流满量程),≤5‰(电压满量程);
  8. 分辨率:≤0.5‰(满量程);
  9. A/D转换:16位;
  10. 刷新周期:50ms;

2、Modbus TCP从站:

  1. MODBUS TCP规范:Modbus TCP从站;
  2. 以太网:10/100M自适应;
  3. 地址:IP地址可设,忽略单元标识符;
  4. TCP最大连接数:8个;
  5. 通道级的诊断:支持;
  6. 隔离等级:1500V/AC;

3、EtherNet/IP从站:

  1. 支持 ODVA 标准 EtherNet/IP 从站通信协议
  2. 地址:IP地址可设
  3. EtherNet/IP支持8/16/24字节的输入和输出模式
  4. EtherNet/IP的最小数据通信周期可达5ms
  5. 支持Non-dlr功能

典型应用1:Modbus TCP主站通过FAD-3160采集模拟量信号

典型应用2:EtherNet/IP主站通过FAD-3160采集模拟量信号

### Schneider M580 PLC 的 I/O 扫描功能及其对 AI 通道的支持 #### 支持的 I/O 扫描功能 Schneider Electric M580 PLC 设计用于支持复杂的工业控制系统,其中包括高效的数据采集和传输能力。M580 PLC 的硬件架构允许它通过特定模块实现周期性 I/O 数据扫描功能[^3]。具体来说,某些专用网络模块(如 NOC 模块)可以充当类似于“I/O 扫描器”的角色,这些模块能够在配置完成后自动执行周期性的数据读写操作,而无需在主 PLC 程序中增加额外的编程负担。 此外,为了适应不同的现场总线技术,M580 提供了灵活的通信选项和支持多种协议的能力,例如 Modbus TCPEthernet/IP。这意味着可以通过相应的 DTM 接口轻松设置并启用这些协议下的 I/O 扫描功能[^3]。 #### 关于 AI 通道的支持 对于模拟输入 (AI) 通道的支持,M580 PLC 能够利用其广泛的模块化设计来集成不同类型的信号源。施耐德为 M580 提供了一系列专门设计的过程控制模块,其中就包含了适用于各种精度等级和范围的模拟量输入卡件。这类模块可以直接接入温度、压力其他连续变化物理量的传感器,并将其换成数字化的形式以便进一步处理。 当涉及到具体的适配细节时,则需注意所选模块的技术规格是否满足项目需求。比如,如果要测量高分辨率的压力值可能就需要挑选具备更精细量化步距特性的 AI 卡件;而对于一般的热电偶 RTD 温度检测则可以选择成本较低但仍能胜任工作的型号[^1]。 最后值得一提的是,在实际部署过程中还需要考虑到诸如采样频率设定等因素的影响,因为它们会直接影响最终获得数据的质量以及整体响应速度等方面的表现。 ```python # Python 示例展示如何创建一个基本的I/O扫描类结构 import time class IO_Scanner: def __init__(self, device_id, interval=1): self.device_id = device_id self.interval = interval def scan(self): while True: data = f"Data from Device {self.device_id}" yield data time.sleep(self.interval) scanner_instance = IO_Scanner(1) for item in scanner_instance.scan(): print(item[:]) # 输出每次扫描得到的结果 ``` ---
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值