故事作者:空果仁

最近创作

看看TA的故事

怎样将S7-300/400的库移植到S7-1500

已锁定

空果仁

官方工程师 西门子1847工业学习平台

  • 帖子

    210
  • 精华

    47
  • 被关注

    310

论坛等级:侠圣

注册时间:2011-07-11

普通 普通 如何晋级?

怎样将S7-300/400的库移植到S7-1500

6992

23

2022-02-25 09:58:34

star star star star star

        在STEP7中有项目和库的区分,这个库与TIA博途的相比非常简单,只包含程序块,库中的程序块中包括DB、FC、FB以及SFC和SFB。怎么移植S7-300/400的库到TIA博途中并可供S7-1500使用呢?我们先看一下STEP7项目的移植过程。

        在不包含硬件的情况下,移植的过程如下:

        1) 对原有STEP7项目进行一致性检查,更正程序中不一致的块,例如调用FC后,再次修改FC的接口参数,这样将造成程序不一致,导致时间冲突。操作如图1所示。

        2) 平台的移植。就是从STEP7移植到TIA博途平台。在TIA博途中点击“项目移植”选项后,再选择STEP7源项目打开就可以了。如图2所示。这个过程程序不会发生任何变化,但是TIA博途平台在打开的时候,后台也在打开STEP7并对项目进行编译,看看是否缺少相应的软件。TIA博途平台对程序的架构和数据类型的检测非常严格,平台移植非常简单,但是保证编译无错不简单,通常都是上百个错误,主要是源程序编写不严谨。

        3)将TIA博途中的S7-300/400程序移植到S7-1500,如图3所示。移植后替换S7-300/400程序中使用的SFC和SFB,因为系统发生变化,系统程序块不一定完全匹配。

        简单的说,移植过程就是这三步了。如果是一个STEP7的库应该怎么移植呢?我们先看一个实例。使用STEP7解压缩打开后,库中包含若干个程序块文件夹,如图4所示。

        每一个程序块文件夹就相当于项目中的站,大家这里需要注意,库文件只能在“Libraries”标签中打开,如图5所示。

        库文件的存储文件后缀是*.S7L,而项目文件是*.S7P,如图6所示。

        TIA博途只能移植项目文件即*.S7P文件,所以必须将库文件转化为项目文件。在STEP7 中创建一个项目,将库文件一个一个地复制到项目中,这样库中所有的程序块就包含在一个项目中,然后就可以对该项目进行移植了。这里注意,源程序是SCL编写的,所以在STEP7中还需要安装SCL。

注意:

        如果没有SCL的源文件,使用TIA 博途打开后,程序块可能将加锁保护,这样就不能移植到S7-1500了。这里可能还需要在STEP7中将程序块中的代码复制过来并放到STL创建的程序块中,然后再执行平台的移植。

        后续的过程就是前面介绍的移植3步了,希望第二部编译没有问题,但是概率比较小。其实大部分问题就是数据类型的不匹配。在S7-300/400中使用STL编程从来不需要考虑数据类型的匹配问题,这可能就是问题的根源。但是在S7-1500中增强了数据类型的安全性,所以检查严格了,原来这样的编程不允许了。参考图7数据类型不匹配的问题。

        错误描述为:“运算符“*” 与“DInt” 和“Real” 的数据类型不兼容。”程序中TIME_TO_DINT(#t)将“t”转化为DINT类型,而“M”是Real类型,这两个类型不能相乘。再看前面是REAL_TO_DINT,所以需要将“t”最终转换为Real类型,更改的程序如图8所示,感觉一直再转换。

        还有一类错误是程序框架错误,如图9所示。

        明明返回值“OVERRIDE”赋值了,怎么报无返回值呢?查看程序发现,返回值的赋值都是有条件的,如果条件都不成立怎么办?可能是一个随机值。再前面加一个初始化就可以了,如图10所示。

        程序移植成功后,在项目树下是一个一个的S7-1500 的PLC站点。需要将站点中的程序块存放到TIA博途的库中。例如在TIA博途中创建新的库,按照原库中的格式创建文件夹,然后将移植的程序块复制到相应的文件夹中,如图11所示。这样S7-300/400的库移植到S7-1500库的工作就完成了。



怎样将S7-300/400的库移植到S7-1500 已锁定
编辑推荐: 关闭

请填写推广理由:

本版热门话题

崔工谈博途与PLC

共有103条技术帖

相关推荐

热门标签

相关帖子推荐

guzhang

恭喜,你发布的帖子

评为精华帖!

快扫描右侧二维码晒一晒吧!

再发帖或跟帖交流2条,就能晋升VIP啦!开启更多专属权限!

top
您收到0封站内信:
×
×
信息提示
很抱歉!您所访问的页面不存在,或网址发生了变化,请稍后再试。