FB,FC块
答:一、硬件组态中打开CPU的protection(保护)选项,选第三个设置(读写保护),设置后保存编译重新下载硬 件组态就可以了。
二、在Step7中, 可以先任意打开一块, 在"file"中选择"Generate Source"或快捷"Ctrl+T",弹出一个画面,填写"bbbbbb 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);?Se,File?5. 存盘并编译该source文件(选择菜单File
6. 现在就完成了您程序块的加密保护;
如下图中表示了如何对STL source文件进行加密:
取消对程序块的加密保护
1. 打开程序块的Source源文件;
2. 文件中的KNOW_HOW_PROTECT;
3. 存盘并编译该source文件;
4. 现在程序块的加密保护已经取消
目前所运行一项目一直运行正常一年多,现发现一个问题,原来设备的启停是靠外面的启停按钮启停的,现场操作人员发现有时会自行启动设备,而操作人员没有任何操作。出现这种情况下按急停按钮也不起作用(正常情况下急停都起作用),当出现这种意外时去按停止按钮就能停下来。项目是300PLC+200PLC,两者之间Profibus-DP通讯。启停是进200PLC,终设备的控制在300PLC内完成。
答:从你的描述“出现这种情况下按急停按钮也不起作用(正常情况下急停都起作用),当出现这种意外时去按停止按钮就能停下来"看,这个的设计存在很大的缺陷。急停按钮是起硬件保护功能的,当急停按下后,应无条件停机,而你的却会出现急停不起作用的问题。通常急停按钮的设计是用来直接切断24VDC输出控制电源的,不应通过PLC控制,但急停可供给PLC作故障诊断用。
原来能工作一年多正常,现会出现自动启动,而你的又恰恰是启停是进200PLC,终设备的控制在300PLC内完成,这就很可能是通信受所致了。建议你的通信总线电缆走线,不要与其它线路混行。当还是将程序认真的过一遍,看看是否有bug。
会自动启动,急停按钮又不起作用,这个真的风险很大,一旦出现安全事故后果不堪设想
在中断OB37中执行调用大量FC程序,是否影响OB1中正常程序的处理速度和其它中断程序的速度?对CPU的运行有何影响?
答:1、在中断OB37中执行调用大量FC程序,是否影响OB1中正常程序的处理速度和其它中断程序的速度?
a、组织块是按已分配的中断优先级来执行,数字越大优先级越高,优先级高的可以中断优先级低的。
b、一般OB1的默认为1级,OB30-OB38默认为7-15级,OB37为14级。数字越大优先级越高。
c、OB37中执行调用大量FC程序,则其就占用CPU时间长,肯定会响应对OB1中或其他中断的程序的扫描(执行)。
2、对CPU的运行有何影响?
对CPU本身的运行没有任何影响,即CPU运行哪个程序是有操作来分配的。CPU只是一个执行“机构"而已。这个问题提得不专业,在此不要纠缠这个问题了。望注重下述问题的讨论,即这个问题应这样提出:“对于你的控制的实时性是否有影响?"。
3、对于控制的实时性是否有影响?
在此要强调是要合理应用OB循环中断:
按楼主的设计意图,是由两个OB循环中断来调度楼主的控制程序,即OB37(循环时间短,优先级高)与OB1(循环时间长,优先级低)。
合理的设计是将实时性要求高、数据更新要求快的任务(程序)均安排在OB37中来执行。而将上述要相对低一些的的任务(程序)均安排在OB1中来执行。这样可以轻重缓急地实现任务(程序)的调度。
一个有的程序()设计者会合理地安排自己的控制中任务(程序)的中断优先级。也会通过实践不断修正所分配的优先级,使得自己的控制的实时性更高。
4、而对于“中断OB37中执行调用大量FC程序"并不是不可取的,如果控制就这有这样的需求,即只有这样才可实时性的要求,就可这样做!
一个合格的程序设计者的基本条件就是能够熟练地、合理地应用中断、编制中断程序,使得自己的控制结构严谨、灵巧、科学,控制实时性的要求