1,数据的通讯底层方式

  • 双方之前通讯方式:
  • 之前给出的是opc
  • 现在,我们这边数据库,webservices,s7直接PLC对接,TCP/IP读取等都是支持的.双方可以进行协商.
  • 特殊数据可以特殊传输.

2,建立对接对象模型

  • A类数据:采集数据_____定义为MES非检测数据.当该数据产生的时候,甲方会将数据丢入数据库. MES方可以按照以下方式去读取

                  1,直接定时轮询数据库,并将读取的数据的设定标志位设为true表示已读取数据.

                  2,通过间接的方式,由甲方代理轮询数据库,并将读取的数据设定标志设为true.

                  3,为了方便通讯,甲方可以开发 数据.dll 提供给乙方 用于解析数据.

                    也就是甲方传给乙方的数据是统一的字节流.乙方可以通过解析的.dll(仅限于.net平台的mes开发)中的函数,来将数据还原成处理类.

  •     B类数据:MES管控数据_____ 定义为  甲方将数据块传递给乙方,乙方进行数据检验,只有等乙方数据通过的时候,甲方才能进行下一步动作:

                     对于这类数据:

                 客户和乙方应为甲方定义 数据检验成功/不成功 的处理流程

                 甲方实现强制功能,可以进行屏蔽.

               可能存在

  • 通讯失败 
  • 数据校验失败
  • 数据本身不符合生产流程(比如 配方号不对....人员权限不够等等.)
  • 成功
  • 中断,甲方强制结束数据申请,人工处理.
  • 无论如何甲方将在数据库进行一条数据记录.

      C类数据:甲方申请数据块(比如配方...之类)

  •               需要由乙方给定数据结构.并定义互锁字段
  •               需要由乙方定义传输方式.
  •               需要乙方定义数据失败后的处理方式,和甲方协商后处理       

----------------------

   以上模型需要双方讨论给出当模型的类的大小发生变化时,进行更改的便利性.(即并不会增加多少工作量)

    3,通讯测试:

                针对上述的模型进行数据测试.(需要考虑 数据模型更改后的便利性)

                测试模型的可靠性.

   4,在PLC端,为甲方定义各类模型的具体数据结构,对于特殊数据,(非采集类,比如人工输入数据)进行定义.由甲方负责进行数据结构的填充.

原文地址:https://www.cnblogs.com/frogkiller/p/12376009.html