职位:34
线程:14
2021年10月加入:
声誉:
0
11-22-2021,下午08:17
(这篇文章最后修改:11-22-2021,08:19点audreyv)。
我一直使用python脚本生成一个曲线和项目到表面。
python脚本使用RoboDK API和曲线跟踪项目。出于某种原因,当我在RoboDK运行程序,它生成的曲线但不曲线投射到表面。它还说,python脚本继续运行,不会停止,直到我给它停止手动选择。
当我发送整个站的同事,效果很好。我想知道它可能是RoboDK或Python的版本或可能导致这个问题。
帖子:1832
线程:2
2018年10月加入:
声誉:
70年
你使用最新版本的RoboDK吗?
“帮助”- >“关于”
最后一个版本是5.3.0(11月4日)或5.3.1(11月14日)
杰里米
职位:34
线程:14
2021年10月加入:
声誉:
0
我使用5.3.0和同事(谁没有经历这个问题)是使用5.2.2。
职位:34
线程:14
2021年10月加入:
声誉:
0
我只是下载版本5.2.2和脚本最终预测曲线和停止。
职位:34
线程:14
2021年10月加入:
声誉:
0
这个程序将创建点和项目这些点在一个窗口空白;x, y -坐标形成一个正弦波
#变量
#在毫米x坐标
#在毫米y坐标
# z z坐标在毫米
# y_steps点之间的坐标增量
# x_steps x -
def Make_Points (Point_Start Point_End Num_Points):
#提取的起点
Point_List = []
x = Point_Start [0]
y = Point_Start [1]
z = Point_Start [2]
#计算每个连续的路径点之间的距离
x_steps = (Point_End [0] - Point_Start [0]) / (Num_Points - 1)
point_i = [x, y, z]
Point_List = []
Point_List.append (point_i)
r的范围(2):
因为我在范围(49):
x + = x_steps
point_i = [x, y, z]
Point_List.append (point_i)
如果r = = 1:
打破
y + = 30
point_i = [x, y, z]
Point_List.append (point_i)
因为我在范围(49):
x - = x_steps
point_i = [x, y, z]
Point_List.append (point_i)
y + = 30
point_i = [x, y, z]
Point_List.append (point_i)
返回Point_List
从robolink进口* #进口robolink库
从robodk进口* #进口robodk机器人工具箱
从随机种子#如果需要进口
从随机randint #如果需要进口
#启动参数
Point_Start = (130.3, -616117)
Point_End = (354.4, -616117)
Num_Points = 50
#产生点,将用于创建正弦波的道路
点= Make_Points (Point_Start Point_End Num_Points)
#与模拟器打开沟通
RDK = Robolink ()
#关掉自动呈现
RDK.Render(假)
#自动删除以前生成的项目(汽车)
list_items = RDK.ItemList ()
在list_items:项
如果item.Name () .startswith(汽车的):
item.Delete ()
#打开渲染之前开始仿真
RDK.Render(真正的)
object_curve = RDK.AddCurve(分)
ProjectionType = PROJECTION_CLOSEST
#可用值包括:
# PROJECTION_NONE = 0 #没有曲线投影
# PROJECTION_CLOSEST = 1 #表面的投影会亲密点
# PROJECTION_ALONG_NORMAL = 2 #投影将沿着正常完成。
# PROJECTION_ALONG_NORMAL_RECALC = 3 #投影将沿着正常完成。此外,根据表面正常将重新计算正常。
# PROJECTION_CLOSEST_RECALC = 4 #表面的投影将最接近的点和法线将重新计算
# PROJECTION_RECALC = 5 #法线都重新计算根据最接近的表面正常的投影
# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
#要求用户提供的对象特性
object_features = RDK。ItemUserPick(“选择对象特性的项目(曲线和/或点)”ITEM_TYPE_OBJECT)
如果不是object_features.Valid ():
辞职()
#要求用户提供与表面作为参考对象
object_surface = RDK。ItemUserPick(“选择表面对象项目功能”,ITEM_TYPE_OBJECT)
如果不是object_surface.Valid ():
辞职()
#创建一个表面对象的副本
object_surface.Copy ()
new_object = RDK.Paste (object_surface.Parent ())
new_object。setName(“重新计算法线”)
new_object.setVisible(真正的)
#隐藏对象用于构建的新对象所需的曲线
object_features.setVisible(假)
object_surface.setVisible(假)
#关掉渲染(快)
RDK.Render(假)
#添加所有曲线,预测根据需要(遍历所有曲线,直到找到曲线)
curve_points name_feature = object_features。GetPoints (FEATURE_CURVE, 0)
打印(name_feature)
curve_points_proj = RDK。ProjectPoints (curve_points object_surface ProjectionType)
RDK。AddCurve (curve_points_proj new_object,真的,PROJECTION_NONE)
#打开渲染(可选)
RDK.Render(真正的)
打印(“完成”)
path_settings = RDK。AddMillingProject (“AutoCurveFollow设置”)
掠夺、状态= path_settings.setMillingParameters (= new_object部分)
这是我一直使用的脚本路径投影到曲面。
22下载并运行这个脚本之后,它应该。5.3.0版没有工作。
帖子:1832
线程:2
2018年10月加入:
声誉:
70年
你好,
你也可以添加一个小.rdk文件我们可以测试脚本在哪里?
顺便说一句,你可以把脚本作为. py文件。
当您选择“新回复”可以按“选择文件”,然后“添加附件”。
杰里米
职位:34
线程:14
2021年10月加入:
声誉:
0
11-23-2021,42点
(这篇文章最后修改:11-23-2021,10点43分audreyv)。
附件是测试站以及python脚本为. py文件。
这是python脚本