![8d68eaa7ed0700748745cc3fa1cce359.png](https://i-blog.csdnimg.cn/blog_migrate/5784ff1c5fbe5cbf9c1468a117df32eb.jpeg)
写在面前
前面我们介绍了西门子、罗克韦尔、施耐德、达索等巨头的MES/MOM平台:
最全解读西门子MES/MOM平台Opcenter,100多亿美金的数字化之路
Wonderware MES—施耐德MES/MOM平台解读
关于罗克韦尔MES FTPC这个系列,今天是第三次了,先来看看前面两次分享:
罗克韦尔MES FTPC技术架构,组件概览-跟我入门MES/MOM系列1
罗克韦尔MES FTPC ProcessDesigner介绍-跟我学MES/MOM系列2
由于为了方便后续体系的介绍,今天我们先整体介绍下FTPC,让大家先了解诸如
数据转移(Transfer),清理(Purge),恢复(Revive)机制等等
因此对目录进行了变动,计划如下(后期或许还会变动):
0. 体系解读罗克韦尔MES/MOM平台FTPC(本次内容)
- FTPC的版本、技术架构、组件等介绍(已完成)
- FTPC Process Designer 基础介绍(已完成)
- FTPC Administrator介绍(下次内容)
- FTPC Shop Operations介绍
- FTPC 工厂建模
- FTPC 产品建模
- FTPC Shop Operations Server介绍
- FTPC 对象及控件
- FTPC 数据字典
- FTPC 用户界面
- ......
00FactoryTalk产品族与FTPC
熟悉罗克韦尔自动化的朋友,应该对罗家的FactoryTalk这个家族并不陌生,即使不熟悉FTPC,但是FactoryTalk View ME和SE,还有FactoryTalk ViewPoint等我相信很多人都使用过~
那FTPC是什么呢?FTPC是FactoryTalk ProductionCentre的缩写,也是罗克韦尔的MES平台,前面我们在介绍西门子MES/MOM平台Opcenter的时候:
最全解读西门子MES/MOM平台Opcenter,100多亿美金的数字化之路
提到了西门子针对于不同的行业的不同解决方案~
![dbf4af321fa938c2bd79945992b0d2b9.png](https://i-blog.csdnimg.cn/blog_migrate/be271cc82362e8c2cdfe9cc5ecfbe27b.jpeg)
罗克韦尔也一样,针对于汽车,制药和快速消费品行业也有对应套件,不过FTPC是这样行业套件的基础平台(感兴趣的朋友可以与西门子一一进行对比):
AutoSuite——汽车
PharmaSuite——制药
CPGSuite——快速消费品
.........................
还是说回今天的主题FactoryTalk,其实除了上面提到的之外,罗克韦尔FactoryTalk家族还有其它系列,如:
FactoryTalkVantagePoint
FactoryTalk Batch
FactoryTalk Historian
...............................
01FTPC架构
FTPC架构共分为四层,包括:客户端(Client Tier)、Web层(Web Tier)、业务逻辑层(Business Tier)、数据库(Database Tier);
![77ef9addf7d02be2c42f5cb28eb699b8.png](https://i-blog.csdnimg.cn/blog_migrate/f7ca93d58c6762de4548fc22a8fc3949.jpeg)
数据层
数据层存储系统的数据,包括系统设计数据和系统运行时的系统数据和生产数据。存储Plant Operations所有数据库表、索引、存储过程、存储函数等。
商业逻辑层
商业逻辑层包括商业逻辑和数据访问,其中商业逻辑为一层session beans,用于完成应用,操作交易(transaction)管理,调用底层的元件(如bean);数据访问用于从数据库获得数据或保存数据到数据库,session bean调用数据操作类直接通过JDBC访问数据库。
Web层
Web层用于连接EJB至web客户端,它包含三个主要元件:HTTP server、SOAP server和Datasweep XML Web Services。HTTP server用于处理客户端发来的请求,SOAP引擎提供与EJB会话的SOAP RPC功能,Datasweep XML Web Services提供客户端通过web service访问Plant Operations系统的功能。
客户端层
客户端层由三种类型的客户端组成,HTML客户端,java客户端,通过Web Services与Plant Operation服务器通讯的客制化第三方客户端。
![a8ef39ec8023de6ea610acd1fca98ddf.gif](https://i-blog.csdnimg.cn/blog_migrate/e4c8c6854f7603021ca56d136c0e29ca.gif)
02软件组成
FTPC包括Process Designer,Shop Operation和Enterprise Administrator三个部分。
Process Designer
提供了一个环境和平台来根据客户的需求设计生产流程,创立生产过程中的数据对象和创建车间层操作的界面(类似于VB的编程界面,使用JAVA脚本Pnuts语言)。
Shop Operation
提供了一个环境来运行Process Designer中设计的车间层操作界面,同时把操作中发生的所有数据记录发送给服务器端,因此可以看成是客户端。
Enterprise Administrator
Enterprise Administrator主要负责Plant Operations和Data Management两个部分的配置管理。涉及Plant Operations的管理主要是对Process Designer和Shop Operation的环境进行配置,同时对数据库进行管理。
![a8ef39ec8023de6ea610acd1fca98ddf.gif](https://i-blog.csdnimg.cn/blog_migrate/e4c8c6854f7603021ca56d136c0e29ca.gif)
03热部署
FTPC的两种客户端,Java客户端和HTML客户端的开发都是在Java客户端Process Designer上完成的,用户可以同时登陆多个Process Designer客户端对同一个系统进行开发(协同开发)。在系统运行时,Process Designer仍能继续开发工作,两种客户端都只需一次完成,不需要分开开发,客户端除了安装JRE环境,不需要其他部署和安装额外的程序,并且每次登录客户端会自动下载服务器端的最新版本,做到一次修改,全厂更新。
![a8ef39ec8023de6ea610acd1fca98ddf.gif](https://i-blog.csdnimg.cn/blog_migrate/e4c8c6854f7603021ca56d136c0e29ca.gif)
04扩展性
FTPC具备大系统所必须的良好扩展性,主要由于FTPC是基于java技术的系统开发平台,能够实现跨平台整合。同时其数据处理既支持分布式处理数据再总体收集或者集中式处理数据两种形式。在与.net/COM+开发的系统集成时,FTPC提供了Integrate WebService Client可自动转换数据对象,实现系统无缝集成。FTPC集成了常用的设备和系统接口,可方便的与外部系统对接。
![a8ef39ec8023de6ea610acd1fca98ddf.gif](https://i-blog.csdnimg.cn/blog_migrate/e4c8c6854f7603021ca56d136c0e29ca.gif)
05支持集群
FTPC支持集群方式。当系统负载较大时,在Web层和业务逻辑层均可扩展成集群方式。采用集群方式时,可起到负载平衡作用,同时也起到提高系统可用性的作用。当一台服务器故障时,集群中的其他服务器科自动运行故障服务器上的应用,客户端只感觉到短暂的服务停滞。
![a8ef39ec8023de6ea610acd1fca98ddf.gif](https://i-blog.csdnimg.cn/blog_migrate/e4c8c6854f7603021ca56d136c0e29ca.gif)
06ORM
在FTPC中,将一样的处理代码即业务逻辑和可能不一样的处理即数据存取逻辑分离开来,所有业务对象对应到数据库中的数据表,开发者不需要直接去操作数据表,只需对业务对象操作即可,简化了开发难度,因此代码量能减少30%-50%。尽管FTPC的ORM也存在一定的系统开销,但是相对于关系型数据库的遍历开销和数据库的连接开销,FTPC将所有业务对象加载到内存中处理,异步更新其对应于数据库中的数据,加快了业务逻辑处理效率,比一般的Server同步读写数据库更快,同时也降低了数据库特有SQL的依赖性,提高了数据库的可移植性。
![a8ef39ec8023de6ea610acd1fca98ddf.gif](https://i-blog.csdnimg.cn/blog_migrate/e4c8c6854f7603021ca56d136c0e29ca.gif)
07自动化设备接口
FTPC可与Rockwell Automation Logix控制平台紧密集成,通过FactoryTalk Directory技术标记数据,无需任何额外的系统开发或编程,就可与Logix系列PLC控制器,PowerFlex系列变频器,Kinetix系列运动控制器集成,直接采集生产现场的实时数据(如气具拧紧数据、检测数据等)。可通过OPC方式与第三方自动化系统广泛互联。
![a8ef39ec8023de6ea610acd1fca98ddf.gif](https://i-blog.csdnimg.cn/blog_migrate/e4c8c6854f7603021ca56d136c0e29ca.gif)
08开发环境
FTPC将常用的生产中的业务对象抽象出来并封装其常用的接口方法及属性,稳定可靠,并优化了业务对象在内存中的处理,另外,还可自定义添加接口方法及属性,简化了业务逻辑的开发并保证其稳定性。FTPC提供了成熟的业务模块,如生产管理模块、质检模块、供应商管理模块等,可供客户使用或修改整合开发环境类似于VB,编程语言为PNUTS。图形化的集中开发环境,对于实施人员简单易懂,容易上手,并将注意力集中在业务,而不是代码。系统提供脚本调试模式。
![a8ef39ec8023de6ea610acd1fca98ddf.gif](https://i-blog.csdnimg.cn/blog_migrate/e4c8c6854f7603021ca56d136c0e29ca.gif)
09同步异步处理
FTPC的事件是以Activity的形式运行的。Activity是一个以Java开发和部署的类,包含一系列的函数(function)、输入(input)、输出(output),以实现相应的系统功能(如物料消耗,批次接受,条码打印等)。Activity可以分为GUI-Activity和None GUI-Activity,其执行方式可分为同步执行(Synchronous Execution )和异步执行(Asynchronous Execution )。开发人员可以根据所需系统功能的特点设计相应事件是以同步方式还是异步方式执行。对于那些逻辑简单但是需要高速执行的事件,可以通过同步方式执行。
![a8ef39ec8023de6ea610acd1fca98ddf.gif](https://i-blog.csdnimg.cn/blog_migrate/e4c8c6854f7603021ca56d136c0e29ca.gif)
10多级数据存储架构
支持生产数据库(Production Database),历史数据库(Operational Data Store),数据仓库(Analytical Datamart)等多级的数据存储方式。用户可以根据实际生产需要,设计和构架合适的数据存储架构,进行分布式、集中式等灵活的数据库配置方式。
![a8ef39ec8023de6ea610acd1fca98ddf.gif](https://i-blog.csdnimg.cn/blog_migrate/e4c8c6854f7603021ca56d136c0e29ca.gif)
11数据清理与恢复
![77ffd54937a4a6856c7d5b92bf27bab3.png](https://i-blog.csdnimg.cn/blog_migrate/174815d248b82adea7a7aa1278290610.jpeg)
FactoryTalk ProductionCentre 提供了一套完整的数据转移(Transfer),清理(Purge),恢复(Revive)机制,实现数据在生产数据库和ODS之间的迁移。
数据从生产数据库清理至ODS是“在线式”的(online),无需中止对相关数据库的操作,这就意味着无需停止生产线就能完成对数据库的维护。FTPC预定义了一系列数据库清理的规则,确保对生产数据库的清理不会影响数据完整性。并且在表结构(Table Scheme)的设计时,考虑了清理的需要,确保每次只对特定数量的数据进行清理,以避免因处理大数据而造成生产数据库的阻塞。系统对历史数据的清理(Purge)工作可以通过预置的界面以配置的方式完成,用户无需是DBA或者数据库的专业人员。