全国服务热线 15821971992

西门子代理|一级代理|低压代理商

更新时间:2023-10-26 04:00:00
价格:请来电询价
品牌:西门子
型号:模块
产地:德国
联系电话:15821971992
联系手机: 15821971992
联系人:聂聪
让卖家联系我
详细介绍

西门子S7-200PLC的功能指令


程序结构的组织事实上是确定所编入的子程序、中断程序的调用次序。在完成全部子程序、中断程序的输入与编辑后,可以在主程序中进行。
在主程序中,可以首先编辑子程序、中断程序的调用条件(触点的逻辑条件),并通过打开指令树中的指令文件夹(Instructions)打开指令分类文件夹Call Subroutines,再双击相应的子程序号,即可输入子程序、中断程序的调用功能框,以完成程序的组织过程(见图12-2.6)。

西门子S7-200的自由口通信需要通过编程设置串口的工作模式,安排发送和接受指令的触发顺序,还要设定接收的起始和结束条件。对于刚刚开始使用s7-200的电气工程师来说,的确有很多细微处易犯错误。一般碰到客户抱怨通信不上的问题,就要逐一帮客户确认编程配置是否正确。虽然麻烦,不过逐条查下去,总能查到错误所在并解决问题。但是有一次客户遇到的问题颇出人意料,还真耗费了一些时间。

  客户反应在编写了自由口通信程序之后,plc可以发送数据给通信伙伴,但是却收不到任何伙伴方发出的数据。能发送数据给对方,说明通信端口设置没有问题。极有可能是端口被其他通信指令占用导致无法进入接收状态。比如说用常开点调用XMT,或者没有对接收的故障状态进行判断并终止接收,从而导致后续的XMT和RCV都无法被正确执行。客户表示他的程序并不存在这种情况。但是为了测试问题所在,客户下载了一个仅包含条件触发RCV的程序下去,还是接收不到数据。监控程序RCV指令已被正常执行。

  那么是不是接收的起始条件设置不当?客户使用的是起始字符,这并无不妥。并且改成空闲线检测之后,问题依然存在。难道是对方发送的信号有问题?用串口调试软件来测试,是可以接收到的。眼见这几个常见错误都没能cover住这个问题,我只好从头一步步地跟客户确认。但是还是没能发现任何破绽。郁闷之下,只好让客户把程序发过来看看。

  次检查程序的时候还真没注意到问题出在哪里。等到看出来了才觉得啼笑皆非:

  不知道大家看出来没有?客户在设定完空闲线时间SMW90和消息定时器溢出值SMW92后,惯性地将接受地大字符数SMB94也写成了传送字SMW94。而西门子plc的高低字节是逆序的,也就是说SMB94为高有效字节,SMB95为低有效字节。见手册中的如下说明:

  结果就是大字符数100被传给了SMB95,SMB95是神马呢?神马也不是,总之与接收条件无关。而真正大字符数存储字节SMB94被赋值为0。大字符数都为0了,那当然是接收不到任何数据了。

27.jpg

如何给PLC程序块上锁

如何给plc程序块上锁
FB,FC块
答:一、硬件组态中打开CPU的protection(保护)选项,选第三个设置(读写保护),设置密码后保存编译重新下载硬     件组态就可以了。
二、在Step7中, 可以先任意打开一块, 在"file"中选择"Generate Source"或快捷方式"Ctrl+T",弹出一个画面,填写"object name"如"tt",然后按OK确认,就会再弹出另一个画面,左边是你的程序中所有的块,如果你需要保护哪些块, 就把这些块移到右边, 然后退出所有的程序块,再进入SIMATIC Manager中。 
    在S7 Program Sources找到文件tt,双击tt打开,在第四行中加入"Know_How_Protect", 然后编译, 无错后存盘。这样FB1、FB2就被保护住,如想去掉保护,在tt中去掉"Know_How_Protect"编译存盘即可。 

注意: 千万不要丢失或删除源文件(如tt), 否则程序被保护, 用户可以另存到其它目录中,或Export Source到硬盘中,再删除源文件,这样别人只能看到未保护的块。
1. 打开程序编辑窗口LAD/FBD/STL;
2. 将要进行加密保护的程序块生成转换为源代码文件(通过选择菜单  File—>Generate source 生成);
3. 在LAD/FBD/STL 窗口中关闭您的程序块,并在SIMATIC Manager项目管理窗口的source文件夹中打开上一步所生成的source文件;
4. 在程序块的声明部分,TITLE行下面的一行中输入” KNOW_HOW_PROTECT”;
Compile);?Save,File?5. 存盘并编译该source文件(选择菜单File
6. 现在就完成了您程序块的加密保护;
如下图中表示了如何对STL source文件进行加密:
 
取消对程序块的加密保护
1. 打开程序块的Source源文件;
2. 删除文件中的KNOW_HOW_PROTECT;
3. 存盘并编译该source文件;
4. 现在程序块的加密保护已经取消。


没有

联系方式

  • 地址:上海杨浦 上海市松江区广富林路4855弄88号3楼
  • 邮编:200093
  • 电话:15821971992
  • 经理:聂聪
  • 手机:15821971992
  • 传真:021-33556143
  • QQ:2724917714
  • Email:2724917714@qq.com