大家一起学西门子__例子解释一
yjjatss
yjjatss Lv.2
2005年09月02日 15:04:18
只看楼主

我刚学西门子PLC,以下是从网站上下载的西门子S7-200的示例程序,贴出来大家一起学习,共同进步。-------------------------------------------------------------------------------------ORGANIZATION_BLOCK MAIN:OB1TITLE= Tip021B// 题目:灯泡亮度控制// ***概述***

我刚学西门子PLC,以下是从网站上下载的西门子S7-200的示例程序,贴出来大家一起学习,共同进步。
-------------------------------------------------------------------------------------
ORGANIZATION_BLOCK MAIN:OB1
TITLE= Tip021B
// 题目:灯泡亮度控制
// ***概述***
// 这个示例解释了一个使用S7-200的集成高速脉冲输出指令来控制灯泡(24V/1W)
// 亮度的例子,模拟电位器0的设置值影响输出端Q0.0方波信号的脉冲宽度,也就
// 是灯泡的亮度。调整电位器时需要一把(2.5mm)螺丝刀。
// ***程序和注释***
// 在程序的每次扫描过程中,模拟电位器0的值,通过特殊存储字节SMB28被拷贝到内存
// 字MW0的低字节MB1。电位器的值除以8作为脉宽,脉宽和脉冲周期的比率大致决定了灯
// 泡的亮度(相对于最大亮度)。除以8会带来这样一个额外的好处,即丢弃了SMB28所存
// 值的3个最低有效位,从而使程序更稳定。如果电位器值变化了,那么将重新初始化
// 输出端Q0.0的脉宽调制,借此电位器的新值将被变换成脉宽的毫秒值。
// 例:SMB28=80 (电位器0的值)
// 80/8=10
// 10/25(=脉宽/周期)=40%(电压时间比)=40%最大亮度
// 标题:用电位器调灯泡亮度
//
BEGIN
Network 1 // ***主程序***
LD SM0.1 // 第一次扫描SM0.1=1
MOVW +0, MW0 // 标志字MW0清零

Network 2
LD SM0.0 //设置栈顶(SM0.0总是1)
MOVW MW0, MW2 // 保存电位器的旧值
MOVB SMB28, MB1 // 在MW0的低字节(MB1)保存模拟电位器新值
SRW MW0, 3 // 将电位器新值除8

Network 3
LDW= MW0, MW2 // 判电位器新值(MW0)是否等于旧值(MW2)
NOT // 若不等
MOVB 16#CB, SMB67 // 设置PMW的控制字节(激活PWM,时基1毫秒,
//可更新脉宽和周期)
MOVW +25, SMW68 //设置脉冲周期为25毫秒
MOVW MW0, SMW70 // 根据电位器值设置脉宽。
PLS 0 // 在输出端Q0.0输出脉宽

Network 4 // 主程序结束
// MEND
//
END_ORGANIZATION_BLOCK

1125644650912.jpg


1125644651004.jpg

klmy1974
2005年09月02日 19:53:48
2楼
我也是刚学西门子的S7-200的PLC的编程~``就是找不到好的师傅
回复
ihf
2005年09月03日 10:31:00
3楼
这个程序很好,每一步都有注释,对学习很有帮助。
再帮楼主增加一点说明:
PLC输出必须是晶体管输出,MB28---存储模拟电位器0的输入值。SRW---字右移位指令,比如:SRW MW0, 3 ---将字MW0向右移3位,也就是将MW0除以8。
回复
yjjatss
2005年09月03日 16:38:48
4楼
SRW MW0, 3 ---将字MW0向右移3位,也就是将MW0除以8。


SRW是字右移位指令,这我知道,但怎么是除以8呢?搞不太清楚,能说说吗?
回复
yjjatss
2005年09月04日 16:08:30
5楼
能请版主给说说吗?
回复
ihf
2005年09月04日 16:25:12
6楼
以这个例子来说,电位器的值等于1010000 向右移3位是不是等于1010 ? 可不就是除以8了吗?
回复
北大山人
2005年09月04日 22:19:22
7楼
请教:怎样将西门子的编程界面的程序象1楼那样考到文档里,谢了!
回复
ihf
2005年09月05日 09:38:31
8楼
文件里有个导出....(E)
回复
北大山人
2005年09月05日 18:18:12
9楼
我试了一下,导出的是STL语句表,不是梯形图。再次请教,谢谢。
回复
ihf
2005年09月06日 13:37:28
10楼
原来你说的是梯形图,我猜那个应该不是导出的,而是用抓图工具抓下来贴出来的.
回复
zlky2005
2005年09月07日 13:43:55
11楼
谢谢
回复

相关推荐

APP内打开