西门子WINCC 和PLC的高级编程 点击:591 | 回复:1



陈石头

    
  • 精华:28帖
  • 求助:2帖
  • 帖子:300帖 | 9288回
  • 年度积分:0
  • 历史总积分:54987
  • 注册:2008年3月07日
发表于:2011-11-10 11:23:44
楼主

摘 要: 介绍了WINCC 和PLC 两种组态软件, 通过具体的实例阐述了如何实现WINCC 和PLC 的高级编程。
关键词: WINCC; PLC; 高级编程

1 引言
组态软件, 又称监控组态软件, 是数据采集与过程控制的专用软件, 它的出现解决了传统的工业控制软件开发周期长、效率低、价格贵等问题, 使编程开发人员可以根据自己的控制对象和任务应用软件中的工具, 从而方便快捷、高效地完成工程中的任务。PLC 即可编程控制器, 是指以计算机技术为基础的新型工业控制装置。可通过组态软件与PLC的数据交换实现工业过程动态可视化、过程监控和报警等控制要求。
西门子公司推出的WINCC 和PLC 组态软件为实现工业自动化提供了强有力的工具, 可以通过改变WINCC 和PLC 的组态和编程的方法来提高效率, 快速完成项目。下面针对工程中的常见问题,谈谈如何实现WIN CC 和PLC 的高级编程。
2 实现策略
2. 1 结合使用画面模板、结构变量、自定义对象
我们经常遇到多个设备显示相同参数的情况,使用画面模板可以避免反复组态相同画面布局的问题, 减少项目后期修改细节部分带来的工作量。对设备的运行状态和故障信息通常要花大量的时间进行组态, 工作相当繁琐, 画面模板、结构变量、自定义对象的结合使用可以通过更改相同的C 脚本、对象名完成所有控制设备的控制信息、设备运行参数、报警信息等。下面举马达控制为例具体谈谈如何实现这些功能。
2. 1. 1 􀀁 建立结构变量
见表1。


2. 1. 2 建立画面模板
组态好在画面窗口对象要调用的模板画面中的对象连接结构变量的成员变量, 如图1 所示。
运行模式: SetTagBit ( ". auto” , ( SHORT ) !GetTagBit ( " . auto ") ) ;
单机开: 按下时SetT agBit ( " . start ", 1) ; 弹起时SetT agBit ( ". start" , 0) ;
单机关: 按下时SetTagBit ( " . stop ", 1) ; 弹起时SetT agBit ( " . stop ", 0) ;
开到位模拟启用: SetTagBit ( " . sim" , ( shor t) !GetTagBit ( " . sim ") ) ;



图1 画面模板图
2. 1. 3 建立自定义对象
挑选其中用户需要的属性作为用户自定义属性。程序无须改动, 只要通过复制自定义对象, 改变对象名称即可完成所有相同类型的对象的组态( 运行、故障、闪烁等) , 如图2 所示。
sim: C 脚本程序描述
BOOL _ main ( ch ar * lpszPictureN ame, ch ar * lpszObjectName, ch ar* lpszPropertyN ame)
{
# pragma opt ion( mbcs)
ch ar T AG_1【 256】 ;
st rcpy( TAG_1, lpszObjectName) ;
st rcat ( T AG_1, " . sim" ) ;
if ( GetTagBit ( T AG_1) )
return 1;
else
return 0;
}


图2 自定义对象图
2. 2  PLC 编程
      西门子PLC 的编程软件STEP7 融合了面向对象的编程思想, 支持ST L、LAD、SCL 等语言编程,可以综合运用多种语言解决复杂的控制任务。同样可以建立马达类型的结构变量, 通过向FB 传递结构类型的块参数, 将马达的数据批量传输和处理, 这样可以减少重复输入变量的劳动, 马达的运行信号和驱动马达的输出信号可以通过以下两段STL 程序完成向结构变量成员running 和out 的复制。
运行信号: LAR1 P# 0. 0
LAR2 P# 0. 0
OPN ”Data of all motor“
L motor_num
NEXT: T # LOOP_COU NTER
CLR
A I【 AR1, P# 0. 0】
= DBX【 AR2, P# 0. 0】
+ AR1 P# 0. 1
+ AR2 P# 4. 0
L # LOOP_COU NTER
LOOP NEXT
输出信号: LAR1 P# 32. 0
LAR2 P# 0. 0
OPN ”Data of all motor“
L motor_num

NEXT : T # LOOP_COU NT ER
CLR
A DBX【 AR2, P# 0. 7】
= Q【 AR1, P# 0. 0】
+ AR1 P# 0. 1
+ AR2 P# 4. 0
L # LOOP_COU NT ER
LOOP NEXT
3 、 应用与结语
     西门子WINCC 和PLC 高级编程技术已经在呼伦贝尔金骄生物化工有限公司和上海佳格食品有限公司的自动化系统中应用, 系统的运行效率显著提高, 编程的工作量大大减少, 给以后的系统维护带来方便。



niki

  • [版主]
  • 精华:7帖
  • 求助:2帖
  • 帖子:1050帖 | 1332回
  • 年度积分:376
  • 历史总积分:8436
  • 注册:2009年2月24日
发表于:2011-11-10 14:48:49
1楼
西门子S7-200直连Wincc(不用OPC)专用以太网转换器 :ETH-PPI(2011)www.dl-winbest.cn

热门招聘
相关主题

官方公众号

智造工程师