PF_Start / PF_Start函数
开始指定部件的Part Feeding进程。
格式
PF_Start 部件ID1 [, 部件ID2 [, 部件ID3 [, 部件ID4] ] ]
PF_Start (部件ID1 [, 部件ID2 [, 部件ID3 [, 部件ID4] ] ])
参数
- 部件ID
指定部件ID(整数值1~32)。将变量用作自变量时,如果未指定部件ID,则将值设为0。
返回值
无
描述
开始PF_Start之前,请执行下述处理。
有关执行方法,请参阅使用示例。
- 选择要使用的机器人
- 设定机器人(Power、Speed、Accel等)
- 将电机设为On
- 要输出日志时,执行PF_InitLog
如果执行PF_Start,则会生成新任务(任务编号32)并开始Part Feeding进程。
不等待Part Feeding进程结束,将控制返还给调用来源。
在下述条件下会发生错误,并执行Status回调函数。未开始Part Feeding进程。
| 条件 | Status回调函数自变量Status的值 |
|---|---|
没有部件ID 要利用不同送料器中的部件开始多部件运作 重复设定部件ID | PF_STATUS_BAD_ID |
| 部件的参数设定无效 | PF_STATUS_BAD_PARAMETER |
| 送料器校准未完成 | PF_STATUS_CAL_NOT_COMPLETE |
| 部件无效 | PF_STATUS_PARTNOTENABLED |
| 送料器已被使用 | PF_STATUS_FEEDERINUSE_ERROR |
| 发生系统错误 | PF_STATUS_ERROR |
- 多送料器运作
可利用属于不同送料器的部件同时执行Part Feeding进程。比如,部件1属于送料器1,部件2属于送料器2时,可在执行PF_Start 1后执行PF_Start 2。
PF_Start用于按送料器创建任务。任务编号始于“32”,每执行一次PF_Start,编号都会减小1。使用的任务编号取决于送料器编号。送料器编号 任务编号 1 32 2 31 3 30 4 29
各回调函数 (PF_Robot、PF_Control、PF_Status. PF_Vision、PF_MobileCam) 用于创建任务并在同一任务中执行。
T/VT系列控制器时,可同时控制的送料器最多为2台。如果要进行大于等于3台的运作,则会发生“错误7731:超过控制器类型的最大同时送料器数”。
多部件运作
要进行多部件运作时,在自变量中指定多个ID。最多可指定4个部件ID。此时,送料器按由PF_Start的第1自变量指定的部件ID(有效部件)的校准参数进行运作。要切换有效部件时,使用PF_ActivePart命令。
可在多部件运作中指定的部件仅为属于同一送料器的部件。如果指定不同送料器的部件并执行PF_Start,则会发生错误,并且由PF_STATUS_BAD_ID调用PF_Status回调函数。
多部件运作时,1台送料器最多可使用2台机器人。如果按使用大于等于3台的机器人设定执行PF_Start,则会发生错误,并且由PF_STATUS_**调用PF_Status回调函数。其他注意事项
执行Part Feeding进程期间,不能针对同一送料器执行新的Part Feeding进程。比如,部件1属于送料器1,部件2属于送料器1时,如果执行PF_Start 1后执行PF_Start 2,则会发生错误,并且由PF_STATUS_FEEDERINUSE_ERROR调用PF_Status回调函数。已执行的PF_Start会继续进行处理。
通常请通过任务执行PF_Start。通过后台任务执行时,会发生错误。
不能通过虚拟控制器与命令窗口执行。
使用示例
Robot 1
Motor On
Power High
Speed 100
Accel 100, 100
LimZ -80.0
PF_InitLog("C:\log.csv", True)
PF_Start(1)