安装驱动 ============================ 机器人版本 +++++++++++++++++++++++++++++++ 烧录程序前需要先判断当前机器人的系统版本,在示教器上按 ``MENU`` 键,进入 ``实用工具``-> ``声明``。 .. figure:: img/version.png :width: 500px :align: center .. figure:: img/version1.png :width: 500px :align: center 查看机器人版本 图片左上角圈出的部分即为机器人版本。 fanuc 机械臂驱动文件列表 +++++++++++++++++++++++++++++++ 驱动文件位于 MAX 安装目录的 ``share/robot_code/fanuc/`` 路径下,文件包括: - 编译后的pc,tp文件位于 ``share/robot_code/fanuc/compiled/`` ,该目录下存放了v8.3,v9.0,v9.3这三个fanuc机器人控制器版本的程序。 - 源代码kl文件位于 ``share/robot_code/fanuc/karel/`` , 源代码ls文件位于 ``share/robot_code/fanuc/tpe/`` ,源代码文件可以根据项目的特定要求或者版本需求修改并编译使用。 **fanuc 控制器对于 karel 程序和 ls 程序在大版本号相同的前提下向后兼容,例如 v9.1 版本的控制器可以导入 v9.0 的程序,但是不能导入 v8.3 的程序。 所以如果控制器的版本和提供的程序版本不同,可以按照向后兼容的原则来选择合适的程序,或者根据源代码文件直接编译。** 以下只介绍 pc,tp 文件的含义。 -- compiled 编译后的文件,这里只以 v9.3 为例 -- v9.3 软件版本 -- pc - xyz_abt_bkgd 中止后台程序 - xyz_bkgd.pc 后台程序 - xyz_capimg.pc 拍照 - xyz_g_capimg.pc 获取拍照结果 - xyz_g_g_pose.pc 获取抓取结果 - xyz_g_obj_pt.pc 获取工件位姿类型 - xyz_g_o_pose.pc 获取工件位姿 - xyz_g_picin.pc 获取抓取入筐轨迹 - xyz_g_picout.pc 获取抓取出筐轨迹 - xyz_g_plain.pc 获取放置入筐轨迹 - xyz_g_plaout.pc 获取放置出筐轨迹 - xyz_log.pc 日志相关函数 - xyz_motion.pc 工控机主控motion socket函数 - xyz_pkt.pc socket package 相关函数 - xyz_r_capimg.pc 请求拍照 - xyz_reset_ps.pc 重置码垛状态 - xyz_reset_v.pc 重置视觉 - xyz_r_g_pose.pc 请求抓取位姿 - xyz_r_o_pose.pc 请求工件位姿 - xyz_r_pick.pc 请求计算抓取轨迹 - xyz_r_picpla.pc 请求计算抓取放置轨迹 - xyz_r_place.pc 请求放置轨迹 - xyz_s_c_pose.pc 发送当前法兰笛卡尔位姿 - xyz_s_ext_j.pc 发送扩展轴当前角度 - xyz_s_joints.pc 发送机械臂各轴角度 - xyz_sock.pc socket 相关函数 - xyz_status.pc 工控机主控 status socket 相关函数 - xyz_sw_app.pc 切换应用 - xyz_sw_obj.pc 切换工件 - xyz_sw_strat.pc 切换策略 - xyz_sw_tool.pc 切换工具 - xyz_sw_flow.pc 切换flow - xyz_u_obj_oh.pc 工件在上手的二次定位 - xyz_u_obj_th.pc 工件不在手上的二次定位 - xyz_u_t_pose.pc 料箱重定位 - xyz_c_g_pose.pc 计算抓取位姿 - xyz_c_o_pose.pc 计算物体位姿 - xyz_usr_cmd.pc 自定义请求 -- tp - xyz_exectraj.tp 执行轨迹程序 - trajmove_sync.tp traj move 同步模板 - trajmove_async.tp traj move 异步模板 - cartmove_basic.tp cart move 基础模板 - cartmove_repo.tp cart move 重定位模板 - xyzmotion.tp 工控机主控 motion socket 函数 - xyz_move.tp 工控机主控机械臂移动函数 - xyzstatus.tp 工控机主控 status 函数函数 - xyz.tp 工控机主控启动程序 -- karel 此处为源代码,未经编译 -- src -- include - xyz_bkgd_h.kl - xyz_const.kl - xyz_log_h.kl - xyz_motion_h.kl - xyz_pkt_h.kl - xyz_pkt_t.kl - xyz_sock_h.kl - xyz_sock_t.kl - xyz_status_h.kl - xyz_abt_bkgd.kl - xyz_bkgd.kl - xyz_capimg.kl - xyz_g_capimg.kl - xyz_g_g_pose.kl - xyz_g_obj_pt.kl - xyz_g_o_pose.kl - xyz_g_picin.kl - xyz_g_picout.kl - xyz_g_plain.kl - xyz_g_plaout.kl - xyz_log.kl - xyz_motion.kl - xyz_pkt.kl - xyz_r_capimg.kl - xyz_reset_ps.kl - xyz_reset_v.kl - xyz_r_g_pose.kl - xyz_r_o_pose.kl - xyz_r_pick.kl - xyz_r_picpla.kl - xyz_r_place.kl - xyz_s_c_pose.kl - xyz_s_ext_j.kl - xyz_s_joints.kl - xyz_sock.kl - xyz_status.kl - xyz_sw_app.kl - xyz_sw_obj.kl - xyz_sw_strat.kl - xyz_sw_tool.kl - xyz_u_obj_oh.kl - xyz_u_obj_th.kl - xyz_u_t_pose.kl - xyz_sw_flow.kl - xyz_c_g_pose.kl - xyz_c_o_pose.kl - xyz_usr_cmd.kl -- tpe -- src - XYZ_EXECTRAJ.LS - xyz.ls - TRAJMOVE_SYNC.ls - TRAJMOVE_ASYNC.ls - CARTMOVE_BASIC.LS - CARTMOVE_REPO.LS - xyzmotion.ls - xyz_move.ls - xyzstatus.ls 设定机械臂 IP +++++++++++++++++++++++++++++++ 1. 在示教器上按 ``MENU`` 键,进入 ``设置``-> ``主机通讯``。 .. figure:: img/fanuc_ip_set_1.png :width: 500px :align: center fanuc 设定机械臂 IP 1 2. 选中协议一栏中的 ``1 TCP/IP``,并点击示教器上的 ``ENTER`` 进入TCP/IP设置界面。对TCP/IP界面中的 ``IP地址`` , ``子网掩码`` 进行修改。 - ``IP地址`` 设置为:192.168.37.100 - ``子网掩码`` 设置为:255.255.255.0 机械臂默认IP地址为 192.168.37.100,如果项目有其他需求可根据项目实际情况进行修改,设置完成后界面如图所示 .. figure:: img/fanuc_ip_set_2.png :width: 500px :align: center fanuc 设定后的TCP/IP界面 配置工控机主控 socket +++++++++++++++++++++++++++++ 工控机主控模式下,fanuc 机械臂作为服务端,占用服务器的两个标签分别是 S3 和 S4。接下来介绍服务器标签的设置过程 1. 在示教器上按 ``MENU`` 键,进入 ``设置``-> ``主机通讯``。 .. figure:: img/fanuc_ip_set_1.png :width: 500px :align: center fanuc 设定工控机主控 socket 1 2. ``SHIFT`` + ``DISPALY`` 设置为双画面。 3. 按示教器上的 ``DISP`` 切到左侧界面, 点击 ``显示``,选择服务器。 .. figure:: img/fanuc_motion_socket_set_1.png :width: 500px :align: center fanuc 设定工控机主控 socket 2 4. 依次进入 S3 和 S4 标签并按照如下步骤进行设置 - 如果当前状态为 ``已定义``,则点击 ``动作`` 改为 ``未定义``; - 如果当前状态为 ``已开始``,则点击 ``动作`` -> ``停止``,然后再改为 ``未定义``; - 如果修改状态失败,尝试重启机器人后再次修改; .. figure:: img/network.png :width: 500px :align: center .. figure:: img/network1.png :width: 500px :align: center fanuc 设定工控机主控 socket 3 - 设定 ``协议`` 为 ``SM``; - 修改 ``服务器 IP/主机名称`` 为 ``192.168.37.100``; - 将 ``启动状态`` 改为 ``开始`` (系统重启后可以自动恢复之前服务器的设置)。 .. figure:: img/fanuc_motion_socket_set_2.png :width: 500px :align: center fanuc 设定工控机主控 socket 4 5. 按示教器上的 ``DISP`` 切到右侧界面。 点击 ``MENU``, 进入 ``系统``-> ``下页``-> ``变量``,找到并进入 ``$HOSTS_CFG`` (使用 ``SHIFT`` + ``上下方向键`` 可快速翻页)。 .. figure:: img/hostcfg.png :width: 500px :align: center .. figure:: img/hostcfg1.png :width: 500px :align: center fanuc 设定工控机主控 socket 5 6. 分别修改 ``$HOSTS_CFG[3]`` 和 ``$HOSTS_CFG[4]`` 的 ``$SERVER_PORT`` 分别为 10100 和 10102。 .. figure:: img/hostcfg2.png :width: 500px :align: center .. figure:: img/fanuc_motion_socket_set_4.png :width: 500px :align: center fanuc 设定工控机主控 socket 6 .. figure:: img/fanuc_motion_socket_set_5.png :width: 500px :align: center fanuc 设定工控机主控 socket 7 7. 修改完成后,左侧界面回到服务器标签界面,分别移动光标选中 S3 和 S4并进行如下操作 - 点击 ``动作`` 选中 ``定义`` 按 ``ENTER`` 将状态改为 ``定义`` - 点击 ``动作`` 选中 ``开始`` 按 ``ENTER`` 将状态改为 ``开始`` - 最后进入S3和S4 查看 ``当前状态`` 和 ``启动状态`` 都应该被设置成了 ``开始``。 .. figure:: img/fanuc_motion_socket_set_6.png :width: 500px :align: center fanuc 设定工控机主控 socket 8 配置机械臂主控 socket ++++++++++++++++++++++++++++++++ 机械臂主控模式下,fanuc 机械臂作为客户端,需要配置客服端标签页的 C2。 1. 在示教器上按 ``MENU`` 键,进入 ``设置``-> ``主机通讯``。 2. ``SHIFT`` + ``DISPALY`` 设置为双画面。 3. 按示教器上的 ``DISP`` 切到左侧界面 点击 ``显示``,选择客户端。进入客户端标签页。 .. figure:: img/fanuc_master_socket_set_1.png :width: 500px :align: center fanuc 设定机械臂机械臂主控 socket 1 4. 进入 C2 并按以下步骤进行修改 - 如果当前状态为 ``已定义``,则点击 ``动作`` 改为 ``未定义``; - 如果当前状态为 ``已开始``,则点击 ``动作`` -> ``停止``,然后再改为 ``未定义``; - 如果修改状态失败,尝试重启机器人后再次修改; - 设定 ``协议`` 为 ``SM``; - 修改 ``服务器 IP / 主机名称`` 为: ``192.168.37.101``。 .. figure:: img/fanuc_master_socket_set_2.png :width: 500px :align: center fanuc 设定机械臂机械臂主控 socket 2 工控机的IP地址默认为192.168.37.101,可根据项目需求改成其他IP地址。 5. 点击 ``MENU``, 进入 ``系统``-> ``下页``-> ``变量``,找到并进入 ``$HOSTC_CFG`` (使用 ``SHIFT`` + ``上下方向键`` 可快速翻页), 将 ``$HOSTC_CFG[2]`` 中的 ``$SERVER_PORT`` 修改为11111; .. figure:: img/hostcfg.png :width: 500px :align: center .. figure:: img/hostcfg3.png :width: 500px :align: center .. figure:: img/hostcfg4.png :width: 500px :align: center fanuc 设定机械臂机械臂主控 socket 3 6. 修改完成后,回到客户端标签页,移动光标选中 C2 并按如下步骤操作。 - 点击 ``动作`` 选中 ``定义`` 按 ``ENTER`` 将状态改为 ``定义`` - 点击 ``动作`` 选中 ``开始`` 按 ``ENTER`` 将状态改为 ``开始`` - 最后进入C2 查看 ``当前状态`` 和 ``启动状态`` 都应该被设置成了 ``开始``。 .. figure:: img/network2.png :width: 500px :align: center fanuc 设定机械臂机械臂主控 socket 4 使用U盘导入程序 +++++++++++++++++++++++++++++++++ 1. 准备一个文件系统为FAT32格式的U盘(其他格式的文件系统可能不会被Fanuc控制器识别) 2. 将Fanuc程序 .PC 与 .TP 文件拷贝到U盘,建议全部放在一个文件夹,并且该文件夹没有其他文件 3. U盘插入示教器或控制柜的USB接口 4. 示教器上 ``MENU``-> ``文件`` -> ``文件`` .. figure:: img/fanuc_import_src_1.png :width: 500px :align: center U盘导入程序 1 5. 可通过 ``工具 F5`` → ``切换设备`` 来选择插口: 如果插在示教器上,则选 ``TP上的USB(UT1:)``,如果插在控制柜上,则选 ``USB盘(UD1:)`` 。 6. 可通过 ``目录 F2`` 来选择要显示的文件类型,通常选择 ``*.*`` ,来看到所有的文件与文件夹,选中你所存放Fanuc PC和TP程序的文件夹并进入。 7. 选中对应 PC 及 TP 的文件,或 ``SHIFT`` + ``上下方向键`` 快速翻页找到 ``所有文件`` 并选中,按下 ``加载 F3`` 加载选中的文件或者加载所有文件。 8. 如果导入程序时提示是否覆盖已有程序,可以根据实际情况选择是否覆盖。如果导入程序时提示程序被占用,可以点击 ``SELECT``,选择任意另一个不会被覆盖的程序,再次尝试导入。 .. figure:: img/program.png :width: 500px :align: center U盘导入程序 2 至此,程序已被全部导入到机器人控制器中。