1、系统配置
1.1 软件
安装 step7 micro/win smart software(含 modbus协议库)的pc机,本例中使用的是step7 micro-win smart v2.0。
1.2 硬件
g120配备cu240e-2控制单元的变频器一台、异步电机一台、s7-200 smart plc 一台、标准drive-cliq电缆一根、双绞屏蔽电缆一根。本例中,使用的g120的控制单元cu240e-2固件版本v4.6。
注意:在使用microwin software创建项目之前,确认modbus库文件已经存在。
2、硬件接线 2.1 cu240e-2控制单元接口
cu240e-2控制单元端子排如图2-1,rs485接口在控制单元的底部,共有5个接线端子,其中从左到右,2号端子为rs485p,3号端子为rs485n,这两端子用于通信数据的发送和接收。
2.2 g120 与s7-200 smart接线
s7-200 smart作为modbus通信主站,其通信端口和变频器从站的接线如图 2-2。在通信网络的首、末端需要使用终端电阻。对于s7-200 smart,需要在通信端口端子 3和8之间连接一阻值为120欧姆的电阻。对于变频器,把通 信网络末端的cu240e-2终端电阻拨码开关拨到on位置即可;中间位置的 cu240e-2,终端电阻拨码开关必须拨到off位置。本例中,s7-200 smart使用cpu自带通信端口和变频器进行通信。
3、通信设置
3.1 设置通讯接口
本例程使用plc 以太网接口和 drive-cliq 电缆,设置通信接口。
第一步:双击“通信”,弹出“通信”设置窗口;
第二步:选择网络接口卡,设置为“icp/ip.auto.1”,系统会自动收索cpu。
3.2 建立pc和plc之间的连接
选择“网络接口”后自动搜索到cpu。
第一步:搜索到 cpu 后,选择搜索到的cpu,点击cpu的”ip地址”。
第二步:点击“ 确定 ” 按钮,完成网络连接。
4、变频器参数设置
4.1 变频器地址设置
变频器的modbus通信地址可以通过控制单元上的总线地址拨码开关进行设置。当地址拨码开关的位置都为off时,也可用过参数 p2021进行设置。(说明:改变地址后需重新上电后才能生效)
4.2 变频器参数设置
对变频器一些基本的通信参数进行设置,才可以进行modbus通信,如下表所示:
表4-2 变频器的参数设置
4.3 g120常用寄存器说明
g120变频器常用寄存器介绍,也是本例所使用的寄存器,如表4-3。要了解更多的 g120寄存器信息,请参见g120操作手册 。
表4-3 常用寄存器说明
5、plc编程
5.1 初始化程序
使用modbus协议的初始化模块mbus_ctrl,初始化s7-200 smart的cpu端口专用于modbus主站通信。
功能块说明:
注:此处以及下文的“功能块说明”仅介绍了功能块内的主要管脚功能,未说 明的管脚功能,请参考 step7 micro-win smart v2.0软件的帮助文件。
en使能:必须保证每一扫描周期都被使能(使用sm0.0
mode模式:为1时,使能modbus协议功能;为0时恢复为系统ppi协议。baud 波特率:支持的通讯波特率为4800,9600,19200 ,此处设置 9600。parity 校验:校验方式选择 (g120采用偶校验)
0=无校验
1=奇较验
2=偶较验
port端口:设置物理通信端口(0= cpu中集成的 rs-485,1= 可选 cm01信号板上的 rs-485或rs-232)。
timeout超时:主站等待从站响应的时间,以毫秒为单位,典型的设置值为1000毫秒(1 秒),允许设置的范围为 1-32767。注意:这个值必须设置足 够大以保证从站有时间响应。
done完成位:初始化完成,此位会自动置1。
error:初始化错误代码。
5.2 主站读写功能块
5.2.1 写控制字
功能块说明:
注:此处以及下文的“功能块说明”仅介绍了功能块内的主要管脚功能,未说 明的管脚功能,请参考step7 micro-win smart v2.0软件的帮助文件。
en使能:同一时刻只能有一个读写功能(即 mbus_msg)使能。注意:g120对于写指令同一时刻只运行对一个保持寄存器操作;读指令同一时 刻最大允许操作125个保持寄存器。
first读写请求位:每一个新的读写请求必须使用脉冲触发。
slave从站地址:可选择的范围1-247
rw请求方式:0=读,1=写
count数据个数:通讯的数据个数(位或字的个数)。注意:modbus主站可读/写的最大数据量为120个字(是指每一个mbus_msg指令)。
dataptr数据指针:
如果是读指令,读回的数据放到这个数据区中 ;
2. 如果是写指令,写出的数据放到这个数据区中 。
done 完成位:读写功能完成位 。
error错误代码:只有在 done位为1时,错误代码才有效。
常用的控制字:
047e :运行准备
047f :正转启动
0c7f :反转启动
04fe :故障确认
5.2.2 写速度设定值
5.2.3 读状态字和速度实际值
5.2.4 读取斜坡时间
5.2.5 写斜坡下降时间
6、分配库存储区
在编译程序之前,首先要为modbus库分配可用的全局v存储器地址。
第一步:选择 “程序块” ->“ 库” 右键,选择“库存储区”;
第二步:点击 “建议地址”, 选择 v存储器的地址;
第三步:点击 “确定”退出。
7、调试程序
程序编辑完成后,要调试程序。
第一步:点击“保存“,保存好编辑的程序;
第二步:点击“编译“,编译程序;
第三步:点击“下载“,把程序下载到plc的cpu当中;第四步:点击“运行“,启动程序。
8、监控状态表
通过监控状态表,可以修改过程数据和监控过程数据的变化状态。
控制字:vw100=16#047f 说明启动命令已经给了。
状态字:vw300=16#ef37 说明变频器的状态,参见 r0052。
主设定值:vw200=16#1000 说明速度设定值已经给了,16#0-4000对应转速 0-p2000的值。
速度实际值:vw302=16#1000 说明电机实际转速已经运行到 375rpm。斜坡上升时间:vw400=1000,从寄存器列表中可以看到 40322的寄存器的定 标系数是 100,所以参数 p1120=1000/100=10。
斜坡下降时间:vw402=2000,读的下降时间;vw500=2000,设定的下降时 间;vw402=vw500,说明写指令已经生效。从寄存器列表中可以看到 40323 的寄存器的定标系数是 100,所以参数 p1121=2000/100=20。
9、modbus错误代码
done完成位:modbus功能块的完成位,用于确定功能块的操作是否完成;
error 错误代码:只有在done位为1时,错误代码才有效。modbus错误代码及含义如表 9-1所示。
表9-1 modbus错误代码表
采用AD7705设计的万能信号输入电路
毫秒级配网速度!涂鸦重磅推出的蓝牙子设备框架,让全球客户产品力拉满
社区健康码身份证核验盒子只需带身份证就无需亮码
ROBOTOUS-RFT系列六维力传感器
基于深度学习的情感语音识别模型优化策略
天拓分享:西门子plc S7-200 SMART与G120 变频器Modbus通讯详解
小米米家滑板车Pro体验 更快的提速更好的续航
HERMES与可穿戴外骨骼机器人技术详解
在USB中,定义了这四种类型包
Cloud2.0时代,运营商能否把握云之大势?
应对ADAS和自动驾驶的软件挑战
印度运营商与中兴签署谅解备忘录 共同建设探索5G网络
700MHz5G网络绝非“禁脔”:电信、联通将注重农村地区
基于线性电源供电的LED发光二极管驱动电路设计
解读片上RAM和外部RAM访问速度的差异问题
在汽车领域,国产芯片企业有着大量机会
2018数据中心在四方面受到机器对机器通信的影响分析
amd处理器与intel区别对比_amd处理器与intel哪个好
设计反激式转换器时需要考虑的几大关键因素
基于单片机的16位智能抢答器设计