网淘吧Visual Components、Flexsim 仿真技术博客 | Python、C#、Delphi xe 机器人编程教程 - 网淘吧

机器人分拣单元:根据零件材质(颜色)进行分拣的 IF 条件实现(使用颜色传感器) - Robot Programming - visual compents 疑难解答

2026-04-03 新闻来源:网淘吧 围观:34
电脑广告
手机广告

Benji

大家好,

我正在编写一个分拣单元的程序,希望将托盘中的组件分拣到红色(基座2)或绿色(基座3)容器中。我附上了机器人主程序以及子程序的部分代码。目前,机器人只能将组件送到基座2(红色容器)。基座1定义在托盘下方的平台上。

我的想法是根据组件的某个属性(例如材质)来进行分拣,比如绿色组件分拣到绿色容器。有人知道如何实现这一点,以及在 IF 语句中应该使用什么条件吗?

(不希望使用 Python)

提前感谢。









你好,

使用流程建模很容易实现(参见你对之前帖子的回复:从 5×10 托盘高效拾取 50 个零件而无需教导 50 个目标点(机器人程序)- #6 作者 mkittell)。

我认为如果不进行一点 Python 编程,仅靠机器人编程是无法实现的。

如果只有两种颜色,你可以让另一个组件读取组件的材质,然后向机器人的输入端发送一个真/假信号。在 IF 语句中,你可以写例如 IN[100] 来读取输入信号 100 的当前值。机器人语句

你说的“另一个组件读取组件的材质”是什么意思?

在我的情况下该如何实现?

提前感谢

类似流程语句、传感器,或者……Python 脚本。
我同意 @Tilma 的观点:似乎不借助一点 Python 是无法实现的,而且我认为 eCatalog 中没有现成的组件可以读取/测量材质。

幸运的是,我的硬盘里有一个颜色传感器的例子。它会测试与其射线碰撞的第一个表面的颜色。
我为你快速修改了一下,如果与射线碰撞的材质名称中包含“green”或“red”,它就会发送布尔信号。将此传感器附加到机器人的链接 5 或 6 上,通过发送脉冲信号进行测量,然后在 IF 语句中使用上述表达式。
颜色传感器.vcmx(17.9 KB)



2 个赞
带反馈给 PLC 的 RGB 颜色传感器

太棒了,谢谢!但似乎文件上传不正确。该文件只包含传感器。


你可以将此组件添加到布局中,并将其附加到你的夹爪上。

然后你可以连接信号并在机器人程序中使用它们(如果需要,你可以观看学院关于信号的视频:机器人与信号 | visual Components Academy)。

输出面板中打印了什么?你记得发送脉冲信号进行测量吗?

非常感谢您的建议。我肯定会考虑在下一个项目中采用这种方法。我已经承诺使用机器人程序编辑器来完成分拣单元,所以我希望能坚持到底。:slight_smile:

你好,我尝试了颜色传感器但没有成功,在图片中盒子是红色的,但红色位没有打开!有什么解决方案吗?

提前感谢!



图片,抱歉。

你发送脉冲信号进行测量了吗?它只在脉冲信号触发时才检测颜色。

1 个赞

没错,此外还有一个隐藏参数,你可以在“建模”选项卡中更改,使其一直进行测量:


脉冲信号的目的是将其连接到例如体积检测器上,这样就不必一直进行扫描,而只在目标物体靠近时才进行扫描,因为扫描 3D 世界中的三角网格对性能影响很大。


3 个赞

没意识到是这样的。

谢谢!!这个社区非常有帮助!!

1 个赞

与 PLC 信号类似,说实话我尽量少用连接到机器人的信号。我更喜欢将所有程序都写在 PLC 中,只教导机器人点位,然后由 PLC 告诉机器人要去哪个位置。顺便问一下,有没有什么地方可以看到其他人的项目以获取灵感?

提前感谢!

你可以查看案例研究:案例研究 - Visual Components

我想大多数人不会分享他们的项目,因为很多可能是保密的,但在论坛上你也可以找到很多人们已经做过或正在做的例子。

再次你好,

如何处理其他颜色,比如蓝色或绿色?

我编辑了但出错了。

提前感谢!



你创建了一个新的布尔信号,并在 Python 脚本中引用了它吗?



我玩得有点开心:

Layout_Color_Sensor.vcmx(844.5 KB)

1 个赞

谢谢,现在黄色也能用了!!!

免责申明
部分文章来自各大搜索引擎,如有侵权,请与我联系删除。
打赏

文章底部电脑广告
手机广告位-内容正文底部

相关文章

上网淘巴领天猫淘宝优惠券,一年省好几千。

广告  ×

您是本站第854305名访客 今日有0篇新文章/评论