1、EPSON EPSON 机械手软件编程操作培训机械手软件编程操作培训基础内容基础内容1 1 程序编写程序编写 1.1 1.1 新建一个项目新建一个项目 1.2 1.2 打开一个项目打开一个项目 1.3 1.3 编译程序并下载程序编译程序并下载程序 1.4 1.4 运行程序运行程序 1.5 1.5 单步运行程序单步运行程序 1.6 1.6 局部变量、模块变量及全局变量的定局部变量、模块变量及全局变量的定义及区别义及区别 1.7 1.7 编写一个初始化函数打开马达、设定编写一个初始化函数打开马达、设定运行功率及速度运行功率及速度 1.8 1.8 用用GOGO、JUMPJUMP、MOVEMOVE、A
2、RCARC指令编写一指令编写一个简单的程序个简单的程序 内容内容内容内容 1.9 1.9 编写一个简单输入输出操作程序编写一个简单输入输出操作程序 1.10 1.10 编写一个循环控制程序编写一个循环控制程序 1.11 1.11 编写一个编写一个RS232RS232串口通讯程序(含串口串口通讯程序(含串口设置,数据分解赋值)设置,数据分解赋值)1.12 1.12 编写一个以太网通讯程序(含以太网设编写一个以太网通讯程序(含以太网设置,数据分解赋值)置,数据分解赋值)1.13 1.13 编写一个矩阵使用程序编写一个矩阵使用程序 1.14 1.14 点文件操作及点位修改点文件操作及点位修改 1.1
3、5 1.15 编写一个回待机位样例程序编写一个回待机位样例程序 内容内容内容内容2 2 2 2 视觉应用案例(视觉应用案例(视觉应用案例(视觉应用案例(EPSONEPSONEPSONEPSON机器人跟其他品牌视机器人跟其他品牌视机器人跟其他品牌视机器人跟其他品牌视 觉配合)觉配合)觉配合)觉配合)2.1 2.1 固定向下相机(相机固定在外部)应用固定向下相机(相机固定在外部)应用 案例案例 2.2 2.2 移动向下相机移动向下相机(相机装在机械手上)应用相机装在机械手上)应用 案例案例 2.3 2.3 固定向上相机(相机装在外部)应用案固定向上相机(相机装在外部)应用案 例例 内容内容内容内容
4、1 1、程序操作、程序操作、程序操作、程序操作1.1 新建一个项目 1)单击“项目”,打开左图所示项目菜单,单击“新建”,打开右图所示窗口 输入项目名称(只能用英文字符加下划线表示)选择存储目录单击“确定”新建一个项目1 1、程序操作、程序操作、程序操作、程序操作1.2 打开一个项目(存储在电脑里程序文件)1)单击“项目”,选择“打开”,打开下图图所示窗口 选择文件存储目录选择要打开的程序单击“打开”打开一个项目1、程序操作1.3 1.3 编译并下载程序编译并下载程序 1)在工具栏上单击创建并下载程序图标“”或者单击打开运行窗口图标 “”,软件即会编译程序,如果程序没有错误就会将程序下载到控
5、制器。如果程序有错误,状态栏会显示程序错误信息,如下图所示。将光 标移到错误信息一栏,双击左键光标即会跳到程序错误的那一行去,然后 修改程序后重新下载程序 1、程序操作1.4 1.4 运行程序运行程序 1)在工具栏上单击打开运行窗口图标“”,打开运行窗口选择要运行的函数单击“开始”运行函数勾选此项时速度不能超过最大速度的20%(建议调试时勾选此项)设定运行速度比例1、程序操作1.5 1.5 单步调试程序单步调试程序 1)单击程序最左端设置断点 2)在工具栏上单击打开运行窗口图标“”,打开运行窗口,单击 “开始”运行程序 3)按“F11”或单击图标“”运行下一行。按“F7”或单击图标“”运行到下
6、一个断 点。单击“开始”运行函数单击此处设置断点1、程序操作1.6 1.6 局部变量、模块变量及全局变量的定义及区别局部变量、模块变量及全局变量的定义及区别1)局部变量:在一个函数内定义的变量,只能在同一函数内使用2)模块变量:在程序的开头定义,可以在同一个程序里使用3)全局变量:可以在同一个项目里使用 Integer m_i模块变量m_iGlobal(Preserve)Integer g_i全局变量(全局保护变量)g_iFunction mainInteger I局部变量i.FendFunction Func1Integer I局部变量i.Fend1、程序操作1.7 1.7 编写一个初始化函
7、数打开马达、设定运行功率及速度(参看程序编写一个初始化函数打开马达、设定运行功率及速度(参看程序init_demoinit_demo)1、程序操作1.8 1.8 用用GOGO、JUMPJUMP、MOVEMOVE、ARCARC指令编写一个简单的程序指令编写一个简单的程序(参看程序move_demo)1、程序操作1.9 1.9 编写一个简单输入输出操作程序(参看程序IO_demo)1、程序操作1.10 1.10 编写一个循环控制程序(参看程序xunhuan_demo)1、程序操作1、程序操作1、程序操作1.11 1.11 编写一个RS232串口通讯程序(参看程序RS232_demo)1)串口设置
8、单击“设置”,选择“系统配置”打开控制器设置画面。单击“RS232”,选择“端口1”进下图所示串口设置画面,串口通讯参数设置与上位机保持一致,设置好后单击“应用”,然后关闭设置画面设置串口参数,与上位机保持一致1、程序操作1、程序操作1.12 1.12 编写一个以太网通讯程序(参看程序internet_demo)1)控制器IP设置 单击“设置”,选择“系统配置”打开控制器设置画面。单击“配置”,进入下图所示以太网设置画面,IP地址前3位与上位机保持一致,最后一位与上位机不同。设置好后单击“应用”,然后关闭设置画面设置控制器IP地址,IP地址前3位与上位机保持一致,最后一位与上位机不同。例如上位
9、机IP为192.168.1.1控制器IP设为192.168.1.101、程序操作2)以太网端口设置 单击“设置”,选择“系统配置”打开控制器设置画面。单击“TCP/IP”,选择一个端口号,进入下图所示以太网端口设置画面,IP地址、端口,结束符设置与上位机保持一致。设置好后单击“应用”,然后关闭设置画面设置与上位机保持一致超时设为0,表示不设置超时1、程序操作3)以太网通讯程序1、程序操作1、程序操作1.13 1.13 矩阵使用程序(参看程序pallet_demo)1)矩阵定义 1、程序操作2)矩阵调用程序 1、程序操作1.14 1.14 点文件操作及点位修改点文件操作及点位修改1)点位定义(一
10、般用示教方式示教点位,直接指定时要注意点的属性,否则运动时容易撞机)P1=XY(200,100,-25,0)向点P1分配坐标 Pick=XY(300,200,-45,0)向点pick位置分配坐标 P10=Here 向当前位置分配某个点 P1=p2 将点P2赋值给P12)用点标签调用点位 For i=0 To 10 Go pick Jump place Next i3)用变量调用点位 For i=0 To 10 Go P(i)Next i1、程序操作4)上载程序中点文件 启动程序时将加载机器人的默认点文件“robot1.pts”。您还可以使用LoadPoints 语句在程序中加载其他点。Func
11、tion mainInteger iLoadPoints model1.ptsFor i=0 To 10 Jump pick Jump placeNext iFend5)保存点文件Function mainP1=XY(200,100,-25,0)向点P1分配坐标Pick=XY(300,200,-45,0)向点pick位置分配坐标Savepoints robot1.pts 将点保存到点文件robot1.ptsFend1、程序操作6)点位属性指定 1、LOCAL属性(指定机器人坐标是相对那个坐标系的位置)P1=XY(300,-125.54,-42.3,0)/1 P1在本地坐标1中 2、左右手姿势指
12、定 若要为SCARA 或6 轴机器人指定方向,添加斜杠(/),其后是L(左手方向)或R (右手方向)。P2=XY(200,100,-20,-45)/L 手的方向为左 P3=XY(50,0,0,0)/2/R 本地2为右手方向 您可以使用Hand 语句和函数读取和设置点手的方向。Hand P1,Righty 3、6轴肘姿势指定 若要在点分配语句中为6 轴机器人指定肘的方向,添加一个斜杠(/),其后是A(上 方肘方向)或B(下方肘方向)指定P1肘的方向为下方。P1=XY(0,600,400,90,0,180)/B1、程序操作 4、指定6轴手腕姿势 若要在点分配语句中为6 轴机器人指定手腕的方向,添加
13、一个斜杠(/),其后是NF(非反转手腕方向)或F(反转手腕方向)。指定P2点手腕方向为翻转。P2=XY(0,600,400,90,0,180)/F 5、指定J4Flag和J6Flag点属性 在工作范围的某些点上,即使第四关节或第六关节旋转360 度,6 轴机器人也可以具有相同的位置和方向。为了区分这些点,提供了J4Flag 和J6Flag 点的属性。这些标记允许您为某个既定点的关节4 和关节6 指定一个位置范围。若要在分配语句中指定J4Flag,添加一个斜杠(/),其后是J4F0(-180第四关节角度=180)或J4F1(第四关节角度=-180 或180第四关节角度)。P2=XY(0,600,
14、400,90,0,180)/J4F1若要在点分配语句中指定J6Flag,添加一个斜杠(/),其后为J6F0(-180第六关节角度=180),J6F1(-360 第六关节角度=-180 或180第六关节角度=360),或J6Fn(-180*(n+1)第六关节角度=180*n 或180*n 第六关节角度=180*(n+1)。P2=XY(50,400,400,90,0,180)/J6F21、程序操作 5、指定J1Flag和J2Flag点属性 在工作范围的某些点上,即使第一关节或第二关节旋转360 度,RS 系列也可以具有相同的位置和方向。为了区分这些点,提供了J1Flag 和J2Flag 点的属性。
15、这些标记允许您为某个既定点的关节1 和关节2 指定一个位置范围。若要在点分配语句中指定J1Flag,添加一个斜杠(/),其后是J1F0(-90第一关节角度=270)或J1F1(-270=第一关节角度=-90 或270第一关节角度=450)。P2=XY(-175,-175,0,90)/J1F1若要在点分配语句中指定J2Flag,添加一个斜杠(/),其后是J2F0(-180第二关节角度=180),J2F1(-360第二关节角度=-180 或180第二关节角度=360)。P2=XY(300,175,40,90)/J2F1J1Flag和J2Flag点属性在机器人坐标系的原点,即使第一关节在旋转,RS
16、系列也可以具有相同的位置和方向。为了区分这些点,提供了J1Ang 点的属性。7)提取和设置点位 使用CX,CY,CZ,CU,CV,CW,CS 和CT 命令获得一个点的坐标,或对其进行设置。xcoord=CX(P1)P2=XY(xcoord,200,-20,0)ycoord=CY(P*)获取当前的Y位置坐标CX(pick)=25.5CY(pick)=CY(pick)+2.31、程序操作8)点位修改 有几种方法可以修改某个点而无需再示教。您可以用相对偏移值或绝对值更改一个或多个坐标值。若要设置某个坐标的绝对值,使用冒号,后跟轴的字母和值。若要向坐标添加相对偏移值,使用一个轴字母,后跟括号中的偏移值
17、或表达式。如果偏移值为负,则轴字母的前面是减号。如果省略了括号,其将被自动添加。Go P1-Z(20)偏移Z 轴-20mm,移动到P1Go P1:Z(-25)偏移Z 轴到-25mm 的绝对位置,移动到P1Go P1-X(20)+Y(50):Z(-25)以X 和Y 相对偏移量和Z 绝对位置移动到P11、程序操作1.15 1.15 编写一个回待机位样例程序编写一个回待机位样例程序 在有的应用中由于空间受限,机器人在异常停机后可能处在不确定位置,如果直接用指令回待机位置就有可能撞到其他治具,这时我们必须写一个回初始位置的程序让机器人安全回到待机位。一般我们可以先获取机器人当前姿势以及当前坐标,然后根据当前姿势和当前坐标来决定先移动那个轴或先到那个过渡点,以确保机械手安全回到待机位。(注意回原点时用低功率,避免误操作时速度过快撞坏机器人)1、程序操作1、程序操作结束结束谢 谢