赞
踩
该实验的基本原理就是利用客户端与服务端的数据通信,实现机械臂,相机与电脑之间进行通信;首先利用相机拍摄到的物体信息后,将图片信息传给MVP进行图像处理,其次MVP将处理后的数据信息传给机器人示教器,示教器上编写机器人的控制程序,最后将处理后的坐标信息代入程序中所要移动到的点位坐标处,即可实现三者通信。
(1)电脑端通过打开终端窗口(按win+R调出导航窗口,输入cmd进去),输入命令ipconfig来获得电脑端的ip地址,然后打开示教器,进入设置->系统->网络中输入电脑ip地址,按ping进行数据的获取,出现
该页面则代表连接成功;
(2)之后点击ping旁边的ipconfig获取机器人的ip地址,在电脑终端窗口输入ping (ip)获取数据,出现
该页面代表连接成功。
打开MVP软件,进入工具->相机管理工具,左侧出现的GigE方式下相机图标即为软件检测到的相机,首先设置相机ip地址,
前三位与电脑的ip地址相同,最后一位任意设置(通常取2或3)且与已有的ip地址不相同,保存设置,然后点击旁边的连接相机,连接成功后点击运行,即
此时获取到的图片较暗,可能是黑色的;然后在常用设置中进行如下设置:
可以获得较为清楚的图像,对焦通过相机本身去调节,若获取到的画面非常卡顿,则将帧率拉到最大。
旁边的图像格式根据需要自行调整,即
若需要开启巨型帧,则通过工具->网卡配置工具进行开启,如图
上述工作完成之后,关闭相机管理工具页面。
内参标定采用棋盘格标定的方式,打开已有标定文件(棋盘格标定)或者自己新建,此处均基于已有工程文件进行讲解;
首先进行相机连接,点击相机图标即可进行相机识别与连接,设置如图:
连接好后可点击运行测试是否连接成功
若不出图像,则将相机电源线拔掉重新通电即可。
将我们的标定板放置在可以看见的图像区域,即可自动识别,需要修改的参数如图:
上述宽高为棋盘格上一个方格的尺寸,且均为mm单位;解不解畸变根据自己的需要。
完成后点击另存为。保存好标定文件后需要运行一下该工程,确保每一步都可以跑通(否则标定文件保存不成功,后面N点标定亦是如此)。
外参标定采用N点标定法,同上打开标定文件,连接相机;标定点通过找圆工具识别所要使用到的参考点,
找到的标定点自动填充图像坐标位置,需要几个点通过旁边的添加与删除自行操作,世界坐标需要将机器人的末端(带有标定工具)移动到对应的圆所在的位置,尽可能让标定工具处于圆心位置,通过示教器读取此时机械臂所在的坐标,并手动填充在上述位置。
最后保存标定文件,保存好标定文件后需要运行一下该工程,确保每一步都可以跑通(否则标定文件保存不成功)。
(1)通过上述完成标定之后,打开已有工程(MVP连接机器人)或者自己新建,此处均基于已有工程文件进行讲解。
首先读取标定文件:打开图像处理,如图:
在此处读取棋盘格标定文件;
在此处读取N点标定文件;
然后先取消接收ASCII码上chufa连接图像处理的连线,此时进入图像处理->图像处理_1,点击运行获取图像,即可对图像进行处理,此处简单使用找边找圆进行测试,如需要处理较为复杂的情况,在此处进行修改即可。
然后再恢复chufa与图像处理之间的连线。再网络配置中修改网络设置,此处的ip地址为电脑的ip地址。如图:
(2)打开示教器,进入在线编程->工程->加载,将TcpClient2DTest进行加载,首先修改该工程文件中所有的ip地址,均修改为电脑端ip,端口号也修改为电脑端的端口号,然后是脚本->加载,加载;将其中的TcpClient2DTest与reConnect脚本中的ip与端口号同步修改。如图
修改完成后可调试该通信是否打通,此时将机械臂示教工作模式修改为仿真机械臂:
回到工程文件点击开始,此时在mvp中点击mvp连接机器人工程中的连续运行,可以看是否能接收到mvp传输过来的信息。
该传输过程可以获取位置信息与姿态信息,若需要姿态信息则对旋转面板进行设置,同时对mvp的输出与脚本中的代码进行相应的处理。
若通信成功,则查看传输过来的参数是否为标定后的数据。
完成后,即可在示教器上设置该工程中的路点位置(此时将机械臂示教工作模式设置为真实机械臂),确保运行中的安全。
完成后,在真实机械臂下运行该工程,查看是否可以运行到传过来的坐标位置。
在本次实验中主要采用吸盘进行抓取,因此控制吸盘的吸/放是所要实现的功能。这个功能目前通过控制示教器里的设置->用户IO->U_DO_00这个IO口进行实现,工程中利用set指令进行控制IO口的通断,以实现抓取操作。
在图像处理中做好模板匹配后,可以实现无论物体处于相机范围内任何位置,机械臂末端都可以移动到物体上方,并实现抓取。
1.机械臂运行过程中可能有些点位无法到达,运行程序时会保存,此时可新建一个工程,手动输入该点位,看机械臂是个能到达来判断,出现此种状况,通过设置中间点来过度,避开无法到达的点位。
2.编程里面的move命令里的相对偏移是相对于move中点的位置偏移一个自己给定的量,通过mvp传过来的位置恰恰是这个偏移量,此处采用初始位姿为该参考点,在脚本中对获取到的坐标与参考点进行位置的加减以使得移动到所需要的位置。
3.测试时相对偏移输入时若不能输入负值,可在前面加一个0。
4.mvp和示教器上的ip均为电脑端的ip地址。
5.相机自己的单位为像素,标定板为mm,机器人为m。
6.z值的设置同样是相对于所设置的参考点的相对偏移量。
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。