基于C#扩散炉设备上位机软件的开发
2024-03-28赵文军
赵文军
(包头铁道职业技术学院 内蒙古 包头 014060)
0 引言
扩散炉上位机软件的开发课题具有重要的实际意义。在工业控制领域,使用C#编程语言开发的上位机应用最广泛[1]。 随着社会的发展,用户个性化的需求越来越多。在光伏行业从事太阳能电池片制造的企业较多,不同的企业扩散炉设备在工艺和需求上存在差异。 上位机最大的优势在于其能够开发出与企业需求相互对接的产品,及在后期的使用过程中根据设备的需要扩展相应的功能[2]。需求分析是开发过程中的重要环节,分析的过程要结合设备自动化程度、企业建设规模及未来的发展模式。 在总体构架下不断地细化各部分的需求,能够提高开发过程中程序设计效率,为程序设计中的特别需求提供编写代码空间。
1 扩散炉设备需求分析
1.1 上位机功能分析及要求
上位机开发的第一阶段是需求分析,此阶段需要与用户沟通以确定需求,是整个开发流程的基础。 主要目的是分析光伏电池板生产企业对扩散炉设备的功能和工艺需求,从而确定上位机软件开发要实现的功能。 扩散炉设备主要需求有以下3 点:
第一,在进行扩散工艺时,要实现对炉内温度的精准控制,见图1。 温度的高低对太阳能电池板的工作效率有重要的影响。 在上位机软件开发的过程中,设备总体对温度的需求是能够实现对温度的精准监测,在上位机界面实时显示炉前、炉中及炉后温度。 并在需要对工艺进行改进时,能够对加热温度进行方便快速的人工调节。 温度的精准控制是实现扩散工艺的关键。
图1 炉温监控界面
第二,在扩散炉进行扩散工艺时,需要对气体流量阀的打开和关闭进行准确的控制,以确保进气量的准确,使扩散过程中产生的有害气体能够通过风机及时排除。 此外,在进行设备调试的过程中,还需要手动对流量阀的状态进行调试。 为了实现这些功能,可以使用C#上位机界面来监控流量阀的状态,并在出现故障时输出报警信息。在将电池片放入炉内的过程中,运行界面应该能够显示进出舟的位置,并在两个极限位置之间显示相关的运动参数和工作中的运行位置。
第三,在扩散工艺进行时,运行界面应该能够显示工艺进行的步骤、每步需要的时间以及剩余时间。 在上位机开发的过程中,要以实际工艺为准,具体到温度高低、流量的大小和工艺的时间。 在界面上要实现根据工艺要求对温度、时间和流量进行现场调整的功能。
1.2 需求分析对开发过程的影响
基于扩散炉设备的需求研究资料,深入分析软件开发的可行性,明确软件开发的重难点并进行细化与完善。 该阶段是分析系统在功能上需要“实现什么”,具体在软件界面中如何进行设置。 例如,在进行扩散工艺时,需要实时监视并且管理整个生产过程。 当某个工艺步骤发生时,按照规定的时序启动相应的任务,以便完成过程控制的相应功能。 最后,对需求进行分析与整理,并使用C#语言编写相应的程序。 此过程能够分析出在上位机开发过程中需要实现哪些功能,完成哪些工作。
在对扩散炉设备整体功能和需求分析的基础上进行上位机软件的总体结构设计。 上位机软件设计是将整个软件分解成不同的模块,每个模块负责实现特定的功能。最终,通过C#语言编写程序及设计软件界面。 在对扩散炉的功能和需求分析中可能存在一些不足之处。 在后期开发阶段需要对这些不足进行完善。 这将增加开发的难度并需要投入大量的时间。 因此,前期的准备工作尤为重要。 需求分析的完整性和收集到的资料的准确性,及在此基础上C#语言应用的熟练程度,将决定下阶段开发能否顺利进行。 这些因素会影响上位机软件系统的稳定性、可靠性和实时性。
2 上位机软件开发过程
2.1 面向对象开发
软件的开发过程本质就是要实现设备的需求。 通过对扩散炉设备运行过程的需求分析,可以将其划分为以下控制单元:推舟控制单元、炉温和气路控制单元以及工艺运行控制单元。 再对需求进行细化,例如工艺控制单元要能够实现扩散工艺根据需求进行工艺调整,如增加工艺时间、提高温度等。 在操作设备的过程中,会产生相应的操作记录。 为了方便工作人员的操作和查找相应的操作记录,需要在软件开发过程中增加对应的界面来细化这些需求。 随着设备的升级和工艺水平的进步,较先进的扩散炉控制系统均已更新或升级到微机控制。 在上位机软件的开发过程中,要注意实用性和可操作性。 通过人与计算机之间的相互理解的交流与通信,最大程度地实现人机界面的信息管理服务和处理等功能。 开发完成的上位机软件应该能够从界面上监控设备运行状态,保证数据的实时性要求。 同时,要实现操作简便,并满足功能需求和技术需求。
在面向对象的软件开发中,所谓的对象是指具有属性和方法的事件或实体。 面向对象开发过程是指把这些具有相同属性和相同方法的对象进行进一步的封装,也就是将数据或函数组成一个集合单元,就获得了面向对象开发过程中的“类”这个概念,而对象则是类的实例化。 在扩散炉上位机开发的过程中,对象是根据类创造出来的。 类是C#语言的核心和基本组成模块。 进行对象描述,需要描述对象的属性和方法。 设计窗体所有的事件都能够在属性中查看。 当事先设置的事件被注册或者被触发,才能够被执行或发生。 这就保证了开发出来的应用程序在事件发生时能够及时响应。
2.2 监控界面开发
监控界面的开发主要是添加相应控件和自定义控件。开发过程把控件放在程序运行界面的相应位置,再添加控件处理程序,响应用户操作生成的窗体应用程序。
在扩散炉上位机软件开发的过程中通过窗体添加控件,在事件面板添加相应的事件。 事件的作用就是响应创建用户界面时控件的功能需求。 主要的开发任务是把控件从工具箱拖放到窗体。 用户在界面操作控件本质上是显示数据或接收数据。 例如在程序启动时添加的按钮(button)控件,把text 属性根据需求设置成初始化、启动工艺和手动/自动。 这些按钮控制程序运行。 操作者通过触摸按钮,就会响应按钮点击(click)事件,执行对应的程序。 需求中的炉温控制单元,为了更好地完成与用户的交互,需要在窗体控制中显示炉内的温度。 炉温显示通过标签(Label)控件实现,调整好控件位置。 要求对温度实时监控,并在标签控件中显示炉内温度、炉外温度和工艺设置温度。 设置的温度信息通过通信传输到下位机,同时利用温控仪测定炉内外的温度。 最终,这些温度信息将显示在控件中以满足用户的需求,并允许用户实时观察扩散炉内的温度变化。 需求中的气路单元,在工艺中需要流量阀打开或关闭,见图2。 为了在界面上显示阀的状态,需要自定义控件。 在界面开发过程中,使用Windows 呈现基础(Windows presentation foundation, WPF)图形系统来增强图形的视觉渲染效果。 通过图形设备接口(graphics device interface, GDI)可以绘制直线、曲线和路径,生成图形化的输出结果以达到界面显示的动态效果。 工艺运行界面中通过添加控件及事件,实现在设备运行中清楚显示工艺运行的步骤和时间,见图3,监控工艺运行状态。
图2 流量阀状态监控
图3 工艺监控
3 工艺设置界面和日志界面设计
3.1 工艺界面的设计
智能制造工业生产设备经过长期的发展,在充分利用计算机技术的基础上取得了很大进步。 扩散炉上位机软件可以更好地实现对太阳能电池片生产过程中的工艺控制,提高企业的生产效率。 在设备生产中可以更好地实现人机交互,工艺设置界面是上位机软件最大优势的体现,见图4。 传统的控制界面如触摸屏要实现工艺的更改就需要对程序进行修改并对相关参数重新设置。 采用上位机软件可以非常方便地根据需求编写新的生产工艺,并且可以在软件中储存多个工艺。 操作人员可以根据需要选择工艺,也可以在原工艺上增添行列进行修改,例如在工艺步骤中修改工艺时间和调整工艺温度等。 这些工作将变得非常容易。 工艺界面可通过表格数据控件Data Grid View 来实现。 它能够实现数据的绑定,通过行列的删减、排序、查询等操作实现数据修改。 工艺设置界面方便操作,可以很方便地实现工业生产中以调节相关参数为目的过程控制。 工艺界面在上位机开发与设计中是最重要的一步,工艺设置界面的优劣直接决定人机交互的便捷性[3]。 上位机设置界面增删功能,可以为后期工艺的改进提供便利,能够及时根据项目设备的实际情况进行调整。
图4 工艺设置界面
3.2 日志界面的设计
日志界面是对设备运行情况及工艺情况数据的记录。日志界面包括3 项内容,分别是报警日志、操作日志和工艺监控。 报警日志、操作日志分别见图5、图6。
图5 报警日志
图6 操作日志
日志界面生成表格和文本来记录事件的发生,可通过表格数据控件来实现。 在报警日志中可以查看设备在一段时间内的运转异常状态,查询到报警的原因和发生的时间。 通过数据对比提高了异常情况的处理速度。 同时,可以根据一段时间内报警的频率,判断零部件是否需要维修或者更换。 操作日志主要记录设备使用过程、操作及维修人员操作记录,以便对设备的使用情况进行跟踪。 工艺监控界面可记录工艺开始的时间和工艺运行中的数据。 日志界面是自动化设备上位机的基本要求。 在日志界面查询历史数据,通过数据分析可获得设备运行的基本情况以及在扩散工艺中的重要数据。 通过日志界面可以实现对设备全方位规范性管理,保证设备运行的稳定性及安全性[4-5]。
4 结语
综上所述,C#上位机依托于Windows 平台在工业控制领域应用广泛。 不同自动化设备在不同领域生产运行中工艺不同,但大多数设备存在相同的控制量,如流量、压力、温度等,这些变量一般要求在上位机界面中进行显示和监控。 同时,上位机也可以给下位机发送相应的指令或者信息。 开发过程中的经验可以在不同项目中借鉴,从而提高软件的开发水平。 这些经验可以在后期其他项目的开发过程中帮助提高产品竞争力。 上位机应用的领域非常广泛,且在开发过程相互联系紧密。 针对扩散炉上位机可以根据后期设备需求对界面功能进行扩展。 这些优点是常规组态软件所不具有的。 C#上位机的最大优势是可以满足个性化的需求,例如可连续监控生产工艺、方便设置工艺流程及快速诊断及解决故障。