制造业的全球化、信息化、服务化、虚拟化、标准化、开放化以及近年来
云计算技术的发展,为制造业的发展提供了新的机遇,一种新的制造模式——云制造应运而生。云制造融合了现有的信息化制造技术及云计算、
物联网、面向服务、高性能计算和智能科学等信息技术,将各类制造资源和制造能力虚拟化、服务化构成云制造资源池,并进行统一的、集中的智能化经营和管理,通过网络和云制造服务平台为用户提供可随时获取的、按需使用的、安全可靠的、优质廉价的制造全生命周期服务。
云制造资源虚拟化技术是支撑和构建云制造资源池的核心技术。所谓云制造资源虚拟化,是指通过虚拟化技术来实现物理资源到虚拟资源的透明化映射,由服务提供者对云制造资源进行统一描述,然后加入到云制造资源池中,可在云制造平台上注册并供服务使用者查询和使用。文献[2]对云制造资源进行了较为详细的分类,并对资源的虚拟化过程进行了描述,包括资源感知及资源的虚拟接入,但对云端资源虚拟化缺乏详细的描述;文献[5]对云制造资源进行概要分类,但缺乏对其特性的描述;文献[6]对云制造资源虚拟化框架进行了讨论,并论述了在虚拟化支持下的云制造关键技术,但是缺乏对云端资源虚拟化的具体描述与实现。总体而言,目前云制造资源虚拟化研究尚处于起步阶段。
云制造资源服务化主要是实现虚拟资源的服务化封装并以云服务的形式发布到云制造平台中,它包括:虚拟资源描述模型构建技术,云服务的统一建模、封装、注册与发布,云服务的动态部署与监控技术等。
不同类型的资源虚拟化采用的方法有所不同,但是其虚拟化的目的是一样的,都是为了后继的资源服务化和资源利用率的提升。目前较为流行的服务化方法是将资源发布成Web服务,然后统一注册。云制造资源中的计算资源与云计算的类同,不同之处在于云制造资源不限于计算资源,而是延伸到包括制造设备资源在内的更广泛的资源,文中正是以制造设备资源的虚拟化和服务化为例来说明云制造资源的虚拟化和服务化问题。为此,文中首先结合云制造服务体系框架,分析云制造资源及其虚拟化的特点,给出制造设备资源描述模型;然后基于CloudSim扩展给出制造设备资源虚拟化模板;最后利用Web服务技术,根据服务组件架构(SCA)框架,在虚拟化的基础上进一步实现云制造资源的服务化,并用实例加以说明。
1 云制造资源虚拟化描述模型
1.1 云制造资源的分析
云制造是在云计算提供的“基础设施即服务”、“平台即服务”和“软件即服务”基础上的延伸和发展,它丰富和拓展了云计算的资源共享内容、服务模式和技术。 云制造服务体系的层次化框架主要包括物理资源层、虚拟资源层、服务层、核心功能层和云平台用户层等。在虚拟资源层,对相应的云制造资源虚拟化和制造资源感知接人,许多技术能够被用于制造资源的识别,如射频识别(
RFID)技术、无线传感器网络技术、
物联网技术、网络物理系统技术、全球定位系统技术、传感器数据分类技术、聚类和分析技术以及适配器技术等。而服务层用于将虚拟化的资源封装成服务发布到云平台,形成云制造资源池。
云制造的理念与云计算类似,是使用非你所有、无需你维护的制造资源,通过规模经济降低制造成本。云制造与传统的制造模式不同,其资源与网格制造资源类似,具有分布性、多样性、异构性、独立性、异步协作性和共享性等特点。
不同的云制造资源其属性有很大的差异,因此在云制造资源虚拟化之前,根据面向服务的思想,按照云制造资源的属性以及在产品全生命周期活动中发挥的作用,对制造资源进行分类。文中参考现有制造资源分类,将云制造资源分为10大类。
(1)制造设备资源产品全生命周期过程中为云平台使用者提供云制造服务的生产、加工、实验等物理设备,可以根据功能将制造设备资源进一步细化为加工设备资源、实验设备资源等。
(2)计算设备资源支持云制造平台运行及企业的设计计算、仿真计算的各类服务器、储存器等设备资源(如高性能计算机、高性能储存器等)。
(3)软件资源为产品全生命周期过程中提供设计、分析、仿真等各类软件(如AutoCAD,PRO/E,ANSYS等)。
(4)物料资源制造任务中制造某种产品所需要的原材料、毛坯和半成品等。
(5)技术资源企业在制造过程中所积累的设计制造、工艺技术、经验模型、相关标准、产品知识库等资源。
(6)人力资源在产品全生命周期中,从事操作生成、管理、技术应用等活动的专业技术人员。
(7)服务流程管理资源云制造平台根据成本最低、时间最短、质量最优等不同的优化目标选择相适应的优化算法得到优化结果并且匹配服务,实现跨组织的服务流程执行。
(8)用户信息资源记录云制造资源提供者和使用者的一些基本信息(如用户的身份、权限以及好评等记录),它为以后的云制造资源评估、发现和调用提供依据。
(9)服务资源为云制造资源使用者提供各种培训、信息咨询、物流和售后服务等。
(10)其他资源不属于上述类型的所有资源的集合(如企业运营效率、企业财务信息等)。
1.2云制造资源虚拟化概念
云制造的所有资源对客户端来说都是虚拟的,客户端看不到云制造资源的实体,因此云制造提供商需要有一项虚拟化技术来描述云制造资源,让云制造使用者能够根据自身需要轻易地通过网络来调用云制造资源。
在计算机与网络中,虚拟化是指计算机相关模块在虚拟的基础上而不是真实的独立的物理硬件基础上运行,是一种为了简化管理、优化资源的解决方案。云制造资源虚拟化是指针对所建模型进行分析和研究,有选择地抽取关键的要素,建立能够直观反映云制造资源结构层次的信息模型以及便于计算机存储与处理的数据模型。
云制造与制造网格都具有丰富的资源种类及海量的资源。但是,制造网格强调的是分散资源集中使用,其服务模式主要是“多对一”的形式,即多个分布式资源为一个用户或任务服务。而云制造不仅强调分散资源集中使用,还强调集中资源分散服务,即其服务模式不仅有“多对一”的形式,同时更强调“多对多”,即汇聚分布式资源服务进行集中管理,为多个用户同时提供服务。制造网格资源共享平台主要是以网格技术为支撑,平台拓扑结构较为单一,缺乏灵活性。云制造资源共享平台则以云计算技术为支撑,其平台和系统架构更加灵活,伸缩性和扩展性更强。因而云制造平台使得用户可以根据应用需求,随时随地、动态、敏捷地增减制造资源。
相比于网格制造资源虚拟化,云制造资源虚拟化时必须坚持系统性(充分考虑各种因素的影响,兼顾相关资源领域,以保证云制造资源虚拟化模型的完整性和合理性)、针对性(完全表示一类资源的性质,往往需要大量的属性,所以需要针对该类资源抽取本质属性)、适应性(云制造资源虚拟化模型应直观、易用,便于分类和检索)、扩展性(由于云制造资源的复杂多样,因此需要在针对某一大类的资源虚拟化模型的基础上可扩展描述具体的云制造资源,并可以适应未来的功能扩展需求)、接口统一(在异构分布的制造资源之间实现高效的资源共享和协同工作)、动态性(通过
物联网的
RFID等实时感知资源状态)等原则。
文中采用面向对象的方法,对问题领域实行自然分割,按人类认识客观世界的思维方式来识别和定义云制造资源信息实体,将资源实体定义为对象,而对象的属性表示为资源的性质。
1.3 制造设备资源虚拟化描述模型
云制造资源虚拟化描述是有关资源共享、资源发现、资源匹配等关键环节的重要信息。云制造资源种类繁多,不同种类的资源所包含的信息差别很大。为了简化、规范云制造资源虚拟化描述,可以对同类资源所包含的信息抽取其中的共同属性和本质属性,来定义一个针对该类资源的描述模型,规范云制造资源的描述。
制造这个概念有广义和狭义之分。广义上的制造,是指从产品的市场分析,到产品设计、仿真分析、生产加工,从实验、使用、管理营销、售后服务到产品报废等全生命周期的活动;狭义上的制造仅指生产加工。这里以狭义制造为对象,也即主要关注制造设备资源虚拟化。以机械制造为例,生产设备主要有机床设备,根据加工能力和工作效率的不同,可以分为普通机床、数控机床和加工中心;根据加工性质和所用刀具可以分为车床、铣床、磨床、钻床、拉床、齿轮加工机床、特种加工机床等。针对制造设备资源虚拟化需求,给出的制造设备资源描述模型如图1所示。
图1 制造设备资源描述模型
由图1可见,制造设备资源描述模型为
VirtualMachine=(BasicAttributes,FunctionCharacteristics,ApplicationCharacteristics,State-Attributes),其中,基本属性(BasicAttributes)用于描述制造设备资源最基本的信息,功能属性(FunctionCharacteris—tics)是对主要功能的描述,使用属性(Application—Characteristics)是对资源使用特征相关信息的描述,状态属性(StateAttributes)是资源在整个云制造中运行的生命周期情况。
2 基于CloudSim扩展的制造设备资源虚拟化
2.1 制造设备资源虚拟化描述模板
文中将开源软件CloudSim扩展为云制造资源虚拟化的工具,将物理资源映射为虚拟资源。CloudSim是一款用Java语言编写,用于云计算仿真的软件,可利用它提供的Java类以及Java类的继承拓展来对制造设备资源进行虚拟化描述。
CloudSim中虚拟设备Vm Java类参数主要包括id(资源标识号)、userId(提供者或用户标识号)、mips(每秒处理的百万级的机器语言指令数)、pesNumber(CPU数量)、ram(内存)、bw(带宽)、size(外存)、vmm(虚拟机监控器)、cloudletScheduler(调度策略)等。Vm是CloudSim提供的Java类,用于计算设备资源的虚拟化。而VirtualMaehine是文中定义的Java类,用于制造设备资源的虚拟化。如前所述,计算设备资源只是制造资源分类中的一种,其中的部分参数不适用于制造设备资源的描述,因此在继承此类的基础上,结合CloudSim中提供的Java类,根据图1所示的制造设备资源描述模型,扩展得制造设备资源VirtualMachine的类图,如图2所示。
图2 造设备资源VirtualMachine类图
图2所示的Java类为制造设备资源的虚拟化模板,云制造资源提供者可以根据虚拟设备提供的内部接口自定义制造设备资源。针对具有特色功能属性的设备,云制造资源提供者可在此基础上继承扩展,引申为新的模板。
2.2 数控铣床虚拟化描述实例
以某公司拥有的北京第一机床厂制造的数控立式铣床XKA715为例进行虚拟化描述。该机床适用于各种复杂曲面零件的加工,特别适用于模具加工,其工作台宽×长为520 mm×1 250 mm,X轴、Y轴和Z轴行程分别为920、520和550mm。该厂的工人使用该设备能达到的最高加工精度为0.02 mm、最高表面粗糙度为3.2,该设备的使用价格是40元/h,有效期限为2008年到2013年,当前状态为空闲。则该设备虚拟化程序代码如下:
public class Milling{
String name=“数控立式铣床”;
String type=“XKA715”;
String mainfunetion=“适用于各种复杂曲面零件的加工,特别适用于模具加工”;
String manufacturer=“北京第一机床厂”;
String provider=“广州XX有限公司”;
String location=“广州”;
String phonenumber=“020一XXXXXXXX”;
BasicAttributes BA=new
BasicAttributes(name,type,mainfunction,
manufacturer,provider,location,phonenumber);
int mainpp=500;
int secondpp=0;
int axesnumber=3;
int spindletrave=550;
String tablesize=“500*1250”;
String tabletravel=“900*520”;
String cstype=“数控”;
String machiningaccuracy=“0.02”;
String surfaceroughness=“3.2”;
int processingcapacity=10;
FunetionCharacteristics FC=new
FunctionCharacteristics(mainpp,secondpp,axesnumber,spindletrave,tablesize,tabletravel,cstype,
machiningaccuracy,surfaceroughness,processingcapacity);
String validtime=“2008--2013年”;
double cost=40;
String usdegree=“good”;
ApplicationCharacteristics AC=new
ApplicationCharacteristics(validtime,cost,usdegree);
String currentstate=“空闲”;
Listcompletedtask=null;
Listqueuetask=null;
StateAttributes SA=new
StateAttributes(currentstate,completedtask,queuetask);
int id=1;
int userld=1;
int mips=0;
long size=0;
int ram=0;
long bw=0;
int pesNumber=0;
String vmm=null;
VirtualMachine vm_milling 2new VirtualMachine(id,userId,mips,pesNumber,ram,bw,size,vmm,new CloudletSchedulerTimeShared(),BA,FC,AC,SA);
...
}
其中,vm_milling是该虚拟机的名称,BA对应的是基本属性,FC对应的是功能属性,AC对应的是使用属性,SA对应的是状态属性.并且将父类Vm中没有用到的参数值设置为默认的0或者null。
3制造设备资源服务化
云制造资源提供者通过对虚拟化资源进行服务化封装、发布等操作,形成云服务;然后将云服务发布到服务注册中心,供服务请求者查询和使用。文中采用Web服务技术来实现云制造资源服务化,利用Apache Tuscany SCA来开发Web服务,采用WSDL(Web服务描述语言)来描述Web服务。
3.1 服务组件架构
服务组件架构(SCA)提供了一套可构建基于面向服务的应用系统的编程模型,它的核心概念是服务及其相关实现。Tuscany SCA是一个基于SCA标准的开源项目,它支持Ajax绑定、Java消息服务(JMS)绑定、JSON—RPC绑定、远程方法调用(RMI)绑定和Web服务绑定.SCA组件的图形示例如图3所示。
图3 SCA组件图形示例
图3中的组件有3个属性、对外开放访问的2个服务接口和2个引用。组件是SCA装配和表达业务功能的基本单元,可以通过Java、BPEL、C++等技术实现,它可以提供服务,也可引用其他组件.“属性”是对组件实现外部数据的注入;“引用”用于引用其他组件和组合;“服务”是采用一定协议和访问方式为组件或组合提供访问接口和绑定,以供其他组件和组合或外部程序访问。
与Apache Axis2相比,在Tuscany SCA中开发Web Service,关键在于编写简单的Java对象(POJO)类与编写。composite配置文件。在配置文件中使用(binging.WS)标签将服务绑定为Web Service,其中uri属性给出绑定后的Web Service访问的通用资源标志符(URI)。
3.2制造设备资源服务化实例
现有一个零件,它需要经过铣削、钻孔、磨削3台机床加工成成品。采用前述给出的制造设备资源虚拟化模板对这3台机床设备进行虚拟化,分别得到vm_milling(铣床),vm_dfilling(钻床)和vm—grinding(磨床)。虚拟化设备再经服务化后,通过SCA工具Tuscany SCA将它们组合成为一个构件,如图4所示,此时可将构件发布为Web服务,注册到云制造平台供调用。
图4 加工服务
在Machining.composite的配置文件中通过(binding.ws>标签将标签将服务绑定为Web Ser—vice,绑定后的Web Service访问URI是http://local-host:8080/Machining。启动SCA服务之后,在浏览器中输入http://localhost:8080:Machining?wsdl,可以看到此WebService的wsdl内容。云制造资源提供者可以根据wsdl文件将服务注册到云制造平台的服务注册中心.文中采用开源注册表WS02 Governance Registry进行存储、分类、索引和管理服务,与服务统一描述、发现与集成协议(UDDI)相比,WS02注册表使用较为简单;而UDDI的术语相当复杂,它的动态发现功能缺乏远见,目前并没有得到理想的应用.将上文开发的Web Service注册到WS02注册表中,如图5所示。
图5 服务注册表
云制造资源使用者可以通过标签和过滤文件等方式,在WS02注册表中查找所需服务。某资源使用者有一个零件需要经过铣削、钻孔、磨削3台机床加工成成品,通过注册表查找到上述服务,该零件在3台机床上分别需要耗时0.5、0.4、1.5h。利用Java编写客户端代码,其调用服务的结果如图6所示。
图6 服务调用结果
4 结语
讨论了云制造资源虚拟化的原则——系统性、针对性、适应性、扩展性、接口统一和动态性;进而以制造设备资源为例,分析其虚拟化描述模型,并通过扩展开源软件CloudSim中Vm类给出了制造设备资源虚拟化模板;最后以零件加工为例,利用ApacheTuscany SCA来进一步实现虚拟化资源的服务化,并简述了服务的注册及调用。下一步可利用虚拟化制造资源在CloudSim或其他平台上进行实验,根据成本最低、时间最短、质量最优等不同的优化目标对云制造资源进行优化配置。
核心关注:拓步ERP系统平台是覆盖了众多的业务领域、行业应用,蕴涵了丰富的ERP管理思想,集成了ERP软件业务管理理念,功能涉及供应链、成本、制造、CRM、HR等众多业务领域的管理,全面涵盖了企业关注ERP管理系统的核心领域,是众多中小企业信息化建设首选的ERP管理软件信赖品牌。
转载请注明出处:拓步ERP资讯网http://www.toberp.com/
本文标题:云制造资源的虚拟化与服务化
本文网址:http://www.toberp.com/html/consultation/10839710064.html