湖南西控自动化设备有限公司
主营产品: 工程型传动 通用变频器与通用伺服 数控系统 伺服电机 FA工厂自动化 PA过程自动化 Simoreg DC Master、Sinamics DC Master、Sinamics G130/G150、S120 装机装柜型/柜机、S150柜机等系列产品 保外的现场服务和室内维修,不包含水冷装置 Sinamics V20、部分G120C 和G120、G120X、G120XA,V90和配套的1FL6电机等系列产品保内及保外的 室内维修、现场服务,以及保内更换服务。保内标准服务类型由翩唉啊搏碍臂哎阿哎唉熬癌 唉啊哀挨安挨艾挨包爸焙 蚌安岔挨哀靶柏材挨宾哀挨捌安熬袄唉 伴义 828D数控系统保内和保外的现场服务 进口1FK2、1FK7、1FT2、1FT7、1PH81、1PH82等系列产品的保内及保外的室内维修、现场服务,以及保内更换服务 西门子 PLC 、HMI、SCADA 、 IPC、SIMOTION 等产品及网络相关产品的保外现场服务(具体服务产品、类型,以西门子派遣为准)。PLC : S7-200、S7-200 Smart、S7-300、S7-400、S7-1200和S7-1500等系列HMI : TP系列、OP系列、MP系列,精简面板、精智面板和移动面板;SCADA : SIMATIC WinCC及其选件,Portal WinCC Advanced / Professional及其选件;IPC: SIMATIC Flat Panel 系列、SIMATIC Panel PC 系列、SIMATIC BOX PC系列利I SIMATIC Rack PC 系列;SIMOTION: SIMOTION 系列相关产品 西门子过程自动化产品的保外现场服务具体服务产品、类型,以西门子派遣为准)。包括: S7-400,S7-400H,S7-410,故障安全型产品,ET200PA,ET 200SP,ET200ISP,SITOP电源产品,Scalance交换机,PCS 7软件
山东省滨州市西门子中国总代理-西门子选型-西门子技术支持-西门子维修服务

可以在基本指令目录下的移位和循环移位子文件夹中调用以下指令:

- SHR(逻辑右移指令)
- SHL(逻辑左移指令)
- ROR(循环右移指令)
- ROL(循环左移指令)

这些指令用于执行位移操作,并在PLC编程中具有重要作用。您可以根据需要在程序中调用这些指令来实现位移操作。

图片

 


SHR指令


可以使用“右移”指令将输入IN中的数值按照位数向右移动,并在输出OUT中得到结果。参数N用于指定要移动的位数。当N为0时,输入IN的值会直接复制到输出中。如果N的值超过了可用位数,输入IN的值会向右移动直到可用位数。

对于无符号数据类型(如UInt,Word),移动时会在左侧空出的位用0填充;而对于有符号数据类型(如Int),则会用符号位的状态来填充空出的位。可以在指令框的数据类型下拉菜单中选择合适的数据类型。下面图示展示了如何将整数类型的操作数内容向右移动4位。

图片

示例

以下示例说明了该指令的工作原理:

图片

如果操作数“TagIn”的信号状态为“1”,则执行右移指令。操作数“TagIn_Value”的内容将向右移动3位,结果发送到输出“TagOut_Value”中。如果指令执行成功,将使能输出ENO的信号状态为“1”,同时将输出“TagOut”置位。


SHL指令


可以利用“左移”指令对输入操作数IN的数值进行左移操作,并通过输出OUT查看结果。参数N用于指定要左移的位数。当N为0时,将直接将输入操作数IN的值复制到输出OUT的操作数中。

若N的值超过可用的位数,则操作数IN的值将向左移动直到可用的位数。在移位时,会用0填充操作数右侧空出的位。您可以在指令框下拉列表中选择适当的数据类型。下图描述了如何将WORD数据类型的操作数内容向左移动6位。

图片

图片

图片

如果“TagIn”信号状态为“1”,则执行左移指令,将“TagIn_Value”的内容向左移动4位,并将结果发送到“TagOut_Value”。成功执行后,将使“ENO”的信号状态为“1”,并触发输出“TagOut”置位。

ROR指令


能够利用“循环右移”指令对输入IN的操作数内容进行按位循环右移,并且结果存储在输出OUT中。该指令需要一个参数N,用于确定要循环移位的位数。

如果N为0,输入IN的值会直接复制到输出OUT。如果N的值超出操作数的位数,则操作数IN的值依然会按照可用位数进行循环移位。在移位过程中,移出的位会用来填充循环移位而产生的空位。

您可以在指令框的数据类型下拉菜单中选择合适的数据类型。图示说明了如何将DWORD数据类型的操作数内容向右循环移动3位:

图片

图片

图片

如果“TagIn”信号状态为“1”,则执行循环右移指令,将“TagIn_Value”的内容向右循环移动5位,并将结果发送到“TagOut_Value”。如果指令执行成功,将使“ENO”的信号状态为“1”,并触发输出“TagOut”置位。

ROL指令


可以使用“循环左移”指令对输入IN的操作数内容进行按位循环左移,结果存储在输出OUT中。该指令需要一个参数N,用于确定要循环移位的位数。如果N为0,输入IN的值会直接复制到输出OUT。

如果N的值超出操作数的位数,则操作数IN的值依然会按照可用位数进行循环移位。在移位过程中,移出的位会用来填充循环移位而产生的空位。

您可以在指令框的数据类型下拉菜单中选择合适的数据类型。图示说明了如何将DWORD数据类型的操作数内容向左循环移动3位:

图片


图片

图片

如果“TagIn”信号状态为“1”,则执行循环左移指令,将“TagIn_Value”的内容向左循环移动5位,并将结果发送到“TagOut_Value”。如果指令执行成功,将使“ENO”的状态为“1”,并触发输出“TagOut”置位。



展开全文
相关产品
拨打电话 微信咨询 发送询价