咨询电话

ENGLISH0755-86329511
学习专题

咨询电话

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

总线技术和嵌入式控制器在称重系统中的应用

发布时间:2020-08-28 11:49:21 |来源:网络转载

0引言
在化工、建材、粮食、冶金、煤炭、装卸运输等行业,都广泛应用着称重控制器。它集称重、计量与控制功能于一体,与恒速秤、调速秤、包装秤、静态秤、预加水等设备配套使用,实现各种物料的称重与控制,以提高生产效率、降低生产成本、减少废、次品数量。随着智能仪表技术的不断发展,其通信技术也在不断增强,当前的称重测量仪表大多带有RS-485.RS-422和RS-232通信接口,完全可以运用现场总线方式实现PC机或PLC控制器对多台秤量仪表的集中监控与数据采集。本文利用工业PC、现场总线(Ethernet.RS-485),WAGO750-842可编程现场总线控制器(PFC)、泓格1-7188嵌入式控制器及智能称重控制器等构成数据釆集及监控系统,成功实现了一台可编程现场总线控制器对多台称重控制器的灵活控制和管理,实时数据采集、自动上报及远程监控功能。重点分析了WAGO750-842PFC、泓格1-7188控制器及智能称重控制器之间的通信问题。
1系统结构设计
1.1RS-485总线接口标准
RS-485是RS-422的改进版本,它采用一对平衡差分信号线传输信号,能有效地抑制远距离传输中的噪声干扰,传输距离可达1.2km,传输速度也较快,可达10Mbps。根据RS-485电气规定,在两线制传输方式下,RS-485驱动器可带32个接收器⑴。
RS-485既可用于多站互连,也可构成环行数据链路系统,在多站或环路中的每一个工作站均有其唯一的地址标记,利用地址标记,每个工作站或设备只接收包含其专用地址的信息。
1.21-7188.WAGO750-842控制器
台湾泓格1-7188嵌入式控制器是基于PC的功能强大的控制器,该控制器内建80188-40处理器,有1个RS-485口、3个RS-232口(其中1个可选RS-485),可与各种带RS-232/485接口的智能仪器通信,控制器使用MiniOS7或RomDOS操作系统,支持TC、BC、MSC语言编程,泓格为此提供大量的库函数及示例程序,用户可通过这些库函数及示例程序实现丰富的功能,如数据采集和控制、通信转换等。
WAGO750-842是德国WAGO公司WAGO-I/O-SYSTEM750系列的可编程现场总线控制器(PFC),诙PFC将Ethernet现场总线适配器的功能及PLC的功能结合在一起,是用于EthernetTCP/IP的可编程现场总线控制器。该PFC支持的协议有MODBUS/TCP、HTTP、BootP、MODBUS/UDP。该控制器使用WAGO-1/O-PRO32或WAGO-CoDeSYS集成编程软件,符合IEC61131-3五种编程语言。
1.3系统的结构设计
杆重系统釆用两层总线型拓扑结构,上层采用Ethernet总线,工程师站PC或IPC、主控750-842PFC站均挂在该层,下层采用RS-485总线,用于连接泓格1-7188控制器和8台SK2001称重控制器从站。称重控制系统结构如图1所示。

称重控制系统结构图

图1称重控制系统结构
Fig.1Structureofweighingcontrolsystem
工程师站主要用于曲线显示、数据査询、报表打印及远程监视与操作控制,主控750-842PFC站用于对8台SK2001称重控制器的轮询访问,每台称重控制器被赋予各自的通信地址码用以识别身份,这样750-842PFC主站即能通过RS-485总线对挂在总线上的8台称重控制器从站进行通信,从而实现对称重控制器的远程数据釆集与监控⑵。该站除了一台750-842总线控制器外,还需要一块750-653串行接口模块RS-485、一块750-600终端模块。图1中1-7188控制器主要作为协议转换器使用,因为称重控制器通信协议中数据校验采用传号(mark)校验和空号(叩3°8)校验,而内人60750-842PFC控制器通信只有奇偶校验,不具有传号(mark)校验和空号(space)校验,因此,通过1-7188控制器的转换,就可完成WAG0750-842PFC与8台称重控制器的通信,从而完成数据采集功能。当然,由于1-7188控制器具有多个串行通信口,它可以同时连接PC、PLC及触摸屏等设备,这对较复杂控制系统实现控制尤为有用。
2通信功能的实现
2.1称重控制器通信协议

第一项为从机地址,即称重控制器地址码,取值为1~8;第二项为指令,取值为01、02、03,分别表示写指令(向仪表写数据)、读指令(从仪表读数据)、键盘命令(向仪表写入键盘代码,等同键盘操作);第三项为参数代码,该参数在键盘命令中表示键值,在读指令中置零,其值为00-11;第四项为数据项,若为读命令或键盘命令则为4字节“0”,若为写命令,则为4字节浮点数(先发低字节);第五项为校验和,为前7个字节数据之和模256。
仪表返回数据格式如图3所示。即仪表收到读命令(02H)时,按以下顺序格式返回数据(92字节)。
流量备用累计量显示屏皮带速度每米重量灯状态报警信息站址校验和流量为4字节浮点数,先发低字节;累计量为8字节定点数,先发低字节;显示屏为64字节代码(汉字、数字、西文);皮带速度(m/s)为4字节浮点数,先发低字节;每米重量(kg/m)为4字节浮点数,先发低字节;灯状态中的位,为“1”时表示灯亮;报警信息中的位,为“1”时表示报警;校验和1字节,为前91字节数据和模256。
2.21-7188与SK2001、PFC与1-7188之间的通信
1-7188控制器通过COM?串口与称重控制器SK2001通信板的RS-485串口相连。由于1-7188嵌入式控制器配有MiniOS?嵌入式操作系统,因此1-7188控制器可编程独立运行。1-7188现场单元控制模块的控制程序,采用TC2.0编写,调用1-7000相应的库函数,主要有初始化模块、定时采集模块、数据通信模块等。在C语言编程环境下程序编译调试成功并生成EXE文件,连接计算机串口和1-7188COM,口,给I-7I88上电并执行7188.EXE,然后运行LD3.EXE控制程序,将所生成的EXE文件下载到1-7188中,在磁盘提示符下直接键入文件名即可运行。
WAG0750-842PFC通过750-653串行接口模块与1-7188嵌入式控制器的COM.串口相连(这里COM,口通过IP】跳线设置为RS-485总线)。WAGO产品提供了专门用来控制通信的库函数,供编程人员调用。在WAGO-CoDeSYS集成编程软件中,可以通过通信参数模块来设置PFC的IP地址、端口等。程序编译完成并模拟测试成功后就可在Online菜单选项中选Login将程序传入PLC中,并可选择Run使PFC开始运行。
3软件编程
3.11-7188«件编程
在1-7188上利用ICPDAS提供的包括InstallCom,RestoreCom、IsCom、ReadCom、ToCom、CleaiCom、Data-SizelnCom,WaitTransmitOver等在内,专门用于串行通信的控制函数,用C语言编写程序,即可实现1-7188对八台SK2OO1称重控制器的轮询访问。程序主要包括数据处理和数据通信两大功能。下面以对其中一台称重控制器的访问为例,且仅写出关键语句。
#include
#include
#include
#includeinclude"..\lib\i7188.h”voidmain()/*通过1-7188COM?口实现对一台
'称重控制器的访问*/
I
/*常量及变量定义(略)*/
Ii»taUCom(2.9600L.8,3,1);
/*打开COM,端口,并进行通信参数的设定,其中校验设置为3-Mark校验*/
ToCom(2,addr)}/*通过COM,送岀待访问从站地址,为可靠,可加延时或判断函数*/
RestoieCom(2);/*关闭COM2端口♦/
InstaUCom(2,9600L,8,4.1)5
/*校验设置为4-Space校验*/ToCom(2,readcmd);
/*依次送出读指令、参数代码、数据及CRC*/
if(■>==92)    /•«据读取完毕,暂存于数组,供
PFC读取和处理♦/
for(i=0:i<=91;i++)|datainl[i]aReadCom(2);|
.RestoteCotn(2);
/*设置COM|口,并通过COM,口将16个字节的数据送出,供PFC读取和处理,这里16个字节的数据包括2个字节的起始数据判断、4个字节瞬时流量、8个字节果计流量和2个字节的数据结束判断•/
.!
3.2WAGO750也2软件编程
在WAGO-CoDeSYS集成编程软件中,有包括Ser-Comm.lib和Serial_Interface_01.lib等在内的库文件专门用于通信接口的设置和控制。通过调用相应通信库文件,实现WAGO750-842与1-7188控制器的通信和数据访问。程序包括通信参数设置和数据处理两部分。    ’
①通信参数设置部分栏序
inteif^cel(xOPEN_COM_PORT:=TRUE,bCOM_PORT_
NR:=2,cbBAUDRATE:=BAUD_9600,cpPARlTY:=PARITY_NO,csSTOPBITS:=STOPBITSJ.cbsBYTESIZE:=BS_8,cfFLOW.CONTROL;=0,iBYTES_TO_SEND:=3,xSTART_SEND:=start,utRECEIVE.BUFFER:=utRECEIVE.BUFF-ER.xINIT:=init);
err:=interfacel.berror;
②数据处理部分栏序
PROGRAMSetfre
VAR    /*变量定义*/
interiacel:SERIALJNTERFACE;
liuliangAT%MDO:DWORD;zhishuAT%MW2:WORD;z;INT;
Uuliangl:REAL;
zl:REAL;    t
END_VAR
SETFRE.interfaces
IFutRECEIVE.BUFFER.date[0]<>16#7EANDutRECEIVE_BUFFER,data[15]<>16#0DTHEN
utRECEIVEJBUFFEILIndex:=0;
ENDJF/,判断数据完整否,7E和0D分别为起始和结束数据*/
IFutRECEIVE_BUFFER.data[0]=16#7EANDut-RECEIVE_BUFFER.data[15]=16#0DTHENFORi:=0TO15DO
/*数据完整,则接收并暂存于数组data口*/
data[i]:=utRECEIVE_PUFFER.data[i]:
utRECEIVE_BUFFER.data[i]:=0;
END_FORutRECEIVE_BUFFER.Index:=0;
ENDJF
%MB0:=DATAI2];
/*4个字节的瞬时流量数据存入PFC内部存储器*/
/*8个字节的累计流量数据存入PFC内部存储器*/%MB15;=DATA1131;
z:=zhishu-23;/*计算瞬时流量,累计流量可由内部存储器直接读出*/zl:=EXPT(2,z);
liuliangl:=liuliang♦zl;
4结束语
对于带有RS-485接口的智能仪表SK2001称重控制器,通过1-7188协议转换,成功实现了WAGO750-842应用价值。

 

 

文章来源于网络转载,侵删

分享到