河南西门子一级代理商
用菜单命令“文件"→“新建",“文件"→“打开"或“文件"→“导入",打开一个项目。用下面方法之一打开“程序编辑器"窗口,建立或修改程序:
²²单击浏览条中的“程序块"按钮,打开主程序(OB1)。可以单击子程序或中断程序标签,打开另一个POU。
²²指令树→程序块→双击主程序(OB1)图标、子程序图标或中断程序图标。
用下面方法之一可改变程序编辑器选项:
²²菜单命令“检视"→ LAD、FBD、STL,更改编辑器类型。
²²菜单命令“工具"→“选项"→“一般"标签,可更改编辑器(LAD、FBD或STL)和编程模式(SIMATIC或IEC 1131-3)。
²²菜单命令“工具"→“选项"→“程序编辑器"标签,设置编辑器选项。
²²使用选项快捷按钮→设置“程序编辑器"选项。
(6)局部变量表
程序中的每个POU都有自己的局部变量表,局部变量存储器(L)有64个字节。局部变量表用来定义局部变量,局部变量只在建立该局部变量的POU中才有效。在带参数的子程序调用中,参数的传递就是通过局部变量表传递的。
在用户窗口将水平分裂条下拉即可显示局部变量表,将水平分裂条拉至程序编辑器窗口的顶部,局部变量表不再显示,但仍旧存在。
下面是控制字节的说明:
Q0.0 Q0.1 控制字节说明
SM67.0 SM77.0 PTO/PWM更新周期值 0=不更新,1=更新周期值
SM67.1 SM77.1 PWM更新脉冲宽度值 0=不更新,1=脉冲宽度值
SM67.2 SM77.2 PTO更新脉冲数 0=不更新,1=更新脉冲数
SM67.3 SM77.3 PTO/PWM时间基准选择 0=1微秒值,1=1毫秒值
SM67.4 SM77.4 PWM更新方法 0=异步更新,1=同步更新
SM67.5 SM77.5 PTO操作 0=单段操作,1=多段操作
SM67.6 SM77.6 PTO/PWM模式选择 0=选择PTO,1=选择PWM
SM67.7 SM77.7 PTO/PWM允许 0=禁止PTO/PWM,1=允许
这样根据以上表格,我们得出Q0.0控制字:SMB67为:10000101
采用PTO输出,微妙级周期,发脉冲的周期(也就是频率)与脉冲个数都要重新输入。10000101转化为 16进制 为85,有了控制字以后,我们来写这一段程序:
根据上面这段程序,我们知道了控制字的使用,也知道步进电机的脉冲周期与冲个数的存放位置(对 Q0.0来说是SMW68与SMD72)。当然,VW100与VD102内的数据不同的话,步进电机的转速和转动圈数就不一样。
还有一点需要说明得是:M0.0导通---PLC捕捉到上升沿发动脉冲输出后,想停止的话,只须改变端口脉冲的 控制字,再启动PLS即可,程序如下:
2.高速计数功能。
西门子S7-200系列PLC具有高速计数的功能;举一例子来谈谈高速计数的用途,我们采用普通电机来带动丝杆转动,我们想控制转动距离,怎么来解决这个问题?那么我们可在电机另一头与一编码器联接,电机转一圈,编码器也随之转一圈,根据规格发出不同的脉冲数。当然,这些脉冲数的频率比较高,PLC不能用普通的上升沿计数来取得这些脉冲,只能通过高速计数功能了。
启动高速计数功能,也要具有控制字
HSCO HSC1 描述
SM37.0 SM47.0 复位有效电平控制位 0=高电平有效, 1=低电平有效
SM37.1 SM47.1 启动有效电平控制位于 0=高电平有效, 1=低电平有效
SM37.2 SM47.2 正交计数器速率选择 0=4X计数率, 1=1X计数率
SM37.3 SM47.3 计数方向控制位 0=减计数, 1=正计数
SM37.4 SM47.4 向HSC中写入计数方向 0=不更新, 1=更新计数方向
SM37.5 SM47.5 向HSC中写入预置值 0=不更新, 1=更新预置值
SM37.6 SM47.6 向HSC中写入当前值 0=不更新, 1=更新当前值
SM37.7 SM47.7 HSC允许 0=禁止HSC, 1=允许HSC
参照上面的表格,我们选择HSC1高速计数器,控制字为SMB47,现在我们启动高速计数器HSC1,选择为增计数,更新计数方向,重新设置值,更新当前值:这样的话,HSC1的启动控制高为:11111000转化为16进制为 F8,将启动计数器时当前值存放在SMD48中,将预存置放在SMD52中,具体的程序 如下:
同样的,如果计数器在工作状态下想停止计数器,也必须改变它的控制字后,启动HSC具体程序 如下:
西门子S7-200 plc的寄存器中地址越高,字节位越低。如在输入寄存器中IW0 的
由于接入12位输出的单圈型编码器,需屏蔽掉IW0字内的I1.4—I1.7,将需要的格雷码数据存入VW2中。如图2所示:
在实际应用中,为了计算编码器转过的角度或位置,需使用格雷码指令GRAY_BIN_W功能块将格雷码解码为字类型的标准二进制码,对应放到VW4中。如图3所示:
|
如果无法建立与plc的通讯连接, 请按以下步骤进行排查:
a)检查所用电缆 。
如果是和S7 -200/300/400 进行PPI/MPI/Profibus/通讯, 可使用MPI电缆(两端针脚对应为:3-3,4-4,5-5,8-8)或Profibus电缆(两端针脚对应为:3-3,8-8)。
推荐使用西门子紫色的Profibus电缆和Profibus总线连接器(或称DP接头)。
可以使用自制的屏蔽双绞电缆, 但应妥善处理屏蔽和接地问题。西门子不对自制电缆做任何形式的承诺和保证。
如果使用DP接头连接网络上的多个站时, 请务必注意DP接头终端电阻的状态::网络两端的接头为ON, 中间的为 OFF; 两端接头进线端接电缆。
b) 检查和确认PLC 通讯口的设置。
波特率是多少?
站地址是多少?
选择的是什么协议?
c) 在ProTool 和WinCC Flexible 中检查通讯设置。
通讯同级的地址要填PLC实际站地址一致。注意:如果是S7-300/400的话,需要设置槽号(槽号要Step7硬件组态中CPU的槽号一致)。
OP的地址必须是唯一的,不能和该网络中任何设备的地址重复。
波特率必须和PLC设置的一致。
配置文件Profile 要与网络使用的协议一致。注意:与S7-200通讯时, 面板可以有多种选择,而PLC是协议自适应的, 无须在MicroWin中设置, 只需在MicroWin的系统块中设置端口号和波特率即可。
选择“总线上的唯一主站”。
d) 检查是否正确使用面板背后的通讯端口。
与S7-200/300/400 进行PPI/MPI/Profibus 通讯时使用的是IF1B口, 面板背后的IF1B的拨段开关应保持出厂设置,都拨向OFF。
如果通过以上的排查和确认,还是无法解决,请记录下出问题时,面板上和计算机上所显示的错误信息或错误代码,以及所用电缆的型号或线序,拨打技术支持 寻求西门子技术支持工程师的帮助