边界位置
-
工作空间中选取了以下点进行测试
- 测试方法
- 零点->测试点->零点
- 当前点根据当前编码器读数进行逆解得到(所以不能预先规划路径)
- 测试过程
代码如下
# -*- coding = utf-8 -*-
import sinanju
zeropt = [ 250,0,510 ]
casepts=[
0+5,505-5,257,
0+5,256-5,513,
0+5,0,762-12,
0+5,-256+5,513,
0+5,-505+5,257,
256,-256,257,
505,0,257,
256,256,257,
-357,-357,257,
357,-357,257,
357,357,257,
-357,357,257,
-252,-252,614,
252,-252,614,
252,252,614,
-252,252,614,
]
if __name__ == "__main__":
robo = sinanju.Sinanju( "Sinanju2" )
print( robo.IDN )
for i in range( 0, len(casepts), 3 ):
robo.goto( casepts[i], casepts[i+1], casepts[i+2] )
robo.goto( zeropt[0], zeropt[1], zeropt[2] )
测试中的发现
- 在x为零时可能会有异常的情况,现象是:没有到达指定的位置附近
为了使测试能够进行,修正了x=0的测试点 - 腕部的动作会乱,没有到达指定的位置
- 驱控器异常,返回状态码:98或ERROR
- 某个轴保持RUNNING状态比其他轴的时间长
异常点
x,y,z | comment |
---|---|
0,505,257 | 错误 |
-357,-357,257 | 去时错误,回来时腕错误,偶尔也正常 |
252,252,614 | MRQ显示ERROR,返回98状态 |
-357,357,257 | 腕错误 |
-252,252,614 | 腕错误 |
-252,-252,614 | 先到位置,腕再变成竖直方向 |
去掉X=0的异常点包括
去掉异常点后的测试点
- 测试时间:11个测试点,638.912s
casepts=[
# 0+5,505-5,257, # 错误
0+5,256-5,513,
0+5,0,762-12,
0+5,-256+5,513,
0+5,-505+5,257,
256,256,257,
505,0,257,
256,-256,257,
# -357,-357,257, # 去时异常,回来后腕不对,偶然也对
357,-357,257,
357,357,257,
# -357,357,257, # wrist error
-252,-252,614,
252,-252,614,
# 252,252,614, # exception
# -252,252,614, # wrist
]