结合公司多年各系统平台开发维护的经验,逐步确立了统一各系统平台的思想,在平台建立完善的基础上进行系统的二次开发。
目前焦炉四大机车系统、烧结配水系统、隧道广告系统已实现平台统一(如下图)。
<shapetype id="_x0000_t75" stroked="f" filled="f" path="m@4@5l@4@11@9@11@9@5xe" o:preferrelative="t" o:spt="75" coordsize="21600,21600"><stroke joinstyle="miter"></stroke><formulas><f eqn="if lineDrawn pixelLineWidth 0"></f><f eqn="sum @0 1 0"></f><f eqn="sum 0 0 @1"></f><f eqn="prod @2 1 2"></f><f eqn="prod @3 21600 pixelWidth"></f><f eqn="prod @3 21600 pixelHeight"></f><f eqn="sum @0 0 1"></f><f eqn="prod @6 1 2"></f><f eqn="prod @7 21600 pixelWidth"></f><f eqn="sum @8 21600 0"></f><f eqn="prod @7 21600 pixelHeight"></f><f eqn="sum @10 21600 0"></f></formulas><path o:connecttype="rect" gradientshapeok="t" o:extrusionok="f"></path><lock aspectratio="t" v:ext="edit"></lock></shapetype><shape id="图片_x0020_0" style="VISIBILITY: visible; WIDTH: 369.75pt; HEIGHT: 103.5pt; mso-wrap-style: square" alt="GK08042301.JPG" type="#_x0000_t75" o:spid="_x0000_i1027"><imagedata o:title="GK08042301" src="file:///C:/DOCUME~1/%E5%8F%B6%E5%B8%86/LOCALS~1/Temp/msohtmlclip1/01/clip_image002.jpg"></imagedata></shape>
一、 开发框架组件结构
<shape id="图片_x0020_1" style="VISIBILITY: visible; WIDTH: 415.5pt; HEIGHT: 249pt; mso-wrap-style: square" alt="GK08042302.JPG" type="#_x0000_t75" o:spid="_x0000_i1026"><imagedata o:title="GK08042302" src="file:///C:/DOCUME~1/%E5%8F%B6%E5%B8%86/LOCALS~1/Temp/msohtmlclip1/01/clip_image004.jpg"></imagedata></shape>
IOServer :一个后台管理程序和很多驱动共同组成,属于数据采集部分,通过它可以和不同PLC、智能仪表、远程PC机上的程序和本机程序等软硬件进行数据交互。
系统核心组件:联系前台和后台的枢纽程序,包括以下几个组件:IO数据访问(Swl.ocx),SQL数据库访问(SwDB.ocx),报表打印预览(Swp.ocx),图表曲线(TeeChart5.ocx),数据表格(Vsflex7L.ocx)。
系统项目框架,是系统前台界面和相应数据报表处理程序的管理平台。包括主界面程序(JRSystem.exe),数据初始化(BKInit.exe),数据编辑(DWParam.exe),密码修改(SetPassword.exe),系统信息显示(SystemInfo.exe);
二、 IOServer
基于PC上的后台驱动平台已经成熟,该程序从2005年2月14日开始开发,距今已有多年,目前四车、配水、隧道广告都采用该后台(系统在现场一致运行正常)。
关于IOServer的详细介绍,请参见我其它时间写的文章。
http://blog.csdn.net/yefanqiu/archive/2005/10/05/495547.aspx
http://blog.csdn.net/yefanqiu/archive/2006/05/02/705356.aspx
http://blog.csdn.net/yefanqiu/archive/2006/05/23/751451.aspx
http://blog.csdn.net/yefanqiu/archive/2006/05/27/757327.aspx
三、 系统核心组件
IO数据访问(Swl.ocx),通过变量名称,可以很方便的读写后台数据(可以是多个程序共同访问IO数据)。通过这个组件,后台数据访问的细节便被封装,前台界面可以不关心后台工作方式,而直接获取自己想要的数据。
SQL数据库访问(SwDB.ocx),该组件最早来源于老版本的焦炉四大机车系统的SQL控件(在2004年开发),后升级改进而成。通过该组件可以很方便的访问SQL数据库。
报表打印预览(Swp.ocx),也是来源于焦炉四车系统的报表部分,经过再封装和改进(比如可以判断打印机是否在线等等),通过该组件可以实现表格数据所见即所打的打印功能。
图表曲线(TeeChart5.ocx),数据表格(Vsflex7L.ocx)都是第三方公司著名的组件,一个实现图表显示,一个实现数据表格处理。
四、 系统项目框架
该系统框架为各系统平台提供统一风格的操作界面:标题头,操作按钮,操作菜单等等。此外负责后台程序、前台程序的加载和前台界面的切换。
具体的工艺相关的部分,通过金日SDK开发包提供的样例程序进行开发(用VB开发,借助系统核心组件与IO数据进行交互),其它部分仅通过配置文件定制即可(如界面的颜色,按钮的多少,菜单选项的多少都可以定制)。
此外提供各系统通用的组件程序,如:参数初始化,参数修改,密码修改,信息查看程序等等。
五、 小结
通过采用成熟的开发框架,一是大大减少了开发时间,二是后期在软件方面的维护成本几乎为零。为了使开发平台更加通用化,后期我们又开发了组态软件(目前为嵌入式版本,可在我的blog查看相关文章),这样对于一般项目,其开发时间又近乎为零了。
牛顿为什么伟大,他说是因为他站在巨人肩膀上的缘故。我们没有资格站在巨人肩上,但我们站在我们自己搭的草台之上,也许也能比天生的巨人看的更远。
分享到:
相关推荐
一款名叫ISF的工具,它是一款针对工业控制系统的漏洞利用框架。该工具基于开源项目routersploit,采用Python语言开发,它跟MetaSploit框架有些相似,希望大家能够喜欢。
基于Qt、C和C++开发的工控行业组态软件ICStudio源码+项目说明.zip 基于Qt的工控行业组态软件ICStudio 二次开发平台 没考虑多语言 开发环境 Qt5.13 + msvc1027 项目后续通过插件进行扩展:数据插件,自定义控件...
1、按照以前公司项目做的通用界面模块 2、界面采用了wpf开发,样式齐全,适合工业软件领域使用 3、开发者只需要套用就行了,方便临摹和加入自己的要素。
C#运控框架 雷赛运动控制 DMC系列 运动控制项目 C#源码 1.别看它界面丑,里面的应有应该尽有; 2.麻雀虽小五脏俱全,很适合新手的一个学习项目,绝对推荐
C#并发流程控制框架,基于CSP模型构建,主要用于工控逻辑、运动控制开发。开发者联系591170887相对于传统多线程模型、状态机模型、类PLC模型,逻辑结构紧凑清晰,开发效率极高,易于维护升级;在golang语言的编程...
使用Django框架构建的具有HTML5 HMI的开源SCADA系统。 如果您想设置自己的SCADA系统,请转到 。 特征 基于HTML5的HMI 支持以下工业协议 Modbus TCP / IP Modbus RTU Modbus ASCII Modbus二进制 Phant 签证 1...
一、立论依据课题来源及研究的目的和意义课题来源:公司项目研究的目的和意义: 伴随着计算机技术及相关技术的发展,嵌入式技术已成为后PC时代的主力军,在通讯、网络、工控、医疗、电子、物联网、三网融合、3G等...
WinForm是一门非常经济实惠的技术,就是说,可以在短时间内学会,并迅速借此进行项目开发。尽管在很多方面不够现代,做出来的东西又Low又丑,但绝大多数的应用场景也不需要高端大气上档次。或许正是因为这种特点,...
单片机的使用领域已十分广泛,如智能仪表、实时工控、通讯设备、导航系统、家用电器等。 [1] 从二十世纪九十年代开始,单片机技术就已经发展起来,随着时代的进步与科技的发展,目前该技术的实践应用日渐成熟,...
基于有限状态机的工控系统软件设计.pdf 嵌入式软件中状态机的抽象与实现.pdf 有限状态机FSM在PLD中的实现分析.pdf 有限状态机_FSM_的实现.pdf 有限状态机在嵌入式系统中的实现及应用.pdf 有限状态机在嵌入式软件中的...
敏捷开发中的开源安全治理 新一代灰盒安全测试技术实践分享 企业级 DevSecOps 开源治理方案演进之路 威胁情报创新发展论坛: 威胁情报与主动防御 零信任安全理念下的企业可信环境构建 威胁情报生态联盟介绍 威胁...
****/ERP5.0采用三层结构技术,完全遵循微软Windows DNA网络框架结构,前端采用主流开发工具VB6.0,VC++6.0,后台数据库采用SQL Server 2000,共包括二十几个子系统。 系统结构图 ****/ERP5.0特点 ◆...
目的是为了让大家对比在裸机下实现项目和在QT下实现项目的差异,通过这种差异来体会操作系统和QT这种GUI框架的价值,裸机和基于操作系统开发程序的真正区别。 第三季会用到QT,关于QT的移植小项目,可以到:...
工控行业,还是以有线传输为主。本项目主要采用W5500网络模块,设备为TCP SERVER,与上位机通信,上位机为TCP CLIENT。采集当前信号状态。 2.输入输出控制 检测信号的输入和控制信号的输出。 软件框架说明程序开始,...