ImageVerifierCode 换一换
格式:DOCX , 页数:39 ,大小:27.18KB ,
资源ID:3336460      下载积分:1 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bingdoc.com/d-3336460.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(wincc学习技巧.docx)为本站会员(b****2)主动上传,冰点文库仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰点文库(发送邮件至service@bingdoc.com或直接QQ联系客服),我们立即给予删除!

wincc学习技巧.docx

1、wincc学习技巧一、组态软件二、C语言基础1.WINCC中的语言Wincc语言由C脚本(C-script)和B脚本(VB-script)组成。WINCC中C脚本:(1)C动作(在画布中编辑的程序代码)。(2)全局脚本编辑器:项目函数、标准函数和内部函数。项目函数:自定义本项目(保护性)标准函数:编辑好供C动作调用内部函数:(微软)自定义编辑函数在项目函数中例如:#pragma()intNEW_Add(inta;inb)intc;c=a+b;returnc;2.WINCC中的(Tag)变量-程序使用的变量(书上P31-35)变量:C变量、WINCC变量C变量:int(数值型)、char(字符型

2、)、BOOL(布尔型)-也就是二进制(为常用)WINCC变量:word(数值型)、char(字符型)、Bit(布尔型)(为常用)常用变量如下:布尔型:SetTagBit(参数1,参数2)、GetTagBit(参数)数值型:SetTagWord(参数1,参数2)、GetTagWord(参数)字符型:SetTagChar(参数1,参数2)、GetTagChar(参数)参数1:变量名。参数2:具体要求。例如参数1为液位,参数2为a举例1二进制变量“启动”控制电机启停BOOLa;a=GetTagBit(“启动”);if(a=0)SetTagBit(“启动”,1);举例2二进制变量“启动”控制电机启停B

3、OOLa;staticinti=0;(类似inti;i=0;)a=GetTagBit(“启动”);if(a=0)i+;两者区别:不加static加static启动一次i=1启动一次i=1启动二次i=1启动二次i=2启动三次i=1启动三次i=3启动四次i=1启动四次i=43.WINCC中的运算符3.WINCC中的常用语句三、变量组态WINCC中的变量分为:内部变量、外部变量和C动作(函数中的变量)1. 利用变量进行增减计数步骤1:进行画面构建,需要两个按钮和一个输入输出域(属性调整-)(变量、有变化时、输出)。新建内部变量,命名为“计数”,属性为无符16位。如下图所示;步骤2:在名字为“启动增加

4、”的按钮中-属性-事件-鼠标左键C动作:unsignedshorta;a=GetTagWord(计数);a+;SetTagWord(计数,a);步骤3:在名字为“启动减少”的按钮中-属性-事件-鼠标左键C动作:unsignedshorta;a=GetTagWord(计数);a-;SetTagWord(计数,a);2. 利用变量进行增减计数(带有步长控制),可定义步长步骤1:进行画面构建,需要两个按钮和两个输入输出域(属性调整-)(变量为计数、有变化时、输出)步长对应的输入输出域(属性调整-)(变量为步长、有变化时、输入)。新建2个内部变量,命名为“计数”和“步长”,属性为无符16位。如下图所示

5、;步骤2:在名字为“启动增加”的按钮中-属性-事件-鼠标左键C动作:unsignedshorta;unsignedshortb;a=GetTagWord(计数1);b=GetTagWord(步长);a=a+b;SetTagWord(计数1,a);步骤3:在名字为“启动减少”的按钮中-属性-事件-鼠标左键C动作:unsignedshorta;unsignedshortb;a=GetTagWord(计数1);b=GetTagWord(步长);a=a-b;SetTagWord(计数1,a);步骤4:如果调整步长,可直接输入3. 利用变量进行电机启动新建内部变量,命名为“起停”,属性为无符16位。在名

6、字为“启停”的按钮中-属性-事件-鼠标左键C动作:BOOLa;a=GetTagWord(起停);if(a=0)SetTagWord(起停,1);if(a=1)SetTagWord(起停,0);4. 利用变量进行windows窗口对象的修改四、画面组态5. 画面的切换方法1:利用直接连接切换单个画面,即为在下图中“单击鼠标改变画面”的部分点击链接到所要去的画面。组态完毕后,点击按钮即可达到。方法2:通过对象名称和画面名称的变量连接打开画面。在书上P101方法3:通过内部函数打开画面。在按钮属性中事件中鼠标左键中C动作利用软件内部函数输入程序如下:OpenPrevPicture(画面名称); 6.

7、 利用画面窗口显示画面方法:SetVisible(画面名称,对象名称,1或0);SetVisible表示可见度;画面名称表示画面的名字,例如1.pdl等;对象名称表示“画面窗口n”,“画面窗口n”在智能对象中;1或0表示可见或不可见。步骤:第一步:新建三个画面,1.pdl、2.pdl、3.pdl。目的将2.pdl、3.pdl在1.pdl中通过按钮的控制显示出来;第二步:分别在2.pdl、3.pdl中组态一个目标物;第三步:在1.pdl中组态两个按钮和两个画面窗口控件(名称为画面窗口1、画面窗口2),在智能对象中找到“画面窗口”,更改画面窗口属性(属性-几何-宽度为246,高度为129;属性-其

8、它-边框改为是,显示改为否,画面名称添加2.pdl或3.pdl);第四步:将2.pdl、3.pdl画面的大小调整为和两个画面窗口一样大;第五步:进行按钮组态,在按钮属性中事件中鼠标左键中C动作中编写程序如下:按钮1:SetVisible(1.pdl,画面窗口1,1);SetVisible(1.pdl,画面窗口2,0);按钮2:SetVisible(1.pdl,画面窗口1,0);SetVisible(1.pdl,画面窗口2,1);7. 画面窗口属性-时控显示这个技巧功能是对上一个的继承,最终结果就是将三个画面循环显示。步骤:第一步:新建四个画面,1.pdl、2.pdl、3.pdl、4.pdl。目

9、的将2.pdl、3.pdl、4.pdl在1.pdl中通过按钮的时间控制显示出来;(这里并非按钮按下显示,系统运行自动显示)第二步:分别在2.pdl、3.pdl、4.pdl中组态一个目标物;第三步:在1.pdl中组态一个按钮和三个画面窗口控件(名称为画面窗口1、画面窗口2、画面窗口3),在智能对象中找到“画面窗口”,更改画面窗口属性(属性-几何-宽度为246,高度为129;属性-其它-边框改为是,显示改为否,画面名称添加2.pdl或3.pdl或4.pdl);第四步:将2.pdl、3.pdl、4.pdl画面的大小调整为和三个画面窗口一样大;第五步:进行按钮组态,在按钮属性中几何中宽度中(假如宽度为

10、70)C动作中编写程序如下:staticinta=0;a+;if(a=1)SetVisible(1.pdl,画面窗口3,1);SetVisible(1.pdl,画面窗口4,0);SetVisible(1.pdl,画面窗口5,0);if(a=2)SetVisible(1.pdl,画面窗口3,0);SetVisible(1.pdl,画面窗口4,1);SetVisible(1.pdl,画面窗口5,0);if(a=3)SetVisible(1.pdl,画面窗口3,0);SetVisible(1.pdl,画面窗口4,0);SetVisible(1.pdl,画面窗口5,1);a=0;return70;触发

11、器调整为1S中,即为间隔1S闪烁显示。8. 动画旋转组态(例如风扇转动)这个技巧是为了组态一个旋转的动画,例如工业上的搅拌机等。举例如下:步骤1:组态基本画面,可以在显示库中寻找,也可以自己绘制。显示库:从显示库中调用,若使用,首先将元件导出(注意保存),然后将元件删掉,然后再导入(插入)这个元件,便可以进行调整(折开、组装、编组)注意,编组时必须至少两个一组。自己绘制:例如矩形、圆等(注意属性的调整)全选编组。例如编为4个组:组1、组2、组3、组4步骤2:程序的编写-在画布属性-几何-宽度(如果此时宽度为800)-C动作:staticinta=0;a+;if(a=1)SetVisible(1

12、.pdl,组1,1);SetVisible(1.pdl,组2,0);SetVisible(1.pdl,组3,1);SetVisible(1.pdl,组4,0);if(a=2)SetVisible(1.pdl,组1,0);SetVisible(1.pdl,组2,1);SetVisible(1.pdl,组3,0);SetVisible(1.pdl,组4,1);a=0;return800;步骤3:触发器的调整,标准周期,250MS9. 动态化-颜色改变颜色改变是最基本的动态化的技巧,就是动态对话框的基本功能,利用颜色的变化来完成一个部件的动作或结束。例如,画布属性-颜色-动态对话框(事件名称也就是触

13、发器的调整、表达式的填充或者变量、选择表达式结果的展现形式(布尔型或者其它调整颜色)。10. 动态化-闪烁组态(元件闪烁)此技巧主要是针对于元件库中的元件来讲。例如,随便调出一个元件(属性-控件属性-闪烁样式(4种选择,包括不闪烁-0、不可见-1、阴影-2、实心-3))。点击后面的灯泡标志,选择动态对话框-闪烁颜色-布尔型等。此技巧元件可单独作用,亦可由按钮控制。11. 动态化-动态填充组态动态填充组态就是控制元件的动态填充。例如,新建一个内部变量(命名为level、无符号16位、上限100、下限0、起始值0)、调出一个元件或绘制一个矩形(属性-动态填充改为“是”、填充量改为“0”、点击填充量

14、后面的灯泡标志,直接连接变量level)。在矩形-几何-宽度(假设宽度为100)-C动作:(注意触发器调整250毫秒)(1)填充增加staticinta=0;if(a=100)a=0;SetTagWord(level,a);a+;return100;(2)填充减少staticinta=100;if(a=100)a=100;SetTagWord(level,a);a;return100;(3)填充增减结合(先增加、再减少)staticinta=0;staticintb=0;(方向控制)if(b=0)if(a=100)b=1;a+;if(b=1)if(a=0)b=0;a;SetTagWord(le

15、vel,a);return100;12. 动态化-对象的移动对象的移动就是控制元件在画布上水平左右或者垂直上下的移动,亦或沿对角线移动,也可以综合性的各方向的移动。以小车移动为例进行步骤分析如下:步骤一:选中元件-属性-几何(选择位置X、位置Y)-灯泡标志(C动作):特别注意:计算移动的距离范围,选出一个起点和一个终点(如果双向起点和终点和互换的)。计算两点之间的距离。如果水平移动,计算X之间的距离;如果垂直移动,计算Y之间的距离。例如,起点X的坐标为500,终点X的坐标为20,那么距离为480。(水平移动就是不断增加或者不断减少x)步骤二:下面以水平移动为例,进行C动作分析:(1)水平左移(

16、不断减少x)staticinta=500;if(a=500)a=0;elsea=a+4;(每次移动的距离,可以自动调整)return20+a;(3)水平左右移动(双向移动)staticinta=500;staticintb=0;(方向控制)if(b=0)if(a=500)b=0;(调整方向)a=a+4;(每次移动的距离,可以自动调整)SetTagWord(level,a);return20+a;步骤三:触发器调整250毫秒注意:位置X-水平(左右)移动位置Y-垂直(上下)移动高度-放大或者缩小(上下)宽度-拉伸或缩短(左右)13. 动态化-复杂动画设计复杂动画设计是动态化画面的主要特色,也是工

17、业画面组态主要部分。本技巧的展现以混合液的控制系统为例进行论述。(1) 管道中液体流动步骤一:在元件库中调用管道。管道在plantElemer-pipes-2270(弯管道)、2206(横放管道)、2180(纵放管道)中寻找。画出液体流动的三种状态,第一种状态为原始状态,就是没有任何液体流动;第二种和第三中为液体流动的两种不同状态。三种状态画好并导出到桌面,画好一个就导出一个。分别命名(0、1、2)(3次)步骤二:新建一个变量,命名为“进水”,为无符号16位。步骤三:在智能对象中-状态显示-组态对话框(变量为“进水”、有变化时、增加三页(0、1、2)将三个画面状态拖入0、1、2下面,相对应)。

18、步骤四:在状态显示控件-几何-宽度(假设宽度为100)-C动作:staticinta=0;/或者staticunsignedshorta=0;/三种画面的第0张画面if(a2)当循环超过第二张画面,强制回到第一张画面。a=1;三种画面的第1张画面SetTagWord(进水,a);变量状态转移,将a变化给“进水”C变量转WINCC变量a+;return100;步骤五:触发器为标准周期,250或500MS,保存-运行(2) 进水阀控制的管道中液体流动此技巧和(1)的区别主要是增加阀门的控制。即由阀门控制水流的通和断。对于进水阀门:步骤一:在元件库中-plantElemer-valves(阀门)。(

19、注意导入和导出)步骤二:新建一个变量,命名为“进水阀”,为二进制变量。新建一个变量,命名为“进水”,为无符号16位。步骤三:阀门-属性-背景颜色-动态对话框(事件名称为变量和触发器的调整为有变化时、表达式为“进水阀”、选择布尔型变量(真-1-绿、假-0-红)。步骤四:阀门-属性-事件中-鼠标左键-C动作:BOOLa;a=GetTagBit(“进水阀”);if(a=1)SetTagBit(“进水阀”,0);elseSetTagBit(“进水阀”,1);对于进水状态显示控件:在状态显示控件-几何-宽度(假设宽度为100)-C动作:staticinta=0;/或者staticunsignedshor

20、ta=0;/a表示水量BOOLb;b=GetTagBit(“进水阀”);if(b=0)/如果没有按键按下,无液体流动。SetTagWord(进水,0);return100;if(a2)/如果有按键按下,有液体流动。a=1;SetTagWord(进水,a);a+;return100;触发器为标准周期,250或500MS,保存-运行(3) 进水阀和出水阀共同控制的管道中液体流动以及液位的状态显示进水阀控制如上(2)对于出水阀门:步骤一:在元件库中-plantElemer-valves(阀门)。(注意导入和导出)步骤二:新建一个变量,命名为“出水阀”,为二进制变量。新建一个变量,命名为“出水”,为无

21、符号16位。步骤三:阀门-属性-背景颜色-动态对话框(事件名称为变量和触发器的调整为有变化时、表达式为“出水阀”、选择布尔型变量(真-1-绿、假-0-红)。步骤四:阀门-属性-事件中-鼠标左键-C动作:BOOLa;a=GetTagBit(“出水阀”);if(a=1)SetTagBit(“出水阀”,0);elseSetTagBit(“出水阀”,1);对于出水状态显示控件:在状态显示控件-几何-宽度(假设宽度为100)-C动作:staticinta=0;/或者staticunsignedshorta=0;BOOLb;b=GetTagBit(“出水阀”);if(b=0)SetTagWord(出水,0

22、);return100;if(a2)a=1;SetTagWord(出水,a);a+;return100;触发器为标准周期,250或500MS,保存-运行对于液位的设定:步骤一:在标准对象中-矩形(或者其它)进行属性调整(大小、颜色和管道液体同色)。步骤二:新建一个变量,命名为“液位”,为无符号16位。上限100,下限0,起始值0。步骤三:矩形-属性-填充(动态填充改为“是”、填充量改为0其后面的灯泡标志-直接连接变量“液位”(有变化时)。步骤四:矩形-属性-几何-宽度(假设为100)-C动作如下:staticinta=0;/或者staticunsignedshorta=0;BOOLb;BOOL

23、c;a=GetTagWord(“液位”);b=GetTagBit(“进水阀”);c=GetTagBit(“出水阀”);if(b=1)a+;if(c=1)a-;SetTagWord(液位,a);return100;步骤五:触发器为250MS。(标准周期)(4) 增加设定值的控制本技巧是对(3)中液位部分的调整。增加设定值。使水位恒定在设定值所定在的位置。对于液位的调整:步骤一:新建变量,命名“设定值”,无符号16位。连接输入输出域输入设定值(变量为设定值、类型为输入、有变化时)。步骤二:程序修改-矩形-属性-几何-宽度(假设为100)-C动作如下:staticunsignedshorta;sta

24、ticunsignedshortd;BOOLb;BOOLc;a=GetTagWord(“液位”);d=GetTagWord(“设定值”);b=GetTagBit(“进水阀”);c=GetTagBit(“出水阀”);if(ad)SetTagBit(出水阀,1);a-;if(ad)SetTagBit(进水阀,1);a+;if(a=d)SetTagBit(进水阀,0);SetTagBit(出水阀,0);SetTagWord(液位,a);return100;步骤三:触发器为250MS。(标准周期)(5) 增加急停方式的控制(了解)步骤一:新建变量“急停”,二进制变量。按钮-事件-鼠标-C动作(按下,两

25、个地方同时停下)14. 操作控制权限(保护权限)15. 字符串的应用16. 日期与时间的设置-正确的提取日期和时间方法1:利用控件显示(直接显示),如图所示;方法2:利用程序显示步骤一:提取系统日期和时间;变量管理-添加新的驱动连接,如下图所示;建立日期和时间变量,命名“date和time”,date(在“选择”中格式为日期、8位字符集、MM-DD-YYYY),time(在“选择”中格式为时间、8位字符集、HH-MM-SS),如下图所示:分别建立对应的输入/输出域(在“组态对话框”中:对应变量、有变化时,输出)如下图所示。注意:输入/输出域属性调整(输出格式:字符串)步骤二:建立内部变量,命名

26、“shijian”,建立相应的输入/输出域(在“组态对话框”中:对应变量(shijian)、有变化时,输出)如下图所示。注意:输入/输出域属性调整(输出格式:字符串)步骤三:将日期和时间相连;在第二个时间对应的输入/输出域-属性-几何-高度(假设高度为40)-C动作:(触发器为500MS)chara20,b20;charaa10,bb10;inti;chartemp;char*p;p=GetTagChar(date);strcpy(a,p);for(i=0;i5;i+)aai=ai;bbi=ai+5;aa5=0;bb5=0;for(i=0;i4;i+)temp=bbi;bbi=bbi+1;bb

27、i+1=temp;strcat(bb,aa);strcpy(a,bb);p=GetTagChar(time);strcpy(b,p);strcat(a,);strcat(a,b);SetTagChar(shijian,a);return40;程序分析:黑色程序部分:能达到目的,但是显示西方格式(11-16-2013),不符合中国人审美习惯,故加蓝色部分程序,用于调整日期显示(2013-11-16)。13.日期与时间的设置-两个时间求差值此技巧是对上一个技巧的承接,用于实现在线时长显示的功能。注意:字符不能相加减;显示格式(字符显示):时间1:09:45:30时间209:45:45时长:00:00:15。画面布局如图所示;步骤一:新建内部变量:shijian1和shijian2和shijian3(格式为文本8位字符集),新建对应的输入输出域(变量(shijian1和shijian2和shijia

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2