全国服务热线 15221406036

SIEMENS/西门子6ES7223-1PM22-0XA8

发布:2023-03-21 16:11,更新:2024-05-08 07:10

SIEMENS/西门子6ES7223-1PM22-0XA8

西门子PLC除基本逻辑运算指令、定时、计数等常用的开关量控制指令外,还包括大量的用于字节、字、双字逻辑处理,数学运算,程序控制,通信等指令。这些指令可以为用户的PLC功能开发、编程、使用提供方便,因此,习惯上将其称为功能指令。

    一个PLC可以使用的功能指令数量有所不同,从某种程度上说,功能指令反映了CPU功能的强弱。为了分别说明,本书对S7系列PLC的功能指令作了如下分类与定义:

    (1)字节、字、双字逻辑处理指令

    字节、字、双字逻辑处理指令是指以字节、字或双字的形式进行的逻辑运算与处理,包括字节、字或双字的“与”、“或”、“异或”、“取反”运算等。

    (2)比较指令

    比较指令是对两个存储器内容或数据的比较,通常以字节、字或双字的形式进行。比较方式可以是“大于”、“小于”、“等于”、“大于等于”、“小于等于”、“不等于”等,比较结果将以二进制位的形式输出。

    (3)装载、传送与移动指令

    装载、传送与移动指令用于存储器间的内容交换,通常以字节、字或双字的形式进行。在本书中,对装载、传送与移动的定义如下:

    装载:是指将存储器的内容或者特定的数据读入到累加器或地址寄存器中;

    传送:是指将累加器或地址寄存器的内容移动到的存储器中;

    移动:是指将某一存储器的内容或特定的数据移动到另一存储器中。

    (4)移位指令

    移位指令是对存储器本身内容所进行的调整,通常以字节、字或双字的形式进行。移位指令有左移、右移、循环移动等形式。

    (5)代码转换指令

    代码转换指令是指将一个存储器的存储内容以其他代码的形式存储到储器中的操作,通常以字节、字或双字的形式进行。常见的代码转换有二进制与BCD码间的转换、ASCII码与二进制数间的转换等。

    (6)数学运算指令

    代码转换指令是指将两个存储器间的内容进行四则运算、函数运算、增减“l”等处理后,移动到存储器中的操作,通常以字节、字或双字的形式进行。常见的代码转换有二进制与BCD码间的转换、ASCII码与二进制数间的转换等。

    (7)程序控制指令

    程序控制指令是指改变PLC内部指令的执行过程或PLC运行状态的操作。常见的有程序结束、程序跳转、程序中断、程序停止等。

    (8)通信指令

    程序控制指令是指用于控制PLC与外部设备间数据交换(通信)的指令。常见的有数据发送、数据接收等。

    以上指令在PLC中的具体数量、用法等可能有所区别,应注意实际使用的PLC型号。此外,对于具体某一型号的PLC,还可能有其他特殊的功能指令。你可以查看我们的其他文章或通过站内搜索得到

  • S7-200 SMART CPU之间的以太网通信

    S7-200 SMART CPU 固件版本 V2.0 及以上版本的 CPU 可实现CPU、编程设备和HMI(触摸屏)之间的多种通信:
    — CPU与编程设备之间的数据交换。
    — CPU与HMI之间的数据交换。
    — CPU与其他S7-200 SMART CPU之间的PUT/GET通信。

    S7-200 SMART CPU 以太网连接资源如下:
    — 1个连接用于与STEP7 Micro/Win SMART软件的通信。
    — 8个连接用于CPU与HMI之间的通信。
    — 8个连接用于CPU与其他S7-200 SMART CPU之间的PUT/GET主动连接
    — 8个连接用于CPU与其他S7-200 SMART CPU之间的PUT/GET被动连接

    PUT/GET 指令格式

    S7-200 SMART CPU提供了PUT/GET 指令,用于S7-200 SMART CPU之间的以太网通信(PUT/GET 指令格式见 表 1)。PUT/GET 指令只需要在主动建立连接的 CPU 中调用执行,被动建立连接的 CPU不需要进行通信编程。PUT/GET 指令中TABLE 参数用于定义远程CPU的 IP地址、本地CPU和远程 CPU的数据区域以及通信长度(TABLE 参数定义见 表 2)。

    表 1 PUT和GET 指令:

    LAD/FBD

    STL

    描述

    PUT TABLE

    PUT 指令启动以太网端口上的通信操作,将数据写入远程设备。PUT 指令可向远程设备写入zui多 212 个字节的数据。

    GET TABLE

    GET 指令启动以太网端口上的通信操作,从远程设备获取数据。GET 指令可从远程设备读取zui多 222 个字节的数据。

    表 2 PUT和GET 指令的TABLE参数定义:

    字节偏移量

    Bit 7

    Bit 6

    Bit 5

    Bit 4

    Bit 3

    Bit 2

    Bit 1

    Bit 0

    0

    D1

    A2

    E3

    0

    错误代码4

    1

     

    远程 CPU的 IP地址

    2

    3

    4

    5

    预留(必须设置为0)

    6

    预留(必须设置为0)

    7

     

    指向远程 CPU 通信数据区域的地址指针
    (允许数据区域包括:I、Q、M、V)

    8

    9

    10

    11

    通信数据长度5

    12

     

    指向本地 CPU 通信数据区域的地址指针
    (允许数据区域包括:I、Q、M、V)

    13

    14

    15

    1 D :通信完成标志位,通信已经成功完成或者通信发生错误。
    2 A :通信已经激活标志位。
    3 E :通信发生错误,错误原因需要查询 错误代码4。
    4 错误代码 :见表 3 PUT 和 GET 指令TABLE 参数的错误代码。
    5 通信数据长度 :需要访问远程 CPU通信数据的字节个数,PUT 指令可向远程设备写入zui多 212 个字节的数据,GET 指令可从远程设备读取zui多 222 个字节的数据。

    表 3 PUT 和 GET 指令TABLE 参数的错误代码:

    错误代码

    描述

    0

    通信无错误

    1

    PUT/GET TABLE参数表中存在非法参数:

    2

    同一时刻处于激活状态的 PUT/GET 指令过多(仅允许 16 个)

    3

    无可以连接资源,当前所有的连接都在处理未完成的数据请求(S7-200 SAMRT CPU主动连接资源数为 8 个)。

    4

    从远程 CPU 返回的错误:

    5

    与远程 CPU 之间无可用连接:

    6-9

    预留

    通信资源数量

    S7-200 SMART CPU 以太网端口含有 8 个PUT/GET 主动连接资源和 8 个PUT/GET 被动连接资源。例如:CPU1 调用 PUT/GET 指令与 CPU2 ~ CPU9 建立8主动连接的同时,可以与 CPU10 ~ CPU17 建立8被动连接(CPU10 ~ CPU17 调用 PUT/GET 指令),这样的话 CPU1 可以同时与16台 CPU(CPU2 ~ CPU17)建立连接。关于主动连接资源和被动连接资源的详细解释如下:

    1、主动连接资源和被动连接资源

    • 远程 CPU 无可用的被动连接资源(S7-200 SMART CPU被动连接资源数为 8 个)。

    • 与远程 CPU 之间的连接丢失(远程 CPU 断电或者物理断开)。

    • 请求或发送的数据过多。

    • STOP 模式下不允许对 Q 存储器执行写入操作。

    • 存储区处于写保护状态

    • 本地CPU通信区域不包括 I、Q、M 或 V。

    • 本地CPU不足以提供请求的数据长度。

    • 对于 GET指令数据长度为零或大于 222 字节;对于 PUT指令数据长度大于 212 字节。

    • 远程CPU通信区域不包括 I、Q、M 或 V。

    • 远程CPU 的IP 地址是非法的 (0.0.0.0)。

    • 远程CPU 的IP 地址为广播地址或组播地址。

    • 远程CPU 的IP 地址与本地 CPU的IP 地址相同

    • 远程CPU 的IP 地址位于不同的子网。

    • 调用 PUT/GET 指令的CPU 占用主动连接资源数;相应的远程 CPU 占用被动连接资源。

     

    CPU2 的主程序只需包含一条语句用于读取 CPU2 的实时时钟,并存储到 VB100 ~ VB107,如图 6 所示。

    图 6 读取 CPU2 实时时钟

    PUT/GET例程

    为了更好地理解 PUT/GET指令的编程,可参考下面的例程。

    PUT_GET_CPU1.smart

    PUT_GET_CPU2.smart

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

     

     

     

    网络4:调用 PUT 指令和 GET 指令。

    图 5 调用 PUT 指令和 GET 指令

    2、CPU2 被动端编程

    网络3:定义 GET 指令 TABLE 参数表,用于将远程 CPU2 的VB100 ~ VB107 读取到 CPU1 的 VB0 ~ VB7。

    图 4 定义 GET 指令 TABLE 参数表


    联系方式

    • 地址:上海松江 上海市松江区石湖荡镇塔汇路755弄29号1幢一层A区213室
    • 邮编:201600
    • 联系电话:未提供
    • 经理:聂航
    • 手机:15221406036
    • 微信:15221406036
    • QQ:3064686604
    • Email:3064686604@qq.com