纺织车间多LED显示屏的数据组织方法
2011-07-24邵景峰马晓红党金房任克俭
邵景峰,马晓红,党金房,任克俭
(1.西安工程大学教务处,陕西西安710048;2.咸阳华润纺织有限公司动力与能源部,陕西咸阳712000;3.陕西风轮纺织股份有限公司生产技术部,陕西咸阳712000)
近几年,LED技术发展相对比较成熟,已成功地应用于各行各业,得到了用户的普遍青睐[1-2]。就纺织行业而言,LED 的应用也相对较早,如常州市武进五洋纺织机械有限公司、武汉佳德公司等很早就开发了面向纺织车间的LED显示屏系统[3],进行生产车间制造过程的跟踪管理。随着国家科技部“十一五”制造业信息化工程要点[4],使LED显示屏监控系统在纺织企业的生产车间得到了大力推广。目前已成功应用的案例有:河南白马集团、陕西五环集团等大型纺织企业,且其使用效果良好,一定程度上促进了企业生产管理信息化的发展。但是,这两家企业将LED显示屏远程监控的主要功能嵌套在监控系统中,由监控系统来驱动,并没有开发独立的、功能强大的、与监控系统能集成的LED显示屏监控系统。鞍山化纤毛纺织总厂使用的织布车间LED显示系统,采取的技术方案是以W77E58为核心进行机台数据的采集,并利用上位机的RS232串口实现LED显示屏数据内容的传输,鉴于RS232的特点[5],无法实现数据内容的远距离传输,且结构复杂,不利于后期维护。近几年,随着总线技术、通信技术的发展,LED显示屏的硬件和软件都得到了升级和优化,如文献[6]所述将SPI总线技术应用到了LED彩屏的硬件设计中,以及文献[7]所述将GSM网络技术应用于LED显示屏的数据传输中,都大力推动了LED控制系统的发展,即利用LED驱动提供的控制参数[8],实现LED显示屏的远程控制。并且,在对多LED显示屏的远程控制中,免去了单片机硬件电路的设计,直接利用RS232/RS485的转换卡,实现PC与LED的远程数据传输和控制。这对具有多部门、多品种、车间物理位置分布不规则、数据传输距离远等特点的纺织企业来说,利用多LED显示屏对生产过程的管理和系统的实现带来了有利条件,企业可利用LED提供的驱动函数、RS232/RS485转换卡,直接实现LED显示屏的远程控制和数据传输。
鉴于此,提出了一种借助LED驱动函数和RS232/RS485转换卡,直接控制LED显示屏的系统设计思路,对多个显示屏实现诸如闪动、滚动和打字等多种动态显示效果[9],以及动态显示速度的调节,并在PC机上进行显示效果的预览和显示内容的随时修改,避免了硬件电路的设计过程。
1 总体设计
1.1 系统结构设计
系统体系结构采用二级集散式结构,即由各个车间的上位机监控系统、底层多个LED显示屏组成。为了充分利用上位机自带的RS232串口,利用 RS232/RS485通信转换卡,将上位机的RS232串口转换成RS485接口,使上位机监控系统与各显示屏间经RS485总线相连形成主从式结构,实现长距离的通信和数据交换[10],其体系结构如图1所示。企业级信息中心、企管办、人力资源部等的信息管理系统通过局域网与各个车间的监控系统进行数据交换和数据管理,并通过它们向车间发送各类通知。
图1 系统的体系结构
1.2 数据内容的获取
根据系统功能,LED显示屏的数据内容主要由实时数据、历史数据,以及企业或车间通知(优先权高于前两者)3部分组成。
按照上述要求,数据获取算法的构造过程为:
(1)首先读取系统时间T1,当班班次Sm(m=1,2,3)和通知信息表 Notice中的日期 T2,然后判断通知时间的有效性T(T=T1-T2),若T的返回值Val为0,则表示该表中企业或车间需要发布的通知已过期,程序可跳到步骤(2),直接进行数据内容的轮循显示;当Val>0时,表示日期T2的通知仍需要显示,其方法是通知与数据内容交替显示,这时需要计算通知内容的字数,其结果按行动态存储在数组B[i,j]中,且i不能大于显示屏的宽度,以及需要计算通知内容占用的显示屏面数,其值为j除以显示屏高度。
(2)根据用户预设的数据显示内容,首先,在数据库的历史数据表中,对时间T1和班次Sm对应的历史数据按二次分类原则进行分类统计,然后,将数据结果存入预先设计好的数据显示临时表DataTemp中,在每次数据显示时直接从该表按分类存取数据。
(3)在车间交接班过程中,上位机系统当检测到LED显示屏显示到最后一屏时,自动给所有显示屏发送一个系统消息“系统正在交接班!”。
(4)当所有的交接班数据已成功转入历史数据表后,上位机系统所对应的班次自动跳转到下一班次Sm+1,这时,LED显示屏系统检测到班次有变更时,自动清空数据显示临时表DataTemp中的所有数据,并且程序自动跳转到步骤(1),重新获取时间和班次,对下一日期、班次的生产过程进行实时跟踪管理。算法流程图如图2所示。
1.3 数据组织算法设计
按照用户需求分析,所采取的显示屏像素点的直径φ=5,16×16点阵的单色LED显示屏,字体大小为122 mm×122 mm,具有屏幕滚动及可以在指定的位置显示日期、星期和时间功能。因此,对每个显示屏而言,其数据的组织方法都以屏幕左上角为坐标原点,如图3所示。
根据显示屏的内容显示方式和数据组织方式,设显示屏的显示区域的宽度为W,高度为H,扫描线数为Cm,扫描宽度为Ws,显示区域的行地址为Ch,列地址为Cv,并设定显示存储器按Cm位进行编址。
图2 数据获取算法流程图
图3 显示屏像素点与扫描线之间的关系
在系统设计中,所采取的数据扫描算法为:
(1)在上位机与多显示屏之间建立正常的通信机制之后,首先上位机发送一帧清屏命令,将所有的显示屏进行初始化,并计算需要显示的数据大小(W×H)字×Cm位,再在系统中判断是否需要播放通知。若需要播放,则系统首先统计通知内容的字数K,并根据字数K来决定其所占用的页面 T ,其中 T =K/[(W × H)字 × Cm位],接着判断每行通知内容的行宽度是否大于扫描线指向的显示区域行宽度W,以及每页通知内容的高度是否大于显示区域高度H,如果一页的显示内容大于高度H,则需要对H执行取模(MOD H)操作,使所有显示内容在显示屏有效区域全面显示;
(2)根据显示内容的预设条件从数据源中检索需要显示的数据信息,并经整理、统计和组合后,将其暂存到二维数组中;
(3)对每个LED显示屏而言,根据显示屏的控制卡号,上位机首先让Cm条扫描线分别指向显示区域的第 0 ,Ws,2Ws,…,(Cm- 1 )Ws行,接着执行步骤(1)操作,将显示区域中(0,0)、(0,Ws)、(0,2Ws)、…、[0,(Cm-1)Ws]共 Cm个点对应的显示数据依次存放到存储器起始单元的D0、D1、D2、…、DCm-1位中;
(4)首先判断列地址Cv是否大于显示区域列宽 H ,如果 Cv≤H,则 Cv=Cv+1,否则,Cv=(CvMOD H),同样,将显示区域(1,0)、(1,Ws)、(1,2Ws)、…、[1,(Cm-1)Ws]共 Cm个点对应的数据存放到存储器的下一个单元,然后重复上述操作,直到将扫描线当前对应的Cm行的Ws-1列数据全部保存到存储器中为止;
(5)系统首先判断行地址Ch是否大于显示区域行宽 W ,如果 Ch≤W,则 Ch=Ch+1,否则,Ch=(ChMOD W),然后将Cm条扫描线分别指向显示区域的第1、Ws+1、2Ws+1、…、第(Cm-1)Ws+1行,将显示区域中(0,1)、(0,Ws+1)、(0,2Ws+1)、…、[0,(Cm-1)Ws+1]共Cm个点对应的显示数据依次存放到存储器的下一个单元。重复上述步骤,使X=0~(W-1)列对应的W个数据全部存入到显示屏的存储器中;
(6)首先判断暂存二维数组中的数据是否已全部存放到相应显示屏的存储器中,若数组为空,则表示每个扫描线对应行的数据已全部存放到显示屏的存储器中,系统已完成了一个周期的操作;否则,直到扫描线数Cm指向显示区域的第H-1行为止,同样,表示所有能正常通信的显示屏将所有显示区域中的各点对应的显示数据按顺序保存到存储器中,系统就完成了一个周期的操作。
1.4 数据轮询显示算法的设计
算法的设计过程为:首先为每个显示屏的控制单元分配一个唯一的控制卡号 Cno,且 Cno∈(0,255),将控制卡号与每个显示屏之间一一对应,然后在系统数据库的数据表中读取每个显示屏的显示区域值,对显示区域的宽度i,高度j进行初始化,再通过总线为每个控制屏选择通信方式Cwo(1为RS232,2为RS485),接着上位机以一对多的方式向所有的显示控制屏发送一帧地址数据帧(主要包括控制卡号Cno,通信方式Cwo,显示区域(i,j)等),使两者之间建立正常的通信机制,而显示屏则回送通信正常与否的应答信息,通过定时和计数程序实现被控对象的序号按照一定的时间间隔循环变化[11]。这样,对某一个显示屏而言,首先根据用户要求从系统数据库中检索需要显示的数据,并按分组分岗位的原则进行数据的计算、统计,将其暂存到预先设计好的二维数组A[m,n]中,其中m ≥0,n≥0,然后判断需要显示的页面数在 A [m,n]中执行按行累计操作,使其形成分组轮班产量,并将最终结果暂存到数组A[m+k,n]中,再从系统数据库中的历史数据表中按分组分岗位的原则检索历史交接班数据,形成每个岗位的日产量和总产量等,将其暂存到另一个二维数组B[p,q]中,同样 p≥0,q≥0,但 0≤m+k < p,并将 B[p,q]中的所有信息按照先分组分岗位合计、后分组小计的原则,使 B[p,q]中的数值转存到数组 A[m+k,n]中,即:aij=bpj,最后将数组 A[m+k,n]变为 A[m+k+p,n],并将 m+k+p与 i进行比较,判断数组A[m+k+p,n]中的数据所占用的页面数k:
这样,该轮询显示方法与传统的信息显示方法相比,实现了生产数据在各个车间的实时显示,保证了所有显示内容的正确性。
2 系统实现
整个系统的主要功能分为数据源信息的获取,显示内容的数据组织,显示屏的控制与通信3个部分。其中,数据源的获取可通过外部数据接口将需要显示的数据信息直接写入预先设计好的系统数据库的数据表中,或根据系统提供的外部数据接口,实现异构数据库的有效集成,在异构数据库中实时检索、统计需要显示的数据;数据组织形式是系统通过数据组织算法,将需要显示的数据进行数据区域、显示数字大小的判断和合理组织,使所有数据信息显示在显示屏的有效区域,达到最佳效果[12];显示屏的控制与通信功能的主要作用是通过系统参数,与远程显示屏建立通信机制,实现通信参数的读写和显示内容的发送。系统功能中,最主要的是显示屏的控制和通信功能,其控制界面如图4所示,采用动态扫描的方式,实现对显示屏需要显示的汉字、图像和字符等数据信息的传输控制以及显示等功能。
图4 显示屏控制与通信界面
3 结论
多LED显示屏的远程监控系统的构建,以车间的监控系统服务器为上位机,多LED显示屏作为下位机,借助 LED显示屏驱动函数,利用RS232/RS485的转换卡,采用主从式的二级集散式结构,实现PC与LED的远程数据传输和控制,免去了单片机硬件电路的设计,使得系统结构简单、易维护,所开发的监控系统较好地满足了纺织车间多部门、多品种、车间物理位置分布不规则、数据传输距离远等特点的要求,加强了生产产量、质量的监控,实时反映了车间的生产过程,并且上位机的管理系统软件具有显示字符串的修改、显示方式的设定、时间的设置等功能,实现了屏幕显示内容的实时更改,显示方式采用动态显示,以及字符从下往上、从右往左滚动等动态显示效果。
[1]张飙,徐和飞,牛秦洲.LVDS接口LED显示屏数据处理系统设计[J].液晶与显示,2008,23(6):736 -743.
[2]何伟,俞立,董辉.基于IWT图像压缩技术的LED同步显示系统设计[J].液晶与显示,2009,24(2):262-267.
[3]JIA D.Measurement and control technology LTD:the introduction of control system of LED display screen[EB/OL].[2011 - 02 - 27].http://bbs.ctic.org.cn/dispbbs.asp?Board ID=9&ID=6333.
[4]吴迪,夏雪.纺织行业现代集成制造系统的发展战略研究[J].纺织学报,2004,25(1):118 -120.
[5]DUAN R,ZHU L,LIU C Y,et a1.Light emitting diode irradiation protect against the amyloid beta 25-35 induced apoptosis of PC12 cell in vitro[J].Lasers Surg Med,2003,33(3):199 -203.
[6]WAN N S,KAMARIA,KOAY Y J.Equilibrium and kinetics studies of adsorption of copper(II)on chitosan and chitosan/PVA beads[J].International Journal of Biological Macromolecules,2004,34(3):155 -161.
[7]齐从谦,甘屹.制造企业动态联盟合作伙伴组合优化方法[J].同济大学学报:自然科学版,2007,35(12):1674-1679.
[8]张齐,郑金辉,李登红,等.基于FPGA的LED显示屏逐点检测系统的设计与实现[J].液晶与显示,2008,23(5):605 -610.
[9]朱清慧,王志奎.Proteus在LED点阵滚动显示屏设计中的应用[J].液晶与显示,2009,24(2):232-237.
[10]HELIOTOTIS G,STAVRINOUS P N,BRADLEY D C.Spectral conversion of in gan ultravioletmicrocavity light-emitting diodes using fluorine-based red,green,blue and white-light-emitting polymer overlayer films[J].AppL Phys Lett,2005(87):503 -505.
[11]RENW,BEARD R W.Consensus seeking in multiagent systems under dynamically changing interaction topologies[J].IEEE Transactions on Automatic Control,2005,50(5):655 -661.
[12]ZHONGW C,LIU J,XUE MZ,et al.A multiagent genetic algorithm for global numerical optimization[J].IEEE Transactions on Systems,Man and Cybernetics,2004,34(2):1128 -1141.