咨询电话
ENGLISH0755-88840386发布时间:2021-06-08 14:11:58 |来源:网络转载
0引言
目前精米市场竞争非常激烈这种竞争不仅是产品质量的竞争同时也是产品价格的竞争这就要求必须把握原料采购、生产加工、产品销售的各环节用实际数据去分析影响产品质量和生产成本的各种因素从而制定科学合理的改进措施[1]。精米生产线中原料与成品的有效数据能够反映生产管理、技术管理、设备管理、质量管理的一些真实情况可以将定性的管理上升到定量管理。本系统基于分布式精米生产控制系统实时采集生产线上原料与成品的当前累计量为生产分析和解决问题提供了科学的数据依据。该系统已应用于多家精米生产企业本文以福建某有限公司的精米生产线为例介绍。
1生产线组成
精米生产系统由两条生产线组成。毛谷由原粮秤称重装入经过一系列清理、砻谷、谷糙分离、碾米、抛光等生产工艺流程最后成品由电子包装秤称重装袋。每条生产线都有一个原粮秤和两个包装秤。其中原粮秤安装有测重仪表实时显示当前毛谷的重量和当前累计重量。包装秤也安装有测重仪表包装测重参数类型有十种每次的测重参数由工人按需要设定。
原粮秤仪表与包装仪表的累计值是有效数据实时采集、保存仪表的当前累计值并且通过分析与计算得出一定期限内的出米率等相关参数。这些参数不但可以与生产管理人员的工作量挂钩还可以统计月产量、年产量等为生产管理提供准确可靠的数据基础。
2生产计量系统实现
2.1RS485通讯
本系统采用主从式结构模式即PC机为主机分布现场的各个仪表为从机。PC机串行口为标准的RS232口RS232串口只能实现点对点的通讯而系统需要采集多个仪表数据。同时RS232口一般用于20m以内的通信但1条精米生产线至少要有10台以上的加工设备这样摆布下来长度要有16m以上工艺更完善些的就可达到20~30m。本系统的加工工艺生产线已达到30m并且加工车间与包装车间不在同一厂房两者间隔一约5m的过道。因此RS232接口不能满足系统的要求。
目前工业控制系统广泛采用的RS485收发器利用平衡发送和差分接收能有效抑制共模干扰加上收发器具有高灵敏度能检测低达20mV的电压故传输信号在千米以外得到恢复。RS485可以构成总线型通信网络把多个仪表连接成一个分布式数据采集和控制系统。这种RS485网络结构具有接口简单、灵活性好、价格低、易于控制等优点被广泛应用于工业控制系统中。分布式精米生产计量系统结构见图1。
主控室PC通过RS232/RS485转换器实现与两条生产线上2个原粮秤与4个包装秤仪表的RS485通讯。每一个原粮秤和包装秤都有自己确定的唯一编号(秤号)1线原粮秤和包装秤秤号分别为08、03、042线原粮秤和包装秤秤号分别为07、01、02。其中为了抑制线路回波在RS485总线的首端和末端各连接了一只120Ω阻抗匹配电阻。
2.2上位机系统实现
2.2.1系统主要功能
上位机系统主界面如图2所示。系统可以实时显示原粮秤和包装秤的当前累计数据(以kg为单位)并每间隔10分钟记录一次。系统还可以查看全部历史数据并根据历史记录选择指定时间段内的数据记录。选择记录列于“起始/终止记录表”中便于查看同时可以计算和打印1线和2线包装秤与原粮秤在选择日期时间段内的实际累计重量值和出米率等参数报表。当累计值或出米率有误时会出现相应提示。
2.2.2仪表与主控PC数据通讯实现精米生产控制系统采用分布式RS485总线结构原粮秤与包装秤仪表都设有RS485接口主控计算机通过安装在串口的RS232/RS485转换器实现系统RS485总线的连接。由于转换器内部独特的控制电路直接对PC串口操作即可实现远程通讯。
VB提供的串行通信控件MSComm为应用程序提供了串行接口收发数据、监视和响应在通信过程中可能发生的各种错误和事件的简便方法。当主控PC的串口参数与原粮秤、包装秤仪表的参数(即波特率、奇偶校验、数据位和停止位)设置一致并打开串口就可实现串口的数据收发。串行接口数据的发送代码主要如下:
DoWhilekm_main.MSComm1.OutBuferCount
>0 '等待发送空闲Lop
IfMSComm1.PortOpenThenkm_main.MSComm1.Output=s'指令串写入串口
EndIf
km_main.MSComm1.InBuferCount=0 '清串口接收缓冲区
DoWhilekm_main.MSComm1.OutBuferCount
>0 '等待串口发送完毕Lop
串行接口数据的接收代码为:comm_str=km_main.MSComm1.Input
当串口完成数据的接收按照仪表指令规范分析出有效的累计值显示并保存入库。
2.2.3统计报表的实现
主控PC实时采集的有效数据为2个原粮秤与4个包装秤的当前累计值需要保存的数据只有这6个字段和相应的时间字段因此系统采用了VB自带的可视化管理器创建一个ACES格式的数据库其中包括一个历史数据表用于记录系统实时采集的数据。历史数据报表的显示打印通过报表设计器设计实现。
通过对历史数据表数据的统计与计算可显示、打印选定时间段内毛谷的累计值、成品的累计值及两条生产线各自的出米率。系统主要的报表是原料及成品统计表并且表格的格式较为简单通过打印窗体即可实现统计表的显示与打印功能。
2.3系统实现中的问题
2.3.1数据范围问题
由于仪表显示区域的限制仪表显示的数据范围除去小数点只有7位当数据超出仪表所能表示的范围时仪表数据清零并且显示的是当前累计值。因此历史数据库中的数据存储的只是仪表的当前累计值。当计算原料或成品在一定时间间隔内的实际累计量时就不能简单地把历史数据库中原粮秤或包装秤在前后两个时间的累计值直接相减。时间间隔内实际累计值的计算需要遍历历史数据库中时间段内的所有记录。
在遍历时间段内的历史数据记录时若当前记录的值大于前一条记录的值说明当前记录正常将当前记录与上一条记录的差值累加到实际累计值中;如果当前记录的值小于前一条记录则表明当前在遍历时间段内的历史数据记录时若当前记录是在超出仪表所能表示的范围清零后记录的数据因此直接把当前记录累加到实际累计值中即可。当访问了时间段内的所有记录之后就获得了实际的累计值。
2.3.2包装秤仪表数据读取问题上位机对包装秤仪表的数据请求发送指令为1字节起始符(&H2)、2字节秤号、3字节功能码、1字节类号、2字节累加和、1字节结束符(&H3)。每发送一次请求指令读取的数据是包装秤某一类号的当前累计值每个包装秤的类号有10个因此要获取包装秤仪表的总体累计值需要针对10种不同的类号分别发送一次请求指令并将10个类号的正确返回数据累加。当对某一类号发送了请求指令后则接收包装秤仪表对应类号的返回数据(当前累计值)并进行校验。若出现错误则接收的其他类号的数据将全部无效。这时需要针对所有类号重新发送请求指令直至接收到的每个类号的数据都是正确的。同时为了保证10个数据完全被接收还需延时几毫秒。
本文实现了精米生产线中原粮秤与包装秤累计重量值的实时采集历史数据的保存等功能。通过对历史数据的统计与分析得出的数据如原料及成品的累计使用量和生产线的出米率反映和表示了生产加工的全过程使管理者、操作者能够通过数据来准确的管理和控制生产过程透过数据分析产生问题的原因制定改进措施。该系统操作界面简单易于工人操作并在实践中得到了较好的应用。
本文源于网络转载,如有侵权,请联系删除