《电子技术应用》
您所在的位置:首页 > 其他 > 设计应用 > 一类基于Windows CE的连续式单针绗缝机上位机程序设计
一类基于Windows CE的连续式单针绗缝机上位机程序设计
来源:微型机与应用2010年第16期
于 镭, 杨 凯
(青岛科技大学 自主导航与智能控制研究所,山东 青岛 266042)
摘要: 以基于Windows CE操作系统运行的应用软件作为上位机,以自主开发的通用运动控制器作为下位机,以用户对连续式单针绗缝机的需求为基础,构建成连续式单针绗缝机控制系统。采用统一建模语言UML建立连续式单针绗缝机上位机用例图,并根据对用例图的分析建立上位机软件层次模型。详细分析了层次模型之间相互转换的条件和约束关系,使程序具有较高的可靠性和简洁的可维护性。
Abstract:
Key words :

摘  要: 以基于Windows CE操作系统运行的应用软件作为上位机,以自主开发的通用运动控制器作为下位机,以用户对连续式单针绗缝机的需求为基础,构建成连续式单针绗缝机控制系统。采用统一建模语言UML建立连续式单针绗缝机上位机用例图,并根据对用例图的分析建立上位机软件层次模型。详细分析了层次模型之间相互转换的条件和约束关系,使程序具有较高的可靠性和简洁的可维护性。
关键词: Windows CE; 连续式单针绗缝机; 通用运动控制器; 统一建模语言

    随着科学技术的发展,用户对自动化系统的整体性设计提出了很高的要求。在中国传统的纺织业中,随着电脑绗缝机的广泛应用,客户对绗缝机的自动化程度要求越来越高,连续式电脑绗缝机也就应运而生。
 传统的电脑绗缝机必须由人工通过夹布架把需要绗缝的布料夹好,然后放到绗缝机上进行绗缝,等花样绗缝完成后,再手动把布料拆下,卷起。这种绗缝机操作起来费时费力,需要较多的人一起配合工作。而新型的连续式绗缝机则用气动装置控制机械夹子替代了夹布架,当要入布时先打开入布闸门,然后打开夹子,卷布装置拖动布料到达要求的位置,关闭夹子,张紧布料,关闭入布闸门,入布过程完成。绗缝完成以后先打开入布闸门,松开夹子,卷布装置就可以把已经绗缝完成的布料卷起,最后通过切刀把布裁开,一块布料的整个绗缝过程就完成了。整个过程只需要一个人在控制面板上操作就能完成,省时省力。
 本文针对连续式电脑绗缝机的特点,采用了基于Embedded Visual C++开发的上位机软件和自主研发的通用运动控制器来实现绗缝功能,满足实际生产需要。
1 连续式绗缝机控制原理
 整个绗缝机运动系统主要由基于嵌入式操作系统Windows CE的上位机程序、基于Motorola DSP的通用运动控制器、伺服电机和传感器等外部执行装置组成。在这个系统中,上位机程序就像人的大脑一样处理各种指令信息以及可能发生的异常;通用运动控制器则类似于人体的神经中枢,将上位机发送的指令传送给外部执行装置,并将执行装置的反馈信息传回到上位机程序;外部执行装置则相当于四肢和感觉器官,根据上位机的指令来完成相应的动作,并把外部的一些信息反馈回去。绗缝机的工作原理是用户在计算机上设计出要绗缝的花样,将花样传入下位机的控制器中,控制器根据设计好的花样控制M轴电机带动针架上下往返运动,往返一次绗缝一针,控制X轴电机和Y轴电机带动面料前后、左右移动,在织物上绗缝出设计的花样,从而实现绗缝的目的[1]。
2 系统的用例建模
 UML[2]是一种可用于大型系统建模的统一建模语言, 它不仅支持面向对象的分析和设计, 还支持软件开发过程。用例视图描述系统应该交付的功能,也就是外部参入者所看到的功能[3]。本软件设计采用UML建模语言,对连续式绗缝系统进行用例分析,通过对整个系统框架进行构造来实现上位机软件设计和建模。上位机是整个系统的最顶层,主要功能是根据操作者的要求发送数据和指令,并将必要的位置、速度以及故障报警等信息读取回来。因此根据上位机的功能要求使用UML构造上位机的用例图,如图1所示。

   界面显示又细分为操作界面显示、花样显示、当前绗缝参数、运行信息显示。其中,操作界面显示中包含了方向键、参数的设定、绗缝功能的选择,以及对花样的选择;花样显示则显示当前绗缝花样,并实时显示在轨运动轨迹;当前绗缝参数显示了当前绗缝的针距、速度、花样名称、X/Y轴坐标;运行信息所显示的是绗缝状态、报警信息和提示信息。
 设置参数中包含了对将要绗缝的花样的参数设定,其中包括针距、转速、空走速度、加固、断线检测、花样补偿的设定。
 功能选择细分为绗缝功能选择、离轨运动、在轨运动、针梭调整、花样管理的选择以及急停功能。其中,绗缝功能包括定起绗点、定出布点、定时打油;离轨运动包括回断线点/穿线点、回起绗点/收绗点、方向键空走、回出布点、框架校零/归零;在轨运动包括开车、停车、向前/后空走;针梭调整选择包括重定梭位,高点、对梭、回高点、手动;花样管理包括读取、预览花样、花样打版。
3 上位机软件结构
3.1上位机软件层次图

 通过对绗缝机上位机用例图的分析和软件的构建可以将上位机软件划分为四个层次:系统类(CSYSTEM)处于系统的第一层,系统类的成员类(CDlg、CIC、CMailBox)处于系统的第二层,人机交互界面类(CDlg)的成员类(CHFShow、CHFDoc)和智能控制类(CIC)的成员类(CDSP_IMC、CKB_IMC、CKB_Process、CHF_Process)处于系统的第三层,作为公有成员存在的插补类(CChaBu)处于系统的第四层,如图2所示。

 系统类(CSYSTEM)在程序初始化时被实例化,其成员类也随之实例化。系统类不提供具体方法,只是作为系统的“框架”。
 智能控制类(CIC)为绗缝线程提供主控函数,响应用户操作、调控设备状态并作出相应的动作。人机交互界面类(CDlg)是以图形界面形式与用户交互,通过通信接口类与智能控制类通信,将文件读写类、图形与文件显示类实例化,作为其成员。通信接口类(CMailBox)为智能控制类和人机交互界面类的通信提供接收和发送服务,并存储待接收的信息。
 处于第三层的图形与文本显示类(CHFShow)为程序提供图形及文本显示方法,并支持特殊功能,例如:动态跟踪轨迹等。文件读写类(CHFDoc),提供文件读写方法,读取花样文件,写入信息参数,并为特殊功能处理提供支持,例如:快速前进等。DSP运动控制类(CDSP_IMC),通过串口类与运动控制器通信,并在内部提供存储区,存放由串口传递来的信息。跨步段处理类(CKB_Process)和绗缝段处理类(CHF_Process),通过基于段的插补,分别得到跨步段和绗缝段的运动控制数据,并存储在动态数组中。
 插补类(CChaBu)提供基于花样段的插补方法和花样插补数据,并在插补方法中启动插补线程,对花样进行插补。
3.2上位机软件活动图
 封装性作为面向对象程序设计的基本特征之一,是指将抽象得到的属性数据和行为代码有机地结合起来,形成一个具有类特征的统一体[4]。此外,通过封装,可以决定对象的哪些属性和行为作为内部细节被隐藏起来,哪些属性和行为是作为对象和外部的接口。本文中的上位机程序就很好地利用了面向对象程序设计的封装性,将系统类的子类划分为三个大类,即人机交互界面类、通信接口类、智能控制类。程序运行时,他们之间的相互关系如图3所示。

   在程序中,人机交互界面类和智能控制类分别通过LoadMailBox()装载了信箱类对象(mBox)的地址,人机交互界面类通过这个地址调用信箱类中的Send()往信箱类中的结构体变量添加数据,这个Send()就是信箱类对于对话框类的外部接口。智能控制类则通过LoadMailBox()获得的信箱类对象的地址调用Receive()来取出对话框类在信箱类结构体内存放的数据,这个Receive()同样是信箱类对于智能控制类的外部接口。同时智能控制类还能对人机交互界面类产生的系统信息进行响应。图3简洁明了地描述了程序中类与类之间动态活动过程。
 通过对各个类之间的封装可以很好地减少由于各类之间的相互调用可能引起的错误,与此同时,从UML的活动图中可以清晰地看出各个对象之间的关系,有效地对系统工作进行掌控,防止因软件功能互相耦合而引起的逻辑混乱。
4 嵌入式操作系统Windows CE
    鉴于绗缝控制系统对实时性以及图形界面显示等方面的要求,选择Windows CE作为整个系统的操作系统。作为微软的嵌入式操作系统,Windows CE以其高可靠性和稳定性、硬件的良好兼容性、较高的安全性和容易上手的开发环境[5]等优点深受广大开发者的喜欢,而且可以根据控制系统的需求灵活地进行裁剪,去掉一些无关的功能,使系统运行起来更加稳定、高效。
    本文提出了一种单针绗缝机上位机程序设计方法,分析和构建了上位机的主要功能、实现方式和软件流程,并通过UML图分别展示了上位机用例图、软件层次图和动态活动图,以及根据应用需要对操作系统的选择。使用UML图进行软件设计能够使得软件层次更加清晰,结构严谨,可维护性强,充分体现出UML在面向对象编程中所起的重要作用。同时,本文所叙述的软件设计和建模方法,对其他上位机软件开发有很好的借鉴作用。
参考文献
[1]  高鹏翔.独立绗缝机计算机控制系统的设计[J].纺织学报,2001,22(1):48-57.
[2]  BERGENTI F,POGGI A.Supporting agent-oriented modeling with UML[J]. International Journal of Software Engineer and Knowledge Engineering,2002,12(6):605-618.
[3]  GOMAA H. 用UML设计并发、分布式、实时应用[M]. 吕庆中,李烨,罗方斌译.北京:北京航空航天大学出版社,2004.
[4]  RICHTER J. Windows核心编程[M]. 王建华,张焕生,侯丽坤,等译. 北京:机械工业出版社,2000.
[5]  薛大龙,陈世帝,王韵编著.Windows CE嵌入式系统开发[M]. 北京:电子工业出版社,2008.

此内容为AET网站原创,未经授权禁止转载。