02-21-2023, 08:06 am
你好,
我仍然没有找到在RoboDK中编写代码的最佳方法,以避免在创建模拟程序时工作流程中的冗余,同时为真实机器人生成离线程序。
我的最新状态是,我正在用Python脚本在工作站生成程序。这样我就可以调用程序来模拟机器人的行为,也可以为机器人生成离线程序。但这样的话,我的电台很快就会变得一团糟。生成的程序变得庞大而不灵活。
例如:我有一个工件存储库,其中有24个零件,我希望能够抓取。现在我想创建接近和抓住工件的程序,我还需要与工件一起缩回的程序,这样我就可以在RoboDK之外用一些逻辑和错误行为来包裹它们。这意味着单个工件类型将有48个程序。最后将有5种工件类型,因此这意味着仅该工作站就有240个程序。这也意味着在我的机器人模块中生成了240个子程序,其中大部分都是相同的东西。
现在我正在考虑如何避免这种混乱。我的目标是有一个Python脚本“approachto工件(tray_number, workpiece_number)”和一个“retractfrom工件(tray_number, workpiece_number)”。从RoboDK中,我将其称为具有各自工件和托盘编号的子程序,用于模拟目的。这在模拟中工作得很好,但我也希望能够生成一个机器人程序,其中只有这两个程序,而不是为每个部分生成48个程序。
也许有人有一个聪明的想法,如何最好地实现这一点?
不管怎样,现在我想把python脚本程序称为站树中的一个程序,然后用python脚本中的程序作为子程序生成这个程序,但这行不通。生成的程序包括对子程序的调用,但不生成子程序本身。当我从python脚本生成程序时,它会毫无问题地生成。见附图。
我仍然没有找到在RoboDK中编写代码的最佳方法,以避免在创建模拟程序时工作流程中的冗余,同时为真实机器人生成离线程序。
我的最新状态是,我正在用Python脚本在工作站生成程序。这样我就可以调用程序来模拟机器人的行为,也可以为机器人生成离线程序。但这样的话,我的电台很快就会变得一团糟。生成的程序变得庞大而不灵活。
例如:我有一个工件存储库,其中有24个零件,我希望能够抓取。现在我想创建接近和抓住工件的程序,我还需要与工件一起缩回的程序,这样我就可以在RoboDK之外用一些逻辑和错误行为来包裹它们。这意味着单个工件类型将有48个程序。最后将有5种工件类型,因此这意味着仅该工作站就有240个程序。这也意味着在我的机器人模块中生成了240个子程序,其中大部分都是相同的东西。
现在我正在考虑如何避免这种混乱。我的目标是有一个Python脚本“approachto工件(tray_number, workpiece_number)”和一个“retractfrom工件(tray_number, workpiece_number)”。从RoboDK中,我将其称为具有各自工件和托盘编号的子程序,用于模拟目的。这在模拟中工作得很好,但我也希望能够生成一个机器人程序,其中只有这两个程序,而不是为每个部分生成48个程序。
也许有人有一个聪明的想法,如何最好地实现这一点?
不管怎样,现在我想把python脚本程序称为站树中的一个程序,然后用python脚本中的程序作为子程序生成这个程序,但这行不通。生成的程序包括对子程序的调用,但不生成子程序本身。当我从python脚本生成程序时,它会毫无问题地生成。见附图。