现金回收西门子PLC收购西门子PLC上海陌然自动化科技有限公司为SIEMENS代理商,本着“以人为本 科技先导 顾客满意 改进”的工作方针,致力于工业自动化控制领域的产品、工程配套和集成、销售,拥有丰富的自动化产品的应用和实践以及雄厚的技术力量,尤其以 PLC复杂控制、传动技术应用、伺服控制、数控备品备件、人机界面及网络/应用为公司的技术特长,几年来,上海陌然公司在与德国 SIEMENS公司自动化与驱动部门的长期紧作中,建立了良好的相互协作关系,在可编程控制器、交直流传动装置方面的业务逐年成倍增长,为广大用户提供了SIEMENS的 技术及自动控制的决方案。现金回收西门子PLC收购西门子PLC
图3 创建length的结构变量的两个word成员
编写SFC51程序:
CALL "RDSYSST"
REQ :=TRUE
SZL_ID :=W#16#74 //读取全部指示灯状态
INDEX :=W#16#0
RET_VAL :=MW0
BUSY :=M2.0
SZL_HEADER:=#length
DR :=P#DB1.DBX0.0 BYTE 500 //结果输出到DB1数据块中
DB1存放的结果即为模块的指示灯状态,每个指示灯有4个字节的长度来描述。
前两个字节表示灯的类型(见表二),表示是SF灯还是BF灯等等。
第三个字节表示灯是亮还是灭,如果为1则灯亮,如果为0则灯的状态是灭。
第四个字节表示灯是否闪烁,0表示不闪,1表示正常闪烁(2hz),2,表示慢闪(0.5hz)
灯的类型列表如下(不同的CPU会有不同数目的指示灯):
表2 前两个字节的含义
16#1 | SF |
16#2 | INTF |
16#3 | EXTF |
16#4 | RUN |
16#5 | STOP |
16#6 | FORCE |
16#7 | CRST |
16#8 | BAF |
16#9 | USR |
16#A | USR1 |
16#B | BUS1F |
16#C | BUS2F |
16#D | REDF |
16#E | MSTR |
注意事项:
关于系统功能SFC51的更多详情请参阅STEP 7的在线帮助,或者通过Start > SIMATIC >DOCUMENTATION选择手册“System Software for S7-300/400 System andStandard Functions”
3 读取Profibus DP从站 状态
3.1 编程
需要创建一个数据块,用来存放读取出来的状态结果
图4 创建DB1,存放读取结果
打开OB1,在OB1的临时变量区创建一个变量length,类型设置为Struct(结构)