汇川SV660F伺服驱动器读取转矩数据,其核心配置点位于驱动器的CiA 402协议对象字典(Object Dictionary)中,并需在PLC侧完成相应的通信映射与数据解析。转矩作为伺服系统的关键过程参数,其读取涉及从底层硬件寄存器到上层应用的数据链路贯通,具体配置可分解为以下三个层面:
一、 驱动器侧对象字典配置
SV660F遵循CiA 402(CANopen over EtherCAT)协议,转矩相关参数通过预定义的对象字典地址进行访问。关键配置点如下表所示:
| 对象字典索引 (Hex) | 子索引 | 参数名称 | 数据类型 | 访问权限 | 功能描述 |
|---|---|---|---|---|---|
| 6074h | 00h | Target Torque | INT32 | RW | 目标转矩值,单位为驱动器内部单位(通常为0.1%额定转矩)。 |
| 6077h | 00h | Torque Actual Value | INT32 | RO | 实际转矩反馈值,这是读取实时转矩的核心参数。其值表示当前电机输出的实际转矩,单位与6074h一致。 |
| 6078h | 00h | Current Actual Value | INT32 | RO | 实际电流值,与转矩强相关,可用于辅助诊断或校准。 |
| 60B8h | 00h | Torque Demand | INT32 | RO | 转矩指令值,即控制器计算出的期望转矩输出。 |
| 1C12h | 01h ~ 20h | Sync Manager 2 Parameters | - | RW | 配置过程数据输出(PDO)映射,需将6077h等对象映射到输出PDO中,以便周期性发送给主站。 |
关键操作:通常需要通过伺服调试软件(如汇川的InoDriverShop)或驱动器面板,将6077h(Torque Actual Value)映射到周期性发送的PDO(如TPDO1或TPDO2)中。这是实现转矩数据实时上传至PLC的前提。
二、 PLC侧通信与数据映射配置
以西门子S7-1500 PLC通过Profinet连接SV660F为例,配置步骤如下:
- GSDML文件导入:在TIA Portal中,导入汇川提供的SV660F GSDML设备描述文件。
- 设备组态:将SV660F作为Profinet IO设备添加到网络,并配置其设备名称与IP地址。
- 模块配置:在设备视图中,为SV660F添加所需的输入/输出模块。读取转矩的关键在于配置足够长度的输入模块,以接收包含6077h数据的PDO。
- 例如,配置一个
64 bytes input模块,用于接收驱动器周期性发送的所有过程数据。
- 例如,配置一个
- 地址映射:在PLC的硬件配置中,该输入模块会被分配一个过程映像输入区(PII)的起始地址(如
%IW256)。包含转矩值的PDO数据将自动更新到此区域。
三、 PLC程序中的数据解析与处理
PLC收到的是包含多个参数的原始字节流,需要根据PDO映射结构进行解析。以下为使用SCL语言进行解析的示例代码:
FUNCTION_BLOCK FB_SV660F_TorqueMonitor VAR_INPUT // 假设包含转矩数据的输入区域起始地址为 %IW256,长度为20个字(40字节) pInputData : POINTER TO WORD; iDataLength : INT := 20; END_VAR VAR_OUTPUT rActualTorquePercentage : REAL; // 实际转矩百分比(%) rActualTorqueNm : REAL; // 实际转矩物理值(Nm) END_VAR VAR iTorqueRawValue : DINT; // 原始转矩值(来自6077h) wStatusWord : WORD; // 状态字(6041h),通常也在PDO中 rRatedTorqueNm : REAL := 10.0; // 示例:电机额定转矩,需根据实际电机型号设定 END_VAR // 步骤1:从输入数据流的特定偏移位置提取原始转矩值 // 假设6077h(DINT类型,4字节)在PDO中的偏移量为第12字节开始 iTorqueRawValue := DINT_TO_DINT( PEEK_DINT( area := 16#81, // Input area dbNumber := 0, byteOffset := 12 // 此偏移量需根据实际的PDO映射表确定 ) ); // 步骤2:将原始值转换为百分比(根据手册,通常1个单位 = 0.1% 额定转矩) rActualTorquePercentage := DINT_TO_REAL(iTorqueRawValue) * 0.1; // 步骤3:转换为物理值(Nm) rActualTorqueNm := rActualTorquePercentage / 100.0 * rRatedTorqueNm; // 步骤4:可结合状态字(如从偏移量0读取)进行有效性判断 wStatusWord := PEEK_WORD(area := 16#81, dbNumber := 0, byteOffset := 0); IF (wStatusWord AND 16#0800) <> 0 THEN // 检查状态字bit11(内部限制激活) // 转矩可能处于限制状态,记录日志或触发警告 END_IF; END_FUNCTION_BLOCK四、 关键注意事项与调试建议
- PDO映射确认:务必通过调试软件确认
6077h已正确映射到发送PDO,并记录其在PDO数据包中的字节偏移量。这是PLC侧解析数据的唯一依据。 - 单位换算与缩放:
6077h值的单位通常是0.1%额定转矩。需查阅SV660F具体型号的手册确认换算系数,并结合电机额定转矩参数(如6076h或铭牌值)计算物理值。 - 数据同步与周期:确保PLC的OB1循环周期或Profinet IO更新时间与伺服驱动器的PDO发送周期匹配。对于高动态转矩监控,建议使用更快的OB(如OB35)。
- 故障诊断:若读取值异常,应依次检查:
- 通信状态:PLC与驱动器Profinet连接是否正常(LED状态,诊断缓冲区)。
- 映射一致性:驱动器侧的PDO映射与PLC硬件组态中的模块长度是否匹配。
- 数值范围:原始值是否在合理范围内(例如,±1000对应±100%额定转矩)。
综上所述,实现SV660F转矩读取的核心在于驱动器对象字典(6077h)的PDO映射与PLC侧对接收数据的精准解析。这一配置使得上层控制系统能够实时获取电机的负载状态,为高级功能如负载监控、自适应增益调整、预防性维护提供了关键数据基础。例如,在机床主轴切削过程中,通过监控实时转矩可判断刀具磨损情况;在卷绕设备中,转矩反馈可用于实现恒张力控制。
参考来源
- 汇川伺服IS620F,汇川伺服SV660F定位控制块,与西门子1500PLC通讯profinet控制