西门子自动化课程 26.docx
《西门子自动化课程 26.docx》由会员分享,可在线阅读,更多相关《西门子自动化课程 26.docx(21页珍藏版)》请在冰点文库上搜索。
西门子自动化课程26
全集成自动化(TIA)
解决方案培训教材
第二部分第六章
S5程序到S7程序的转换
这个手册由西门子自动化与驱动集团教育合作部(automationanddrivetechnology,SiemensA&DCooperateswithEducation)以培训为目的编写。
西门子对其内容不做任何形式的保证。
手册的传播或者复制,包括其内容的使用与发表,仅作为公共教育及职业培训之用。
其他情况需要西门子自动化与驱动集团教育合作部的书面许可(Knust先生,E-Mail:
michael.knust@hvr.siemens.de)。
违者必究。
西门子保留所有权力,包括翻译,以及专利权、实用新型或外观设计专有权。
感谢MichaelDziallasEngineering公司、职业学校的教师们,和其他有关朋友为本手册的编写做出的贡献
目录:
1.前言4
2.转换STEP5->STEP7需要注意的问题6
3.S5-数据转换7
4.重新连线16
下列符号代表的含义:
信息
程序
注意
1.前言
第二部分第六章主要介绍STEP7高级编程
学习目标:
在这个模块里,读者将学习如何将STEP5的程序转换成STEP7的程序。
基本条件:
为了这部分内容的顺利进行,读者应具备以下的基础知识:
Windows95/98/2000/ME/XP的基本操作知识
用STEP7对PLC编程的基本知识(例如学习了第一部分第三章)
需要的硬件和软件:
1PC,Windows95/98/2000/ME/NET的操作系统,以及
最小:
133MHz,64MB的RAM,65MB的空余磁盘空间。
最佳:
500MHz,128MB的RAM,65MB的空余磁盘空间。
2STEP75.x软件。
3一个PC用MPI接口。
4一个装有CPU315-2DP的PLCSIMATICS7—300,
组态举例:
-电源:
PS3072A
-CPU:
CPU315-2DP
-数字式输入:
DI16xDC24V
-数字式输出:
DO16xDC24V/0.5A
1PC
2STEP7
4SIMATICS7-300
2.转换STEP5->STEP7需要注意的问题
需要注意的是,并不是所有的STEP5的程序都可以转换。
比如,STEP7里的许多标准函数已经不采用STEP5的形式。
STEP中作了很多简化,一些函数已经不再需要了,还有一些函数被简化为一些参数,可在设置工具中直接进行设置。
这种简化常常出现在应用一些功能模块时(比如,用于步进电机触发功能模块)。
在这种情况下,这些程序块和它们的调用必须在转换程序前被删除。
转换完其他的程序行之后,这些函数必须在STEP7环境下再次编写。
如果程序仅仅是由STEP5的标准指令集构成,则可以进行完完全全的转换。
多数情况下,只要调整寻址就可以了。
3.S5-数据转换
利用工具S5S数据转换的功能可以将由STEP5产生的S5数据转化为S7数据。
根据下列步骤进行S5数据的转换:
1.转换过程中,必须在一个文件目录下提供以下的数据:
-<文件名>ST.S5D程序文件(要转换的S5程序)
一个复杂程序中,块的调用序列保存于其他文件中,所以以下的附加数据是非常重要的:
-<文件名>XR.INI交叉引用表(包含有程序结构)
如果你想连同符号表的数据一起转换,那么下面的文件也将用到:
-<文件名>Z0.SEQ符号表
转换过程中所有新生成的数据将会保存到同一个目录下。
2.打开转换工具ConvertingS5Files。
(®开始®Simatic®STEP7®IDS_SN_S7USCAPX.EXE)
3.在ConvertingS5Files工具中,打开S5-程序数据(®File®Open)
4.选中以*ST.S5D结尾的S5程序数据。
(®segmenST.S5T®OK)
5.
如果没有可用交叉引用表的话,程序会弹出如下图所示对话框。
:
“NoXRFfileavailable,blockscannotbesortedaccordingtotheircall.”
单击OK继续。
(®OK)
6.出现一个对话框,里面显示了所有参与转换的数据和块。
单击数据块的名字,可以修改Withaclickonadatablockname,youcanmodifythestandardinputforthenameofthenewdataandthenumberofblocks.
选中名称,单击Start开始转换。
(®Start)
7.在转换的过程中,实际的过程会显示在状态窗口中(Statuswindow)。
单击Cancel按钮,可以中止转换。
8.在转换的最后,屏幕上会弹出一个对话框提示转换已经完成。
单击OK确定(®OK)。
9.如果在转换过程中出现了错误,所有错误和警告会在一个独立的窗口中显示,并且给出了错误的注释。
用户可以根据推荐的更正方法去除错误。
10.STL数据转换完成后,所有数据必须合成为一个STEP7-项目。
项目由SIMATICManager创建,双击SIMATICManager图标打开SIMATICManager。
(®SIMATICManager)
11.新建一个项目。
(®File®New)
12.创建一个项目,并命名为Convert。
(®Convert®OK)
13.插入一个新的S7程序。
(®Insert®Program®S7-Program)
14.选中Sources文件夹。
(Sources)
15.这样,在转换过程中产生的STL数据就可以作为外部源文件存入文件夹中。
(®Insert®ExternalSources)
16.
选中数据文件Segmenac.AWL(AWL是STL的德文缩写),并打开。
(®Segmenac.awl®Open)
17.单击选中Segmenac,点鼠标右键,打开快捷菜单,单击Compile菜单选项,开始编译。
(SegmenacCompile)
18.编译的进程显示在进度条中。
可以按Cancel键停止编译。
19.编译完成后,源文件和一个编译协议都将包括在一个警告和错误显示工具中。
一些重要的修改都显示在源文件中。
可以点x来关掉这个工具。
(x)
20.如果没有错误产生,转换就此完成。
生成的程序块就存放在数据文件夹Blocks中。
4.重新连线
由于S7的编址和S5的编址不太一样,因此可替换的操作数(大部分是输入输出)都应当重写。
这个重新连线的过程在LAD,STL,FBD程序块中进行。
用户采取下列步骤就可以重新命名块中的操作数。
1.在项目管理器窗口中双击想要操作的程序块图标。
2.在LAD,STL,FBD编辑窗口的菜单栏中单击Edit选项,打开下拉式菜单。
在下拉式菜单中单击调用Find/Repalce命令。
(®Edit®Find/Replace)
2.在Findwhat下方的空白中填写要替换的数据,在Replacewith下方的空白中填写新的数据。
选择搜索范围为All,这样,整个程序块都会被处理。
完成以上设置后,单击ReplaceAll按钮,开始执行操作。
(®Findwhat®I32.®Replacewith®I0.®All®Replaceall)
注意:
这种搜索的功能不止适用于操作数,而且适用于字符串。
因此,只有操作的第一部分需要进行。
它将搜索所有具有32地址位的输入。
4.在这种情况下,许多操作数都将被修改。
如果点击Yes,确认了警告信息并继续操作的话,将不能进行取消操作。
单击Yes确定。
(®Yes)
5.在重新连线过程结束后,将给出替换字符的统计信息。
点击‘OK’确认此项信息。
(®OK)
6.输出也必须分配新的地址。
在Findwhat中填写所要替换的字符,在Replacewith中填写新的字符。
将搜索范围选定为All。
这样,整个程序块都将被处理。
完成以上设置后,点击ReplaceAll按钮,执行替换操作。
(®Findwhat®Q32.®Replacewith®Q4.®All®Replaceall)
7.在这种情况下,许多操作数都将被修改。
如果点击Yes,确认了警告信息并继续操作的话,将不能进行取消操作。
(®Yes)
8.在重新连线过程结束后,将给出替换字符的统计信息。
点击‘OK’确认此项信息。
(®OK)
9.FCO程序块现在就被调整为SIMATICS7-300程序,可以点击
保存程序,点击
将程序下载到PLC中。
(®
®
)
10.如果想要调用FC程序块,就可以在项目管理器中双击OB1图标,打开OB1。
(®SIMATICManager®OB1)
11.这时将出现OB1属性对话框,单击OK,接受设置。
(®OK)
12.
现在就可以在OB1的网络一中插入CALLFC0命令来调用FC0功能。
点击
按钮可以保存OB1中的程序,点击
按钮可将程序下载到PLC中。
(®CALLFC0®
®
)
13.通过改变模式开关的状态,就可以执行程序。
在这个例子中,输入组的头四位输入(I0.0/I0.1/I0.2/I0.3)将得到一个BCD码值。
这个值将关联到一个七段的显示字符上,这个字符将会显示在输出模块的第一个字节(AB4)上。