咨询电话

ENGLISH0755-88840386
新闻中心

咨询电话

0755-88840386
您的位置:首页 > 学习专题 > 专业技术专题 > 工业自动化称重仪表>详情页

S7-300PLC和称重仪表的 Profibus通信程序设计

发布时间:2021-04-07 11:51:27 |来源:网络转载

称重仪表以种类多、功能齐全、精度高及可靠性好等优点在称重领域中被广泛应用,该仪表多处于单机工作模式下,虽然可以满足大多数用户的基本需求,但是对于一些需要实现网络通信功能和复杂控制要求的称重系统,由于其实现较为复杂加之相关资料较少,所以应用较少。然而,随着网络化管理生产的需求日益增多,网络化的称重系统应用已经成为必然。Profibus通信是目前应用最为广泛的现场总线协议,多数智能仪表和PLC都支持该通信协议。称重仪表中的IND331具有通信功能,通过选择不同的选件,可以支持串口通信、DeviceNet协议通信、ProflbusDP协议通信和AllenBradleyRIO协议通信。笔者以S7-300PLC与称重仪表IND331的Profibus通信为例介绍二者进行Profibus通信的程序设计方法。
1称盘仪表通信协议
S7-300PLC与IND331进行Profibus通信,数据交换需要8个字节,其中称重仪表IND331输入到S7-3OOPLC的数据通信格式见表1,8个字节分为4个字,字1和字2为重量数据,具体根据S7-300PLC输出到IND331的命令而定。这里的重量数据字节排列顺序与浮点数的类型有关,用户根据相应的类型需要编写程序进行数据转换以得到真实的数据。PLC输出到IND331的数据通信格式见表2,其中字1是PLC发送给IND331的命令,字2和字3是可选的,某些需要更新IND331内部数据的命令必须给出字1和字2。表3给出了某称重系统进行Profibus所需要的具体命令号(只列出了实际使用的几个命令号),而没有列出所有命令。表4给出了IND331输入到PLC数据的字0的第8~12位的具体含义,编写通信程序时根据具体需要选择不同的代码值以保证通信正确.

PLC浮点数输入出子表

PLC输出命令表

2系统构成及配置
2.1系统构成
该通信系统是针对一个实际称重系统进行设计的,其S7-300PLC的CPU选型为CPU313C-2DP,利用它的DP接口与IND331称重仪表构成Profibus通信网络,S7-300PLC作为主站.IND331作为从站,可以连接多个IND331作为从站⑹,这里只列出一台IND331的连接方式,具体如图1所示。

称重仪表通信链接示意图

2.2S7-300PLC设置
IND331为了能够与S7-3OOPLC通信,需要在STEP7的硬件配置中手动添加I331OCOC.GSD文件(IND331仪表光盘里包含这个文件)。添加该文件后,STEP7的硬件配置目录ProfibusDP设备中“AdditionalFieldDevices"的常规设备里就包含了“IND131,331”设备。在添加完CPU313C-2DP且建立好ProfibusDP网络后,可以直接拖动“IND131,331”设备到Profibus网络总线上,该设备包含三项,即“universalmodule",uI/O2Wrd”和“I/O4Wrd”,这里选用第三项。输入寄存器为PIW256~PIW263,输出寄存器为PQW256~PQW263,从站地址号为30ProfibusDP网络传输速度设置为1.5Mb/s,主站地址号为2⑺。
2.3IND331称重仪表设置
2.3.1PLC设置
只有安装PLC选件板时才会显示PLC菜单。菜单选项取决于安装的PLC接口选件板的类型,这里选用Profibus接口选件板,因此在IND331仪表PLC子菜单选项中选择为第二项Profibus0连接的PLC类型为Profibus时,PLC菜单包括两个子菜单:Pr面bus接口选项和数据格式。注意,网络波特率由仪表自动取值。每个连接到网络中的IND331仪表代表一个物理节点,系统设计人员根据需要在此菜单中输入节点地址(1~125)⑴。
2.3.2IND331通信数据格式设置
数据格式可选Division]。(分度数)FloatingPoint[l](浮点数)和Integer[2](整型,默认值)。这里选用浮点数。字节顺序指PLC数据格式中呈现字节和字的次序,可选ByteSwap[0](默认值),Standard[1],WordSwap[2]和DoubleWordSwap[3]oByteSwap的浮点数形式与S7-300PLCProfibus兼容;Standard的浮点数形式与PLC5兼容;WordSwap取IEE754的单精度浮点数形式,并交换32位双字中的两个字;DoubleWordSwap取IEE754的单精度浮点数形式,并交换32位双字中的两个字与字节[5]。
3通信子程序
S7-3OOPLC与IND331称重仪表的Profibus通信子程序如图2所示。其中,命令号送到PQW258后,实际上是在延迟几十毫秒之后读取数据的,这里PIW258进行字节交换是因为IND331仪表选择的浮点数字节顺序为“Standard[1]",与S7-300PLC的通信格式不相符。为了免去字节交换,可以设定字节顺序为“ByteSwap[0]”。另外,通信时间到的比较框中的“状态字”实际上就是表4中实际用到的代码,本系统中用到了“0、13、14和19”这4个代码,即读毛重、目标值、正允差和提前量⑻。

通信子程序流程图

通信子程序具体调用实例如图3所示。

通信子程序具体调用实例图

通信子程序的输出/输入参数见表5、6。

通信子程序的输出/输入参数表

通信时间采用200ms定时器进行定时,只有定时时间到,才发送主站命令并读取数据,以保证通信正常。这里的定时时间可以根据参数的多少取值,一般在50-200mso通信时间的长短很重要,过长或过短都不能正常通信。
4应用实例
将笔者设计的通信子程序应用于杭州某锦纶生产企业的PTA和SEED静态称重配料控制系统中,如图4所示(并未标出输入开关量的连接)。其中,S7-300PLC通过ProfibusDP总线与IND331称重仪表进行通信,读取称重目标值、提前量、正允差和毛重。根据这些参数的不同取值范围,S7-表5通信子程序椅出参数通信子程序的输出/输入参数见表5、6。
通信时间采用200ms定时器进行定时,只有定时时间到,才发送主站命令并读取数据,以保证通信正常。这里的定时时间可以根据参数的多少取值,一般在50-200mso通信时间的长短很重要,过长或过短都不能正常通信。
300PLC通过输出开关量的不同组合输出控制变频器MM440对螺旋给料器进行变频调速,从而实现快速喂料、慢速喂料和精细喂料。S7-3OOPLC的其他输岀开关量可以实现其他电器设备的联锁控制,而S7-300PLC的输入开关量用于监视整个系统的运行状态。

静态称重配料控制系统结构框图

5结束语
该通信程序在使用过程中,通信可靠、通信速率快,通过适当的改动,就可以实现其他PLC与称重仪表IND331的Profibus通信,因此该通信程序具有一定应用和推广价值。

作者:孙明革
 

深圳市卓禾仪器有限公司是一家专门从事称重仪表和全自动包装码垛生产线的研发及生产的高新技术企业,所生产的JY500系列称重显示控制器(包括配料秤仪表、皮带秤仪表、包装秤仪表、重量变送器等)高速高精度,使用寿命长。卓禾仪器有十数年的现场校验经验,在业内有良好的口碑,且有专门的售后工程师帮忙解决产品使用过程中遇到的技术问题,客户可以放心省心顺心的使用我司的产品。如果对我司的产品感兴趣,欢迎咨询。

分享到