基于PLC运料车智能控制系统.docVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
基于PLC运料车智能控制系统

基于PLC运料车智能控制系统   摘要:本文选用基于PLC的开关量控制系统,通过PLC的编程控制运料小车按规定方向运动。为了更好地对整个系统进行实时监控,利用WinCC软件与PLC的联机通讯,从而使整个系统更加智能化和安全可靠。   关键词:PLC 智能化 控制系统   收稿日期:2015-3-5   作者简介:左?遥?1966),男,湖北武汉人,武昌理工学院信息工程学院讲师。   1.引言   利用PLC进行开关量控制的例子有很多,在化工、机械、轻工、冶金、纺织等众多领域都有被采用,它几乎出现在所有工业行业的实际应用中。当前,PLC之所以被广泛采用的原因,也是其他控制器无法相比的,就是它易于将开关量进行可靠的控制。   通过西门子S7-300 PLC的控制,运料车将按着实际的需求进行运动,再与WINCC进行联机通信,WINCC画面上显示的就是当前现场的运料车运动状况。不仅监控起来更加方便,而且可以及时的发现现场是否发生突发状况,在提高了工作效率的同时也为突发状况的诊断与维护缩短时间。   2.运料车控制系统的相关设定和技术要求   2.1 运料车系统的相关设定   送料车控制系统主回路采用全压直接启动,因为直接启动既能按要求达到预期的目标,而且成本低、维修方便。虽然启动电流过大,但在小功率的电动机中,这种方法最有优势。   图1 运料车控制系统的主回路和控制电路   工作原理:   当SB2按下时,KM1通电,电动机开始正转,KM1自锁,电动机持续正转;   当SB3被按下时,KM1断电,KM2开始通电,电动机开始反转,KM2自锁,电动机持续反转;   当SB1按下时,KM1与KM2都断电,电动机停止运行。   如果对运料车的控制要求严格,并且需要频繁启停的同时还需要重载启动,则应优先考虑价格昂贵的软启动或者变频器启动。   2.2 运料车控制系统的技术要求   设有6个工作台,送料车往返于工作台之间送料,每个工作台都有一个到位开关BG和呼叫按钮SF,具体控制要求为:   (1)、送料车开始应能停留在6个工作台中任意一个到位开关的位置上。   (2)、设送料车现停于m号工作台处,这时n号工作台呼叫,当mn时,送料车左行,直到BGn动作,到位停车;当mn时,送料车右行,直到BGn动作,到位停车;当m=n时,送料车原位不动。   (3)、当按下启动按钮时,送料车开始工作,按下停止按钮时,送料车马上停止工作。   图2 运料小车控制示意图   3. 基于PLC的运料车控制系统程序设计   3.1 PLC直接法编程   在这种编程方法中,将会用到M法。所谓M法,就是在程序中加入很多M量作为中间变量以简化编程难度。众所周知,在程序中,不能将一个变量作两次输出处理,这种程序在仿真时会出现不可预测的情况。   图3 直接法编程流程图   3.2 Wincc中运料车的设置   在WinCC自带的库中找到所需要的运料车模型,建立与本文相仿的运料车工作环境,如图4所示:   图4 送料小车运动模型   将运料车的BG1至BG6的X轴的坐标分别设置为170、370、570、770、970、1170这样的设置主要是为了方便以后的编程与仿真。   相关程序(C语言)为:   #include apdefap.h   long _main(char* lpszPictureName, char* lpszObjectName, char* lpszPropertyName)   {   static int x=170;   int m1,m2,m3,m4,d1,d2,d3,d4,d5,d6;   m1=GetTagBit(自动左); //Return-Type: BOOL   m2=GetTagBit(自动右); //Return-Type: BOOL   m3=GetTagBit(点动左); //Return-Type: BOOL   m4=GetTagBit(点动右); //Return-Type: BOOL   d1=GetTagBit(BG1); //Return-Type: BOOL   d2=GetTagBit(BG2); //Return-Type: BOOL   d3=GetTagBit(BG3); //Return-Type: BOOL   d4=GetTagBit(BG4); //Return-Type: BOOL   d5=GetTagBit(BG5); //Return-Type: BOOL   d6=GetTagBit(BG6); //Return-Type: BOOL   if(d1(x=170)) x=170;//当运料车在B

文档评论(0)

3471161553 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档