分享

指令库的使用——以S7-200为例

 我自飘怜 2018-04-24


主要内容:
1、指令库的添加与删除
2、标准指令库
3、附加指令库

(1)指令库简介:

为了便于用户的编程,Micro/WIN提供了对指令库的支持。指令库就是独立于具体工程项目文件,而与Micro/WIN集成的子程序集。

Micro/WIN可以集成两种类型的指令库:

  • 西门子提供的标准指令库

  • 用户自定义的指令库


用户可以把自己编制程序集成到编程软件Micro/WIN中。这样可以在编程时调用实现相同功能的库指令,而不必同时打开几个项目文件拷贝。指令库也可以方便地在多个编程计算机之间传递。自定义库和西门子标准库以图标的颜色区分,标准指令库是以蓝色文件夹形式表示,附加指令库和用户自定义指令库使用黄色的文件夹表示。

要使用西门子的标准指令库,必须先安装西门子的指令库软件包Instruction Library。安装了Instruction Library之后,只要安装的STEP7-Micro/WIN版本是最新的,就能获得相应版本的新指令库。安装Micro/WIN的升级包(Service Pack)也会更新指令库的版本。

(2)自定义指令库



上图中有子程序SBR1和SBR2,这两个子程序在项目中被多次调用,此时便可将这两个子程序做成指令库,之后使用时可直接调用而不需再做额外的编程。

首先在软件中右键点击函数库,点击创建库(Create Library);


点击以后可以在组件中选择程序块,选择My_SUB_b子程序为指令库的一个组件;



选择之后给指令库输入名称,选择保存路径并定义指令库的版本;



之后可以选择设置密码;



保存之后指令库创建成功,创建成功后右键点击函数库,选择/删除添加指令库,选择自己创建的指令库后点击添加(ADD)便可完成指令库的添加,同理点击删除(Remove)便可完成指令库删除操作。



(3)标准指令库

STEP7-Micro/WIN的标准指令库:

1) USS通信协议库:

可使CPU通信口Port0和Port1支持与Micro-Master3(MM3系列)和Micro-Master4(MM4系列,如MM420、MM430、MM440等)、SINAMICS G110系列的USS通信控制,通过一些预先编好的子程序和中断程序,以方便地控制变频器的运行和读写其参数。

2) Modbus RTU Slave(从站)通信协议库

可使CPU通信口Port0支持Modbus RTU从站通信功能。

3) Modbus RTU Master(主站)通信协议库

可使CPU通信口Port0和Port1支持Modbus RTU主站通信功能。

(4)附加指令库

附加指令库未随西门子指令库安装文件正式发布,这些指令库大多数来自西门子的内部的研发或技术支持工程师,用户可以根据自己的需要选用这些指令库,使用Micro/WIN的'添加指令库'功能把库文件添加到Micro/WIN中,以便编程中使用。

注意:这些指令库的作者和拥有者对于该软件的功能性和兼容性不负任何责任。使用该软件的风险完全由用户自行承担。由于它是免费的,所以不提供任何担保,错误纠正和热线支持,用户不必为此联系西门子技术支持和服务部门。

1) Clock_Integer指令库及其使用

使用S7-200的READ_RTC(读取实时时钟)和SET_RTC(设置实时时钟)指令时,读取和设置的数据格式都是BCD码的。如果觉得不便计算、处理,可使用Clock_Integer指令库。

Clock_Integer指令库用于将BCD码格式的S7-200日期、时间转换为十进制整数格式,以及将十进制整数格式的日期、时间值设定为S7-200时钟。



成功添加指令库后,用户可以在STEP7-Micro/WIN的指令树中找到'Clock_Integer(v1.0)',存储区的地址分配和标准读写实时时钟的指令是一样的。

2) EEPROM数据写入指令库

EEPROM数据写入指令库用于将连续V存储区中的数据(例如VB200至VB205)写入EEPROM,使其永久保持。

成功添加指令库后,用户可以在STEP7-Micro/WIN的指令树中找到“EEPROM(V1.0)”。




EEPROM数据写入指令库函数参数表



3) 模拟量比例换算库

模拟量比例换算库:使用一个0-20mA的模拟量信号输入,在S7-200CPU内部,0-20mA对应数值范围0-32000;对于4-20mA的信号,对应的内部数值为6400-32000。使用该库可以实现具体的物理量数值(如压力值、流量值)、或者对应物理量占量程的百分比数值与S7-200测量整数值转换。



上图分别为将测量整数值转化为实际工程量程序和将实际值装化为S7-200输出整数值程序。左图中,0sh、0sl分别表示工程量的上下限值,lsh、lsl分别表示S7-200测量值的上下限,通过在Input输入测量值,在Output得到转换后的物理量数值。右图中,lsh、lsl表示工程物理量百分比的上下限,0sh、0sl表示S7-200输出整数值的上下限,通过在Input输入工程物理量的百分比从而在Output得到转换后的测量整数值。另外,也可以通过Scale_R_to_R指令将百分比转换为工程物理量的实际值。

4) 反三角函数指令库



在STEP7-Micro/WIN软件的标准指令集中的浮点数运算指令中,已经提供了sin(正弦)、cos(余弦)、tan(正切)三个正三角函数。如果用户需要使用反三角函数运算,可以使用下列'Arcusfunctions指令库',指令库包含了ARCTAN(反切)、ARCCOS(反余弦)、ARCSIN(反正弦)三个运算指令。

反正弦的结果是以弧度为单位而不是以实际的度数为单位,所以转换之后需要进行处理,将弧度转换为度。

5) BCD转换指令库


STEP7-Micro/WIN中,可以使用I_BCD码和BCD_I(见Instruction->Convert)指令将16位整数(INTEGER)转换为BCD码或者相反(BCD->INT)。使用BCD指令库,可以将32位整数(DOUBLE INTEGER)转换为BCD码或者做相反转换(BCD->DOUBLE INTEGER)。

关注本公众号,可提高PLC技术,拓宽PLC知识。

    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多