面向多品种小批量制造的刀具可视化辅助编码设计*

2015-01-01 03:12房亚东
西安工业大学学报 2015年4期
关键词:代码刀具可视化

白 瑀,曹 岩,房亚东

(西安工业大学 机电工程学院,西安710021)

编码是一种信息对象标识方法,采用分类方法和元数据描述事物特性[1].目前企业广泛应用的编码包括隶属码、分类码和流水码三种方式[2].隶属码是基于产品隶属关系而制定的编码规则,此编码能够清晰地看出产品、部件隶属及借用关系.隶属码在制造型企业的手工编码应用很多.分类码是基于结构、功能及其他特征信息建立起来的编码方法.流水码是最简单的编码方法,是按照顺序编码.这三种编码和组成方式构成了编码规则的核心内容.产品分类和编码是企业信息化管理的基础.企业常见的企业资源计划 (Enterprise Resource Planning,ERP)、产 品 数 据 管 理 (Product Data Management,PDM)软件提供有信息编码方法,这类管理软件倾向于使用人工难以识别的流水码进行编码.文献[2]提出了一种基于多分类的流水编码方案,发现这种方式满足深度信息化要求.当今社会信息高度灵活的,对于中小型发展型的企业,产品和生产过程灵活多变,流水码已经不能满足需要,手工编码虽然灵活,但是工作量巨大,运行过程中难免有失误,长期使用会降低企业管理水平.本文提出将企业编码分为设计编码结构和管理编码结果(代码)两个阶段,在编码结构设计阶段注重信息的容量和可扩充性,在代码运行阶段注重信息的存储与查询,通过这种方式提升企业信息标准化管理水平.代码在运行中可能会出现两个问题:①分类的专业化导致编码规则难以修改,只有专业人员制定的编码规则才有实际应用价值;②代码抽象的结果,使得只有专业人员才能明白代码串的具体含义,阻碍了信息化人员对编码的管理.本文根据刀具在企业生产中的工程应用,建立刀具可视化辅助编码系统,利用计算机辅助编码技术实现编码设计与代码运行维护,通过将编码规则形成计算机里软件可识别的特定格式文件后,进行分发和更新,在软件辅助指导下编码,以期提高信息编码效率,降低误码率.

1 刀具编码规则的定义

关于编码规则的研究指出信息分类需遵循科学性、系统性、扩充性、兼容性、适用性等原则[3-5].刀具编码总长13~14位,规范如图1所示.

图1 刀具编码规范Fig.1 Tool coding standard

本文对规则知识采用可扩展标记语言(Extensible Markup Language,XML)格式存储,采用XML文件作为描述编码规则[6]的优点为

①XML格式文件扩充性比较好,便于管理编码规则节点,也便于扩充新的编码规则类型;

②XML文件可读性好,便于手工检查错误,计算机处理也方便;

③XML文件便于网络传输,便于制作网络版本编码规则解析程序,能够适应浏览器/服务器结构(B/S结构)程序.

2 可视化编码模块的设计

2.1 功能设计

可视化编码模块根据刀具编码要求须具备的功能为

1)及时响应键盘输入与鼠标事件.用户输入具体编码时,不是必须按编码规则顺序输入,可能先输入某一码位,再输入其他码位,因此经常对码位进行定位与切换,键盘用于输入字符信息和相邻码位的切换,而鼠标用于任意码位的切换.

2)编码过程提示.在编码过程,定位到码段后,需要3种动态提示:① 该码段所代表含义应该给用户提示;② 该码段所有取值的含义也要进行提示,这些提示可以节省用户查找编码手册花费的时间;③ 游标提示,用户输入位置高亮度显示.

3)编码完整性检测与代码入库.为了便于和其他软件配合,提供编码完成后复制到剪贴板操作.代码入库前要检查代码的唯一性.

4)用户输入记录.当对某些码位设置具体字符值后,该码位的段提示信息、取值信息、占位长度、码位类型等按照编码节点顺序对比排列和显示.

5)码位取值编辑与修改.当输入发生错误时,不合理的输入要被剔除,符合要求的输入替换历史输入.由于每个码位的长度可能不一致,因此编辑以段为单位,编码长度内具有提示游标,当该码位的第一个字符发生变化时,码段其他字符要相应变化.

2.2 界面设计

本模块为用户进行编码和入库时使用的模块,对人机接口有很高要求,软件界面必须具有操作简单、提示信息完整、输入流畅、内容清晰等特点,便于非专业人员快速实现具体编码.可视化编码界面设计结果如图2所示.在此,图形界面设置为5个区域:①编码结果显示区域.在界面正上方显示多个方框代表编码字符长度和位置,用户有输入时,字符显示在方框内部,绿色高亮度方框为游标,可用键盘上左移、右移键定位,用户还可以在该区域用鼠标点击方框以定位输入位置,在游标上方进行编码长度、排列位置提示,下方进行本码段含义提示.本区域利用底层的绘图操作编程,结合用户输入事件(键盘输入、鼠标按键),跟踪显示码位提示信息,动态更新用户输入,实现了编码过程可视化、形象化;②编码段提示区域.在界面中间位置用于提示,本区域列举本编码段所有可输入字符以及对应含义,不同类型的编码节点可能具有不同的提示方式,用户可以在本区域鼠标双击提示行以实现对应字符输入;③编码结果区域.在界面中间右部,用于存储编码结果,当用户完成编码后,可以将结果代码复制到剪切板或存入数据库;④编码结果逐位提示区域.在界面中下方,用于存储用户每次输入,每个码段的含义以及用户输入码的具体含义,高亮度行代表正在输入的码位.对该区域选定行可以定位输入游标;⑤命令按钮操作区域.在界面的最下方,用于实现打开编码文件、清除代码、定位输入游标等操作.

图2 用户输入编码界面Fig.2 Coding interface

2.3 运行解析

对于已经定义好的编码规则,可以在编码运行界面配合用户输入事件对规则进行运行与解析.本柔性编码系统采用变量名、规则、用户输入相结合的方式实现规则的解析,解释器在计算机内部表达为运行表结构,其解算步骤为

1)初始化运行表.深度优先遍历编码规则树,对每个编码节点进行升序标记.节点分别命名为“{名称_@index}”,其中“index”为顺序标记,“{}”和标记“_@”是为了保证变量名称可读性.

2)构造运行变量表.变量表为按照标记顺序排列的表结构,表中每行数据包括运行变量名称、编码值、编码位长度、编码完成标识、编码操作和条件变量组成,根据编码节点信息、用户输入代码、设定编码条件计算得到每行数据.用户输入代码的过程就是填写运行变量表的过程.

3)运行时编码条件判断.当有用户输入时,需要对变量表中的所有设定编码条件进行判别,符合条件的进行编码,否则不进行编码.巧妙的设计条件变量可以节约大量计算时间,比如判断用户输入字符是否包含在合法字符集合.

4)编码解析、代码提取与显示.运行变量表里对应于游标所在行,对用户输入事件进行响应,其对应操作可分为代码输入、代码编辑和游标定位.最终编码结果就是运行变量表里按顺序各个编码节点输入值排列组成,即形式如“{???_@1}”“{???_@2}”...“{???_@n}”所代表的编码值.根据运行变量表的结果刷新显示界面相关信息.若某个编码位需要参与编码但是用户尚未进行输入,则此编码位标识为假,则运行变量表尚未完成,运行变量表中所有编码节点的标识都为真值时,得到一个完整合理的代码.

在编码过程运行时,可能遇到以下情况.当用户输入编码时,认为可输入字符不合理,则会考虑转向编码规则设计模块.对相应的编码位进行增添或修改,也就是修改编码规则.也可在完成编码后将结果存入数据库.编码规则运行解析如图3所示.

图3 编码规则运行时解析Fig.3 Running and interpreting the coding rules

3 编码查询模块的设计

当编码实施一段时间后,编码数据库里存储了大量的编码信息,此时用户会针对实际需求对编码库内所有信息进行查询,通过筛选操作找出感兴趣的数据项集合.因此,刀具可视化辅助编码系统须具备查询模块.根据刀具编码查询实际需求,查询模块须具备编码存储、码位定位、查询方法、多次或复合查询以及编码管理功能.

3.1 编码的存储

当用户完成编码后,为了便于中、西文统一处理,代码转换成Unicode字符串加以存储,这种做法的优点是将结果作为单一字符串存储,占用空间少,操作简单,易于扩充,缺点是码位信息丢失,使用前需要指定编码规则重新解析.编码以数据库方式存储,数据库采用内嵌的Sqlite开源数据库,具有小巧、速度快等优势,支持标准的数据库结构化查询语言(Structured Query Language,SQL)所有基本语法,数据库的管理、表建立、记录修改与删除都采用SQL语法实现.数据库表字段结构见表1.

表1 数据库表的字段结构信息Tab.1 Structure of database

建立表结构的SQL语句为

“create table cs (code text,memo text,ID INTEGER PRIMARY KEY )”

3.2 编码的查询

由于编码以字符串形式存储,字符串中每个码位的含义不同,因此不能通过常规的数据库查询语言实现,只能设计针对字符串各个码位的特定查询方式.具体包括:①定位查询码位.通过起始位与查询长度实现,该方式可以实现任意单个码位的定位,当设定码位后,查询结果区域的编码记录自动按照设置进行字符串划分,独立显示出该码段的内容;②设定查询条件.当码位确定后,需要设置查询条件以确定记录该码位是否符合要求,根据工程需求,设计了两种查询条件:集合判别法(将码位按照字符串数据类型,判断该码位是否在一个字符串集合里)与比较判别法(将码位按照字符串或数值数据类型,判断该码位是否在指定区间);③设计筛选方式.将当前记录集记为A,符合查询条件的记录记为B,则筛选结果可以设计为B或A-B,通过多次筛选,可以得到最终的记录集合.编码查询界面设计结果如图4所示.

图4 编码查询界面Fig.4 Code database query interface

4 结 论

文中根据刀具在多品种小批量制造模式企业生产中的编码需求,建立刀具可视化辅助编码系统,利用计算机辅助编码技术实现编码设计与代码查询,通过将编码规则形成计算机里软件可识别的特定格式文件后,进行分发和更新,在软件辅助指导下编码,得到的结论为

1)面向多品种小批量制造的刀具可视化辅助编码系统对链表、树、字典、集合等数据结构进行操作,实现了刀具专业知识分类、XML文件解析、用户界面设计、事件响应编程和数据库存储,刀具编码直观、简洁、高效.

2)专业技术人员可依据系统引导创建和修改编码规则,进行可视化操作,屏蔽了复杂的编程过程,便于专业技术人员设计码位具体信息,又便于信息标准化人员管理编码规则,以产生质量较高的代码,对制造企业信息标准化提供技术支持.

3)刀具可视化辅助编码提高了刀具信息编码柔性,实现了编码信息结构化调整和扩充,刀具编码查询与维护效率提升,误码率降低,刀具编码得以规范.

[1] 肖修剑,王家顺,王田苗,等.信息编码与面向对象的信息编码模型研究[J].微计算机信息,2003(6):79.XIAO Xiu-jian,WANG Jia-shun,WANG Tian-miao,et al.Information Encoding and the Object-Oriented Information Code Model [J]. Microcomputer Information,2003(6):79.(in Chinese)

[2] 蔡娟,赵长生,李永平.一种基于多分类的流水编码方案[J].CAD/CAM 与制造业信息化,2013(6):25.CAI Juan,ZHAO Chang-sheng,LI Yong-ping.A Kind of Multi-Classification of the Order-Based Coding Scheme [J].CAD/CAM & Digital Manufacturing Industry,2013(6):25.(in Chinese)

[3] 李迎光,周儒荣,黄翔,等.动态扩充的零件库系统的研究与开发[J].机械科学与技术,2003,22(3):505.LI Ying-guang,ZHOU Ru-rong,HUANG Xiang,et al.Research and Development of Parts Library System with Dynamic Expansion.Mechanical Science and Technology,2003,22(3):505.(in Chinese)

[4] 杨宾宏,王俊彪,蒋建军,等.面向统一数据源的企业信息编码体系设计与实现[J].机床与液压,2007(10):13.YANG Bin-hong,WANG Jun-biao,JIANG Jian-jun,et al.Planning and Realization of the Enterprise Information Codes System Oriented to Unified Data Source[J].Machine Tool & Hydromechatronics Engineering,2007(10):13.(in Chinese)

[5] 王俊彪,王百灵,蒋建军,等.信息编码本体化技术及其集成应用研究[J].机械科学与技术,2008,27(11):1261.WANG Jun-biao,WANG Bai-ling,JIANG Jian-jun,et al.Application Research of Ontological Information Coding Technology in Information Integration[J].Mechanical Science and Technology for Aerospace Engineering,2008,27(11):1261.(in Chinese)

[6] BAI Y,WANG F,CAO Y.Flexible Coding System Design Based on Rule Knowledge and XML[C]//2012International Conference on Computer Science and Electronics Engineering, ICCSEE 2012.Hangzhou:IEEE Computer Society,2012:468.

猜你喜欢
代码刀具可视化
基于CiteSpace的足三里穴研究可视化分析
思维可视化
基于CGAL和OpenGL的海底地形三维可视化
无织构刀具与织构刀具铣削性能对比研究
“融评”:党媒评论的可视化创新
创世代码
创世代码
创世代码
创世代码
切削刀具刃口形貌对刀具使用寿命的影响