您可以使用工业机器人像一个机床(硬件或五轴CNC)。达到相同的结果作为数控机、工业机器人等需要先进的离线编程软件RoboDK转换机机器人程序的程序。raybet雷竞app下载RoboDK支持转换机项目例如APT,刀位点ACL,挖掘或NCI机器人模拟和机器人程序。
机械加工包括不同材料移除应用程序,如铣、钻孔、倒角,去毛刺,通常由自动化机床(数控)。
部分维度定义使用计算机辅助设计(CAD)软件,然后翻译成制造项目(如刀位点),计算机辅助制造(CAM)软件。制造程序可以转化为机器人程序使用RoboDK的离线编程工具。raybet雷竞app下载
额外的轴,如一个转盘和/或一个线性铁路创建和同步机器人将工作区。
本节显示了一些示例,包括机器人加工。其中的一些例子包括使用一个插件来展示如何生成凸轮刀具轨迹。然而,您可以加载任何通用的五轴刀具轨迹等RoboDK贴切,数控或刀位点文件。
访问我们的凸轮插件部分文档的更多例子机器人加工项目,如一种数控编程,MecSoft / RhinoCAM,发明家,FeatureCAM或Fusion360。
这个例子将帮助您了解在RoboDK机器人加工的基本知识,以及如何使用硬件机器人加工工作转换为机器人加工仿真和机器人程序。
这个例子将帮助您了解如何配置机器人加工设置在RoboDK和如何将五轴机器人加工工作机器人加工仿真和机器人程序。
本例中还将帮助您创建一个安全的方法/收缩运动不同加工操作的工作。
这个例子展示了如何使用一个库卡机器人3额外的机器人外部轴加工。细胞包括六轴机械臂,一个轴铁路和两轴转台。
中可用的更多信息RhinoCAM示例部分。RhinoCAM之间的集成和恰当的文件就会自动加载RoboDK RhinoCAM RoboDK。
这个例子展示了如何使用一个日本安川电气/ Motoman机器人激光切割应用程序。使用定义的机器人切割刀具轨迹欧特克融合RoboDK插件。
这个例子展示了如何使用一个日本安川电气/ Motoman机器人机器人加工和RoboDK一种数控编程的插件。RoboDK支持自动加载NCI或数控文件生成的一种数控编程。
参观一种数控编程示例部分为更多的信息。
这个例子展示了如何使用一个ABB机器人去毛刺。这个例子包括选择和地点操作。
这个例子展示了如何使用一个库卡机器人抛光。
本小节展示如何准备一个简单的RoboDK项目,离线,因为机器人加工。机器人加工细胞必须至少有一个机器人,一个工具(EOAT)和一个参考系(也称为坐标系统,部分参考或基准)。更多的信息关于建立一个新的站在RoboDK开始部分。
以下步骤展示了如何准备一个机器人加工设置库卡机器人KR210和Teknomotor铣刀轴(本例中是可用在图书馆Sample-New-Project.rdk)。
1 -选择一个机器人:
一个。选择文件➔开放的在线图书馆。
b。使用过滤器来找到你的机器人通过品牌,有效载荷,……
例如,选择库卡KR210 R2700(2.7到210公斤有效载荷)。
c。选择雷电竞app下载安卓和机器人应该自动出现在主屏幕上。
2 -选择一个工具:
一个。从相同的在线图书馆,选择重置清除过滤器和过滤器类型➔工具。
b。选择雷电竞app下载安卓加载一个主轴工具等Teknomotor ATC71-C-LN主轴。
c。主轴将自动连接到机器人。
d。关闭在线图书馆窗口。
3 -添加一个参考系:
一个。选择机器人基础坐标系(命名库卡KR210 R2700基地)。
b。选择程序➔添加参考帧。一个新的参考帧将被添加到机器人基地。
c。双击并输入坐标的引用:
XYZABC = [1500、1000、500, 0, 0, 0) (mm-deg)
d。重命名新的参照系铣削参考通过输入一个新的名称或通过选择F2。
4 -添加的对象你会使用机器人加工(可选):
一个。选择文件➔开放
b。选择一个对象命名对象象棋Rook.sld从RoboDK库:
C: / RoboDK /库
c。将对象拖放到铣参考如果没有放置自动(在车站树)
5 -双击机器人看到机器人面板(可选)。机器人面板显示活跃的工具和活跃的参考系。通过选择和更新工具和参考帧中可见,我们应该看到相同的坐标机器人控制器。默认情况下,Teknomotor主轴的TCP工具持有人的根源。该工具(TCP)会有一定的长度。在这个例子中,我们将更新TCP代表刀具的长度:
一个。更新工具X坐标(TCP) 375毫米。你会看到TCP沿着轴。
b。(可选)你也可以创建第二个工具,定义一个相对TCP对第一个通过添加翻译沿Z轴。
c。关闭机器人面板窗口。
按照以下的步骤来建立一个新的机器人加工项目RoboDK给出一个使用CAM软件生成数控文件(如刀位点或APT):
1。选择公用事业公司➔机器人加工项目(Ctrl + M)。
会弹出一个新窗口,如图片所示。
2。选择选择数控文件在路径输入部分
3所示。提供一个数控文件,如恰当的加工文件如下:
C: / RoboDK /图书馆/ Example-02。e-Robot加工象棋Rook.apt
4所示。重命名这个机器人加工项目加工设置通过右键单击树中的新项目,然后选择重命名(F2)。
选择参考系和工具的机器人,在左上角的菜单,如下图所示。应该显示在绿色刀具轨迹对正确的坐标系统。
加工刀具轨迹显示在绿色和法线的路径所示白色向量。取消隐藏可见路径刀具轨迹。
您可以选择更新是否您可以创建一个机器人加工程序使用默认设置。如果程序生成成功,您将看到一个绿色的复选标记。然后,您可以选择模拟或双击看到仿真开始生成的程序。
如果你看到一个红十字会警告消息它意味着你的机器人加工程序是不可行的。你可能需要更改一些设置等工具取向,优化参数,起点或部分的位置。
以下部分提供更多的信息关于如何定制机器人加工设置。
输入的路径允许您选择不同的方式提供刀具轨迹。
·选择数控文件:作为一个数控文件(从凸轮获得软件),如本节所述。
·选择曲线:作为一个或多个曲线,所描述的曲线跟踪项目部分。
是有可能的进口曲线在RoboDK坐标的列表。
·选择分:一个或多个点,如所描述的点跟进项目部分。
是有可能的进口分在RoboDK坐标的列表。
·3 d打印对象:作为3 d打印的对象。用切片机将几何图形转换为一个路径
选择项目活动显示特殊事件时,需要考虑生成机器人项目。这包括引发变化的工具,设置主轴转速在RPM或触发特定的项目程序启动或程序完成。
您可以指定一个舍入值在程序的事件。这将自动创建一个圆角指令程序的开头和将帮助使机器人加工程序顺畅,防止机器人动摇。例如,在一个ABB机器人这将设置在毫米ZoneData价值,发那科机器人这将问值百分比和通用机器人控制器将设置混合值毫米。
如果您使用的是刀位点或NCI文件、自定义M代码将作为函数调用默认触发M_RunCode (M代码作为参数传递)。您可以删除自定义删除调用M_RunCode M调用。
移动你的鼠标移到相应字段自定义每个部分的更多信息。
例如,当改变工具可以使用% 1的值代表你的CAM软件提供的工具ID。如果你喜欢触发静态函数,而不是通过参数可以取代SetTool (% 1)通过SetTool % 1。当使用工具,这将生成SetTool2代替SetTool (2)。
你可以定制你的方法和收缩运动机器人加工右上角的菜单。默认情况下,RoboDK添加方法和收缩运动沿着正常的100毫米。
选择添加添加一个额外的收缩运动。绿色的路径将相应更新。可以选择在沿着一个特定的轴,提供坐标,拥有一个弧方法等。你也可以结合多个方法/收回动作通过选择添加按钮。
选择删除删除一个特定的方法或收缩运动。
的路径工具抵消允许改变沿着路径工具的择优取向。这个选项主要用于扭转工具TCP的Z轴。这使得处理6th自由度轴周围的工具。提供几个选项取决于应用程序及其要求。例如,您可以选择最小化工具取向或遵循工具沿着路径取向。
自从六轴机器人用于遵循一个硬件或五轴数控加工程序我们有一个额外的自由度定义。这种自由度通常TCP的绕Z轴旋转。这些额外的自由度尤其有用避免奇异点,联合限制,碰撞或可达性问题。
默认情况下,抵消显示路径工具rotz (0)转换。这意味着您可以添加一个额外的绕Z轴旋转的工具。这个值可以修改建立工具的择优取向,修改在Z轴方向的TCP或结合其他轴。择优取向的取向后的机器人将尽量保持,同时刀具轨迹。
默认情况下,RoboDK使用最低工具取向变化算法。这意味着工具的方向沿着刀具轨迹尽可能保持不变。在一般情况下,此选项适用于铣削操作,因为它最大限度地减少机器人关节运动。或者,可以使用其他算法/方法,如工具取向后,刀具轨迹(用于切割应用,叶片需要保持切沿路径),或机器人的对象如果需要遵循的路径连接到机器人的工具(例如,分发或抛光的应用程序,也称为远程TCP配置)。
给定一个首选工具取向,机器人可以有一定的自由扭转的Z轴工具。这使得机器人解决方案避免机器人奇异点,联合限制和确保所有点都可以。默认情况下,RoboDK允许工具在TCP + / -180度旋转轴20度的增量。
建议限制这种旋转取决于应用程序。例如,可以输入限制允许+ / -90度旋转了一半。减少该参数也会减少处理时间获得这个项目。
如果某些点的路径是不可到达的,建议旋转参考系或者更宽容与Z轴旋转的工具。参考系可以感动着Alt键并拖动坐标系统,以更好地适应机器人工作空间内的一部分。
RoboDK自动选择接近的启动配置首选开始关节(首选关节开始点)。从这一点,机器人将遵循线性运动,所以机器人配置不会改变。
将显示一个下拉菜单来启动程序所有可能的解决方案。如果需要,选择一个喜欢的机器人关节配置和选择更新重新计算程序。
选择更新生成机器人程序提供的设置。一个绿色的复选标记显示如果程序可以成功创建了。然后你会看到一个新的项目在车站加工。
双击所生成的程序或选择模拟启动机器人加工仿真。
右键单击该项目并选择生成机器人程序(F6)生成机器人程序。更多的信息关于程序生成的程序部分。
你可以设置该算法保持沿着路径工具的方向不变。这种行为可能是有用的对于切割或焊接应用程序为例。
选择工具取向是路径在选择算法下拉重新计算刀具轨迹的首选。另一个设置是与拥有相同加工项目以一个恒定的工具取向。
可以计划一个机器人当它持有对象/路径工具的机器人制造操作发生。这是胶水配剂有用或抛光应用程序为例。这种类型的机器人编程也称为远程TCP。
选择机器人拥有对象在选择算法下拉正确位置上的刀具轨迹TCP参考。另一个设置是与拥有相同加工项目以一个恒定的工具取向。
RoboDK中可用的更多信息插件的Autodesk融合部分。
可以让一个机器人跟随曲线与RoboDK 3 d空间。曲线在RoboDK从对象边缘或可以选择进口作为一个在CSV文件的列表。这个选项是有用的机器人焊接应用程序为例。
选择公用事业公司➔曲线跟踪项目打开曲线跟踪设置。这些设置是一样的机器人加工项目唯一的区别是,路输入预设是选择曲线。
选择选择曲线选择曲线(s)在屏幕上。
选择曲线用鼠标左键点击。选择相同的曲线将开关两次运动的方向。同时,右击之前选定的曲线允许切换感或取消先前选定的曲线。
右键单击并选择屏幕完成或按Esc键回到设置菜单。绿色通道将显示机器人运动的对象。
一些额外的选项可用在右上角的设置,如速度和如果方法/工具收回行动为每个曲线必须应用。默认设置如下图所示:
曲线可以进口RoboDK从CSV文件或通过选择一个文本文件公用事业公司➔进口曲线。一个新项目将出现在车站显示曲线作为对象。
文件可以是一个文本文件的每个点的三维坐标曲线。可选地,Z轴的方向提供的工具可以作为我,j, k向量。所有的坐标必须相对于坐标系统的部分。
可选地,现有对象的曲线可以导出为CSV文件(右键单击曲线,选择导出曲线),修改和湾区(RoboDK。
如何自定义的更多信息和示例导入CSV或TXT文件曲线或点是可用的部分RoboDK API的例子。
你可以很容易地模拟机器人与RoboDK遵循点。点RoboDK可以从对象中提取、曲线或进口作为一个在CSV文件的列表。此选项用于点焊或钻井应用程序为例。下面的视频展示了一个示例设置点焊应用程序:观看视频。
选择公用事业公司➔点跟进项目打开点跟踪设置。这些设置是一样的机器人加工项目唯一的区别是,路输入预设是选择分。
选择选择分选择屏幕上的点(s)。
用鼠标左键点击选择点。选择同一点两次将开关方向的方法。同时,右击点允许选择下面点的选择选择next。
右键单击并选择屏幕完成或按Esc键回到设置菜单。绿色通道将显示机器人运动的对象。
一些额外的选项可用在右上角的设置,如工具的速度和距离的方法。默认设置下一个图像所示:
的列表点可以从文本文件导入或通过选择一个CSV文件公用事业公司➔进口分。一个新项目将出现在车站显示点作为对象。
文件可以是一个文本文件的每个点的三维坐标曲线。可选地,Z轴的方向提供的工具可以作为我,j, k向量。
可选地,现有的对象可以被转换成曲线点通过右键单击一个曲线,然后,选择提取曲线点。
加法制造(或3 d印刷)的过程三维固体对象从一个数字文件。工业机器人的手臂可以用作硬件或五轴与RoboDK 3 d打印机。下面的视频展示了如何设置3 d打印技术的概述RoboDK离线:观看视频。
3 d打印技术与机器人有可能在以下方式之一:
·直接把刀位点项目(NC文件)与RoboDK机器人程序,如图所示机器人加工项目。物料流率(挤出机指令E)正确地计算为每个运动和它可以集成在生成的程序项目活动。刀位点是一种数控RoboDK也是支持的文件格式支持许多3 d打印机。大多数切片机软件可以生成刀位点给定一个STL文件。
·选择公用事业公司➔3 d打印项目打开3 d打印设置。
默认情况下,RoboDK翻译E指令作为一个程序调用程序挤出机并通过E值作为参数。选择项目活动改变这一行为。
挤出机的值(E)代表需要多少材料挤压在每个运动。这个值可以用来驱动挤出机进料的机器人考虑机器人速度和点之间的距离。
或者,可以计算挤出机进料使用后置处理程序并生成相应的适当的代码。以下部分提供了一个示例。
本节将展示如何修改一个机器人后置处理程序计算挤出机速度在执行之前3 d打印技术的运动指令。另外,这些操作可以在挤出机的机器人控制器程序调用(默认命令驱动挤出机)。
通过定制一个机器人后处理器,可以使3 d打印挤出机的集成更容易在发送程序之前机器人。要完成这样的任务,我们需要做一些计算和输出定制代码程序中生成时机器人后置处理程序。
第一步是拦截机电话和读取新的挤出机的值(E值)在RunCode部分后处理器。以下部分处理所有程序调用生成的程序:
defRunCode(自我,代码,is_function_call=假):
如果is_function_call:
如果代码。startswith(挤出机():
#拦截机命令。
#如果程序调用挤出机(123.56)
#我们提取数字作为一个字符串
#和将其转换为一个数字
self.PRINT_E_NEW=浮动(代码(9:-1])
#跳过程序调用的一代
返回
其他:
自我。addline(代码+“()”)
其他的:
#输出程序代码
自我。addline(代码)
挤出机值(长度/ E)保存在机器人PRINT_E_NEW变量后处理器。
我们需要触发函数调用命名new_move随着每一个新的线性运动指令。我们可以添加这个叫初MoveL命令:
defMoveL(自我,构成,关节,conf_RLF=没有一个):
添加一个线性运动”“”“
#处理3 d印制机集成
自我。new_move(构成)
…
我们还必须添加以下变量头的后置处理程序计算挤出机增量:
# 3 d印制机设置参数:
PRINT_E_AO=5#挤出机流模拟输出ID命令
PRINT_SPEED_2_SIGNAL=0.10#比率转换速度/流向一个模拟输出信号
PRINT_FLOW_MAX_SIGNAL=24#最大信号提供到挤出机
PRINT_ACCEL_MMSS=- - - - - -11 #加速度,假定恒速如果我们用舍入/混合
#内部3 d打印参数
PRINT_POSE_LAST=没有一个#最后造成印刷
PRINT_E_LAST=0#最后挤出机的长度
PRINT_E_NEW=没有一个#新挤出机的长度
PRINT_LAST_SIGNAL=没有一个#最后挤出机信号
最后,我们需要定义一个新的程序,将生成合适的挤出机喂命令根据运动之间的距离,机器人机器人速度和加速度。这个假设挤出机饲料是由特定的模拟输出或一个定制的程序调用。
我们需要添加以下代码在def MoveL程序定义。
defcalculate_time(自我,距离,Vmax,Amax= -1):
”“”计算时间和Amax加速和移动距离Vmax速度”“
如果Amax<0:
#假定恒速(适当的平滑/舍入参数必须设置)
Ttot=距离/Vmax
其他的:
#假设我们加速和减速
tacc=Vmax/Amax;
Xacc=0.5*Amax*tacc*tacc;
如果距离< =2*Xacc:
# Vmax没有达到
tacc=√6(距离/Amax)
Ttot=tacc*2
其他的:
# Vmax达到
Xvmax=距离- - - - - -2*Xacc
Tvmax=Xvmax/Vmax
Ttot=2*tacc+Tvmax
返回Ttot
defnew_move(自我,new_pose):
”““实施行动的挤出机3 d印刷,如果适用“”“
如果自我。PRINT_E_NEW是没有一个或new_pose是没有一个:
返回
#跳过第一步,记得带来
如果自我。PRINT_POSE_LAST是没有一个:
自我。PRINT_POSE_LAST=new_pose
返回
#计算材料的增加运动
add_material=自我。PRINT_E_NEW- - - - - -自我。PRINT_E_LAST
自我。PRINT_E_LAST=自我。PRINT_E_NEW
#计算机器人的速度和挤出机信号
extruder_signal=0
如果add_material>0:
distance_mm=规范(subs3(自我。PRINT_POSE_LAST。Pos(),new_pose。Pos()))
#计算运动时间在秒
time_s=自我。calculate_time(distance_mm,自我。SPEED_MMS,自我。PRINT_ACCEL_MMSS)
#避免除0
如果time_s>0:
#这可能看起来冗余但它允许您占加速度,我们可以应用小速度调整
speed_mms=distance_mm/time_s
#计算挤出机速度RPM *比率(PRINT_SPEED_2_SIGNAL)
extruder_signal=speed_mms*自我。PRINT_SPEED_2_SIGNAL
#确保信号在公认的价值观
extruder_signal=马克斯(0,最小值(自我。PRINT_FLOW_MAX_SIGNAL,extruder_signal))
#在需要时更新挤出机速度
如果自我。PRINT_LAST_SIGNAL是没有一个或腹肌(extruder_signal- - - - - -自我。PRINT_LAST_SIGNAL)>1 e-6:
自我。PRINT_LAST_SIGNAL=extruder_signal
#使用内置的setDO函数来设置一个模拟输出
自我。setDO(自我。PRINT_E_AO,“% .3f”%extruder_signal)
#此外,引发程序调用和处理与机器人控制器的集成
# self.addline (“ExtruderSpeed (% .3f) % extruder_signal)
#记得最后的姿势
自我。PRINT_POSE_LAST=new_pose