TTCAN在风力发电控制系统中的应用

发布者:灵感驿站最新更新时间:2014-03-10 来源: ofweek关键字:TTCAN  风力发电  控制系统 手机看文章 扫描二维码
随时随地手机看文章

1  引言
               
  近几年,风力发电产业开始进入一个高速增长期[1],而随着风电的火热,风力发电控制技术也得到了快速的发展。本文所设计的风力发电控制系统采用模块化设计,应用于1兆瓦风力发电控制。设计包括了主控制器模块、i/o模块、电网测量模块和变桨驱动模块,各模块间通过can总线连接进行通讯。
               
  由于传统的can网络没有统一的全局时钟,本质上是以事件触发为基础的总线系统,会经常存在总线时序混乱、报文发送冲突导致发送延迟等弊端,影响系统的实时性[2]。尽管事件触发can在报文发送失败后提供自动重发功能,但是发送的延时会导致报文帧发送的确切时间难以预料,从而导致can网络报文发送周期的抖动。所以报文发送时倘若发生传输错误,报文的重传会加重can总线的负担,很可能造成某报文帧因重传的延时而错过其有效时间[3],实时性大打折扣。而采用时间触发的ttcan协议,保证任何时候总线上只有一条信息传输,能有效地避免冲突造成的总线仲裁,避免报文重传,在具有较多节点且通讯量较大的can总线通讯中,能更好地控制通讯周期,提高系统的实时性。本论文设计采用基于ttcan的can总线通信方式来实现分布式风力发电控制系统各模块间的数据通信。同时结合冗余措施,旨在提高控制系统的实时性和可靠性。
           
2  系统结构
               
  图1为本控制系统总体结构图,系统包括cpu模块、变桨伺服卡模块、3个i/o模块和电网测量模块一共6个模块节点。系统选用infineon公司xc164cs单片机来完成总线架构。xc164cs所具有的twincan模块包括两个全功能can节点,与外扩can芯片相比在保证速度和稳定性的同时也为软件编程提供了方便。两个全can节点中的每一个都能接收和发送带11位标识符的标准帧和带29位标识符的扩展帧。两个can节点共享twincan模块的资源,目的是优化can总线通信处理以及使cpu负荷最小[4]。全can功能与fifo结构的灵活组合可满足复杂嵌入式系统的实时要求。同时它具备禁止重发功能,所以利用各个模块xc164cs单片机的twincan模块可以很方便地组建控制系统各模块间双冗余的ttcan通信网络。

图1  风力发电控制器系统总体框图
           


3  ttcan原理与实现
               
  ttcan是在传统can的基础上融入时间触发机制,任何动作都是由一个时间(全局同步)系列决定的[5],它将通讯周期分割成若干时间片,同时分配给各个节点,形成一个调度时刻表,总线上各个节点严格遵照该时刻表在各自的时间片中进行can数据收发[6],如图2所示,当系统时钟到达3ms和6ms时,发送报文a;到达5ms和9ms时,分别接收报文b和发送报文c。网络内所有的报文活动都安排在一个这样的周期性的时刻表内,得到了系统信息阵,来控制所有节点正常有序的进行通讯。从而保证任何时刻总线上只有一条数据传输,避免总线仲裁,确保了系统实时性,所以ttcan的设计实际上是制定能满足系统控制周期的can节点调度时刻表[7]。

图2  ttcan时刻调度表

在ttcan网络中,节点的同步是靠所谓的参照报文维持的,如图3,它由一个特殊的节点定期发送,这就是时间主机(主节点)。参照报文也是一个can数据帧,其特征在于它的标识符。有效的参照报文同时被所有节点识别。两个参照报文之间的时间构成了can传输的基本周期,基本周期又由很多时间窗组成,在每个时间窗中可进行特定的报文操作[8]。每一个有效参照报文启动了一个新的基本循环,并且引起了每一个节点的循环时间复位,于是另一个基本循环重新开始,也就是说,ttcan的时间触发通信是基于参照报文的周期通信[9]。[page]

图3  ttcan基本循环
               

  针对1mw风力发电控制系统,系统包括包含cpu模块在内的6个节点,对每个节点进行编号,在一个通讯周期中,每个节点报文收发都有其具体执行的时刻,各节点严格按照该时刻表进行调度执行相关操作,从而确保cpu模块与系统其他各节点之间快速顺畅地进行can通讯。
               
  而在1mw风力发电控制系统can通讯中,系统各节点报文在一个基本周期内收发所用时刻表参照图4。

 图4  1mw can通讯调度时刻
           

  每次通讯周期控制在20ms,也就是说每个基本循环的周期为20ms,其中节点0对应cpu模块,节点1对应变桨伺服卡,节点2对应i/o模块1,节点3对应i/o模块2,节点4对应i/o模块3,节点5对应电网测量模块,在一个通讯周期中,每个节点报文收发都有其具体执行的时刻,各节点严格按照该时刻表进行调度执行相关操作。如图6,cpu模块在每个查询周期最后会向总线上各节点广播一个时钟同步数据帧,通知各从节点复位计数,为下一个周期做时钟同步。总线上的每个从节点只有当收到这个时钟同步帧时,才会重新将它的时间计数清零,同时在他的中断发送时刻到来时进行发送,如果收不到该时钟同步帧,从模块不会将数据发送至cpu模块。于是这样就建立了总线的全局时间[10],从而确保cpu模块与系统其它各节点之间快速顺畅地进行can通讯。同时做为从模块,如果收到的时钟同步帧是由a通道传来,则其发送数据也选择a通道,如果收到的同步帧是由b通道传来,则其发送数据选择b通道。也就是说这个时钟同步帧对从节点而言还有发送使能的功效,并且同时利用这个时钟同步帧来完成冗余过程中的通道切换。
           
  4  冗余设计
               
  cpu模块与各从模块间采用双can通信,can a和can b都配置成8 fifo接收和8fifo发送模式。系统采用冷冗余的方式进行can故障处理,正常情况下各模块均使用can a总线通讯,当在发现cana通道故障的情况下,才去激活系统的canb通道,使系统继续正常运行。设计思路如图5流程图所示,当系统自行判断到系统中任一模块的某个can通道通讯已经出错或中断时,进行报警并集体同时切换总线通道,保证系统同样正常的进行通讯。[page]

图5  冗余流程


而要实现冗余,can通道的故障判断尤为重要。由于风力发电控制系统中,cpu模块充当着控制器的核心,系统所有的采集输入都在这里汇集,经过控制流程后又由它产生控制输出。于是在can网络中,cpu模块同时充当着主节点的角色。所以系统设计在cpu模块中进行can总线故障判断处理。具体判断流程如下:cpu模块中预设定时器中断(暂设1ms),对每个从节点都做时间计数,当每次收到从节点传来的数据帧时,对相应节点的计数清零。也就是说,这个计数就是距上次正确收到该从节点传来数据的延时(单位为ms)。当程序判断这个计数超过一定值(暂定100ms),认为通信超时,该从节点的can通讯已经出错或中断,此时整个控制系统需要切换总线通道,激活canb,重新建立通讯,并进行报警。如下面流程图6所示。

图6  can故障判断流程图 
  

  5  实验结果分析
               
  基于本方案所设计的这种通讯方式,当can节点发送数据时,在其待发送的数据帧最后补加上两个字节的crc校验码,区别于twincan模块自身所带的crc容错机制,补加的crc校验是为了防止can传输多帧数据过程中出现数据丢帧的现象。于是,cpu模块每次都将接收完成的数据进行crc判断,以此验证收到的该帧数据是否出错。cpu模块程序设计使其对它收到的每个从节点传来的数据帧进行一个计数,每正确收到1帧,计数加1。设查询时刻为t,can通讯周期为t,则t时刻计数值cnt=t/t。以通讯周期20ms为例,每隔1秒钟,cpu模块应收到的每个从节点所传来的数据帧数cnt=50,即为32h,于是,我们每隔1秒钟将这些计数通过串口发出来,就可以监视这些计数,以此验证ttcan通讯周期长度,以及can总线切换机制。具体数据参见附表。
  附表 监视结果表

               

  附表中为20ms通讯周期下,系统上电运行10min的一个情况,据表分析,系统上电时,延时1秒钟开始can通讯,正常情况下,每秒钟包含50个通讯周期,故应正常收发数据50帧,t时刻计数值则刚好满足cnt=(t-1)*50,相邻两秒之间计数基本相差32h。但偶尔会出现前后两秒相差31h的情况,这种情况出现的原因则是因为在该发送时刻,该节点该次数据暂未接收完成所致。
               
  系统上电1min后,尝试切断总线上id号为1的节点,会发现该节点计数相对其他正常节点少5,则分析推断该节点can通讯停顿了100ms后又重新建立,而此刻,系统已经完成can通道切换,转用canb运行。
           
6  结束语
               
  实验效果表明,基于冗余ttcan的模块化风力发电控制系统各模块间的通信总线,相对于过去常用的查询返回can通信方式,更具效率且更为可靠。它的应用,对于提高整个控制系统的可靠性和实时性极具意义。

关键字:TTCAN  风力发电  控制系统 引用地址:TTCAN在风力发电控制系统中的应用

上一篇:Profibus-DP现场总线在灌装机中的应用
下一篇:CPCI数据总线接口的设计与实现

推荐阅读最新更新时间:2024-05-02 23:01

ROCKWELL基于DeviceNet现场总线的汽车总装生产线控制系统
一、 引言   DeviceNet现场总线是世界一流的自动化控制和信息解决方案供应商——美国罗克韦尔自动化(Rockwell Automation)公司推出的最优的工业控制网络技术——NetLinx的底层网络。 DeviceNet具有开放、低价、可靠、高效的优点,特别适合于高实时性要求的工业现场的底层控制。   DeviceNet现已成为国际标准IEC62026-3(2000-07)低压开关设备和控制设备—控制器-设备接口,也已被列为欧洲标准EN50325。此外,DeviceNet实际上是亚洲和美洲的设备网标准。DeviceNet得到了世界各地众多制造商的支持,已经注册的符合DeviceNet规范的产品有数千种,实际应用的
[嵌入式]
汽车主动安全技术之牵引力控制系统
牵引力控制系统Traction Control System,简称TCS。作用是使汽车在各种行驶状况下都能获得最佳的牵引力。汽车在行驶时,加速需要驱动力,转弯需要侧向力。这两个力都来源于轮胎对地面的摩擦力,但轮胎对地面的摩擦力有一个最大值。在摩擦系数很小的光滑路面上,汽车的驱动力和侧向力都很小。 牵引力控制系统的控制装置是一台计算机。利用计算机检测4个车轮的速度和转向盘转向角,当汽车加速时,如果检测到驱动轮和非驱动轮转速差过大,计算机立即判断驱动力过大,发出指令信号减少发动机的供油量,降低驱动力,从而减小驱动轮轮胎的滑转率。计算机通过转向盘转角传感器掌握司机的转向意图,然后利用左右车轮速度传感器检测左右车轮速度差;从而判
[汽车电子]
汽车主动安全技术之牵引力<font color='red'>控制系统</font>
基于STM32的伺服压力机控制系统设计
1 引言 随着制造业朝着生产规模化、产品个性化的方向发展,产品型号变化加快,生产批量相对变小,多种型号共线生产、覆盖件大型化,一体化的趋势日益明显,要求压力机不仅能够高速度、高精度、大负载的运转,而且应具有更大的柔性,能迅速、方便地改变输出运动规律。以上这些不断提高的加工工艺和生产条件的多样化都促进了锻压设备行业的重大变革。在需求的推动下,目前,世界上出现伺服电机直接驱动的伺服压力机,能够满足塑性加工、难成形材料成形、复杂形状零件成形、复合成形以及高精度成形等成形工艺的要求。伺服压力机采用交流伺服电机代替普通交流电机,去除传统曲柄压力机上的飞轮和离合器,使得压力机机械结构得以简化,可靠性增强。所以研制适合不同材料加工要求的压力机数
[单片机]
基于STM32的伺服压力机<font color='red'>控制系统</font>设计
智能家居远程控制系统电路设计攻略
本系统是基于红外和GSM 网络的用于智能家居环境中的一种远程自动控制系统。其工作原理为:用户通过自身的手机发出命令短消息,在家值守的GSM模块接收到命令后发送给主机(单片机),主机通过对命令的处理,把命令通过红外传输到相应的分机(单片机)上,分机对命令处理后,启动相应设备,完成用户给出的命令并向主机回复应答,主机收到应答后,通过GSM 模块发出回复短消息,报告用户完成命令。若在规定的时间内(这里定时60s)主机没有接收到分机的回复信息,即把该操作认为无效,回复操作无效短消息给用户手机,要求用户重新发出命令。若收到的短信息有误,主机便立刻回复用户该操作无效,请求重新发出命令。系统构成如图1所示。      图1 系统构
[安防电子]
智能家居远程<font color='red'>控制系统</font>电路设计攻略
供配电自动化控制系统应用分析
在分析供配电系统现状及供配电自动化控制系统应用需求基础上,根据工厂实际状况,对供配电自动化控制系统进行设计,对系统中主要功能模块进行详细分析,同时对系统软、硬件的实现进行分析研究。 对于工厂,供配电系统能对工厂能源直接分配,将电网公司电能经降压处理后,为各个车间合理分配,作用至关重要 。当下很多工厂在巨额用电量下自行筹建电厂以达到供电自给自足。对于这些工厂,供配电自动化控制系统的合理设计可让电力调度部门对电网运行状态实时监测,及时发现事故及故障,并能对故障在线分析处理,确保生产部门供电可靠性,最大限度缩短停电时间,确保生产安全。   1 供配电自动化控制系统应用需求 多数中型工厂的电源进线电压都为6 kV~10 k
[嵌入式]
基于PEMFC的控制系统电源的设计分析
  PEMFC氢能发电机发出的是变化范围较大的直流电,必须经过稳压、逆变等转换后,获得稳定的输出电压后才能应用于负载。在PEMFC发电机的控制系统电源采用自发电供电时,电源系统需要适应发电机的输出特性。控制系统正常工作是发电机安全可靠运行的重要条件,可靠的电源是控制系统稳定运行的基础,因此,研究适应PEMFC发电系统输出电特性的控制系统电源是非常必要的。   1 PEMFC控制系统电源总体结构设计   本文分析了一种输入/输出隔离型的DC/DC变换电路结构,如图1所示。该电路采用单端反激式结构,以PwM方式首先将PEMFC输出的36~72 V直流电压逆变为高频方波,经高频变压器降压,再整流滤波得到稳定的24 V和5 V直流电压。其
[电源管理]
基于PEMFC的<font color='red'>控制系统</font>电源的设计分析
基于嵌入式Linux的风力发电监控系统开发平台的构建
  引言   为了适应不同的应用场合,同时考虑到计算机系统的灵活性、可伸缩性以及可裁剪性,一种以应用为中心、以计算机技术为基础、软硬件可裁剪的嵌入式操作系统随之诞生。这种嵌入式系统能适用于对功能、可靠性、成本、体积、功耗要求严格的应用系统。而在众多嵌入式操作系统中,Linux以其体积小、可裁减、运行速度快、网络性能优良、源码公开等优点而被广泛采用。特别是2.6内核版本的Linux更是在实时性能方面有了很大的提高,因此在工业控制场合得到了越来越多的重视和应用。   本文正是在这一背景下,为基于S3C2410的嵌入式平台(扩充了多种外围设备,包括:LCD、A/D、网络芯片等等)构建出一个基于Linux2.6.16内核的嵌入式系统开发
[单片机]
基于嵌入式Linux的<font color='red'>风力发电</font>监控系统开发平台的构建
PLC控制系统中的两种故障报警控制
故障报警控制是电气自动控制系统中不可缺少的重要环节,也是PLC控制系统中的常用环节。一般来说,标准的报警功能是声光报警,而报警的控制方式又有单故障报警控制和多故障报警控制这两种方式,你知道吗?这一篇文章小编就给大家分别讲一下单故障报警控制和多故障报警控制。 1、单故障报警控制 何谓单故障报警?也就是用蜂鸣器和报警灯对单一的一个故障实现的声光报警控制。假设I0.0是故障报警的输入条件,也就是I0.0为ON时进行报警,Q0.0为报警灯,Q0.1为蜂鸣器,I0.1是报警响应,当I0.1接通时,报警灯可以从闪烁变为常亮,同时蜂鸣器停止报警,I0.2是报警灯的测试信号,当I0.2接通时,报警灯亮。 我们看以下程序: 以上程序中网
[嵌入式]
PLC<font color='red'>控制系统</font>中的两种故障报警控制
小广播
最新嵌入式文章
何立民专栏 单片机及嵌入式宝典

北京航空航天大学教授,20余年来致力于单片机与嵌入式系统推广工作。

换一换 更多 相关热搜器件
随便看看
电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved