福州市(分公司)西门子伺服电机总代理商福州市(分公司)西门子伺服电机总代理商
V90 Modbus Library 简介
S7-200 SMART V90 Modbus Library 可以支持速度及内部位置控制,如图1。所有的功能块都编写成了子程序,使用时只需将相应的子程序拷贝到项目中即可, 但要注意避免使用与子程序中重复的地址。

图1. V90 Modbus Library
优势
1. 在 PLC 侧不必编写任何位控程序,只需调用 S7-200 SMART V90 Modbus Library 即可。
2. 不必查询V90 中的参数号,只需通过库的接口参数输入相应的速度,位置以及控制参数
3. 库例程中已经做好轮询程序,用户只需稍做修改就可用在自己的项目中
注意:由于Modbus RTU 是串口通信,实时响应与直接脉冲控制相比要慢,特别是控制多轴时
软硬件要求序号软硬件要求1S7-200 SMART CPU V2.12STEP7-Micro/WIN SMART V2.1 Update 23V90 驱动器 V1.05 以上4SINAMICS V-ASSISTANT V1.03
SINAMICS V-ASSISTANT 设置V90
使用S7-200 SMART V90 Modbus Library 之前要先用SINAMICS V-ASSISTANT 软件对 V90 进行设置(或是直接在V90上进行参数设置)
1. 使用USB电缆连接V90与装有SINAMICS V-ASSISTANT 的软件, 如图2。

图2. USB 电缆连接 V-ASSISTANT 与 V90
2. 打开SINAMICS V-ASSISTANT 软件,并点击“在线”,软件会自动检测出所使用的V90 的型号以及电机的型号,如此时可设置控制模式,如图3。

图3. 在线检测读出 V90 及电机型号
3. 定义IO输入输出分配,有些输入信号如果没有实际接入,可以通过软件中的强制实现,如图4。

图4. 输入输出分配
4. 仿真及测试电机,使用PLC 控制前可先进行 IO 及 电机测试,以便检测V90 侧没有任何问题,如图5。


图5. IO 仿真及电机测试
速度控制
1. 在 V-ASSISTANT中设置 V90 基本参数,如图6。


图6. V-ASSISTANT 中设置 V90 参数
2. 如果不使用 V-ASSISTANT, 则在 V90 上直接设置参数,如图7。

图7. V90 面板直接设置伺服驱动器参数
3. Modbus 初始化,设置的通信速率要与V90中的设置一致, 如图8。

图8. Modbus 初始化
4. 控制速度轴,如图9。

图9. 控制速度轴
参数定义如表1.
表1. 速度轴参数定义
EN
:Bool 子程序使能信号;
COM_EN
:Bool MBUS通讯触发信号, 上升沿有效,触发一次COM_EN信号,子程序中通讯操作轮询一次;
Slave_Addr
:Byte V90 驱动MBUS通讯地址(P29004);
CTW
:WORD V90 驱动MBUS通讯控制字(40100),第0位SON_OFF1必须需要0-->1才能伺服使能;输入:16#41E-16#41F与V90中的40100一致,如果需要单独控制其它位,需要参照控制字每一位的含义,如图10;
SpeedSet
:Real 速度给定(40101),范围 0.0 % --100.0%额定转速;例:如果额定速度为3000,输入20,则速度为3000*20%=600;
COM_Buf
:DWORD MBUS读写操作缓冲区,指针变量 格式必须为 &VB,建议每个周间隔50 Bytes,例如Axis_1----&VB6000; Axis_2----&VB6050; Axis_3----&VB6100......;
Done
:Bool 当前子程序扫描完成信号,可以用于下一个子程序的COM_EN触发信号,但是必须在下一个子程序扫描完成之后进行复位操作;
Active
:Bool 当前子程序激活,正在处理;

图10. 控制速度 40100 参数定义
内部位置控制
内部位置控制可以实现相对位移和位移的控制,可根据实际应用选择使用,如图11。

图11.位置控制程序块
相对定位控制
1. 在 V-ASSISTANT 中设置 V90 基本参数,如图12。

图12. V-ASSISTANT 中设置 V90 参数
2. 如果不使用 V-ASSISTANT, 则在 V90 上直接设置参数,如图13。

图13. V90 面板直接设置伺服驱动器参数
3. Modbus 初始化,设置的通信速率要与 V90 中的设置一致, 如图14。

图14. Modbus 初始化
4. 控制相对定位(通过40100参数中的 “POS_TYP" 参数来选择相对位定位), 如图15。

图15. 控制相对定位
参数定义如表2.
表2. 相对定位接口参数定义
:WORD V90 驱动MBUS通讯控制字(40100),位置模式给出 16#40E 到 16#40F,驱动使能,第0位SON_OFF1必须需要0-->1才能伺服使能;然后再给出16#41F,使得STEP_ACC有一个触发上升沿;如果需要单独控制其它位,需要参照V90位置模式IPOS下的控制字每一位的含义,如图16;
PositionSet
:Dint 位置给定,对应于 LU;
:Dint 速度给定,对应于 SpeedSet * 1000 LU/MIN;
:DWORD MBUS读写操作缓冲区,指针变量 格式必须为 &VB,建议每个间隔100 Bytes,例如Axis_1----&VB7000; Axis_2----&VB7100; Axis_3----&VB7200......;

图16. 相对定位 40100 参数定义
定位控制
定位控制,V90 的基本参数设置与相对定位基本相同,如图12。除此之外,还需要对参考点进行参数设置。
1. 使用 V-ASSISTANT 选择参考点类型,如图17。

图17. 选择定位参考点类型
2. 分配参考点输入地址,如图18。

图18. 分配参考点输入地址
3. 分配"参考点OK" 输出地址,当执行寻找参考点指令并寻参成功后, “REFOK” 输出置位为1,如图19。可使用该输出判断寻参成功后,执行定位指令。

图19. 分配参考点OK" 输出地址
4. 控制定位(通过40100参数中的“ POS_TYP" 参数来选择定位),图20。

图20. 控制定位
注意:一定要在寻参成功后,即“REFOK”为1后,才可执行定位。
表3. 定位接口参数定义
:WORD V90 驱动MBUS通讯控制字(40100),位置模式给出 16#40E 到 16#40F,驱动使能,第0位SON_OFF1必须需要0-->1才能伺服使能;然后再给出16#240F,寻找参考点;用REFOK来判断寻参成功后,再给出16#46F,执行定位操作。以后只要位置或速度变化就会立即执行,不需要再改变CWT的参数。如果需要单独控制其它位,需要参照V90位置模式IPOS下的控制字每一位的含义,如图21;

图21. 定位 40100 参数定义
库程序及例程
所有的功能块都编写成了子程序,使用时只需将相应的子程序拷贝到项目中即可, 但要注意避免使用与子程序中重复的地址。程序里面不能多个轴使用一个子程序,如要增加新的轴可通过拷贝增加新的子程序,每一个轴对应一个子程序;具体应用程序包里面有一个3轴速度模式程序和2轴位置模式程序,可以按照这种方式进行修改;
注意:此程序的作者和拥有者对于该程序的功能性和兼容性不负任何责任。使用该程序的风险完全由用户自行承担。由于它是免费的,所以不提供任何担保,错误纠正和热线支持,用户不必为此联系西门子技术支持与服务部门。
ModbusV20Sample
常见问题
为什么修改了V90中的一些参数(如RS485 地址) 却不生效?
答:很多参数需要重新启动才会生效,注意参数后面的生效方式,图如22。



