名称 最后提交
excel 正在载入提交数据...
myproject 正在载入提交数据...
.gitignore 正在载入提交数据...
README.md 正在载入提交数据...
pom.xml 正在载入提交数据...
storage.iml 正在载入提交数据...
基本框架简介.docx 正在载入提交数据...

##佳世达接口说明:

  1. 皮带线扫码后调用,用于获取尺寸后升起气缸

    地址:

    /rest/api/qisda/device/getSize

    参数:

    • robotIndex=机器人编号,IP为51的机器人为1, 52的机器人为2, 53的机器人为3,
    • barcode=扫到的条码

    返回:

    {"code": 0, "msg":"ok", data:7}

    • code: 0为正常,其他为异常;
    • msg: 消息
    • data: 料盘直径,=7时升起气缸
  2. 皮带线获取尺寸后,料盘到达机器人取料位置进调用,如果未扫到码,或者没等到取料位置信号亮,可以不用调用(4楼)

地址:

/rest/api/qisda/device/arriveRobotLocation

参数:

  • robotIndex=机器人编号,IP为51的机器人为1, 52的机器人为2, 53的机器人为3

返回:

``

  1. 料盘流转位置信息更新

    地址:

    rest/api/qisda/device/updateLocInfo

    参数:

    • barcode=料盘的条码
    • status=状态信息,移栽=MOVING,流水线=INLINE,皮带线=INBELT
    • locInfo=位置信息,移栽时为移栽编号,流水线时为托盘号,皮带线时为皮带线编号,机器人时为机器人编号

    返回:

    {"code": 0, "msg":"ok", "data":""}

    • code: 0为正常,其他为异常,
    • msg:消息, data:为空
  2. 放入料架(A,B,C,D)后调用,根据返回值决定当前料架是否放满,以及后续是否还有任务

    地址:

    /rest/api/qisda/device/putShelfFinished

    参数:

    • barcode=料盘的条码
    • rfid=料架的RFID信息
    • rfidLoc=料架的架位信息
    • robotIndex=机器人编号(非机器人放置时不传此参数),IP为51的机器人为1, 52的机器人为2, 53的机器人为3

    返回:

    {"code": 0, "msg":"ok", "data":{"rfid":"xxx","smallEmpty":0,"bigEmpty":0, "packageEmpty":0,"cutPackageTask":0,"packageTask":10,"cutTask":10, "smallTask":5, "bigTask":5}}

    • code: 0为正常,其他为异常,
    • msg:消息,
    • data:为料架和任务信息
    • rfid: 当前料架的RFID
    • packageEmpty: 当前料架还可放置的包装料的数量(C料架和A料架有值,其他料架为0)
    • smallEmpty: 当前料架还可放置的小料盘(7x8)的数量(D料架,其他料架为0)
    • bigEmpty:当前料架还可放置的大料盘的数量(C料架,其他料架为0)
    • cutPackageTask:还有多少盘分盘的包装料任务(放到A料架上,转运到分盘区)
    • packageTask:还有多少盘包装料任务(放到A料架上,并转运到包装线,最终到C料架)
    • cutTask: 还有多少盘分盘料任务(放置到料串B上,转运到分盘区)
    • smallTask: 还有多少盘小料任务(放置到双层线的D料架上)
    • bigTask: 还有多少盘大料任务(放置到C料架上)
  3. 机器人获取架位信息时调用

    地址:

    /rest/api/qisda/device/getLocation

    参数:

    • robotIndex=机器人编号,IP为51的机器人为1, 52的机器人为2, 53的机器人为3
    • rfid=当前双层线上料架的RFID信息

    返回:

    {"code": 0, "msg":"ok", "data":{"rfid":"xxx","rfidLoc":3,"w":7,"h":12,"barcode":"xxxxxxx"}}

    • code: 0为正常,其他为异常,
    • msg:消息,
    • data:为料盘对应的位置信息
    • barcode: 料盘条码信息
    • w: 料盘直径信息,取料时机器人根据此信息
    • h: 料盘厚度信息
    • rfid: 料架RFID
    • rfidLoc: 料架架位
  4. 出库时根据StatusBean返回data中的参数决定料盘流转到哪里

    • urgentReel: true 表示紧急料,需要出到料串上
    • cutReel: true 表示分盘料,需要出到料串上
    • smallReel: true 小料(7x8),放置到小料架上
    • rfid: 分配的料架RFID
    • fidLoc: 料架的架位 > - 值为-1时,可以自由分配皮带线 > - 小料时,架位为1-46优先走1/2号皮带线,47-92优先走3/4号皮带线, 70,71,72时只能分配到3/4号皮带线; > - 大料时,架位1-6,12优先走1/2号皮带线, 7-11优先走3/4号皮带线
  5. 料串或包装料架全部入库完成时调用,清除RFID信息

    地址

    /service/store/qisda/clearPutInRfid

    参数

    • rfid: 料串或包装料架的RFID

    返回:

    "OK"

  6. 包装料机器人获取取出和放置位置

    地址

    /rest/api/qisda/device/getPackageLocation

    参数

    • bigRfid: 大料架的RFID
    • packageRfid: 包装料架的RFID

    返回:

    {"code": 0, "msg":"ok", "data":{"barcode":"xxx","emptyInBig":3,"reelInPackage":7,"packageTask":"3","packageRfid":"xxx"","packageLoc":"1","bigRfid":"xxx","bigLoc":"1"}}

    • code: 0为正常,其他为异常
    • msg:消息,
    • data:为对应的位置信息
    • barcode: 料盘条码信息
    • emptyInBig: 大料架上可放包装料数量(空位置),如果为0,放行大料架
    • reelInPackage: 包装料架上剩余的包装料数量(包含当前获取的物料),如果为0,说明这个包装料架上的料已取完
    • packageTask: 剩余的包装料任务, 如果为0,说明已经没有包装料任务,可以放行大料架
    • packageRfid: 包装料架RFID
    • packageLoc: 取料位置(包装料架)
    • bigRfid: 大料架RFID
    • bigLoc: 放料位置(大料架)

    说明: 大料架到达双层线包装料架位置时调用此接口, 将包装料从packageRfid的packageLoc位置取出,放入bigRfid的bigLoc位置

  7. 包料料机器人放置包装料完成

    地址:

    /rest/api/qisda/device/putPackageFinished

    参数:

    • barcode=料盘的条码
    • packageRfid: 包装料架RFID
    • packageLoc: 取料位置(包装料架)
    • bigRfid: 大料架RFID
    • bigLoc: 放料位置(大料架) 返回: {"code": 0, "msg":"ok", "data":""}

    • code: 0为正常,其他为异常,

    • msg:消息, data:为空

  8. 获取包装料仓的空闲仓位数

    地址:

    /rest/api/qisda/device/emptyStoragePosCount

    参数:

    返回:

    {"code": 0, "msg":"ok", "data":{"packing-19":"19","packing-20":"20","packing-21":"21","packing-22":"22","packing-23":"23","packing-24":"24"}}

    • code: 0为正常,其他为异常,
    • msg:消息,
    • data:为包装料仓的空闲仓位数(key为与客户端一致的料仓标识,value为空闲仓位)
    • packing-19=19: 表示包装仓19的空闲仓位数是19
    • packing-20=20: 表示包装仓19的空闲仓位数是20
    • packing-21=21: 表示包装仓19的空闲仓位数是21
    • packing-22:22: 表示包装仓19的空闲仓位数是22
    • packing-23:23: 表示包装仓19的空闲仓位数是23
    • packing-24:24: 表示包装仓19的空闲仓位数是24
  9. 分盘料/紧急料放上料串或料架时调用

地址:

/rest/api/qisda/device/afterPutCut

参数:

cid: 料仓cid,流水线可传入空 barcode : 条码 rfid : RFID rfidLoc: 料架位置,流水线可传-1

返回:

{"code": 0, "msg":"ok", "data":{"cutPackageTask":"0","urgentPackageTask":"20","cutTask":"21","urgentTask":"22"}}

  • code: 0为正常,其他为异常,
  • msg:消息,
  • data:
  • cutPackageTask: 表示当前包装仓的分盘任务数
  • urgentPackageTask: 表示当前包装仓的紧急料任务数
  • cutTask: 表示流水线分盘任务数
  • urgentTask: 表示流水线紧急料任务数
  1. 分盘料/紧急料启动时获取料架的虚拟RFID调用

地址:

/rest/api/qisda/device/findTempRfid

参数:

rfid : RFID

返回:

{"code": 0, "msg":"ok", "data":{"tempRfid":""}}

  • code: 0为正常,其他为异常,
  • msg:消息,
  • data:
  • tempRfid: 表示当前料架(料串)对应的虚拟RFID
  1. 分盘料/紧急料放上料串或料架时调用

地址:

/rest/api/qisda/device/afterPutCut

参数:

cid: 料仓cid,流水线可传入空 barcode : 条码 rfid : RFID rfidLoc: 料架位置,流水线可传-1

返回:

{"code": 0, "msg":"ok", "data":{"cutPackageTask":"0","urgentPackageTask":"20","cutTask":"21","urgentTask":"22"}}

  • code: 0为正常,其他为异常,
  • msg:消息,
  • data:
  • cutPackageTask: 表示当前包装仓的分盘任务数
  • urgentPackageTask: 表示当前包装仓的紧急料任务数
  • cutTask: 表示流水线分盘任务数
  • urgentTask: 表示流水线紧急料任务数
  1. 包装料架进入料仓时料架RFID上已经锁定库位的料(有数据时,)或料架从包装料仓流出时AGV获取料架上已锁定的料盘(为空时当作空料架处理)

地址:

/rest/api/qisda/device/getShelfLockInfo

参数:

rfid : RFID

返回:

{"code":0,"msg":"ok","data":[{"barcode":"S20052301213","cid":"packing-20","rfid":"A12","rfidLoc":"3","lockPosName":"4D2001AA0006","lockPosId":"1231"}]}

  • code: 0为正常,其他为异常,
  • msg:消息,
  • data:
  • rfid: 料架RFID
  • rfidLoc: 料架的库位
  • barcode: 库位中料盘的条码
  • cid: 库位中料盘的锁定库位对应的料仓编号
  • lockPosName: 库位中料盘的锁定库位
  • lockPosId: 库位中料盘的锁定库位的ID,
  1. 包装线AGV获取料架中的任务数,如果当前料架的任务数不为0,需要用当前料架去其他包装仓继续放料

地址:

/rest/api/qisda/device/shelfTaskCount

参数:

rfid : RFID

返回:

{"code":0,"msg":"ok","data":{"taskCount":0,"rfid":"A2"}}

  • code: 0为正常,其他为异常,
  • msg:消息,
  • data:
  • rfid: 料架RFID
  • taskCount: 当前料架剩余任务数(即还有几盘料没放上去)
  1. 盘点时客户端通知服务器某库位是否有料

地址:

/rest/api/qisda/device/posReelCheck

参数:

cid : 客户端CID pos : 库位 hasReel : 库位是否有料,true表示有料,其他值为无料

返回:

{"code":0,"msg":"ok","data":""}

  • code: 0为正常,其他为异常,
  • msg:消息,
  • data:
  1. 异常看板

地址:

/rest/api/qisda/device/updateDeviceAlarmMsg

参数:

deviceAlarmList : 异常列表Json字符串 [{"name":"移栽5", "msgKey":"line.move5.timeOut", "msgValue":"运动超时"},{"name":"移栽4", "msgKey":"line.move4.timeOut", "msgValue":"误差过大"}]

name : 异常位置名称 msgKey : 异常信息唯一标识 msgValue : 异常信息

返回:

{"code":0,"msg":"ok","data":""}

  • code: 0为正常,其他为异常,
  • msg:消息,
  • data:
  1. 取消入库任务

地址:

/rest/api/qisda/device/cancelPutInTask

参数:

barcode : 需要取消的唯一码信息

返回:

{"code":0,"msg":"ok","data":""}

  • code: 0为正常,其他为异常,
  • msg:消息,
  • data:
  1. 3楼料盘到达机器人取料位置

地址:

/rest/api/qisda/device/arrive3fRobotLocation

参数:

barcode : 需要取消的唯一码信息 robotIndex:机器人编号

返回:

{"code":0,"msg":"ok","data":""}

  • code: 0为正常,其他为异常,
  • msg:消息,
  • data:
  1. 根据虚拟RFID查找料架的真实的Rfid,用于AGV包装仓判断多个任务是否属于同一料架

地址:

/rest/api/qisda/device/findRealRfid

参数:

tempRfid : 虚拟RFID

返回:

{"code":0,"msg":"ok","data":{"tempRfid":"23819-2A","realRfid:"A20"}}

  • code: 0为正常,其他为异常,
  • msg:消息,
  • data:
  • tempRfid: 虚拟RFID
  • realRfid: 真实RFID,如果没绑定真实RFID,返回空字符串
  1. 取消出库任务

地址:

/rest/api/qisda/device/cancelPutInTask

参数:

barcode : 需要取消的唯一码信息

返回:

{"code":0,"msg":"ok","data":""}

  • code: 0为正常,其他为异常,
  • msg:消息,
  • data:
  1. 查询当前正在出的工单的线别信息

地址:

/rest/api/qisda/device/currentOutLine

参数:

返回:

{"code":0,"msg":"ok","data":{"hSerial":"23819","so":"23679","line":"C6"}}

  • code: 0为正常,其他为异常,
  • msg:消息,
  • data:
  • hSerial: 需求单号
  • so: 工单号
  • line: 工单的线别信息
  1. 料架放上AGV时,根据RFID清理料架的缓存信息,使料架可以重复使用

地址:

/rest/api/qisda/device/agvRemoveRfid

参数:

rfid : 料架RFID编号

返回:

{"code":0,"msg":"ok","data":""}

  • code: 0为正常,其他为异常,
  • msg:消息,
  • data:
  1. 料仓进出轴报警时,屏蔽正在执行的库位

地址:

/rest/api/qisda/device/disablePos

参数:

posName : 库位编号

返回:

{"code":0,"msg":"ok","data":""}

  • code: 0为正常,其他为异常,
  • msg:消息,
  • data:
  1. AGV锁定包装仓入库料架, AGV从VMI拉上包装料架准备入库时,调用此接口,用于包装仓判断料架是否是入库料架

地址:

/rest/api/qisda/device/lockPutInAShelf

参数:

rfid : 包装料架的RFID

返回:

{"code":0,"msg":"ok","data":""}

  • code: 0为正常,其他为异常,
  • msg:消息,
  • data:
  1. 点料机解析条码,获取料盘尺寸

地址:

/rest/api/qisda/device/resolveCode

参数:

code: 扫描到的条码信息,多个条码用##分割,条码前带尺寸信息会自动创建

返回:

{"code":0,"msg":"ok","data":{"barcode":"xxxx","pn":"xxxx","qty":1000,"w":7,"h":8}}

  • code: 0为正常,其他为异常,(未传参数, 未找到有效条码,多个有效条码)
  • msg:消息,
  • data:
  • barcode: 需求单号
  • pn: 物料编号
  • qty: 数量
  • w: 料盘直径(未配置尺寸信息时使用传入尺寸,否则使用配置尺寸)
  • h: 厚度(未配置尺寸信息时使用传入尺寸,否则使用配置尺寸)
  1. AGV根据料架RFID获取料架的目的地,用于AGV拉料架到线上

地址:

/rest/api/qisda/device//shelfDestination

参数:

rfid: 料架的RFID信息

返回:

{"code":0,"msg":"ok","data":"D2"}

  • code: 0为正常,其他为异常,(未传参数, 未找到有效条码,多个有效条码)
  • msg:消息,
  • data: 料架的目的地
  1. 流水线料盘移动到皮带线时进行判断

地址:

/rest/api/qisda/device/canReelToBelt

参数:

barcode: 料盘条码

返回:

{"code":0,"msg":"ok","data":true}

  • code: 0为正常,其他为异常,(未传参数, 未找到有效条码,多个有效条码)
  • msg:消息,
  • data: true 可以放上皮带线 false 继续留在环形线

"type":"task"或"error"或"info"

machine: 机器名称(如:料仓一) type: 类型(task表示任务,error表示错误,info表示提示消息) part: 部件名称(如:进出轴) task: 任务名称(如: 入库) step: 步骤(如:进出轴退回) time: 开始时间(yyyy-MM-dd HH:mm:ss) endTime: 结束时间(yyyy-MM-dd HH:mm:ss) duration: 持续时长(秒)

{"device":"环形线","taskName":"待机任务","TargetPlace":"Standby","TaskStep":"END","MissionInfo":"在待机位检测到任务,执行任务","DateTime":"2021-06-15 23:30:56","EndDateTime":"2021-06-16 00:02:53","TaskRunTime":"31.95","Type":"Task"}

{"AGVNum":"15号车","DateTime":"2021-06-16 00:32:40","EndDateTime":"2021-06-16 00:33:10","ErrorMsg":"在A1停留超时","ErrorLastTime":"0.50","TaskName":"取料串任务","AGVMissionName":"MoveA1","MissionInfo":"待机位/充电位收到任务,开始执行","TargetPlace":"A1","Type":"Error"}