PLC 硬触发接线与设置¶
产品到位了要让相机拍照,有两种做法:把 PLC 的信号线直接接到相机上(硬触发),或者让软件去问 PLC "到位了没"(通讯触发)。 这一页讲两者怎么选、硬触发怎么接怎么设,以及拍早了、拍晚了、正反拍反了怎么办。
先选一种触发方式¶
| 硬触发(外触发) | 通讯触发 | |
|---|---|---|
| 怎么走线 | PLC 输出直接接相机的触发线 | 不接相机,PLC 把"到位"写进寄存器或发一条字符串,软件轮询 |
| 时序精度 | 最准。信号到相机就曝光 | 差一点。轮询间隔加上一来一回的通讯时间,通常几十毫秒 |
| 相机里怎么设 | "触发"页选"外部触发模式" | "触发"页选"软触发模式" |
| 运行顺序里 | 不用插触发指令 | 要插一行"通讯触发" |
| 适合 | 节拍快、要求曝光时刻精确 | 现场不方便改相机线、或一个信号要带动多台相机 |
两种也可以配合用:用通讯触发接收"产品到位",再让整组相机同时软触发(见下面的"勾上'主动触发'")。
不用 PLC 也能做触发
只有一个传感器、没有 PLC 的场合,可以用一个串口 IO 控制器把传感器信号变成 Modbus 寄存器,软件用通讯触发去读。完整实例见传感器经串口 IO 控制器触发拍照。
硬触发接线的通用要点¶
具体引脚定义各家相机不一样,必须以你手上这台相机的说明书和线缆图为准。下面是不分品牌都适用的几条:
- 先确认信号方向。相机的触发输入通常是一对线(触发正、触发负)。PLC 的输出模块是源型(PNP,输出高电平)还是漏型(NPN,输出拉低),决定了这两根线分别接 PLC 的输出点还是公共端。接反了相机收不到信号,一般不会烧,但要按手册确认电压范围。
- 电压要对得上。相机触发输入多为 12V 或 24V 兼容,PLC 输出常见 24V。超出相机允许范围要加限流电阻或继电器隔离,不能直接怼。
- 共地。相机、PLC、光源控制器的地要接到一起,否则信号电平浮动,会出现"有时触发有时不触发"。
- 用双绞屏蔽线,屏蔽层单端接地。触发线和电机动力线、变频器线分开走线槽,这是现场误触发最常见的来源。
- 一个信号带多台相机时,不要把一路 PLC 输出并联到多台相机上(驱动能力不够),用继电器或 PLC 的多个输出点分别带。
- 传感器直接接相机也可以(不经 PLC),但传感器必须是有源输出(NPN/PNP 三线制),干接点式的要串一个电源。
软件里设成外触发¶
- 调试端任务树里选中检测方案,右键"设置相机参数"。
- 切到"触发"页,选"外部触发模式"。
- "外部触发信号"选信号类型:"上升沿触发"(信号从无到有的瞬间拍)、"下降沿触发"(信号消失的瞬间拍)、"高电平触发"(高电平期间拍)。现场一般选上升沿。
去抖时间(us)填一个抖动过滤时间,单位微秒。一个产品被拍好几张时把它调大,常用10000(10 毫秒)。- "触发延时(微秒)"填触发延时,单位微秒。传感器装在相机前面、产品还要再走一段才到画面中间时用它补上,1 秒 =
1000000。 - 点"保存配置"。

外触发模式下不要指望预览一直有画面
设成外触发后,没有外部信号相机就不曝光,预览是静止的。想试拍一张,点"软触发"按钮。
勾上"主动触发":让一组相机同时曝光¶
在调试端点"编辑运行顺序",在阶段树里找到拍照行(形如 (相机工位名->检测方案名)),勾上该行的"主动触发";去掉勾就撤销。
这个勾的作用是:通讯触发一到,软件立刻把同一阶段里所有勾了"主动触发"的相机挨个设好参数并发软触发,全组在零点几秒内全部曝光完;之后轮到每台相机检测时,只是把已经拍好的那张图读出来。
这个勾和检测方案右键"设置检测方案 → 基础参数设置 → 触发方式"是同一个设置的两个入口:勾上 = 触发方式"主动触发(软触发)",去掉 = "被动触发(等硬件线)",在哪边改另一边都跟着变。触发方式选了"模板触发"的方案,拍照行上不显示这个勾,显示"模板触发"。
不打这个标记(被动触发)时,是拍一张、检测一张、再拍下一张,一组四台相机的曝光时刻可能散布在触发后 0.1 秒到 3 秒之间——PLC 留的时间窗一旦卡不住,就会出现"提前拍到空工位""晚拍拍到下一件""正反面颠倒"。
怎么用:
- 在要同时曝光的那个阶段的阶段行上右键,选"添加通讯触发"。
- 确认这一组相机的拍照行都在这个阶段里;不在的,在拍照行上右键"移到阶段"挪过来。
- 这个阶段里的拍照行逐个勾上"主动触发"。
- 点"保存"。
下面这些情况会自动退回逐台拍照
- 该组只有一台相机(本来就没有并行的收益)。
- 启用了光源控制器(每台相机要换灯序,同时曝光会串灯)。
- 该检测方案开了 HDR(要连拍多档曝光)。
- 该检测方案用的是模板触发。
- 同一台相机在一组里出现两次(相机缓存放不下两张)。
- 同一个通讯触发在运行顺序里被引用了多次(软件分不清现在是哪一组;编辑窗口下方会有灰字提示)。
退回不是故障,只是时序回到老样子,检测结果不受影响。
常见问题¶
PLC 报"拍照超时",或者软件停在"等待通讯触发"。 先分清是哪一头在等:
- 软件日志停在"等待通讯触发",说明 PLC 的信号软件没读到,查通讯参数和地址,见 Modbus RTU / TCP 触发与输出。
- 软件已经过了触发、卡在拍照上并最终报"读取图片超时",说明相机没收到外触发信号,或者相机设的是软触发但没人发软触发。查触发线和相机的"触发"页。
一个产品拍了好几张,或者计数比实际多。 传感器信号抖动。把"去抖时间(us)"调大;如果是外触发信号类型选成了"高电平触发",产品停在传感器前不动时会一直拍,改成"上升沿触发"。
拍到的图总是上一件产品的(串帧)。 相机缓存里积了多余的帧。常见原因是外部多发了触发,或者检测比出料慢。升级到当前版本(每拍之后会自动排空相机缓存),并检查 PLC 是不是一个产品发了两次信号。
正反两面拍反了、或者拍的时刻忽早忽晚。 按上面的"勾上'主动触发'"把整组相机改成同时预拍。做完仍不稳,再查 PLC 侧发信号的时机是不是用定时器而不是到位信号。
网口相机在多相机同时曝光时画面出现错位细横线。 这是网络丢包,不是触发问题,见相机接入与参数设置的常见问题。