赞
踩
PLC调用一个功能块实现与安川机器人通讯。
用最简单的通讯方式---标准以太网通讯来控制安川机器人,实现最全面的功能。开发背景见 屠龙技应用之--安川机器人。
安川机器人无需增加各类Profibus,ethernet/ip,CC-Link等专用网卡,无需修改用户梯形图做专门的映射(增加了专用协议的通讯卡,必须修改用户梯形图,改变映射关系,安川编程的时候才能调用通讯过来的数据),只需要激活安川机器人控制器自带的以太网口即可跟各类PLC通讯,通讯数据包含读写机器人内部各类型数据,监视机器人运行状态,命令机器人动作等。
可通讯读写数据包含B-字节型,I-整数型,D-双精度型,R-实数型,S-字符型,P-位置型,等,还可读写输入输出变量,如20010,30010等区域。可控制基本的伺服ON,伺服OFF,暂停。
可命令机器人调用用户事先存储的各类子程序,机器人运行过程中可监视机器人的运行状态,如:当前调用的程序名,执行到子程序到第几行,当前机器人的坐标及状态等。
也可以直接发机器人坐标,命令机器人直接到指定的坐标点,支持XYZ基座坐标系及SLURBT轴坐标系。(其它坐标系也可以有)
另有其它功能可开发。
以上一切无须繁琐的编程,仅仅只需要调用一个功能块即可实现。
目前已经测试可连 三菱Q系列PLC,西门子1200/1500系列,AB 1769系列,其它如欧姆龙NX NJ系列开发中,未测试。
此功能块适用于三菱works2编程,通过调用此功能块实现以太网与安川机器人的通讯,此功能块的作用类似高级语言的Dll库文件。
通过调用YaskawaDll功能块,可以实现对安川机器人内部变量的读写,控制机器人伺服ON/OFF,暂停,调用内部程序,命令机器人去位置点,监控机器人状态及当前坐标等。
调用此功能块后,三菱Q PLC和安川机器人之间将不再需要网关,安川机器人机柜不再需要安装CClink,profinet,EIP等卡件,仅需交换机将PLC跟安川机器人内置以太网口连接起来即可,PLC跟安川机器人需处于同一网段,互相之间可以ping连接。
此YaskawaDll功能块基于标准以太网,属于ISO/TCP IP模型中的应用层,故数据优先级低于profinet,与modbus tcp属于同一级别,当网络拥堵时,速度不及profinet,约等于modbus tcp。正常局域网单个功能数据测试刷新周期在10-15ms之间,当以上功能块所有读写数据同时工作时,会延长到85-105ms。功能块内部有数据优先级排序,总体规则:命令>写数据>读数据。没有命令及读数据指令时,自动循环刷新读数据。
测试采用QJ71E71专用模块进行的,部分参数设置如下,如采用Q CPU内置以太网口需修改内部程序。
安川机器人用内部集成的以太网口与PLC通讯,需要进入安川模式,使能以太网功能。测试安川内置以太网口是否开通,可在电脑连接内置CN4网口后,用Ping命令到机器人IP地址,查看是否有返回数据。少数参数须在维护模式下修改,后面会详细的贴出来。
XYStart | 网络模块的起始XY地址 |
NetChannelNo | 通道号码,注意用1516两个通道,15为接收,16为发送,程序内定不可互换 |
RWStart | 通讯开始 |
RobotProgramStart | 机器人调用子程序开始执行 |
RobotHoldOn | 机器人暂停,1=暂停,0=取消 |
RobotServOn | 机器人伺服ON,1=ON,0=off |
RData1Type | 要读取的数据类型1 |
RData1StartPos | 要读取的数据起始地址1 |
RData1Len | 要读取的数据长度1 |
RData2Type | 要读取的数据类型2 |
RData2StartPos | 要读取的数据起始地址2 |
RData2Len | 要读取的数据长度2 |
RRobotPosType | 要读取的位置数据类型 |
RData3StartPos | 要读取的位置数据起始地址 |
RData3Len | 要读取的位置数据长度 |
WData1Type | 要写入的数据类型1 |
WData1StartPos | 要写入的数据起始地址1 |
WData1Len | 要写入的数据长度1 |
WData1Data | 要写入的数据1 |
WData2Type | 要写入的数据类型2 |
WData2StartPos | 要写入的数据起始地址2 |
WData2Len | 要写入的数据长度2 |
WData2Data | 要写入的数据2 |
WRobotPosType | 要写入的位置数据类型 |
WData3StartPos | 要写入的位置数据起始地址 |
WData3Len | 要写入的位置数据长度 |
WData3Data | 要写入的数据3 |
ProgName | 要设定的机器人子程序名称 |
SetProgram | 设定子程序命令 |
Posarry | 位置坐标 |
GoPos | 命令机器人去到上述位置点 |
ReadStateEn | 读取机器人状态使能 |
ReadPosEn | 读取机器人位置使能 |
ReadProgramEn | 读取机器人当前执行的程序名称及行数使能 |
Information | 错误等提示信息 |
NetConnected | 网络连接成功 |
Error | 错误状态 |
Circuilttime | 估算的以上选中读写刷新一次的时间ms |
RData1Done | 读数据1完成 |
RData1Data | 读数据1内容 |
RData2Done | 读数据2完成 |
RData2Data | 读数据2内容 |
RData3Done | 读位置数据完成 |
RData3Data | 读位置数据坐标 |
WData1Done | 写数据1完成 |
WData2Done | 写数据2完成 |
WData3Done | 写位置数据3完成 |
SetProgramDone | 设置子程序完成 |
GoPosCMDDone | 命令机器人去到位置点执行完成 |
ReadStateDone | 读机器人当前状态完成 |
RobotState | 机器人当前状态 |
ReadPosDone | 读机器人当前坐标完成 |
RobotCurrentPos | 机器人当前位置 |
ReadProgramDone | 读机器人当前程序完成 |
RobotCurrentProgram | 机器人当前程序名及行数 |
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。