# A Bilayer Resource Model for Cloud Manufacturing Services

Authors: Linan Zhu; Yanwei Zhao; Wanliang Wang
Journal: Mathematical Problems in Engineering
 (2013)

---

## Abstract

Cloud Manufacturing and Cloud Service is currently one of the main directions of development in the manufacturing industry. Under the Cloud Manufacturing environment, the characteristics of publishing, updating, searching, and accessing manufacturing resources are massive, complex, heterogeneous, and so forth. A bilayer manufacturing resource model with separation of Cloud End and Cloud Manufacturing Platform is proposed in this paper. In Cloud End, manufacturing resources are divided into single resource and complex resource, and a basic data model of manufacturing resources oriented to enterprise interior is established to store the physical characteristics. In Cloud Manufacturing Platform, a resource service attribute model oriented to actual users is established to store the service characteristics. This model is described in detail and realized with stateful Web Service Description Language (WSDL) document. An example is provided for illustrating the implementation of the concept.


---

## Body

## 1. Introduction

The development and transformation of manufacturing has promoted the sustainable development of human society. At present, along with the generation and development of computer science and Internet, networked manufacturing, which contains production of material products and offering of immaterial services or functionality, has become the main form of manufacturing [1]. Attributed to Cloud Computing theory and application, Cloud Manufacturing and Cloud Service have gradually risen and become the main direction of manufacturing industry.Presently, there is not a standardized definition of Cloud Manufacturing in academia. Li et al. believe that Cloud Manufacturing is a new networked manufacturing model that provides users with customized manufacturing services by organizing online manufacturing resource (called resource cloud) with the use of Internet and Cloud Manufacturing Service Platform [2]. They also put forward that Cloud Manufacturing is a service-oriented, high efficiency and low consumption, networked, and agile manufacturing model and technology. It enriches and expands Cloud Computing in two aspects of shared resource contents and service models, so it makes the manufacturing model become more agile, servicesation, environment friendly and intelligence [3].  According to Yang’s point of view (China Aerospace Science and Technology Corporation) [4], the advantage of Cloud Manufacturing is that we can expand the philosophy of “Software as a Service” to “Manufacturing as a Service,” so as to offer products with such services as high value-added, low cost, and global manufacturing under network environment. The authors of [5] believe that, by integration with contemporary technologies such as manufacturing informatization, Cloud Computing, Internet of Things, semantic web, and high-performance computing, Cloud Manufacturing expands and innovates the existing technology of networked manufacturing and service,  and makes manufacturing resources and manufacturing capabilities become more virtualization and servicesation. Thus we can manage and operate the resources and service unified, centralized, and intelligently, to provide available, on-demand, reliable, and high-quality and low-cost services in every phase of manufacturing lifecycle. Cloud Manufacturing reflects the idea of “distributed resources are integrated to be used for one task” and “integrated resources are distributed to be used,” and achieves the many-to-many service model, which provides multiple users with services at the same time by aggregating and centralized managing of distributed resources and services. From the perspective of product life cycle, the authors of [6] believe that Cloud Manufacturing, as a kind of manufacturing service, has its own lifecycle with several phases: the definition of manufacturing resource or capability, the provision of manufacturing resource or capability, the ordering of manufacturing task, manufacturing and distribution, and the disposal of manufacturing task.Along with service-oriented technology, virtualization technology, Cloud Computing, and Internet of Things [7], the rapid development of manufacturing gives birth to a new model called Cloud Manufacturing Service Model (CMSM), which is a kind of service-oriented, high efficiency and low consumption, and knowledge-based networked intelligent manufacturing [2]. The CMSM has been actually accepted by some enterprises worldwide. In 2000 of America, MFG.com provided global manufacturing enterprises with an efficient trading platform, and the total value of average daily inquiry was more than 400 million yuan. Also in America, thanks to a brand new operation model, a micro-factory with the size of dry cleaner Local-Motors.com created a distinctive concept car called Rally Fighter in only 20 months. This is such a short time just equivalent to the time Detroit need to adjust the technical specifications of car door, because the total design tasks of the car were outsourced to community online, and the only task of Local-Motors.com was assembling parts, most of which were available on the market. In 2010 of China, a website for cutlery was built, which was a service system to help enterprises carry out cutlery sale and customer management better. The users of the website are the manufacturing enterprises in the supply chain or manufacturing chain of cutlery industry. Because of the website, the resource allocation involved in many cutlery enterprise supply chain and manufacturing chain is optimized.The so-called Cloud Service is namely Resource Cloud Service, with some features: huge amounts of data, on-demand scaling, high availability, self-service interface, and flexible use of resources. Through the technologies such as Internet of Things and virtualization, Cloud Service virtually encapsulates manufacturing resources and manufacturing capabilities in different Cloud End based on knowledge, and intelligently accesses to Cloud Manufacturing Platform, thus provide users with manufacturing resources highly virtualized in Cloud End as services in the manufacturing life cycle [8].


## 2. Cloud Manufacturing System Structure

Showed as Figure1, the Cloud Manufacturing System (CMS) is composed of Cloud End (CE) and Cloud Manufacturing Platform (CMP), and the CE contains Cloud Provider (CP) and Cloud Demander (CD). The CP and CD are, respectively, the providers and the demanders or users of resource cloud or cloud service. The CP provides corresponding manufacturing resource and service through the CMP; the CD proposes manufacturing demands and gets corresponding resources or services through CMP; according to the CD, the CMP searches suitable resources or services, and provides the CD with demanded resources or services by the use of Cloud technology, Cloud Services management technology, Cloud Manufacturing security technology, and Cloud Manufacturing business management model and technology [2]. The CMP is also composed of many sub-platforms, which can communicate with each other to realize high sharing of resources. Also, the CMP embodies many modules such as resource database and middleware, which have powerful functions of resource scheduling.Figure 1
The system of Cloud Manufacturing.


## 3. Networked Manufacturing Resource

Resource description is distinctive in different manufacturing areas and with different modeling aims [9]. Cloud Manufacturing is actually a kind of complex network environment with the characteristics of large-scale, heterogeneous, and high sharing of resources. Under the network environment, the key points of manufacturing resource description are dynamic expression of resource service capabilities, rapid search of resources, optimal allocation of resource, and dynamic planning of the product life cycle.


### 3.1. Overview on Networked Manufacturing Resource Modeling

In [10], a notion named service domain was presented to help UML analyze and model manufacturing resource in manufacturing grid, and supported hierarchy management of resource model, and the results resolved the disadvantages that modeled huge manufacturing resource in manufacturing grid through only a set of UML class graph. In [11], the authors studied on the multi-dimension manufacturing resource modeling technology: the manufacturing resource life cycle dimension, manufacturing resource application view dimension, and polymerization granularity dimension, and established a multi-dimensional network ontology model of manufacturing resources through semantic web technology. In [12], a combined method of particle size based on ontology and business-oriented needs of internal and external information is proposed. The authors also proposed a model based on Web Process Planning, and expanded the OWL-S for describing the dynamic characteristics of the service. So the information model was set for discovering and matching the manufacturing resource. Aiming at the problem of manufacturing resource functionality similarity under nonlinear process planning environments, meta-resource methodology was introduced in [13], which could accurately express diversity of manufacturing resources and improve the agility of manufacturing system. For distributed networked manufacturing resources, a networked manufacturing resource model based on physical manufacturing unit, as well as an information model and an information integration method of manufacturing resource based on XML, were presented in [14], with the result of realization of heterogeneous manufacturing resource description. In order to implement the integration and application of legacy hardware/software manufacturing resources in manufacturing enterprises, a scheme and a framework for the manufacturing resource encapsulation and integration based on mobile agent was introduced in [15]. So the function of reconfiguration and encapsulation for legacy manufacturing resources, as well as information interaction and acquirement, could be realized.


### 3.2. Classification of Manufacturing Resources

With different manufacturing aims and different manufacturing methods, the classification of resource is different. In [12], the authors established resource ontology tree, and divided the resource into six categories: (1) financial resources: the financial elements of business operations including fixed assets, liquidity, and liabilities; (2) technical resources: process technology, industry standards, and so forth; (3) equipment resources: machine tools, tooling, gages, and so forth; (4) human resources: engineering and technical personnel, workers, technicians, management personnel, and so forth; (5) software resources: CAD software, financial software, ERP software, and so forth; (6) logistics resources: truck, train, and so forth. According to the sharing method of manufacturing resource under manufacturing grid environment, the authors of [16] divided resources into six categories: hardware resources, software + hardware resources, software resources, online resources, semionline resources, and offline resources.In this paper, according to the properties of the resource, the users’ needs, usage as well as the role played in manufacturing activities, we divide resources into eight categories (shown in Figure2): human resources, manufacturing equipment resources, software resources, service resources, material resources, computing resources, manufacturing knowledge resources, and other resources. Human resource means the staff involved in all phases of product life cycle; manufacturing equipment resource means all kinds of hardware in the product design and production processing; software resource means computer software used in product design, manufacturing, enterprise management, and so forth; service resource means service activities related to product design, production marketing, and so forth; material resource means raw materials used in every phases of production; computing resource means computing equipment such as CPUs and memories used in production and enterprise management; knowledge resource means the knowledge or technology related to production.Figure 2
Manufacturing resource classification.


## 3.1. Overview on Networked Manufacturing Resource Modeling

In [10], a notion named service domain was presented to help UML analyze and model manufacturing resource in manufacturing grid, and supported hierarchy management of resource model, and the results resolved the disadvantages that modeled huge manufacturing resource in manufacturing grid through only a set of UML class graph. In [11], the authors studied on the multi-dimension manufacturing resource modeling technology: the manufacturing resource life cycle dimension, manufacturing resource application view dimension, and polymerization granularity dimension, and established a multi-dimensional network ontology model of manufacturing resources through semantic web technology. In [12], a combined method of particle size based on ontology and business-oriented needs of internal and external information is proposed. The authors also proposed a model based on Web Process Planning, and expanded the OWL-S for describing the dynamic characteristics of the service. So the information model was set for discovering and matching the manufacturing resource. Aiming at the problem of manufacturing resource functionality similarity under nonlinear process planning environments, meta-resource methodology was introduced in [13], which could accurately express diversity of manufacturing resources and improve the agility of manufacturing system. For distributed networked manufacturing resources, a networked manufacturing resource model based on physical manufacturing unit, as well as an information model and an information integration method of manufacturing resource based on XML, were presented in [14], with the result of realization of heterogeneous manufacturing resource description. In order to implement the integration and application of legacy hardware/software manufacturing resources in manufacturing enterprises, a scheme and a framework for the manufacturing resource encapsulation and integration based on mobile agent was introduced in [15]. So the function of reconfiguration and encapsulation for legacy manufacturing resources, as well as information interaction and acquirement, could be realized.


## 3.2. Classification of Manufacturing Resources

With different manufacturing aims and different manufacturing methods, the classification of resource is different. In [12], the authors established resource ontology tree, and divided the resource into six categories: (1) financial resources: the financial elements of business operations including fixed assets, liquidity, and liabilities; (2) technical resources: process technology, industry standards, and so forth; (3) equipment resources: machine tools, tooling, gages, and so forth; (4) human resources: engineering and technical personnel, workers, technicians, management personnel, and so forth; (5) software resources: CAD software, financial software, ERP software, and so forth; (6) logistics resources: truck, train, and so forth. According to the sharing method of manufacturing resource under manufacturing grid environment, the authors of [16] divided resources into six categories: hardware resources, software + hardware resources, software resources, online resources, semionline resources, and offline resources.In this paper, according to the properties of the resource, the users’ needs, usage as well as the role played in manufacturing activities, we divide resources into eight categories (shown in Figure2): human resources, manufacturing equipment resources, software resources, service resources, material resources, computing resources, manufacturing knowledge resources, and other resources. Human resource means the staff involved in all phases of product life cycle; manufacturing equipment resource means all kinds of hardware in the product design and production processing; software resource means computer software used in product design, manufacturing, enterprise management, and so forth; service resource means service activities related to product design, production marketing, and so forth; material resource means raw materials used in every phases of production; computing resource means computing equipment such as CPUs and memories used in production and enterprise management; knowledge resource means the knowledge or technology related to production.Figure 2
Manufacturing resource classification.


## 4. The Bilayer Resource Model

Under Cloud Manufacturing environment, there are a wide range of manufacturing resources in different areas, and the systems in different manufacturing units are heterogeneous. So the resource data has the characteristics of massive, complex and heterogeneous, and there is lack of uniform data standards. For the above reasons, it is difficult to real-time monitor, operate, or update resource data. Aiming at these questions, we propose a bilayer resource model with separation of CE and CMP (shown in Figure3). In CE, we establish the resource basic data model, which is used to store the basic data of resources such as performance parameters, physical structure, input data type, output data type, geographic information, and manufacturer information, and provides access interface to CMP. In CMP, we establish the resource service attribute model, which is used to store service information such as function parameters, input data template, output structure template, and service quality evaluation. In CMP, there are also some resource service solutions, integrated resource optimization tools, and database for storing data accessed frequently according to usage history.Figure 3
The bilayer resource model in Cloud Manufacturing.


### 4.1. Cloud End Model

As described above, resource model in CE is used to store related data of the actual manufacturing resource, which consists of single resource (SR) and complex resource (CR). According to the functionality, the SR is divided into eight categories, as described in Section3.2; as a resource group, the CR is formed by combination of SR based on functionality and has some function. So, the formalized representation of resource cloud in CE is Re sCloudEnd = {RCEInfo, RC}.R
C
E
I
n
f
o means the basic information of the CE, and its formalized representation is RCEInfo={RCEID,RCEProvider,RCELocation,RCEOther}. RCEID no longer changed after registration is the flag of CE, and it’s used to uniquely identify CE so as to realize locating and indexing the manufacturing resource providers; RCEProvider is the name and contact information of CE, stored as a string; RCELocation is the location of CE, stored as a string; RCEOther is the custom information, which can be added or removed according to the actual situation, and the format of data is user-defined, usually as a string.R
C is resource cloud, and its formalized representation is: RC::=(SRC,CRC). SRC is single resource cloud (SRC), and CRC is complex resource cloud (CRC).


#### 4.1.1. Single Resource Cloud (SRC)

The formalized representation of SRC isSRC = {RCID, SRCBaseInfo, SRCFuncInfo, SRCStatusInfo}.(
1
)  RCID is the flag of SRC, used to uniquely identify manufacturing resource cloud to realize locating and indexing manufacturing resource cloud. The uniqueness is within the same CE, while the same kind of manufacturing resource in different CE has the different RCIDs.(
2
)  SRCBaseInfo is the basic characteristics set, and its formalized representation is SRCBaseInfo = {SRCName, SRCModel, SRCType, SRCInfo, SRCParameter, SRCBInfos}. SRCName is name of SRC; SRCModel is the model of SRC; SRCType is the type of SRC, and the formalized representation is SRCType={1,2,3,4,5,6,7,8}, every element of SRCType, respectively, represents 8 categories of resources as described in Section 3.2; SRCInfo is the description of SRC, stored as a string; SRCParameter is the parameters set of SRC, including size, and cost, defined by the provider according to specification of resources; SRCBInfos is custom information, which can be added or removed according to the actual situation, and the format of data is user-defined, usually as a string.(
3
)  SRCFuncInfo is the functionality characteristics attributes set of SRC, and its formalized representation is: SRCFuncInfo = {SRCTaskType, SRCCapa, SRCTime, SRCQua, SRCEnviro, SRCFInfos}. SRCTaskType is the service type supported by the SRC, such as the type of processing object; SRCCapa is the indicators of the processing object, such as input set of object, output set of object, and precision, and its formalized representation is: SRCCapa={IObjSet,OObjSet,…,Capan}, every element of SRCCapa has its own independent formalized representation. For example, IObjSet={IObji∣i=1,2,…,n}, OObjSet={OObji∣i=1,2,…,n}, every IObji or OObji is composed of some characteristic attributes: IObji={ID,Name,P1,P2,…,Pn}, OObji={ID,Name,P1,P2,…,Pn}; SRCTime is the minimum time and maximum time to complete the task, and its formalized representation is: SRCTime={STimemin,STimemax}; SRCQua is  the quality standards the resource can reach, and its formalized representation is: SRCQua={N,level1,level2,level3,…,leveln}. N represents the sum of quality standards the offering can reach, leveli store the name of quality standards as a string. Take the safety valve as an instance, the formalized representation is: SRCQua={1,"GB150.1-2011"}; SRCEnviro is the service environment requirements of the SRC, such as geographical requirements, software platform requirements, and enterprise-class requirements; SRCFInfos is custom information, which can be added or removed according to the actual situation, and the format of data is user-defined, usually as a string.(
4
)  SRCStatusInfo is the status set of SRC, and its formalized representation is: SRCStatusInfo={0,1,2,3,4,5}. 0 represents that the resource is in maintenance; 1 is idle; 2 is under load; 3 is full load; 4 is over load; 5 is invalid.


#### 4.1.2. Complex Resource Cloud (CRC)

The formalized representation of CRC is:CRC = {RCID, SRCSet, SRCRelSet, CRCFuncInfo, CRCStatusInfo}.(
1
)  RCID is the flag of CRC, and has the same characteristics with the flag of SRC.(
2
)  SRCSet is the SRCs set contained by the CRC, and its formalized representation is: SRCSet={N,SRC1,SRC2,…,SRCn}. N is the sum of SRCs, and SRCi is the flag RCID of SRC.(
3
)  SRCRelSet is the logical relationships between these SRCs, and its formalization representation is: SRCRelSet::={Rand,Ror,Rprev,Rnext}. Rand is the parallel relationship. Rand(A,B) means that the resource A and B have no influence with each other, and can be used in parallel; Ror is the selection relationship. Ror(A,B) means that the resource A and B have the same or similar functionalities, and are alternative in the actual manufacturing; Rprev and Rnext are the precursor relationship and successor relationship. Rprev(A,B) means that A is the precursor of B, and Rnext(A,B) means that A is the successor of B, so the relationship of resource A and B is serial. It’s worth nothing that Rprev(A,B)≠Rnext(B,A), because the precursor relationship or successor relationship may be one to many or many to many.(
4
)  CRCFuncInfo is functionality characteristics attributes set, and its formalized representation is: CRCFuncInfo = {CRCTaskType, CRCCapa, CRCTime, CRCQua, CRCEviro, CRCFInfos}. CRCTaskType, CRCCapa, CRCQua, CRCEviro and CRCFInfos respectively means supported service type, indicator requirements, quality standards, environment requirements and custom contents, with the same meaning and formalized representation with SRCTaskType,  SRCCapa,  SRCQua,  SRCEviro and SRCFInfosof SRC. CRCTime is the minimum time and maximum time to complete the task, and its formalized representation is  CRCTime={CTimemin,CTimemax}. CTimemin is the sum of STimemin of all serial single resource units (the formula is shown as (1)), taking the minimum value of several parallel single resource (the formula is shown as (2)); CTimemax is the sum of STimemax of all serial single resource units (the formula is shown as (3)), taking the maximum value of several parallel single resource (the formula is shown as (4)):
(1)CTimemin=SRC1·STimemin+SRC2·STimemin+⋯+SRCi1,i2…,ij·STimemin+⋯+SRCn·STimemin(2)SRCi1,i2…,ij·STimemin=min{,SRCij·STimemin}SRCi1·STimemin,SRCi2·STimemin,…,SRCij·STimemin}(3)CTimemax=SRC1·STimemax+SRC2·STimemax+⋯+SRCi1,i2…,ij·STimemax+⋯+SRCn·STimemax(4)SRCi1,i2…,ij·STimemax=max{SRCijSRCi1·STimemax,SRCi2·STimemax,…,SRCij·STimemax}.(
5
)  CRCStatusInfo is the status set of CRC, and its formalized representation is: CRCStatusInfo={0,1,2,3,4,5}. 0 represents that the resource is maintenance; 1 is idle; 2 is under load; 3 is full load; 4 is over load; 5 is invalid. Here, we transform SRCSet  into SRCSetX, SRCSetX = {X, SRC1, SRC2, …, SRCi1,i2, …, SRCii,ii+1,…,ij, …, SRCx}. X is the sum of single resource unit, and SRCi1,i2 and SRCii,ii+1,…,ij both represent a single resource unit composed of several parallel single resources, and the formula of single resource unit resource statues is (5); so the formula of CRCStatusInfo is (6):
(5)SRCii,ii+1,…,ij·SRCStatusInfo={0,SRCj=0,j=ii,ii+1,…,jj1,∃SRCj=1,j=ii,ii+1,…,jj2,∃SRCj=2,j=ii,ii+1,…,jj3,SRCj=3,j=ii,ii+1,…,jj4,SRCj=4,j=ii,ii+1,…,jj5,SRCj=5,j=ii,ii+1,…,jj(6)CRCStatusInfo={0,∃SRCi·SRCStatusInfo=0,SRCi∈SRCSetX1,SRCi=1,SRCi∈SRCSetX2,SRCi=2,SRCi∈SRCSetX3,SRCi=3,SRCi∈SRCSetX4,SRCi=4,SRCi∈SRCSetX5,∃SRCi·SRCStatusInfo=5,SRCi∈SRCSetX.


### 4.2. Cloud Manufacturing Platform Model

The user is the main service object of CMP, so it’s needed to establish a service-oriented resource model called resource service attribute model to provide users with information related to resource functionality, usage and service quality, all of which can help users search, select and use resource. The formalized representation of resource model in CMP is ResCloudPlatform = {ID, RCEID, BaseInfo, ServiceInfo, AssessInfo, OtherInfo}.(
1
)  ID is the flag of resource cloud, used to uniquely identify manufacturing resource cloud in the same sub-CMP so as to realize locating and indexing resource. The uniqueness is within the same sub-CMP, while the same ID in different sub-CMP may represent different resource cloud, thus avoiding updating the resource list of all the sub-CMPs once a CE publishes or updates resource to a certain sub-CMP. It is more suitable for the massive and complex characteristics of resource cloud data.(
2
)  RCEID is the CE flag which provides the resource cloud, used to uniquely identify the provider of resource.(
3
)  BaseInfo is the basic characteristics attributes set of resource cloud, and its formalized representation is BaseInfo={Name,Model,ResInfo,Provider}. Name is the resource name; Model is the resource model; ResInfo is the description information of resource, defined by the provider; Provider is the description of resource provider, defined by provider-self.(
4
)  ServiceInfo is the service capability information, and its formalized representation is ServiceInfo = {TaskType, Capa, Time, Qua, Cost, Enviro, photo, OtherServInfo}. The elements respectively mean service type, performance indicators, time-consuming, quality standards, price, service environment, other service information, and so forth.(
5
)  AssessInfo is the assessment information of resource, and its formalized representation is AssessInfo = {TaskID, TAss, CAss, QAss, ServAss, CreditAss, Average}. TaskID is the identification number of a task, automatically generated by sub-CMP; TAss is time-consuming evaluation; CAss is price evaluation; QAss is quality evaluation; ServAss is service evaluation; CreditAss is credit evaluation; Average is average value of every indicator up to now.(
6
)  OtherInfo is other service capability information, added or removed by resource provider, sub-CMPs and users, and its formalized representation is OtherInfo={otherinfo1,otherinfo2,…,otherinfoi,…}, otherinfoi={useri,infoi}, useri is the provider of other service capability information, infoi is the information content stored as a string.


## 4.1. Cloud End Model

As described above, resource model in CE is used to store related data of the actual manufacturing resource, which consists of single resource (SR) and complex resource (CR). According to the functionality, the SR is divided into eight categories, as described in Section3.2; as a resource group, the CR is formed by combination of SR based on functionality and has some function. So, the formalized representation of resource cloud in CE is Re sCloudEnd = {RCEInfo, RC}.R
C
E
I
n
f
o means the basic information of the CE, and its formalized representation is RCEInfo={RCEID,RCEProvider,RCELocation,RCEOther}. RCEID no longer changed after registration is the flag of CE, and it’s used to uniquely identify CE so as to realize locating and indexing the manufacturing resource providers; RCEProvider is the name and contact information of CE, stored as a string; RCELocation is the location of CE, stored as a string; RCEOther is the custom information, which can be added or removed according to the actual situation, and the format of data is user-defined, usually as a string.R
C is resource cloud, and its formalized representation is: RC::=(SRC,CRC). SRC is single resource cloud (SRC), and CRC is complex resource cloud (CRC).


### 4.1.1. Single Resource Cloud (SRC)

The formalized representation of SRC isSRC = {RCID, SRCBaseInfo, SRCFuncInfo, SRCStatusInfo}.(
1
)  RCID is the flag of SRC, used to uniquely identify manufacturing resource cloud to realize locating and indexing manufacturing resource cloud. The uniqueness is within the same CE, while the same kind of manufacturing resource in different CE has the different RCIDs.(
2
)  SRCBaseInfo is the basic characteristics set, and its formalized representation is SRCBaseInfo = {SRCName, SRCModel, SRCType, SRCInfo, SRCParameter, SRCBInfos}. SRCName is name of SRC; SRCModel is the model of SRC; SRCType is the type of SRC, and the formalized representation is SRCType={1,2,3,4,5,6,7,8}, every element of SRCType, respectively, represents 8 categories of resources as described in Section 3.2; SRCInfo is the description of SRC, stored as a string; SRCParameter is the parameters set of SRC, including size, and cost, defined by the provider according to specification of resources; SRCBInfos is custom information, which can be added or removed according to the actual situation, and the format of data is user-defined, usually as a string.(
3
)  SRCFuncInfo is the functionality characteristics attributes set of SRC, and its formalized representation is: SRCFuncInfo = {SRCTaskType, SRCCapa, SRCTime, SRCQua, SRCEnviro, SRCFInfos}. SRCTaskType is the service type supported by the SRC, such as the type of processing object; SRCCapa is the indicators of the processing object, such as input set of object, output set of object, and precision, and its formalized representation is: SRCCapa={IObjSet,OObjSet,…,Capan}, every element of SRCCapa has its own independent formalized representation. For example, IObjSet={IObji∣i=1,2,…,n}, OObjSet={OObji∣i=1,2,…,n}, every IObji or OObji is composed of some characteristic attributes: IObji={ID,Name,P1,P2,…,Pn}, OObji={ID,Name,P1,P2,…,Pn}; SRCTime is the minimum time and maximum time to complete the task, and its formalized representation is: SRCTime={STimemin,STimemax}; SRCQua is  the quality standards the resource can reach, and its formalized representation is: SRCQua={N,level1,level2,level3,…,leveln}. N represents the sum of quality standards the offering can reach, leveli store the name of quality standards as a string. Take the safety valve as an instance, the formalized representation is: SRCQua={1,"GB150.1-2011"}; SRCEnviro is the service environment requirements of the SRC, such as geographical requirements, software platform requirements, and enterprise-class requirements; SRCFInfos is custom information, which can be added or removed according to the actual situation, and the format of data is user-defined, usually as a string.(
4
)  SRCStatusInfo is the status set of SRC, and its formalized representation is: SRCStatusInfo={0,1,2,3,4,5}. 0 represents that the resource is in maintenance; 1 is idle; 2 is under load; 3 is full load; 4 is over load; 5 is invalid.


### 4.1.2. Complex Resource Cloud (CRC)

The formalized representation of CRC is:CRC = {RCID, SRCSet, SRCRelSet, CRCFuncInfo, CRCStatusInfo}.(
1
)  RCID is the flag of CRC, and has the same characteristics with the flag of SRC.(
2
)  SRCSet is the SRCs set contained by the CRC, and its formalized representation is: SRCSet={N,SRC1,SRC2,…,SRCn}. N is the sum of SRCs, and SRCi is the flag RCID of SRC.(
3
)  SRCRelSet is the logical relationships between these SRCs, and its formalization representation is: SRCRelSet::={Rand,Ror,Rprev,Rnext}. Rand is the parallel relationship. Rand(A,B) means that the resource A and B have no influence with each other, and can be used in parallel; Ror is the selection relationship. Ror(A,B) means that the resource A and B have the same or similar functionalities, and are alternative in the actual manufacturing; Rprev and Rnext are the precursor relationship and successor relationship. Rprev(A,B) means that A is the precursor of B, and Rnext(A,B) means that A is the successor of B, so the relationship of resource A and B is serial. It’s worth nothing that Rprev(A,B)≠Rnext(B,A), because the precursor relationship or successor relationship may be one to many or many to many.(
4
)  CRCFuncInfo is functionality characteristics attributes set, and its formalized representation is: CRCFuncInfo = {CRCTaskType, CRCCapa, CRCTime, CRCQua, CRCEviro, CRCFInfos}. CRCTaskType, CRCCapa, CRCQua, CRCEviro and CRCFInfos respectively means supported service type, indicator requirements, quality standards, environment requirements and custom contents, with the same meaning and formalized representation with SRCTaskType,  SRCCapa,  SRCQua,  SRCEviro and SRCFInfosof SRC. CRCTime is the minimum time and maximum time to complete the task, and its formalized representation is  CRCTime={CTimemin,CTimemax}. CTimemin is the sum of STimemin of all serial single resource units (the formula is shown as (1)), taking the minimum value of several parallel single resource (the formula is shown as (2)); CTimemax is the sum of STimemax of all serial single resource units (the formula is shown as (3)), taking the maximum value of several parallel single resource (the formula is shown as (4)):
(1)CTimemin=SRC1·STimemin+SRC2·STimemin+⋯+SRCi1,i2…,ij·STimemin+⋯+SRCn·STimemin(2)SRCi1,i2…,ij·STimemin=min{,SRCij·STimemin}SRCi1·STimemin,SRCi2·STimemin,…,SRCij·STimemin}(3)CTimemax=SRC1·STimemax+SRC2·STimemax+⋯+SRCi1,i2…,ij·STimemax+⋯+SRCn·STimemax(4)SRCi1,i2…,ij·STimemax=max{SRCijSRCi1·STimemax,SRCi2·STimemax,…,SRCij·STimemax}.(
5
)  CRCStatusInfo is the status set of CRC, and its formalized representation is: CRCStatusInfo={0,1,2,3,4,5}. 0 represents that the resource is maintenance; 1 is idle; 2 is under load; 3 is full load; 4 is over load; 5 is invalid. Here, we transform SRCSet  into SRCSetX, SRCSetX = {X, SRC1, SRC2, …, SRCi1,i2, …, SRCii,ii+1,…,ij, …, SRCx}. X is the sum of single resource unit, and SRCi1,i2 and SRCii,ii+1,…,ij both represent a single resource unit composed of several parallel single resources, and the formula of single resource unit resource statues is (5); so the formula of CRCStatusInfo is (6):
(5)SRCii,ii+1,…,ij·SRCStatusInfo={0,SRCj=0,j=ii,ii+1,…,jj1,∃SRCj=1,j=ii,ii+1,…,jj2,∃SRCj=2,j=ii,ii+1,…,jj3,SRCj=3,j=ii,ii+1,…,jj4,SRCj=4,j=ii,ii+1,…,jj5,SRCj=5,j=ii,ii+1,…,jj(6)CRCStatusInfo={0,∃SRCi·SRCStatusInfo=0,SRCi∈SRCSetX1,SRCi=1,SRCi∈SRCSetX2,SRCi=2,SRCi∈SRCSetX3,SRCi=3,SRCi∈SRCSetX4,SRCi=4,SRCi∈SRCSetX5,∃SRCi·SRCStatusInfo=5,SRCi∈SRCSetX.


## 4.1.1. Single Resource Cloud (SRC)

The formalized representation of SRC isSRC = {RCID, SRCBaseInfo, SRCFuncInfo, SRCStatusInfo}.(
1
)  RCID is the flag of SRC, used to uniquely identify manufacturing resource cloud to realize locating and indexing manufacturing resource cloud. The uniqueness is within the same CE, while the same kind of manufacturing resource in different CE has the different RCIDs.(
2
)  SRCBaseInfo is the basic characteristics set, and its formalized representation is SRCBaseInfo = {SRCName, SRCModel, SRCType, SRCInfo, SRCParameter, SRCBInfos}. SRCName is name of SRC; SRCModel is the model of SRC; SRCType is the type of SRC, and the formalized representation is SRCType={1,2,3,4,5,6,7,8}, every element of SRCType, respectively, represents 8 categories of resources as described in Section 3.2; SRCInfo is the description of SRC, stored as a string; SRCParameter is the parameters set of SRC, including size, and cost, defined by the provider according to specification of resources; SRCBInfos is custom information, which can be added or removed according to the actual situation, and the format of data is user-defined, usually as a string.(
3
)  SRCFuncInfo is the functionality characteristics attributes set of SRC, and its formalized representation is: SRCFuncInfo = {SRCTaskType, SRCCapa, SRCTime, SRCQua, SRCEnviro, SRCFInfos}. SRCTaskType is the service type supported by the SRC, such as the type of processing object; SRCCapa is the indicators of the processing object, such as input set of object, output set of object, and precision, and its formalized representation is: SRCCapa={IObjSet,OObjSet,…,Capan}, every element of SRCCapa has its own independent formalized representation. For example, IObjSet={IObji∣i=1,2,…,n}, OObjSet={OObji∣i=1,2,…,n}, every IObji or OObji is composed of some characteristic attributes: IObji={ID,Name,P1,P2,…,Pn}, OObji={ID,Name,P1,P2,…,Pn}; SRCTime is the minimum time and maximum time to complete the task, and its formalized representation is: SRCTime={STimemin,STimemax}; SRCQua is  the quality standards the resource can reach, and its formalized representation is: SRCQua={N,level1,level2,level3,…,leveln}. N represents the sum of quality standards the offering can reach, leveli store the name of quality standards as a string. Take the safety valve as an instance, the formalized representation is: SRCQua={1,"GB150.1-2011"}; SRCEnviro is the service environment requirements of the SRC, such as geographical requirements, software platform requirements, and enterprise-class requirements; SRCFInfos is custom information, which can be added or removed according to the actual situation, and the format of data is user-defined, usually as a string.(
4
)  SRCStatusInfo is the status set of SRC, and its formalized representation is: SRCStatusInfo={0,1,2,3,4,5}. 0 represents that the resource is in maintenance; 1 is idle; 2 is under load; 3 is full load; 4 is over load; 5 is invalid.


## 4.1.2. Complex Resource Cloud (CRC)

The formalized representation of CRC is:CRC = {RCID, SRCSet, SRCRelSet, CRCFuncInfo, CRCStatusInfo}.(
1
)  RCID is the flag of CRC, and has the same characteristics with the flag of SRC.(
2
)  SRCSet is the SRCs set contained by the CRC, and its formalized representation is: SRCSet={N,SRC1,SRC2,…,SRCn}. N is the sum of SRCs, and SRCi is the flag RCID of SRC.(
3
)  SRCRelSet is the logical relationships between these SRCs, and its formalization representation is: SRCRelSet::={Rand,Ror,Rprev,Rnext}. Rand is the parallel relationship. Rand(A,B) means that the resource A and B have no influence with each other, and can be used in parallel; Ror is the selection relationship. Ror(A,B) means that the resource A and B have the same or similar functionalities, and are alternative in the actual manufacturing; Rprev and Rnext are the precursor relationship and successor relationship. Rprev(A,B) means that A is the precursor of B, and Rnext(A,B) means that A is the successor of B, so the relationship of resource A and B is serial. It’s worth nothing that Rprev(A,B)≠Rnext(B,A), because the precursor relationship or successor relationship may be one to many or many to many.(
4
)  CRCFuncInfo is functionality characteristics attributes set, and its formalized representation is: CRCFuncInfo = {CRCTaskType, CRCCapa, CRCTime, CRCQua, CRCEviro, CRCFInfos}. CRCTaskType, CRCCapa, CRCQua, CRCEviro and CRCFInfos respectively means supported service type, indicator requirements, quality standards, environment requirements and custom contents, with the same meaning and formalized representation with SRCTaskType,  SRCCapa,  SRCQua,  SRCEviro and SRCFInfosof SRC. CRCTime is the minimum time and maximum time to complete the task, and its formalized representation is  CRCTime={CTimemin,CTimemax}. CTimemin is the sum of STimemin of all serial single resource units (the formula is shown as (1)), taking the minimum value of several parallel single resource (the formula is shown as (2)); CTimemax is the sum of STimemax of all serial single resource units (the formula is shown as (3)), taking the maximum value of several parallel single resource (the formula is shown as (4)):
(1)CTimemin=SRC1·STimemin+SRC2·STimemin+⋯+SRCi1,i2…,ij·STimemin+⋯+SRCn·STimemin(2)SRCi1,i2…,ij·STimemin=min{,SRCij·STimemin}SRCi1·STimemin,SRCi2·STimemin,…,SRCij·STimemin}(3)CTimemax=SRC1·STimemax+SRC2·STimemax+⋯+SRCi1,i2…,ij·STimemax+⋯+SRCn·STimemax(4)SRCi1,i2…,ij·STimemax=max{SRCijSRCi1·STimemax,SRCi2·STimemax,…,SRCij·STimemax}.(
5
)  CRCStatusInfo is the status set of CRC, and its formalized representation is: CRCStatusInfo={0,1,2,3,4,5}. 0 represents that the resource is maintenance; 1 is idle; 2 is under load; 3 is full load; 4 is over load; 5 is invalid. Here, we transform SRCSet  into SRCSetX, SRCSetX = {X, SRC1, SRC2, …, SRCi1,i2, …, SRCii,ii+1,…,ij, …, SRCx}. X is the sum of single resource unit, and SRCi1,i2 and SRCii,ii+1,…,ij both represent a single resource unit composed of several parallel single resources, and the formula of single resource unit resource statues is (5); so the formula of CRCStatusInfo is (6):
(5)SRCii,ii+1,…,ij·SRCStatusInfo={0,SRCj=0,j=ii,ii+1,…,jj1,∃SRCj=1,j=ii,ii+1,…,jj2,∃SRCj=2,j=ii,ii+1,…,jj3,SRCj=3,j=ii,ii+1,…,jj4,SRCj=4,j=ii,ii+1,…,jj5,SRCj=5,j=ii,ii+1,…,jj(6)CRCStatusInfo={0,∃SRCi·SRCStatusInfo=0,SRCi∈SRCSetX1,SRCi=1,SRCi∈SRCSetX2,SRCi=2,SRCi∈SRCSetX3,SRCi=3,SRCi∈SRCSetX4,SRCi=4,SRCi∈SRCSetX5,∃SRCi·SRCStatusInfo=5,SRCi∈SRCSetX.


## 4.2. Cloud Manufacturing Platform Model

The user is the main service object of CMP, so it’s needed to establish a service-oriented resource model called resource service attribute model to provide users with information related to resource functionality, usage and service quality, all of which can help users search, select and use resource. The formalized representation of resource model in CMP is ResCloudPlatform = {ID, RCEID, BaseInfo, ServiceInfo, AssessInfo, OtherInfo}.(
1
)  ID is the flag of resource cloud, used to uniquely identify manufacturing resource cloud in the same sub-CMP so as to realize locating and indexing resource. The uniqueness is within the same sub-CMP, while the same ID in different sub-CMP may represent different resource cloud, thus avoiding updating the resource list of all the sub-CMPs once a CE publishes or updates resource to a certain sub-CMP. It is more suitable for the massive and complex characteristics of resource cloud data.(
2
)  RCEID is the CE flag which provides the resource cloud, used to uniquely identify the provider of resource.(
3
)  BaseInfo is the basic characteristics attributes set of resource cloud, and its formalized representation is BaseInfo={Name,Model,ResInfo,Provider}. Name is the resource name; Model is the resource model; ResInfo is the description information of resource, defined by the provider; Provider is the description of resource provider, defined by provider-self.(
4
)  ServiceInfo is the service capability information, and its formalized representation is ServiceInfo = {TaskType, Capa, Time, Qua, Cost, Enviro, photo, OtherServInfo}. The elements respectively mean service type, performance indicators, time-consuming, quality standards, price, service environment, other service information, and so forth.(
5
)  AssessInfo is the assessment information of resource, and its formalized representation is AssessInfo = {TaskID, TAss, CAss, QAss, ServAss, CreditAss, Average}. TaskID is the identification number of a task, automatically generated by sub-CMP; TAss is time-consuming evaluation; CAss is price evaluation; QAss is quality evaluation; ServAss is service evaluation; CreditAss is credit evaluation; Average is average value of every indicator up to now.(
6
)  OtherInfo is other service capability information, added or removed by resource provider, sub-CMPs and users, and its formalized representation is OtherInfo={otherinfo1,otherinfo2,…,otherinfoi,…}, otherinfoi={useri,infoi}, useri is the provider of other service capability information, infoi is the information content stored as a string.


## 5. Realization

We build the Cloud Manufacturing Resource Model with stateful Web Service Description Language (WSDL) document, when dynamically publishing and updating resource cloud. Take certain vertical CNC machine tools as an instance, its processing service capability can be simply described as Table1, the WSDL document of single resource cloud in CE is shown as Algorithm 1, and the WSDL document of resource cloud in CMP is shown as Algorithm 2.Table 1
Parameters of vertical CNC machine tools.
Attribute
Value
Attribute
Value
ID
CC615
Crosshead trip
760 mm
Name
C5116E Machine
Turret fast moving speed
1800 mm/min
Introduction
……
Vertical turret slewing angle
30±o
Enterprise
……Ltd.
Vertical turret maximum cutting force
25 KN
Address
No. 123 Liuhe Road, Hangzhou, Zhejiang Province
Side turret maximum cutting force
20 KN
Price
28 yuan/hour
Workbench maximum torque
25 KNM
Maximum turning diameter
1600 mm
Tool bar section height
40 mm
Table diameter
1400 mm
Main motor power
22/30 KW
Maximum processing height
1000 mm
Overall dimensions (length × width × height)
2800 × 3000 × 3200 mm3
Maximum workpiece weight
5000 kg
Machine weight
12580 kg
Table speed range (16)
5–160 r/min
Photo gallery
CC615_1.jpgCC615_2.jpg CC615_3.jpg
Turret feed range (12)
0.8–86 mm
Years in use
N years
Vertical turret ram stroke
800 mm
Assess
{001, 1, 672, 4, 1, “comment001”}{002, 1, 336, 5, 2, “commen002”}{003, 0.5, 163, 3, 3, “commen003”}……{000, 0.83, 4, 2,}
Side head ram level trip
630 mm
Status
{0, 1, 2, 3, 4, 5}
Side head vertical trip
980 mm
……
……
Side head maximum turning diameter
1400 mm
……
……Algorithm 1:WSDL of single resource cloud description in CE.
< ResCloudEnd >
< ResCloudEnd-info indentifier = “single-resource” >
< RCEInfo >
< description name = “RCEID” value = “00888” />
< description name = “RCEProvider” >
< description name = “RCEProvider-name” value =  “× × × Ltd.” />
< description name = “RCEProvider-tel” value = “86-0571-12345678” />
⋯
</ description >
< description name = “RCEAddress” value = “No. 123, Liuhe Road, Zhejiang Province” />
< description name = “RCEOther” value = null />
</ RCEInfo >
< RC >
< description name = “RCID” value = “CC615” />
< description name = “SRCBaseInfo” >
< description name = “SRCName” value = “Single Column Vertical Machine Tool” />
< description name = “SRCModel” value = “C5116E” />
< description name = “SRCType” value = “2” />
< description name = “SRCInfo” value = null />
< description name = “SRCParameter” >
< description name = “length” value = “2800” />
< description name = “Width” value = “3000” />
< description name = “height” value = “3200” />
< description name = “power” value = “22/33” />
⋯
</ description >
< description name = “SRCBInfos” value = null />
</ description >
< description name = “SRCFuncInfo” >
< description name = “SRCTaskType” value = null />
< description name = “SRCCapa” >
⋯
< description name = “workpiece weight” value = “5000 kg” />
⋯
</ description >
⋯
</ description >
< description name = “SRCStatusInfo” value = “2” >
</ RC >
</ ResCloudEnd-info >
</ ResCloudEnd >Algorithm 2:WSDL of resource description in CMP.
< ResCloudPlatform >
< ResCloudPlatform-info indentifier = “ResCloudPlatform” >
< description name = “ID” value = “SB0088” />
< description name = “RCEID” value = “00888” />
< description name = “BaseInfo” >
< description name = “name” value = “Single Column Vertical Machine Tool” />
< description name = “Model” value = “C5116E” />
< description name = “ResInfo” value = null />
< description name = “Provider” value = “× × × Ltd.” />
</ description >
< description name = “ServiceInfo” >
⋯
< description name = “Price” value = “28 yuan/hour” />
< description name = “photo” >
< description name = “photo1” > < a href = CC615_1.jpg > photo1 < /a > < / description >
< description name = “photo2” > < a href = CC615_2.jpg > photo2 < /a > < / description >
< description name = “photo3” > < a href = CC615_3.jpg > photo3 < /a >  < / description >
⋯
</ description >
⋯
</ description >
< description name = “AssessInfo” >
⋯
< description name = “IncreditAss-Average” average = “2” >
< description name = “IncreditAss-001” TaskID = “001” IncreditAss = “1” />
< description name = “IncreditAss-002” TaskID = “002” IncreditAss = “2” />
< description name = “IncreditAss-003” TaskID = “003” IncreditAss = “3” />
</ description >
⋯
</ description >
< description name = “OtherInfo” >
< description name = “otherinfo1” attribute1 = “John” attribute2 = “value1” />
< description name = “otherinfo2” attribute2 = “Microsoft” attribute2 = “value2” />
⋯
</ description >
</ ResCloudPlatform-info >
</ ResCloudPlatform >


## 6. Discussion

Cloud Manufacturing is a kind of intelligent networked manufacturing model with the characteristics such as service-oriented, high-efficiency and low-energy, and knowledge-based. Through the integration of some advanced technology [17–19], the manufacturing resources would be virtualization and servicesation, in order to be intelligently, multi-win-win, and efficiently shared and collaborated. In the Cloud Manufacturing environment, enterprises provide convenient, on-demand, safe and reliable, and high-quality and low-cost services. Cloud Manufacturing has the following characteristics: highly fragmented distribution and highly concentrated use of resources, service-oriented and demand-oriented, uncertainty of manufacturing plan, manufacturing with users involved, and use and pay on-demand. Because of all the above, the structure, functionality, operating environment, and basic physical attribute have the following characteristics: diversity, complexity, heterogeneity, being massive, and so forth. The bilayer model of manufacturing resource proposed in this paper can adapt well to such a manufacturing environment. Firstly, the separation of the basic data model and the service attribute model, between which a one-to-one mapping is formed by keywords, enables the bilayer model to adapt to the complex and heterogeneous resource in Cloud Manufacturing. Secondly, the two types of resource cloud (single resource cloud and complex resource cloud) can describe well the resource basic characteristics with the basic data model, which usually has a huge amount of data and is relatively certainty stored in CE, and thus greatly reduces heavy tasks for data storage, maintenance, and updating in CMP. thirdly, during dynamically publishing and updating resource cloud, we adopt the stateful Web Service Description Language (WSDL) document, which has a high level of flexibility, and thus is suitable for massive data easily accessed by CE in the Cloud Manufacturing environment. Finally, fully taking into account the user participation, user evaluation is included in the resource model,  thus eases to updating and improving the manufacturing resources, and fully reflects the Cloud Manufacturing characteristics of user-oriented and service-oriented.


## 7. Conclusion

With the increasingly fierce competition in the global market and increasingly serious energy and environmental issues, how to provide users with high quality products and services with low energy consumption and environmental friendly, is an urgent problem to manufacturing industry currently [8]. Cloud Manufacturing and Cloud Service is one of the main directions of the current development in the manufacturing industry and results by applying Cloud Computing theory to manufacturing industry, so it has universal characteristics of “Cloud Theory” such as high user participation, high resource sharing, and high process agility. Aiming at making manufacturing agility, servicesation, green, and intelligence, Cloud Manufacturing is a new development of networked manufacturing with the service-oriented manufacturing theory called Manufacturing as a Service (MaaS) [20]. Under Cloud Manufacturing environment, the publishing, updating, searching, and accessing manufacturing resources have the characteristics of being massive, complexity, and heterogeneity, thus putting forward higher flexibility, agility, and versatility on the resource modeling. In this paper, a new bilayer manufacturing resource model with separation of CE and CMP is proposed. The model is comprised of resource basic data model and resource service attribute model: the resource basic data model in CE focuses on the physical characteristics of manufacturing resource, and it faces enterprise interior manufacturing management system. And the two type resource models (single resource and complex resource) can describe well the resource basic characteristics, which usually have a huge amount of data stored relatively certainly in CE; the resource service attribute model, which usually has smaller amount of data stored in CMP, focuses on service characteristics of manufacturing resource, and it faces resource users’ actual demands. And fully taking into account the user participation, user evaluation is included in the resource model. Besides, the stateful WSDL documents can describe resource attributes perfectly and flexibly thus are suitable to the need under Cloud Manufacturing environment. Through realization of the instance, the model can run well in Cloud Manufacturing environment and can store, publish, and update large and complex data. The users’ demands on discovering and selecting manufacturing resource and deeply participating in manufacturing process can also be met.



---

*Source: 607582-2013-03-18.xml*