应用场景#
多场景#
若一个相机需要在多个场景下使用,且不同场景下的拍照点距离识别码有25mm以上的差别,此时需要建立多个方案来解决同一个相机在多个场景下使用的问题。即一台相机在不同场景下的工作时,需要在不同场景下对相机配置不同的方案,每个方案下需要根据实际场景高度,设置相机参数,配置方式还是自动调节,再重新配置2.5D定位工具,并设置注册点,将方案设置为外部通信触发即可。机器人端配置2.5DDetectionSmart流程块,对应好不同的视觉方案即可。
单场景#
若一个相机需要在不同场景下使用,且不同场景下拍照点距离识别码有25mm内高度差,可以使用同一套相机参数进行操作,即需要在不同分支下,添加2.5D定位工具,将第一个2.5D定位工具保存配置的标定文件(.json)导入后,只需再重新设置基准点,保存配置,并导入当前配置的2.5D定位工具即可。
备注
多场景和单一场景的差别在于相机和标记码之间的高度发生较大变化,而相机无法在变化较大的不同高度下稳定工作,需要在不同高度下设置相机参数以使相机成像清晰,而设置不同的参数就需要重新对2.5D定位工具进行配置(即标定和注册)。
这里要记住,不同场景下配置一个分支控制,而不同的分支控制采用不同的通讯调用字符,如下图所示。
单场景示例#
在添加工具中选择逻辑工具,再选择分支控制。
点击分支控制工具旁边的 + 号即可添加2.5D定位工具。
不同的分支控制代表不同的工位,各自都需要添加2.5D定位工具。
接下来会分支控制工具进行配置,不同的分支控制工具,输入不同的触发字符。
通讯字符串配置,选择相机图像->通讯输入字符串->输入控制该分支运行的字符串即可,这里这个字符串要做好区分,因为此时配置的字符串需要在机器人端输入。
不同分支选择不同的字符串进行控制,如下图所示。
对输出进行配置,这里需要将所有分支控制下的2.5D定位工具的结果都输出。当机器人端执行那个分支时,即输出该分支控制下的2.5D定位工具结果,其他分支控制未运行,其下的2.5D定位结果也为空。
至于机器人端如何使用分支控制,如下图所示,只需在start(控制方案运行字符串) + 空格 + start1(控制分支7运行字符串),即可控制该方案的分支控制7下的2.5D定位工具运行。
总结#
针对同一台相机,在多个工位下使用总结(多台相机可复用一台相机的情况)
若多个工位下,拍照高度(即相机距标记码高度)之间相差小于20mm,那么可以配置一个方案,通过配置多个分支控制(代表不同工位)来完成,同时配置每个分支控制的通讯字符串。在不同分支控制下配置2.5D定位(仅配置基准注册即可),并将不同分支下的2.5D定位保存的配置导入,并配置所有2.5D定位的输出,这里就完成了相机端方案配置。在机器人端的2.5D目标定位插件在方案配置处,写入“触发通讯字符串(start)”+“空格”+“分支触发通讯字符串(自定义)”,即可触发方案下的某个分支控制下的2.5D定位。
若多个工位下,拍照高度之间相差较大(比如大于20mm),此时无法使用一个方案去覆盖所有工位,这里只能在每个工位下建立新方案,即按照方案配置流程(相机配置-基准图-应用工具-输出配置等),而机器人端的2.5D目标定位插件仅在方案配置处,写入“触发通讯字符串(start)”即可触发对应的方案进行工作。