0551—62774666
zhaopin@ahcywl.com

基于软PLC和C# 的AGV调度解决方案

发布日期:2022-06-17 浏览次数:39

来源:西家汽车行业技术分享

时间:2022-6-15

作者:VM AUTO COC



针对汽车制造环节需求的新变化,西门子提出了针对工艺AGV应用的整体解决方案Simove,相信使用过Simove标准的小伙伴对MC&CC控制方案比较熟悉。

如下图所示:AGV小车端采用1512SP F PLC,主控调度采用1518F PLC,主控和各个AGV小车端之间通过I-Device PN通讯进行数据实时交互,小车路径管理及调度在主控1518 F PLC中实现。

这种方案优势:主控和各个小车端之间采用I-Device实时通讯,可以实现与线边设备协同作业,无线的Profisafe通讯,保证了数据传输的实时、安全、可靠。

同样这种方案不足在于:

如果现场AGV路径非常复杂、地标点很多,就需要大量的I-Device通讯字节。然而I-Device传送区的地址数量会影响智能设备的可用带宽,如果I-Device传送区地址数量过大,将会严重影响智能设备自身所挂的IO模块的带宽,实时性大大降低。

在主控PLC侧实现复杂路径规划及交通管制等功能,需要非常繁琐的配置和定制化编程,PLC的存储区限值,编程语言都不是特别的友好。在用户可视化操作、配置、灵活等方面不如传统PC调度,PC上应用高级语言和数据库编程大大简化了程序员的工作。

但是目前行业内所采用的PC调度和AGV小车的通讯是基于TCP、S7等方式实现的非安全,非实时的通讯,对于协同作业的设备不能保证数据实时、安全、可靠。这些问题都是目前市场上几乎所有AGV厂家提供系统的共同痛点。

综上所述,我们将PLC调度和PC调度的优势进行融合,推出基于PC-based软PLC的Simove解决方案。PC-based 软PLC不仅具备一台 1517/1518 F CPU的功能,还可以当作一台带Windows 操作系统的PC,一机两用。

那么SoftwareController自带的虚拟1500CPU和Windows系统PC之间如何交互数据?对于实时性要求比较高的,我们推荐使用Open Development Kit,ODK是一种开发工具包,用于编写自定义功能并生成TIA PORTAL可直接调用的文件。ODK可作为接口,在CPU的控制器程序中调用用户自定义的高级语言程序。

例如:可以将AGV PC调度端一些核心算法通过ODK接口方式,生成函数库,并且PLC可以直接调用这些核心算法函数库。因为PLC是实时系统,所以这些函数库在PLC中执行效率更高,比采用其他通讯方式获取数据实时性更高。

下图描绘了CPU 函数库在 PC 上的运行示意图:

当然CPU运行系统和PC运行系统(C#、C、C++、VB等)之间也支持其他通讯方式:开放式TCP、OPC UA等,但是这些都是非实时通讯。

而且在1500S PC系统上可以运行IT程序(C#、C、C++、VB等),一些参数化管理的界面可以运行在PC系统上。最终这套SoftwareController解决方案不仅集成了PLC调度实时通讯(包括Profisafe)、PC调度核心算法ODK实时通讯、而且还融合了PC调度配置灵活等特点。

下面是我们在一汽解放涂装AGV案例介绍:

导航方式:色带、二维码、惯导

驱动方式:双舵轮

AGV车载程序:Simove  调度:C# ODK+ PC-based PLC

AGV厂商:机械九院

C#调度(CS + BS架构):路径规划及管制区管理都是通过excel灵活配置