跳转至

Connect IoT - Fuji Nexim驱动程序#

随着产品变得越来越多样化,向可变组合及可变产量生产方式的转变正在加速。对混乱的生产计划进行更改以及对机器进行频繁的更改都会导致产品出现缺陷或错过截止日期,同时还会出现其他一些难题,例如导致物料、零件和产品的库存增加。

Nexim是一个生产系统,集成了生产周期涉及的各项功能(计划、操作、检查),可提供可靠的计划支持和转换支持及灵活的数据管理,并可保持较高的运营率和质量。

数据类型#

这些是受支持的特定数据类型:

名称 描述
整数 整数
数字 小数
字符串 字符串值
布尔值 布尔值
日期时间 日期/时间值
对象 Json格式值

Table: Fuji Nexim特定数据类型。

支持的功能#

FujiNexim任务包(controller-engine-fujinexim-tasks)直接支持以下任务/功能:

任务 FujiNexim功能 描述
onFujiNeximRequest、sendFujiNeximReply BOMLIST 物料清单列表通知
onFujiNeximRequest、sendFujiNeximReply MCSTATECHANGE 机器状态更改通知
onFujiNeximRequest、sendFujiNeximReply PCBCHECKIN 面板签入通知
onFujiNeximRequest、sendFujiNeximReply PCBCHECKOUT 面板签出通知
onFujiNeximRequest、sendFujiNeximReply PGCHANGE 计划更改完成通知
onFujiNeximRequest、sendFujiNeximReply PGCHANGEII 计划更改完成报告II
onFujiNeximRequest、sendFujiNeximReply PRODSTARTED 生产启动通知
onFujiNeximRequest、sendFujiNeximReply PRODCOMPLETED 生产完成通知
executeFujiNeximCommand PARTSSUPPLY 零件供应
executeFujiNeximCommand RESTARTEQUIP Fuji设备控制释放命令
executeFujiNeximCommand STOPEQUIP Fuji设备控制命令
executeFujiNeximCommand SETEV 有效事件设置通知
executeFujiNeximCommand STARTEV 事件通知启动通知
(集成在驱动程序上) KEEPALIVE 连接检查请求

Table: Fuji Nexim的预配置消息列表

下表列出了已预先配置的消息格式列表。

onFujiNeximRequestsendFujiNeximReplyexecuteFujiNeximCommand任务支持在规范中添加其他消息。

异常流程参数#

异常流程支持以下参数,用于定义通信参数以及驱动程序的预期行为:

名称 类型 可能的值 默认值 描述
地址 字符串 "0.0.0.0" Fuji接口正在侦听的地址。
端口 整数 0 Fuji接口正在侦听的端口。
localAddress 字符串 "0.0.0.0" 套接字应连接的本地地址。当有多个网卡可用时使用。
localPort 整数 0 套接字应连接的本地端口。
family 枚举 IPV4, IPV6 IPV4 IP堆栈的版本可以是4或6。默认值:4.
keepAliveTime 整数 10000 发送KEEPALIVE消息的时间间隔(毫秒)。
autoConfigure 布尔值 true 自动配置(SETEV和STARTEV)。
machineName 字符串 "" 自动配置中使用的机器名称(逗号分隔值)
keepAliveTimeout 整数 150000 中央服务器定期向主机发出连接检查请求(KEEPALIVE)(默认值:120秒)。KEEPALIVE超时(毫秒)- 从设备接收KEEPALIVE的超时时间(默认值:150秒)。
controllerRequestTimeout 整数 10000 发送到设备的请求超时(毫秒)。
equipmentRequestTimeout 整数 10000 发送到控制器的请求超时(毫秒)。

Table: Fuji Nexim特定参数

驱动程序扩展#

此异常流程驱动程序提供了一组扩展,允许自定义执行独立于关联的驱动程序定义的操作。这意味着您可以使用自定义注册驱动程序定义中不存在的事件。

这在访问共享的设备数据或者由于过于复杂而无法使用常规机制访问的设备数据时特别有用。在需要访问命名约定可能因设备而异的数据时也很有用。

对象#

对象是作为参数传递或作为结果值返回的结构。

RegisterHandler#

名称 类型 描述
event Event 要注册的事件(完整信息)

Table: Fuji Nexim特定处理程序注册。

UnregisterHandler#

名称 类型 描述
event Event 要注销的事件(至少必须提供name属性)

Table: Fuji Nexim特定处理程序取消注册。

方法#

注册事件#

在发生特定Fuji Nexim消息类型时通知协议驱动程序引发该事件。

void connect.iot.driver.fujinexim.registerEvent(data: Event)

示例#

通知 connect.iot.driver.fujinexim.registerEvent

{
  "name": "PgChange",
  "deviceId": "PGCHANGE",
  "isEnabled": true,
  "properties": [
    {
      "name": "time",
      "deviceId": "Time",
      "deviceType": "DateTime",
      "dataType": "DateTime"
    },
    {
      "name": "lineName",
      "deviceId": "LineName",
      "deviceType": "String",
      "dataType": "String"
    },
    {
      "name": "machineName",
      "deviceId": "MachineName",
      "deviceType": "String",
      "dataType": "String"
    },
    {
      "name": "moduleNo",
      "deviceId": "ModuleNo",
      "deviceType": "Integer",
      "dataType": "Integer"
    },
    {
      "name": "laneNo",
      "deviceId": "LaneNo",
      "deviceType": "Integer",
      "dataType": "Integer"
    },
    {
      "name": "programName",
      "deviceId": "ProgramName",
      "deviceType": "String",
      "dataType": "String"
    }
  ]
}

注销事件#

通知异常流程驱动程序在出现特定消息时停止引发该消息。

void connect.iot.driver.fujinexim.unregisterEvent(data: Event)

示例#

通知 connect.iot.driver.fujinexim.unregisterEvent

{
  "name": "EventName"
}

执行命令#

执行自定义命令。

any connect.iot.driver.fujinexim.executeCommand(data: ExecuteCommand)

示例#

SendRequest connect.iot.driver.fujinexim.executeCommand

{
    "command": {
        "name": "StartEv",
        "deviceId": "STARTEV",
        "extendedData": {
            "executionMode": "SendRequest",
            "destination": "TargetDevice"
        },
        "parameters": [{
            "name": "machineName",
            "deviceId": "MachineName",
            "dataType": "String",
            "deviceType": "String" ,
            "extendedData": {}
        }],
    },
    "parameters": {
        "machineName": "Machine001",
    }
}