Cogne 康耐视相机操作使用说明书
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
三、
3
3.1
Tool(too百度文库0);
3:视觉开关的关键点在于socket通信的稳定性和相机数据的转换。对于前者,必须保证socket通信程序逻辑无明显漏洞,防止case语句存在死循环;
2.通信数据的处理:康耐视发送的是ASCII码,需要转换成浮点型位置数据;
3.位置数据的处理:一般采用外部cpe点来发送位置数据,cpe点的数据计算在codesys里完成。需要注意的是,cpe点的mode请慎重,一般情况下为0,但是具体和机器人所处位形有关和控制器和相机IP一样,始终以控制器IP为主机进行测试;
康耐视相机操作使用说明书
文件状态:
■草稿
□修改
□定稿
文档密级
□不保密■内部□机密
项目名称
版本号
描述
康耐视相机操作使用说明书
编写人
余国鹰
编写日期
2015/9/10
审核人
审核日期
一、
1.1
双击康耐视相机软件,按照步骤一步步安装即可。
1.2
1.设置电脑本地连接IPV4地址为(设置为39段即可)。
2.双击康耐视In-Sight浏览器软件进入相机设置界面,软件会自动搜索连接的相机设备,如下图所示。
成”中单击“运行作业”,则运行当前作业任务。
注意,以上参数设定必须在脱机模式下才能够设置,在联机状态下参数不能设置,与外界设备实时通讯必须在联机模式下;物体旋转一定角度拍照失败,看检测部件是否超过相机视野范围和旋转角度值设置是否合理。
1.3
a)说明:设定PC端的IP地址,IP地址必须,这里设定为,用网线与相机控制器相连;
图
图
图
6.建立检测模型。单击“定位部件”,出现如图所示界面,单击“位置工具”中“图案”,然后单击“添加”,单击“OK”,接着单击界面右下角“模型”,拖动绿色模型矩形框,使被检测模型处于绿色矩形框中,最后单击界面右下角“训练”,此时检测模型已经建立。
图
7.查看模型建立是否成功。在界面右侧选择板中,可以查看建立图案的情况,绿色圆点表示模型建立成功,同时会输出检测模型的位置、角度、得分,如图所示。
图
通过以上7步即可完成相机的校准过程。
2.2
绝对坐标的实现必须借助机器人的用户坐标系,即机器人在用户坐标系下走绝对位置运动。具体实现由以下几个步骤组成。
首先,用step机器人三点法示教出一个固定用户坐标系。用户坐标系的原点根据实际情况而定,一般选择流水线上一个固定位置参考点,该参考点要方便相机进行坐标转化标定。关于用户坐标系的标定,可参见新时达机器人操作使用说明书;
6.如果要直接连相机,调试相机通信逻辑,可临时将相机改为主机,PC机与相机IP在同一段内,通过调试工具连接相机,发送指令数据进行测试;
7.使用socket相关函数需要在工程library manager里安装相关库,主要有CAA NetBaseSrv,SysSocket和SysMem;
8.关于绝对坐标与相对坐标两种支持方式,各有优缺点。绝对坐标需要使用三点法示教用户坐标系,靠相机获得的X和Y位置存在一定的误差。而相对坐标给出的全部是相对当前位置的增量,误差会减小。
二、
要实现将相机采集的数据转换为机器人坐标系下的位姿数据,必须建立相机坐标系与机器人坐标系的对应转换关系,该过程通过相机标定来实现。
相机也分平面相机和三维相机,前者只支持平面数据采集,后者则可以获取xyz空间值。以三维相机为例,要详细建立相机三维空间的位置与机器人坐标系的对应关系,必须通过严格的手眼标定来实现。不同相机有手眼标定算法,通过示教多个点来建立手眼转换关系。这里不详述。
单击“格式化输出字符串”,进行输出操作,如下图所示。勾选“使用分隔符”,表示在输出之间用逗号分隔符进行隔开,方便进行数据处理操作;单击“添加”按钮,可以输出很多数据,这里只需要输出4个数据,“失败”、“定位器.X”、“定位器.Y”、“定位器.角度”;
输出数据说明:均为7个字节宽度,除图案.失败是整形外,其它数据均为浮点型,小数点位数为2位。
图
2.打印校准网格纸张。在图中,单击“打印网格”按钮,然后将打印的网格纸张放在相机视野正中间。
3.在“设置”界面中,“网格类型”为方格图案(带基准),其它值均为默认。
4.单击“姿势”,进入姿势设置界面,如图所示,原点位置为默认,单击“触发器”按钮,相机会自动拍照,最后单击“校准”,校准工作就结束。
5.单击“结果”,可以查看校准情况,如图所示。
b)通信流程包括:建立TCPIP的服务器端并连接,给相机发送指令,从相机接收数据;
c)图中如果把“字段分隔符”改为“停止”,则两个数据之间就是无分隔符的直接连接;如果选择其他,则有相应的分隔符号;
d)例:采用“消零”为“有”,“字段分隔符”为“停止”的方式时,相机发送数据“”和“”时,实际上发送了“45 48 48 49 46 48 48 49 48 49 48 46 48 50 13”(13是回车符的ASIIC码);
图
在“编辑采集设置”对话框中,设置一系列相机参数,根据具体需要进行调节
设置工具单击“设置工具”中“定位部件”按钮,对检测模型进行定位,作为识别的模型进行对比;单击“设置工具”中“检测部件”按钮,对模型进行编辑操作。
在“定位部件”的设置对话框中,如下图所示,合格阀值:每次拍照之后的得分如果大于阀值,则拍照成功,否则失败;旋转公差:检测部件能够旋转的角度范围,如果在范围之类则会拍照成功,否则会失败
其次,进行相机坐标与实际位置坐标的标定转换。在完成第一步中的固定用户坐标系标定后,在该坐标系下选取工件上的三点,计算出这三点在用户坐标系的X、Y值(该步骤可通过机器人协助示教获得在用户坐标系下的位姿值)。在图像输入的“校准”模块中,按照中的步骤完成相机坐标与实际位置坐标的校准参数制作转换;
最后,机器人实现绝对位置运动。在完成第二步后,工件每偏移一点,相机均可计算出其在用户坐标系下新的位置值X、Y和绕Z轴的theta角度值。这样,只需要在示教器程序中设置抓取运动点参考的坐标系为用户坐标系即可,即RefSys语句下走绝对cpe点。该cpe点是codesys里直接读取的相机返回值。
2.3
相对坐标的实现就比较简单,只需要将相机坐标转换为实际位置坐标即可。在工件上选取三个特征点,用带尖机器人示教出这三点在机器人基坐标系下的坐标值(主要是X和Y)。按照中的校准流程制作出校准参数。这样,工件偏移后,相机可以直接计算出其新的坐标X、Y和theta。
需要注意的是,使用相对坐标运动时,相机输出数据必须是相对量,即测量坐标与基准坐标之差,而不是绝对测量坐标。具体信息见后续章节。
2
2.1
相机默认输出的坐标值是相机采集到的像素值,并非实际工件位置尺寸,因此需要将物理坐标与像素值进行映射标定。设定校准后,可使测量结果像素值转换为实际尺寸并输出,康耐视提供了校准参数的制作过程。
1.单击“设置图像“,界面右下角出现下图所示界面。校准类型中有很多种,根据实际需要选择,这里选择“网格”,然后单击“校准”按钮,出现下图所示界面。
如果只做平面工件抓取,那只需要工件变化的坐标值x、y以及绕z轴的转动角度c,问题就简单的多,只需要进行平面的简单标定即可实现。以康耐视相机为例,格力等客户只需要实现流水线来料的抓取操作,标定平面坐标系即可,康耐视相机可以提供移动后的工件相对于移动前的偏移位置量,或者提供工件的绝对移动位置。这里,我们提供这两种工作方式的实现过程。
图
3.双击相机设备(红色椭圆内设备图标),进入相机编辑界面,如下图所示。
图
4.在应用程序步骤中,开始、设置工具、配置结果、完成这4个步骤形成一个完整的相机操作流程;
开始单击“开始”中“已连接”,如下图所示,可以进行连接设备、断开设备、刷新、添加等操作。
图
单击“开始”中的“设置图像”,如下图所示。
在“采集/加载图像”对话框中,“触发器”按钮是进行拍照,“实况视频”按钮是实时显示相机中的图像,“从PC加载图像”按钮是加载一张存在的图像。
e)在下载工程成功时,查看通讯是否连接正常。当client_congnex任务中的step_cognex:=2和server_cognex中的step_server:=2时,此时通讯成功,否则通讯不正常,需要查看设备是否连接好和In-Sight软件是否处于联机状态。
f)详细指令及其他形式的通信可参考文档《通信设定sdnb-cn5-714d_fh_fz5》。
1)第一位图案.失败:判定符,为0表示采集到特征,拍照成功;为1则拍照失败。
2)第二位图案.定位器.X:输出用户坐标系下的X方向绝对值。
3)第三位图案.定位器.Y:输出用户坐标系下的Y方向绝对值。
4)第四位图案.定位器.角度:输出用户坐标系下的相对角度。
图
图
图
完成在“完成”中单击“保存作业”,则保存当前作业任务中的所有设置;在“完
图
配置结果单击“配置结果”中“通信”按钮,进行通讯设置操作,如下图所示。新时达机器人视觉通信采用的TCP/IP通讯方式,单击“TCP/IP”,如下图所示,在“TCP/IP设置”对话框中,“服务器主机名”设为(机器人控制器IP地址),“端口”设置与CodeSys中相同,本例中设为9876,“超时时间”设为15000,“结束符”设为字符串(CR13)。
3
3.1
Tool(too百度文库0);
3:视觉开关的关键点在于socket通信的稳定性和相机数据的转换。对于前者,必须保证socket通信程序逻辑无明显漏洞,防止case语句存在死循环;
2.通信数据的处理:康耐视发送的是ASCII码,需要转换成浮点型位置数据;
3.位置数据的处理:一般采用外部cpe点来发送位置数据,cpe点的数据计算在codesys里完成。需要注意的是,cpe点的mode请慎重,一般情况下为0,但是具体和机器人所处位形有关和控制器和相机IP一样,始终以控制器IP为主机进行测试;
康耐视相机操作使用说明书
文件状态:
■草稿
□修改
□定稿
文档密级
□不保密■内部□机密
项目名称
版本号
描述
康耐视相机操作使用说明书
编写人
余国鹰
编写日期
2015/9/10
审核人
审核日期
一、
1.1
双击康耐视相机软件,按照步骤一步步安装即可。
1.2
1.设置电脑本地连接IPV4地址为(设置为39段即可)。
2.双击康耐视In-Sight浏览器软件进入相机设置界面,软件会自动搜索连接的相机设备,如下图所示。
成”中单击“运行作业”,则运行当前作业任务。
注意,以上参数设定必须在脱机模式下才能够设置,在联机状态下参数不能设置,与外界设备实时通讯必须在联机模式下;物体旋转一定角度拍照失败,看检测部件是否超过相机视野范围和旋转角度值设置是否合理。
1.3
a)说明:设定PC端的IP地址,IP地址必须,这里设定为,用网线与相机控制器相连;
图
图
图
6.建立检测模型。单击“定位部件”,出现如图所示界面,单击“位置工具”中“图案”,然后单击“添加”,单击“OK”,接着单击界面右下角“模型”,拖动绿色模型矩形框,使被检测模型处于绿色矩形框中,最后单击界面右下角“训练”,此时检测模型已经建立。
图
7.查看模型建立是否成功。在界面右侧选择板中,可以查看建立图案的情况,绿色圆点表示模型建立成功,同时会输出检测模型的位置、角度、得分,如图所示。
图
通过以上7步即可完成相机的校准过程。
2.2
绝对坐标的实现必须借助机器人的用户坐标系,即机器人在用户坐标系下走绝对位置运动。具体实现由以下几个步骤组成。
首先,用step机器人三点法示教出一个固定用户坐标系。用户坐标系的原点根据实际情况而定,一般选择流水线上一个固定位置参考点,该参考点要方便相机进行坐标转化标定。关于用户坐标系的标定,可参见新时达机器人操作使用说明书;
6.如果要直接连相机,调试相机通信逻辑,可临时将相机改为主机,PC机与相机IP在同一段内,通过调试工具连接相机,发送指令数据进行测试;
7.使用socket相关函数需要在工程library manager里安装相关库,主要有CAA NetBaseSrv,SysSocket和SysMem;
8.关于绝对坐标与相对坐标两种支持方式,各有优缺点。绝对坐标需要使用三点法示教用户坐标系,靠相机获得的X和Y位置存在一定的误差。而相对坐标给出的全部是相对当前位置的增量,误差会减小。
二、
要实现将相机采集的数据转换为机器人坐标系下的位姿数据,必须建立相机坐标系与机器人坐标系的对应转换关系,该过程通过相机标定来实现。
相机也分平面相机和三维相机,前者只支持平面数据采集,后者则可以获取xyz空间值。以三维相机为例,要详细建立相机三维空间的位置与机器人坐标系的对应关系,必须通过严格的手眼标定来实现。不同相机有手眼标定算法,通过示教多个点来建立手眼转换关系。这里不详述。
单击“格式化输出字符串”,进行输出操作,如下图所示。勾选“使用分隔符”,表示在输出之间用逗号分隔符进行隔开,方便进行数据处理操作;单击“添加”按钮,可以输出很多数据,这里只需要输出4个数据,“失败”、“定位器.X”、“定位器.Y”、“定位器.角度”;
输出数据说明:均为7个字节宽度,除图案.失败是整形外,其它数据均为浮点型,小数点位数为2位。
图
2.打印校准网格纸张。在图中,单击“打印网格”按钮,然后将打印的网格纸张放在相机视野正中间。
3.在“设置”界面中,“网格类型”为方格图案(带基准),其它值均为默认。
4.单击“姿势”,进入姿势设置界面,如图所示,原点位置为默认,单击“触发器”按钮,相机会自动拍照,最后单击“校准”,校准工作就结束。
5.单击“结果”,可以查看校准情况,如图所示。
b)通信流程包括:建立TCPIP的服务器端并连接,给相机发送指令,从相机接收数据;
c)图中如果把“字段分隔符”改为“停止”,则两个数据之间就是无分隔符的直接连接;如果选择其他,则有相应的分隔符号;
d)例:采用“消零”为“有”,“字段分隔符”为“停止”的方式时,相机发送数据“”和“”时,实际上发送了“45 48 48 49 46 48 48 49 48 49 48 46 48 50 13”(13是回车符的ASIIC码);
图
在“编辑采集设置”对话框中,设置一系列相机参数,根据具体需要进行调节
设置工具单击“设置工具”中“定位部件”按钮,对检测模型进行定位,作为识别的模型进行对比;单击“设置工具”中“检测部件”按钮,对模型进行编辑操作。
在“定位部件”的设置对话框中,如下图所示,合格阀值:每次拍照之后的得分如果大于阀值,则拍照成功,否则失败;旋转公差:检测部件能够旋转的角度范围,如果在范围之类则会拍照成功,否则会失败
其次,进行相机坐标与实际位置坐标的标定转换。在完成第一步中的固定用户坐标系标定后,在该坐标系下选取工件上的三点,计算出这三点在用户坐标系的X、Y值(该步骤可通过机器人协助示教获得在用户坐标系下的位姿值)。在图像输入的“校准”模块中,按照中的步骤完成相机坐标与实际位置坐标的校准参数制作转换;
最后,机器人实现绝对位置运动。在完成第二步后,工件每偏移一点,相机均可计算出其在用户坐标系下新的位置值X、Y和绕Z轴的theta角度值。这样,只需要在示教器程序中设置抓取运动点参考的坐标系为用户坐标系即可,即RefSys语句下走绝对cpe点。该cpe点是codesys里直接读取的相机返回值。
2.3
相对坐标的实现就比较简单,只需要将相机坐标转换为实际位置坐标即可。在工件上选取三个特征点,用带尖机器人示教出这三点在机器人基坐标系下的坐标值(主要是X和Y)。按照中的校准流程制作出校准参数。这样,工件偏移后,相机可以直接计算出其新的坐标X、Y和theta。
需要注意的是,使用相对坐标运动时,相机输出数据必须是相对量,即测量坐标与基准坐标之差,而不是绝对测量坐标。具体信息见后续章节。
2
2.1
相机默认输出的坐标值是相机采集到的像素值,并非实际工件位置尺寸,因此需要将物理坐标与像素值进行映射标定。设定校准后,可使测量结果像素值转换为实际尺寸并输出,康耐视提供了校准参数的制作过程。
1.单击“设置图像“,界面右下角出现下图所示界面。校准类型中有很多种,根据实际需要选择,这里选择“网格”,然后单击“校准”按钮,出现下图所示界面。
如果只做平面工件抓取,那只需要工件变化的坐标值x、y以及绕z轴的转动角度c,问题就简单的多,只需要进行平面的简单标定即可实现。以康耐视相机为例,格力等客户只需要实现流水线来料的抓取操作,标定平面坐标系即可,康耐视相机可以提供移动后的工件相对于移动前的偏移位置量,或者提供工件的绝对移动位置。这里,我们提供这两种工作方式的实现过程。
图
3.双击相机设备(红色椭圆内设备图标),进入相机编辑界面,如下图所示。
图
4.在应用程序步骤中,开始、设置工具、配置结果、完成这4个步骤形成一个完整的相机操作流程;
开始单击“开始”中“已连接”,如下图所示,可以进行连接设备、断开设备、刷新、添加等操作。
图
单击“开始”中的“设置图像”,如下图所示。
在“采集/加载图像”对话框中,“触发器”按钮是进行拍照,“实况视频”按钮是实时显示相机中的图像,“从PC加载图像”按钮是加载一张存在的图像。
e)在下载工程成功时,查看通讯是否连接正常。当client_congnex任务中的step_cognex:=2和server_cognex中的step_server:=2时,此时通讯成功,否则通讯不正常,需要查看设备是否连接好和In-Sight软件是否处于联机状态。
f)详细指令及其他形式的通信可参考文档《通信设定sdnb-cn5-714d_fh_fz5》。
1)第一位图案.失败:判定符,为0表示采集到特征,拍照成功;为1则拍照失败。
2)第二位图案.定位器.X:输出用户坐标系下的X方向绝对值。
3)第三位图案.定位器.Y:输出用户坐标系下的Y方向绝对值。
4)第四位图案.定位器.角度:输出用户坐标系下的相对角度。
图
图
图
完成在“完成”中单击“保存作业”,则保存当前作业任务中的所有设置;在“完
图
配置结果单击“配置结果”中“通信”按钮,进行通讯设置操作,如下图所示。新时达机器人视觉通信采用的TCP/IP通讯方式,单击“TCP/IP”,如下图所示,在“TCP/IP设置”对话框中,“服务器主机名”设为(机器人控制器IP地址),“端口”设置与CodeSys中相同,本例中设为9876,“超时时间”设为15000,“结束符”设为字符串(CR13)。