CN101776878A - 数控机床系统模块参数注册管理方法 - Google Patents

数控机床系统模块参数注册管理方法 Download PDF

Info

Publication number
CN101776878A
CN101776878A CN200910247589A CN200910247589A CN101776878A CN 101776878 A CN101776878 A CN 101776878A CN 200910247589 A CN200910247589 A CN 200910247589A CN 200910247589 A CN200910247589 A CN 200910247589A CN 101776878 A CN101776878 A CN 101776878A
Authority
CN
China
Prior art keywords
parameter
module
interface
management
registration
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN200910247589A
Other languages
English (en)
Inventor
李清涛
孔令磊
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Shanghai Naikai Electronic Science and Technology Co Ltd
SHANGHAI WEIHONG TECHNOLOGYCO Ltd
Original Assignee
Shanghai Naikai Electronic Science and Technology Co Ltd
SHANGHAI WEIHONG TECHNOLOGYCO Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Shanghai Naikai Electronic Science and Technology Co Ltd, SHANGHAI WEIHONG TECHNOLOGYCO Ltd filed Critical Shanghai Naikai Electronic Science and Technology Co Ltd
Priority to CN200910247589A priority Critical patent/CN101776878A/zh
Publication of CN101776878A publication Critical patent/CN101776878A/zh
Pending legal-status Critical Current

Links

Images

Landscapes

  • Stored Programmes (AREA)

Abstract

本发明为数控机床系统模块参数注册管理方法,随着数控系统技术的发展,如何应对不同功能类型的数据进行统一管理;本发明所述的方法,提供一种对数控系统不同模块参数分类存放集中管理的机制,即通过注册参数对象的方式实现对不同的参数模块的集中收集和管理。可以方便的应对数控参数的增加、更新和删除。即:数控系统中的参数可以嵌入到各自的功能模块中,各功能模块单独的管理自己的参数,如果需要显示或者编辑或者持久化模块参数只需要简单的注册一下就可以了。这种方式降低了参数管理的耦合性,对将来数控参数的扩展提供了方便。

Description

数控机床系统模块参数注册管理方法
技术领域
本发明涉及数控机床系统领域,特别涉及系统参数管理技术领域,具体为通过注册方式对参数管理的方法。
背景技术
在现有的技术中,众多类型的数控机床系统最重要的是对加工数据的保护和管理。随着数控系统技术的发展,系统中维护的数据也会不断的改进和增加。如何应对不同类型数据的需求变化;如何对相同类型不同系统版本数据进行的版本控制;如何通过最小的成本来应对频繁需求,这些问题迫切需要一种机制来对参数的管理进行控制。
当前的很多数控系统中已存在很多方式对参数管理进行集中控制,很多系统的一个共同特点是将所有的参数声明到一个参数模块中,然后对这唯一的参数模块进行集中管理。这种参数管理方式的缺点是显而易见的:(1)参数扩展非常困难;(2)随着用户需求的频繁改变,开发人员必须在源文件的大量不同类型的参数中去查找更新,破坏了参数管理模块的封装性,安全隐患也随之出现;(3)随着需求的频繁更改,参数管理模块有可能出现爆炸式增长,这更增加了参数维护工作的困难。
发明内容
为了应对以上参数管理中出现的问题,本发明所要解决,克服现有技术中存在的问题,提供一种对数控系统不同模块参数分类存放集中管理的机制,即通过注册的方式实现对不同的参数管理模块的集中收集和管理。
这种方式使参数的维护只需关注具体的参数模块,参数管理模块会提供针对不同参数对象的访问控制接口,通过这些接口我们只需要提供一个参数对象的唯一标示就可以方便的对指定参数对象进行控制。
参数管理模块包括两个参与者:管理模块和被管理模块。
管理模块是一个参数管理组件,提供了以下程序作为接口:
1.统一的参数管理接口规范;
2.参数的注册和注销接口;
3.参数的视图接口;
4.参数的更新接口;
5.参数的持久化接口。
上述程序1中,统一的接口规范提供被管理模块需要实现的一些方法接口:
a)提供唯一的参数模块的名字(用于持久化);
b)提供对本模块参数的收集操作;
c)提供对本模块参数的更新操作;
d)提供对本模块参数的验证操作;
e)提供对本模块参数状态的实时检测;
上述程序2中,被管理模块(具体参数模块)会在构造的时候主动调用管理组件的注册接口将自己添加到被管理参数对象容器中,这样的话参数管理组件就拥有了此对象并可以对其生命周期进行控制了,如果对象需要释放,参数管理组件就会通过注销接口执行一系列的释放操作。
上述程序3中,参数的视图接口提供了两种参数视图的收集:一种是对单个参数模块的视图信息通过参数对象的唯一序列化名字进行收集;一种是集中提供了对所有注册的参数对象进行统一数据视图的收集。
上述程序4中,参数的更新接口实现了参数管理模块和界面层的交互,用来收集界面层的更新参数,然后通过接口规范中的“c)”步将更新传递到各个参数模块,并将更新结果回馈到界面层。
上述程序5中,参数的持久化接口提供了一个统一的Load()(装载)、Save()(贮存)方法以及一个定时器对象。Load()在系统启动时装载参数文件并更新参数模块;定时器定时的通过接口规范中的“e)”步来检测对象参数的更新,通过接口规范中的“b)”步来收集模块中的最新参数,并将收集到的参数通过Save()写到参数文件中。
本发明所述的控制方法,可以方便的应对数控参数的增加、更新和删除。即:数控系统中的参数可以嵌入到各自的功能模块中,各功能模块单独的管理自己的参数,如果需要显示,或编辑、或持久化,只需要简单的注册一下就可以了。这种方式降低了参数管理的耦合性,对将来数控参数的扩展提供了方便,另外参数管理模块会在系统注销时将所有的参数保存为一份XML文件,这样对将来的版本控制和参数的灵活配置提供了依据。
附图说明
图1参数管理模块关系图。
具体实施方式
为了使本发明实现的技术手段、创作特征、达到目的与功效易于明白了解,下面结合实施,阐述本发明。
在数控机床系统中实现不同模块参数的配置管理,提供一种统一的接口规范,让各自模块自行管理自己的参数,参数管理组件需要做的就是按照一定的规则来收集、显示、更新和持久化参数。
通过系统对象的生命周期来具体说明以下实现步骤:
1.参数管理模块提供一个统一的接口规范IParameter,包括以下内容:
a)唯一序列化名字(SerializeName);
b)收集参数的方法(GetParameter());
c)更新参数的方法(SetParameter());
d)验证参数的方法(Validate());
e)参数状态标志(IsDirty)。
2.被管理参数模块维护自己的一份参数结构体,参数结构体映射参数模块中的具体参数,其目的是为参数管理提供一种统一的结构支持。
3.被管理参数模块继承并实现步骤1中的接口规范,其中
a)唯一序列化名字(SerializeName)是被管理参数模块自行设定的唯一标识名字;
b)收集参数(GetParameter())收集模块参数映射成的参数结构体;
c)更新参数(SetParameter())更新参数结构体并映射更新模块参;
d)参数验证(Validate())提供对当前模块参数的有效性验证操作,验证通过返回True否则返回False;
e)参数状态标志(IsDirty)如果参数被更新并且通过验证,标志为True否则标志为False;
这样就实现了参数模块自行管理其参数的方法。(见图1)
4.参数注册
实现了以上步骤2、步骤3之后,被管理参数模块需要在对象被构造时自行调用参数管理模块的Register(this)方法将本对象注册到被管理参数对象容器中。
5.参数装载
系统启动后,参数模块在调用Register()注册自身对象的同时,参数管理组件会自行调用组件中的Load()方法装载参数文件,参数文件分为两类:一是二进制文件,一是XML格式文件,他们是相同数据的不同文件格式,系统启动优先考虑加载二进制文件,如果涉及不同系统参数的迁移操作可以选择加载更加开放式XML格式文件。
6.参数显示
参数装载成功后,参数管理组件提供了两个接口获取注册参数的视图信息:接口GetView()将注册的所有模块参数以一种特定的格式收集起来支持界面层的显示;接口GetView(string serializeName)通过模块唯一序列化名字来收集指定模块的参数视图信息。
7.参数更新
界面的更新通过参数对象的唯一序列化名字来确定参数来源,然后通过被注册对象容器来查找到参数对应的模块,查找到被更改参数所属的参数对象后,参数管理组件首先通过参数模块的GetParameter()方法备份当前的参数信息,再通过参数名字利用C#特有的反射机制实现对参数结构体对象的更新,之后通过调用参数模块的SetParameter()方法实现对实际参数的更新;更新后通过调用参数模块的Validate()方法来验证有效性,验证成功标志位IsDirty置True并返回True,验证失败则通过SetParameter()方法将备份的参数结构体还原到参数模块中来执行回滚操作,同时返回false。
8.参数保存
参数管理模块维护一个结构体字典,用于收集所有的模块对象的参数结构体映像;还维护一个定时器(循环间隔为1S),定时器会定时的遍历被注册参数对象容器,查询各对象的状态标志IsDirty,如果标志为True则证明参数被修改尚未持久化到文件,这时调用参数管理组件的Save()方法将被更新的模块参数到文件中并置IsDiry=False,到此运行时参数保存完成。
如果被管理的参数模块生命周期结束,即参数调用UnRegister()方法从参数管理模块中注销掉时,需要再次调用Save方法将最后的参数信息持久化到文件,除此之外注销时Save()方法还会保存一份XML格式文档。
以下结合具体例子进一步加以说明:
系统中有一个参数对象Axis,包含有参数
double PerPulse
double LowerLimit
参数管理模块对象名ParamManager;
步骤1.构造参数结构体
Interface IStruct{}
Struct S_Axis:IStruct
{
double PerPulse;
double LowerLimit;
}
步骤2.Axis继承并实现IParameter接口
a)String Name{get(return this.Name;)}
b)IStruct GetParameter()
   {
        S_Axis axis=new S_Axis();
        axis.PerPulse=this.PerPulse;
        axis.LowerLimit=this.LowerLimit;
        return axis as IStruct;
   }
c)SetParameter(IStruct axis)
   {
        S_Axis axis=(S_Axis)axis;
        this.PerPulse=axis.PerPulse;
        this.LowerLimit=axis.LowerLimit;
     }
d)Validate()
  {
      Bool ret=OnValidate();
      If(ret)
      {
           IsDirty=true;
           Return true;
      }
      Else
      {
           Return false;
      }
  }
步骤3.参数模块构造时注册
a)Pubic Axis(){ParameterManager.Register(this);}
b)注册后,参数管理模块会自动调用Load(IParameter)方法装载当前参数对象文件。
步骤4.参数的显示
a)ParameterManager.GetView()接口和ParameterManager.GetView(stringserializeName)接口通过参数管理接口规范的GetParameter()方法收集参数。
b)将收集起来的参数按照一定的显示规则转换为可以支持界面显示的格式。
步骤5.参数的更新
a)界面更新参数,传递参数序列化名字、参数名字、参数的新值给参数管理模块UpdateParameter()。
b)参数管理模块通过唯一序列化名字在被注册参数对象容器中查找到参数对象的引用。
c)调用接口规范的GetParameter()将当前结构体参数信息备份成OldValue。
d)通过参数对象引用和参数的名字借助C#反射机制更新参数对象的结构体映像的值。
e)调用接口规范的SetParameter(newValue)将结构体参数值映射到实际对象参数中。
f)调用接口规范Validate()方法验正新参数的有效性,参数验证成功,置IsDirty=True,并返回True;验证失败,直接返回False。
g)UpdateParameter()接收到接口规范Validate()的返回值,为True时,更新界面显示(如果要求更高的参数实时控制可以发送异步事件对更新的参数进行持久化操作);为False时调用接口规范SetParamter(oldValue)方法回滚参数结构体参数,并向界面参数发送验证失败信息。
步骤6.参数的持久化
h)参数持久化模块维护一个辅助定时器AuxiliaryTimer循环间隔为1秒钟,定时的保存被修改的参数到文件中。
i)参数持久化模块如果收到某个对象的参数更新事件,会立即调用Save()方法对当前对象参数进行持久化(针对持久化实时性要求比较高的模块参数)。
j)参数持久化模块会定时扫描被注册对象接口规范中的IsDirty的值,如果检测到IsDirty=true时,会立即将此对象参数持久化到文件,然后置IsDirty=false;如果检测到IsDirty=false跳出此对象检测继续执行后续操作。
步骤7参数的注销
a)参数注销是通过ParameterManager.UnRegister()接口或ParameterManager.UnRegister(string serializeName)接口实现的,前面的接口对所有的参数模块执行注销操作;后面的接口提供对指定名字的参数模块执行注销操作。
b)注销前参数管理模块会调用Save()方法将被注销对象的参数持久化二进制格式和XML格式文件。
c)参数注销成功后,参数管理模块会将此参数对象从被管理参数对象容器中移除,至此参数对象在参数管理模块中的生命周期结束。

Claims (6)

1.数控机床系统模块参数注册管理方法,其特征在于,参数管理模块包括管理模块和被管理模块,管理模块包括以下程序:
1)统一的参数管理接口规范;
2)参数的注册和注销接口;
3)参数的视图接口;
4)参数的更新接口;
5)参数的持久化接口。
2.根据权利要求1所述的注册管理方法,其特征在于,所述程序1)提供所述被管理模块需要实现的方法接口:
a)提供唯一的参数模块的名字;
b)提供对本模块参数的收集操作;
c)提供对本模块参数的更新操作;
d)提供对本模块参数的验证操作;
e)提供对本模块参数状态的实时检测。
3.根据权利要求1所述的注册管理方法,其特征在于:所述程序2)被管理模块在构造时主动调用管理组件的注册接口将自己添加到被管理参数对象容器中;参数管理组件拥有其并可对其生命周期进行控制,如果对象需要释放,参数管理组件就会通过注销接口执行一系列的释放操作。
4.根据权利要求1所述的注册管理方法,其特征在于:所述程序3)参数的视图接口提供两种参数视图的收集:一种对单个参数模块的视图信息通过参数对象的唯一序列化名字进行收集;一种为集中提供对所有注册的参数对象进行统一数据视图的收集。
5.根据权利要求1所述的注册管理方法,其特征在于:所述程序4)参数的更新接口实现参数管理模块和界面层的交互,用来收集界面层的更新参数,然后通过接口规范中的的更新传递到各个参数模块,并将更新结果回馈到界面层。
6.根据权利要求1所述的注册管理方法,其特征在于:所述程序5)参数的持久化接口提供一个统一的装载、贮存方法和一个定时器。
CN200910247589A 2009-12-30 2009-12-30 数控机床系统模块参数注册管理方法 Pending CN101776878A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN200910247589A CN101776878A (zh) 2009-12-30 2009-12-30 数控机床系统模块参数注册管理方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN200910247589A CN101776878A (zh) 2009-12-30 2009-12-30 数控机床系统模块参数注册管理方法

Publications (1)

Publication Number Publication Date
CN101776878A true CN101776878A (zh) 2010-07-14

Family

ID=42513359

Family Applications (1)

Application Number Title Priority Date Filing Date
CN200910247589A Pending CN101776878A (zh) 2009-12-30 2009-12-30 数控机床系统模块参数注册管理方法

Country Status (1)

Country Link
CN (1) CN101776878A (zh)

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102156445A (zh) * 2011-03-01 2011-08-17 上海维宏电子科技有限公司 数控系统中实现端口逻辑诊断的方法
CN104267676A (zh) * 2014-09-10 2015-01-07 北京航空航天大学 一种面向工程应用的数控切削工艺参数管理系统
CN104361044A (zh) * 2014-10-29 2015-02-18 中国建设银行股份有限公司 一种参数数据保持一致的管理方法及装置
CN104267676B (zh) * 2014-09-10 2017-01-04 北京航空航天大学 一种面向工程应用的数控切削工艺参数管理系统
CN109697131A (zh) * 2018-12-06 2019-04-30 京信通信系统(中国)有限公司 进程间参数管理、同步方法及装置
CN111480125A (zh) * 2017-12-22 2020-07-31 西门子股份公司 保护用于制造产品的生产数据的方法

Cited By (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102156445A (zh) * 2011-03-01 2011-08-17 上海维宏电子科技有限公司 数控系统中实现端口逻辑诊断的方法
CN102156445B (zh) * 2011-03-01 2012-09-26 上海维宏电子科技股份有限公司 数控系统中实现端口逻辑诊断的方法
CN104267676A (zh) * 2014-09-10 2015-01-07 北京航空航天大学 一种面向工程应用的数控切削工艺参数管理系统
CN104267676B (zh) * 2014-09-10 2017-01-04 北京航空航天大学 一种面向工程应用的数控切削工艺参数管理系统
CN104361044A (zh) * 2014-10-29 2015-02-18 中国建设银行股份有限公司 一种参数数据保持一致的管理方法及装置
CN104361044B (zh) * 2014-10-29 2019-02-12 中国建设银行股份有限公司 一种参数数据保持一致的管理方法及装置
CN111480125A (zh) * 2017-12-22 2020-07-31 西门子股份公司 保护用于制造产品的生产数据的方法
US11662702B2 (en) 2017-12-22 2023-05-30 Siemens Aktiengesellschaft Method for protecting the production data for producing a product
CN111480125B (zh) * 2017-12-22 2023-11-07 西门子股份公司 保护用于制造产品的生产数据的方法
CN109697131A (zh) * 2018-12-06 2019-04-30 京信通信系统(中国)有限公司 进程间参数管理、同步方法及装置
CN109697131B (zh) * 2018-12-06 2021-08-24 京信网络系统股份有限公司 进程间参数管理、同步方法及装置

Similar Documents

Publication Publication Date Title
US6138143A (en) Method and apparatus for asynchronous transaction processing
US7548920B2 (en) Systems and methods of accessing and updating recorded data via an inter-object proxy
CN103019791B (zh) 软件部署方法及软件部署系统
CN100395707C (zh) 升级程序的方法
US7827273B2 (en) Machine cluster topology representation for automated testing
US8463670B2 (en) Automated time tracking
CN101840352A (zh) 一种数据库连接池的监控方法及装置
CN105302575A (zh) 一种基础开发框架
CN108647265A (zh) 基于多平台数据交互式系统
CN101901164A (zh) 时间计划调度模块和方法
CN101776878A (zh) 数控机床系统模块参数注册管理方法
US20060123199A1 (en) System and method for optimistic caching
CN101753619B (zh) 用于扩展服务模型的方法和系统
CN103827878A (zh) 自动化密码管理
CN100511128C (zh) 具有xml驱动的体系结构的信息处理方法、装置
CN107193616A (zh) 一种应用程序升级方法及终端
CN101013378B (zh) 动态地迁移通道
CN114915643A (zh) 铁路信号集中监测系统的配置方法、装置、设备及介质
CN1519703B (zh) 可组合挂接的计算机多线程测试系统及其方法
CN102478835A (zh) 一种数控机床系统参数模块注册管理新方法
CN103631594A (zh) 通用流程异步调度方法及系统
CN115981713A (zh) 业务系统管理方法、装置、设备和存储介质
CN112269826B (zh) 一种基于大数据的可视化加工处理系统及方法
US9098613B2 (en) Logging of application messages
CN102752151B (zh) 基于柔性测试技术的测控产品管理方法和装置

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C02 Deemed withdrawal of patent application after publication (patent law 2001)
WD01 Invention patent application deemed withdrawn after publication

Open date: 20100714