2012年黄石市“科威杯”PLC竞赛复赛硬软件说明.doc_第1页
2012年黄石市“科威杯”PLC竞赛复赛硬软件说明.doc_第2页
2012年黄石市“科威杯”PLC竞赛复赛硬软件说明.doc_第3页
2012年黄石市“科威杯”PLC竞赛复赛硬软件说明.doc_第4页
2012年黄石市“科威杯”PLC竞赛复赛硬软件说明.doc_第5页
已阅读5页,还剩3页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

2012年黄石市“科威杯”PLC竞赛复赛硬软件说明湖北理工学院 谭洪 王传呈 温沐阳【竞复赛中遇到的问题及解决方案】1、在贵公司提供PLC板和成熟的PLC后,我们在分两组,一组编程,一组制板。在贵公司提供的PLC上调试程序,程序运行无误且能达到所有的功能,改到我们自己做好的PLC板调试出现值得让人思索的问题,能在贵公司PLC上能良好运行的程序,在和贵公司PLC上原理一样的PLC板上却不能运行。经我们排查后得出一个肯定的结论,硬件没有错误,肯定是软件的问题。软件的问题在哪里?软件有问题为什么能在贵公司PLC上运行?进大量测试和理论分析,我们发现问题出现在三极管以及锁存器的时序上,不同的三极管状态的改变具有不同的时间效应,而不是瞬间的变化,贵公司PLC三极管以及锁存芯片时间效应要短,我们自己制作的PLC板上的三极管的时间效应要长,在延时比较短的情况下,在贵公司提供的成熟的PLC上可以正常运行,而我们自己制作的PLC三极管以及锁存芯片的状态来不及改变又回到原状态,故不能运行。解决问题后,在我们PLC上调试,可以出色的完成所有功能。2、我们知道,PLC广泛应用于交通运输、食品工业、木材加工、采矿、冶金、化工、石油、环保(污水处理)、市政(供水、供热)、电力、水泥生产、机械制造、汽车制造、造纸、纺织、娱乐等各行各业,保证其稳定性尤为重要。为了提高其抗干扰能力,我们必须对板子进行一些处理,增强其稳定性。我们查资料发现指甲油中含有化学性防晒剂( Benzophenone-1/-3, Octyl methoxycinnamate, Octyl salicylate)、防腐抗氧化剂:(Citric acid, Tocopheryl acetate)、强化剂等成分,有很好的化学防腐、抗氧化功能。所以,我们在制作好的板子外涂了一层该物质,并且通过测试发现效果挺好。3、为了防静电,我们还在PLC外壳的内壁上贴了一层锡箔纸,这样可以起到防静电作用,提高系统的稳定性。【软件设计】一、驱动程序嵌入过程1.输入采样并对采样进行处理,并存放在相应的存储空间。每个开关量的输入与输入指示灯的物理地址的一一对应并保持刷新。2.输出的刷新。输出刷新的值从先前存储输入采样值得地方取出,同时开关量的输出与输出指示灯的物理地址同样需要一一对应。3.对输入输出指示灯进行刷新。二、驱动程序的嵌入 嵌入式驱动程序是PLC内核程序与外部设备的连接程序,负责PLC输入、输出的I/O地址的分配,芯片组的引脚信号与PLC内核输入、输出映像寄存器的对应关系。使用内核开发各种面向具体对象个性化、差异化的驱动程序;满足用户特定的要求。用户驱动程序包括头文件部,中断入口调用矢量地址部分和用户程序部分。主要是用户程序的嵌入部分。内核给我们七个用户嵌入程序接口,我们要利用每个接口来进行嵌入程序的开发。三、七个基本嵌入接口的分析(1)USER_CONFIG这部分主要是用户的I/O进行配置,简易16点PLC的I/O情况:X0-P0.6,X1-P0.7,X2-P2.5,X3-P2.4,X4-P2.3,X5-P2.2,X6-P2.1,X7-P2.0P3.5 = 0时导通;Y0-P2.4,Y1-P2.5,Y2-P2.6,Y3-P2.7,Y4-P2.1,Y5-P2.2,Y6-P2.3,Y7-P2.0P1.7 = 0时导通,P1.6 = 0时导通,P1.6 = 1时锁存;本体高速脉冲输出通道:P1.0; ERR:P4.0; RUN:P4.1LED0-P2.1,LED1-P2.0,LED2-P2.3,LED3-P2.2,LED4-P2.5,LED5-P2.4,LED6-P2.7,LED7-P2.6;P3.3: 输出灯组开关,为高导通,P3.4: 输入灯组开关,为高导通时钟端口配置:P3.1漏极,P3.2推挽(2)USER_START:这部分主要是用户上电初始化程序代码,上电后首先是对输入口采样的处理,先设定采样次数和数据的存储地址。然后设定指示灯的地址。用户独立数据区包括位区4bytes(20H-23H),直接寻址16bytes(58H-67H)及外部RAM2.5Kbytes(3600H-3FFFH)。还有PLC资源区,PLC资源区是为终端用户开放的,因此嵌入程序外部变量应存放在PLC资源区,但不可以将嵌入程序内部变量存入PLC资源区。PLC位资源区(0000H-05FFH),PLC资源区4000H-7FFFH。(3)USER_SET_INIT这部分主要是用户设置初始化程序,对输入输出和显示进行设置,内核重新上电后进入梯型图下载状态或内核从梯型图运型状态进入梯型图下载状态时调用此程序一次。(4)USER_RUN_INIT这部分主要是用户运行初始化程序,内核重新上电后第一次运行梯型图或内核从下载梯型图状态进入梯型图运行状态时调用此程序一次,这部分可以直接返回;(5)USER_STEP这部分主要是用户软中断程序入口(响应时间100us),梯形图每执行一步,即调用此程序一次。需要快速执行的事件可在此程序中完成。(6)USER_TMS这部分是用户2.5MS定时运行的程序,处理硬件实时任务,程序占用时间应小于40US。我们在本函数中设置了用户低速中断标志位。(7)USER_SCAN这部分是用户演算周期扫描程序,处理I/O,AI/AO。如每个输入口的8次采样值的处理,输出的刷新,输入输出指示灯的赋值都在这里完成。四、嵌入式PLC驱动软件流程图用户上电初始化(USER_START)初始化定时器T0,产生事件信号PR0、RUN、SET梯形图语法是否合格?内核管理资源初始化、设置用户运行初始化入口(USER_RUN_INIT)Y单步执行梯形图执行UART0协议栈中的监控协议、UART1协议栈中的RS485主从式网络协议、执行CANEV1.00协议处理用户软中断执行(USER_STEP)系统运行状态是否正常?shifouzhengchangY梯形图 是否结束?NN执行用户演算周期程序(USER_SCAN)N错误显示Y用户I/O口配置程序(USER_CONFIG)用户设置程序初始化(USER_SET_INIT)处理UART0、UART1SET=1?NYSET=1RUN=1处理UART0PRO=1PRO=1?NY五、程序思路与讲解:(1)开关量输入输出题目要求X0-X7对应一个或多个输入时,对应的指示灯亮,并且在梯形图中可以监控到状态变化。因为LED和对应的输入点并不是一一对应的关系,所以我们要对其进行解码。使其输入和输出IO呈一一对应关系。其实,对电路的整理分析看来,我们需要两个函数来解决这个问题,第一个函数用来读取IO的值,并把读取的数据进行重新解码,使其与X0-X7一一对应,并把编码后的数据发送到梯形图对应的X0-X7中监控;第二个函数就是重新设置状态,把读出的值送到对应的LED灯上显示出来,并通过74HC573将其锁存起来。要求我们在梯形图中令Y0Y7中任意一个或多个触点闭合时,对应的指示灯亮,并且对应的继电器有输出。整体思路与第一题类似,只是换成了我们需要从梯形图中读出对应的数据,并使得对应的继电器输出和对应的点亮。需要注意的是,我们从梯形图中得到的数据和对应的LED灯还有对应的继电器都不是一一对应的,而且是占用同一组口,所以在这个过程中我们需要对其进行两次的重新解码,并在每次输出数据时进行锁存。在这个程序中,我们仅仅采用了一个函数来完成所有功能,我们通过分时扫描的方法来实现的复用,并在每次使用从梯形图中读出的数据之前进行解码,所以一个简单使用的解码程序有助于提高系统的稳定性和简洁性,在这里我们要仔细分析电路图查找接收到的数据和需要输出数据的关系。这点尤为重要。流程图如下:开始寄存器功能初始化是否有输入?Y对应的输入指示灯亮查看梯形图程序是否输出?NYN对应的端口输出并锁存,对应的指示灯亮结束(2)固定脉宽滤波功能:题目要求依次分别对X2X7的上升沿进行计数,并且需要编写梯形图计数程序和功能部分的驱动程序,而且窄脉冲的宽度可以通过D寄存器进行设定。首先,我们需要设定窄脉冲的宽度,我们要接收梯形图发过来的数据,并设定脉冲的宽度;另外,由于我们是对X2X7的输入信号进行检测,而第一题也是对输入信号的高低电平检测,当两路输入的时候我们要确保数据的稳定性。在梯形图区域,我们通过设定一个变量来对输入信号进行检测,这样的话,我们只需要把检测到的数据发送到对应的值中去即可,所有的计数程序在梯形图中完成。开始PCA定时器初始化采集P2口的数据与上次采样值比较,是否相等Y是否为上升沿读值Y定时开始结束是否小于设定值计数加1NYN(3)高速

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论