您的位置:控制工程论坛网论坛 » PLC与PAC » 西门子 SIMATIC S7-300/400问答集锦(一)

常青树

常青树   |   当前状态:在线

总积分:1421  2025年可用积分:0

注册时间: 2008-09-28

最后登录时间: 2012-05-30

空间 发短消息加为好友

西门子 SIMATIC S7-300/400问答集锦(一)

常青树  发表于 2008/11/16 21:50:08      1996 查看 1 回复  [上一主题]  [下一主题]

手机阅读

1.  怎么使用 MPI/DP-RS232 
问: 我要将 CPU314 与电脑连接通信应该怎么办?是否用 MPI/DP-RS232 连接器,要怎么用啊? 

答:第一步,将适配器(PC Adapter)与 RS232 电缆相连。适配器的 MPI/DP口插入CPU的编程口,RS232 电缆与 PC的串口连。 
第二步,进入"开始"->"设置"->"控制面板"->"SET PG/PC Interface"。点选“Access Point of the Application”=S7ONLINE(STEP7),“Interface Parameter Assignment”=PC Adapter (MPI)。 
第三步,点“Properties”进入属性设置,MPI设置内容:选中“PG/PC is the only master on the bus”,其余内容沿用默认值,或根据 CPU的状态变更。  Local Connection 设置:COM Port=硬件连接的串口,Transmission Rate=PC Adapter 的拨码位置。 确认后退出设置,如果上下位机参数一致的话,此时连机就会成功。

2. IW和 PIW 有什么区别
问:STEP7 在实际应用中 IW 和 PIW 有什么区别?

答:我个人理解:对于没有相应的映像缓冲区的输入地址,一定采用 PIW 指令,而一般外设输入地址,都是没有映像缓冲区的。对于有映像缓冲区的输入地址,一般使用 IW,表示取映像缓冲区内数据,但也可用 PIW,表示直接取地址内的数据而非映像缓冲区的数据,相当于立即读取。对于输出亦是如此。

3. 模拟信号接地问题
问:我用的 SM331 8*12bit 模块信号有时正常有时不正常,后来我把 COMP-跟信号的M-接起来就好了,但我同时发现他们之间接电容也可以,是怎么回事??模块的 COMP-端、各信号的 M-端和模块 24伏供电的 M 端之间电气上有什么关系?? 

答:对隔离输入模板,.摸板参考地 Mana 与 CPU的电源地 M 没有电连接。因此 Mana 与M 有电位差时,必须采用隔离输入模板。但是,如果电位差超过 Eiso,则必须建立 Mana与 M 之间的连接。对 SIEMENS 的模板,Eiso=75VDC 或 60VAC。 
对非隔离输入模板,则必须建立 Mana 与 M 之间的连接。 为抑止信号地 M-与 Mana 之间的共模干扰,不同传感器的接地方式不同,限于篇幅以及图解困难,难以细说。一般原则是,建立信号地与模板的地、模板地与(CPU)系统地的连接。如果有干扰环流,则将取消模板地与系统地的连接,让模拟地悬浮。另外,屏蔽推荐双端接地,如果有干扰环流,则改为单端。

4. cp342-5的放置位置有要求吗?放在轨道的什么地方最合适

答:CP342-5工作原理是, 首先通过硬件配置将各 DP 子站的分布 I/O 映射到 CP342-5 的内存,然后再通过 FC1(DP_SEND)、FC2(DP_RECV)实现 CPU 与 CP342-5 的数据交换。数据传递的过程如下: 
FC1 
CPU内存----->CP342-5 ------->DP 子站的输出 
FC2 
CPU内存<-----CP342-5 <-------DP 子站的输入 
程序中我们控制的只是 CPU 与 CP342-5 之间的通讯,而子站与 CP342-5 的数据交换是由CP342-5 根据硬件配置自动完成的。

关于 cp341 与 MM440 通讯 
问:我用 s7-300(cp341)与 MM440 的 com口(29 30)通讯控制变频器 2个 PZD,4个 PKW 具体参数设置如下: 
P003=3;P700=5;P1000=5;P2011=1;P2012=2;P2013=4;其他参数采用工厂设置。 
仿照 USS-S7中的例程进行编程;但是只能向变频器发送 PZD参数(控制字 1和主设定值),
但不能返回任何参数。CP341 的指示灯只显示不断发送,接受灯不亮。 
在数据块 dbnd(DB100)中的 DBW6(通讯状态字)的值为 0200;DBW8(通讯故障字)的值为 0080;不知是什么意思? 

答:CP341(RS422/485)采用(RS485)ASCII 码协议。CP341 如果采用手册中的接线方式(11+,4-)则 cp341 的接收发送灯同时亮,但是不能进行数据传输;如果接线为(9+,2-)则出现前述情况,即只能向变频器发送 PZD 参数(控制字 1 和主设定值),但不能返回任何参数。 
如果你只接了 9、2的话,现象则说明你的参数设置没有问题。在 4线方式下,9、2是发送端。11、4 是接受端,没有接线自然没有数据返回。 
对 MM440 应该用 2线方式,接线是 
11(CP341)-----29(mm440) 
4(CP341)-----30(mm440) 
且 2与 4、9与 11要短接,你接了吗? 此外,在 PKW 中你的任务识别标记 ID和参数号填对了吗?

5. 315-2DP 与 ET200M

问:通过 DP 相连,CPU 地址为 2,ET200M 地址为 5,硬件上地址设置正确。 在项目管理器里把软硬件组态好了以后,把 SIMATIC300 STATION 传给PLC,显示 SF 错误,ONLINE 情况下,OB1 不运行。 

CYCLE :采样周期。根据物理量变化快慢定,一般要求与 FB41 执行的周期一致。
如果把HARDWARE再传一遍,则SF错误无, OB1可运行,现在再把SIMATIC300 STATION传给 PLC,则重新有 SF 错误。 
我原来以后,把 SIMATIC300 STATION 传给 PLC 一次,相当于软硬件组态都传一次,请问各位高手,这样正常吗? 

答:我想楼上的各位可能没有看清楚 royal 的问题:他通过 HARDWARE 下载+OB 下载,没有问题,这样可以排除是组态和程序的问题。他只有在用 STATION下载时才出现故障,SF 灯亮。所以原因不是很明确。 
我个人认为是不是 royal 并没有将 HARDWARE 进行“编译保存”,因此他的程序块内没有“SYSTEM BLOCKS”,所以才出现他所说的现象。请 royal 在试一试!

6. S7-300PID的 FB41CONT_C功能及参数设定 

问:请教各位高手,本人现用到西门子 S7-300(CPU315)做整流系统的 PID控制,具体是由 AI 模块输入 4-20MA 信号(既 A 柜/B 柜饱和电抗器控制电流信号反馈和机组 A 柜/B柜直流电流信号反馈),通过 CPU调用 PID功能块,实现自动闭环控制,最后由AO 模块输出一个 4-20MA 的信号给稳流系统(既 A 柜/B 柜电流给定反馈)。 
现请教:
1、具体应调用 S7的 PID中的哪些功能块。我是直接在 OB1里边调用 FB41,不知可否。 
2、PID标准块 FB41 的输入输出参数如何整定,PV_PER、SP_INT、PV_IN有何区别。 
3、GAIN、TI、TD如何整定。 
4、MAN_ON、PVPER_ON怎么用,是直接在 FB41 的输入端写吗?

答:原理上,PID的调节节奏应该与其采样周期一致,这是数学模型应与物理过程一致的要求。这也就是FB41要在OB35中周期调用且OB35的周期要与FB41采样周期一致的原因。 
当然,在 OB1或其他 FC、FB 中调用FB41 也是可以的,此时最好将 OB1参数区中扫描周期作为 FB41 的采样周期。 
本人在管道恒流恒压的 PID过程控制中,也曾在 FC中无条件连续调用 FB41,PID效果也还令人满意。我个人认为,精度要求不高的应用中,简单调用也是可以的。  FB41 参数的设置很灵活,可根据自己的习惯或应用的方便选择。下面是一种方式。 
MAN_ON :激活 PID手动调节给定值 MAN的使能位,可用 PID手自动转换位来触发。 
PVPER_ON :是 PID输入输出参数“PERIPHERAL化”的使能位,即将参数看成 0~27648之间的整数。换个说法,就是 PID的反馈值直接取自相应 AIW 通道,而 PID输出则直接给出到 AQW 通道。参数整定由 FB41 完成。可用调节装置的启动标志来触发本位。 
MAN :PID手动调节给定值,当“MAN_ON=1”时有效。 
SP_INT:PID的设定值。注意设定值与反馈值的单位一致。为了避免错误,建议将 SP_INT转换为-100.0~100.0%之间无量纲的百分数,输入到 FB41 时,注意只取百分号之前的数即可。 
PV_PER:PID过程的反馈值,直接取自反馈量的 AIW 通道的 A/D码。仅在“PVPER_ON=1”时有效。 
GAIN:比例系数。 
TI:积分时间。 
TD:微分时间。 
LMN_PER:PID的调节输出,直接对应调节输出 AQW 通道。 
设置了上述参数,基本的 PID 调节就可以实现了。根据需要再完善其他参数的设置,比如死区的设定等。 
利用STEP7中的PID赋值工具可形象快捷地完成参数设置,结果直接存入相应背景数据块,FB41 调用时无须再赋值。

7. 除 300 中的密码
问:我在使用 CPU313C-2PTP 时,往 PLC 里下了一个程序,开始还好使,可下载了几次之后,竟然要求密码!本人申明,程序没加密,而且本人还不知如何加密!请问大虾, 如何清空PLC 的程序而不需要密码?

答:你需要对 MMC卡进行格式化操作。格式化过程如下: 
1. 将开关置为“MRES ”位置,并保持,直至 LED 停止闪亮(即直至大约 9 秒钟后永亮着)。 
2. 在随后的3 秒内,释放开关,并再次切换为“MRES ”位置。STOP LED 现在闪亮,指示正在进行格式化。 
一定要使用规定的操作顺序。否则,MMC 就不能进行格式化,而是返回存储器复位状态。 
我建议你在http://www.ad.siemens.com.cn/download/manual/as.asp上下载S7-300C的所有资料仔细读一读才进行以上操作,在《S7-300  可编程控制器 CPU 312C  至
314C-2DP/PtP CPU 技术参数》一书上有此操作的详细说明,并有注意事项!请注意。 

8. 00的 L 指令 
问:L 指令装一个立即数(常数)到 ACCU1L 1 如何表达我这个装入的数是 Byte? Word? DWord?  S7300 还未入门,请高手指教!

答:在装入的时候,如果被装入的数太短,达不到 4BYTE(大多情况这样),则在装入的时候,会自动填 0  而在取出的时候,如果目标是 4BYTE,则全盘复制,如果短了,就只复制需要的长度,另外的就被抛弃了,其实被抛弃的部分一般是 0的,编程时候需要知道的。 
比如 L L#16#01020304,这是一个 32位的 DWORD  然后 T MW0,  长出的部分被丢掉,最终 MW0的内容为 16#0304  除非有意这样做,否则做之前是要保证数据没有溢出的。否则计算就乱套了。 
反过来,L 16#FFFE (INT -2)  T MD0  则 MD0 的值为  L#16#0000FFFE (DINT 65534)  数据虽然没有溢出,但数据格式不能继承了。  这种时候,分别需要 DTI 和 ITD命令进行转换。 
至于 200 里面的 MOVB,MOVW,MOVD 等的命令,我想,在 300 里面它是自动的,根据目标数的尺寸,自动实现不同的 MOVE 功能,与 200 对应。

9. SB接口和 S7-200 及 S7-300 连接的体会

我最近换了一个新笔记本,没有串口,最后发现它不能和 S7-200 及 S7-300 连接,急得我只冒汗(差一点儿吐血了),不过最终都搞好了,现把我的体会说一下,以供大家参考。 
S7-200 连接过程: 
1:安装 200 软件,连接,不行。 
2:在本网站上下载延时补丁程序,安装后连接,不行。 
3:http://www4.ad.siemens.de/WW/llisapi.dll?func=ll&objAction=csView&lang=en&objId=7843251 下载了一个延时程序,安装,行! 
S7-300 连接过程(版本为 step7-5.2): 
1:安装 300 软件,连接,不行。 
2:查看各种资料、检查各种设置、咨询各种人员、连接,不行。 
3:最后安装 windows2000 的补丁程序(SP2),连接,行(好高兴啊!) 
综上所述: 
1:先要保证你的 USB 口转串口在硬件上和软件上(就是驱动)没有问题。 
2:200 要下载能解决问题的延时补丁程序。 
3;300 要下载合适的电脑操作系统的补丁程序。 

10. lc程序的下载问题 
问:在一个网络中(比如 profibus),有多个 plc,在 step7 中硬件组态中也有多个 plc,所编程序是整个网络系统的程序,那么程序下载的时候,如何确定哪
些程序被下载到哪一个 plc 中? 
答:MPI 网络中多个 CPU(S7-300/400)及 HMI PANEL(WINCE BASED)的程序下载 
1. 按照你所需要的网络,完成硬件安装及通讯线的连接. 
2. 对所有的 CPU,默认地址都是 2,所以可以分别上电,下载硬件配置与程序. 
3.  对于 PANEL 可以通过其控制面板的 S7-TRANSFER 设置网络地址,然后通过 MPI 网络直接下载 PANEL的组态程序.注意,此时 S7-TRANSFER 中的'ONLY MASTER ON THE BUS'不能被选中. 
4. 当使用 CP5511/5611 以点对点的方式对 PANEL 下载程序时,S7-TRANSFER 中的'ONLY MASTER ON THE BUS'必须被选中.

11. 300 中,如何实现 S7-200 中 SM0.3的功能

问:在 S7-300 中,如何实现 S7-200 中 SM0.3 的功能?:即开机后进入 RUN 状态,ON 一个扫描周期,请各位赐教.

答:你必须在 OB100 中调用 SFB21 “RESUME”,原理及注意事项如下。 
If there is a rising edge at control input REQ, SFB 21 "RESUME" activates a hot restart on the remote device selected with the ID. 
The following conditions must be met if the remote device is a CPU: 
1、The CPU must be in the STOP mode. 
2、The key switch of the CPU must be set to "RUN" or "RUN-P." 
3、When you created the configuration with STEP 7, you allowed for a manual hot restart. 
4、There must be no condition preventing a hot restart. 

Once the hot restart has been completed, the device changes to the RUN mode and sends a positive execution acknowledgement. When the  positive acknowledgement is evaluated, the status parameter DONE is set to 1. Any errors that occurred are indicated in the status parameters ERROR and STATUS. 
A restart can only be activated again in the same remote device after the previous hot restart has been completed.

12. 关于 IM153-2配置 

问:我的 S7-400H 系统中 IM153-2 的定货型号是 6ES7153-2AR00-0XA0,但是在S7V52 中HW CONFIG 里无法找到此型号的模块,请问是不是最新产品 在如何硬件配置里如何处理?

答:由于是冗余配置,6ES7153-2AR00-0XA0是由两块 6ES7153-2AA02-0XB0组成。硬件配置时插入 6ES7153-2AA02-0XB0。

13. 一些奇怪的问题 

问:1、能不能用 WINCC 直接控制 ET200S?不用任何 PLC,系统的功能很简单,算法在WINCC 中实现。现在的问题是 WINCC 能直接控制 ET200S 吗?(我在一个系统看到这样的结构,不知道能不能实现) 
2、SFC15,SFC16 在读写智能从站时用,超过4个 BYTE的话就需要 SFC15,SFC16?如果我一个一个字节读的话(读很多个)是不是就没有这个限制了。

答:请注意:S7-200 与 ET200S 是两个不同的东东。 
ET-200S 与 WINCC 连,方法: 
1、带 CPU的 IM151+CP5611,原理过程与 S7-300 类似; 
2、如 SHINE 所说,cp5611/5613+SIMATIC NET,原理过程与连 EM277 类似。通过COM_PROFIBUS 将 CP5611/5613 定义成一类主站,并组态相应从站,从而实现对从站数
据的读写。如果有逻辑的话,需借助脚本语言。

14. TP270支持哪几种印表机

问:TP270 支持哪几种印表机?你有具体的型号吗,另外在那能下载 OP270,TP270的手册。

答:MP270,TP270,OP270 功能相近,资源配置略有差别。根据所配硬件,与打印机的连接有三种方式:RS232、以太网、USB。其操作系统都是 WINDOWS CE,因此所支持
的打印机与普通 PC一样。如果通过以太网连打印机,则注意所买打印机必须支持网络打印。 
下列标准是支持的串行打印机: • 与 ESC/P、9 针 ESC/P 或 ESC/P2(EPSON)兼容

例如 EPSON FX850  与 PCL3 (Hewlett Packard)兼容  HP LaserJet 5M  USB 打印机仍可用于 PCL 和 Epson9 模式

15. 两个 315-2DP 通过两个 CP343-1 通讯,如何设置成主站和从站?

问:请问两个 315-2DP 通过两个 CP343-1 通讯,如何设置成主站和从站?
答:CP343-1 是以太网卡,卡本身无所谓主从,因为以太网不是主从通讯机制。只有主从机制的网络如 RS485 网,典型的有 PROFIBUS-DP,MPI,MODIBUS 等才分主从站。  两 CP343-1 通讯,用 FC5(AG_SEND),FC6(AG_RESV)即可。具体某站用哪个函数,
就看它是读数据还是写数据。对 CP443-1 而言,则用 FC50(AG_LSEND),FC60(AG_LRESV)。

16. 300PLC中处于 STOP 状态应当执行什么 OB
问:300PLC 中处于 STOP 状态应当执行什么 OB?

答:300PLC 中采用事件触发 OB 来执行一些事件,比如通讯错误会使 PLC处于 STOP 状态而执行 OB87。如果程序正常,我手动使它处于 STOP 状态,PLC会执行啥 OB?
stop 状态只有系统软件在运行,你所编的 step7 程序不会运行的

17. 内部 DB位的问题

问:在制作警报时,我使用了 DB14,按位进行检查,每一个是单独的置位,然后对整个双字进行相关警报信息换算, 现在在 DB14.DBX2.7,DB14.DBX10.7,这两个位出现了异常,在 LAD 中被作为线圈输出,当被置位时,他俩为 0,在非置位是却是为 1.和应该出现的位的现象相反,但其他位都正常,后来只有换掉这两个位,以前用 DB1 也有出现这个情况 DB1.DBX2.7, 后来也是换掉的! 请各位指点。

答:这段程序是实现集中报警很好的办法。
有新报警,则报警。但如有旧报警消失,则不反应。 不要使用双整数进行比较,而要使用word,但运算符号为双字的 
l mw2 
l mw2_sav 
>DI 
=ERROR

18. S7-300 中的 FC105 模块中的 27648 是如何得来的? 
问:S7-300 中的 FC105 模块中的 27648 是如何得来的?

答:27648=16#6C00  SIEMENS 自己定义的,在其之上到 65535(7ffff),是非线性段,可以使用,但精度差点。

19. 关于 GD通信问题!
问: 我想用MPI连接两个CPU315和CPU313,采用GD通信方式。书上说, step7里的option项下的 define Global data 是灰的,不能用。请问谁知道是怎么回事?我用的 step7 版本是5.1。是不是缺补丁?还是我用的不对?盼回音!

答:CPU的 MPI 必须为“YES”,再组态 MPI 总线即可。

20. 此站可以用彼站的数据进行程序处理吗?即如何读写远程 CPU? 
问:我的意思是许多车间挂在一个 PROFIBUS-DP 总线上,现在一个车间 A 与另一个车间B很远,车间A的STEP7程序想调用车间B的数据块比如DB1.DBD0和I1.2,怎么调用? 我听说可以用SFB14,SFB15读写远程CPU,是怎么读写的??希望哪位大侠帮助指导一下.谢谢了。

答:你所想的其实就是通讯。主从形式的通讯。 其实并不好。除了上位机和编程器之外,这样用到的很少。 因为对于处于从属位置的 plc,控制显得乱,程序读起来有些无所适从。 

21. 关于 H系统和 315 相连 
问:诸位大侠,如果我想将 cpu315 连上 H系统的网络,通过以太网可以吗?即直接在 315上面加一个 343-1 接到交换机,能实现与 H的 CPU通讯和切换吗?因为不是太清楚,特请教。

答:有两种方法:1.在 DP 上用 Y—LINK 将 CPU315 挂在上面,2。用以太网与 H 系统相联,切换需编程。
1楼 0 0 回复
  • xxkjfw

    xxkjfw   |   当前状态:在线

    总积分:6843  2025年可用积分:0

    注册时间: 2005-04-18

    最后登录时间: 2019-09-14

    空间 发短消息加为好友

    xxkjfw   发表于 2008/11/16 21:50:08

    西门子的PLC应用还是很广泛的,但提高应用水平,除厂商的培训指导外,靠的就是用户之间的应用经验交流及介绍了。
    2楼 回复本楼

    引用 xxkjfw 2008/11/16 21:50:08 发表于2楼的内容

总共 , 当前 /