通过CAN模块和PIC30系列芯片实现船舶电站控制系统的设计
3044
引言
船舶电站一般由燃油 发动机 、 发电 机、主配电屏组成,如图 1所示,每个组成部分有各自的输入输出信号,传统的控制方式是将各自的输入或输出连接到对应的控制器,由对应的控制器实现单台设备的控制,如电网检测到负载较大时,自动产生一个备用发电机起动信号,备用的发动机控制器接受到该信号后自动起动,延时并建立电压后,由自动并车装置控制将该台发电机并入电网运行,运行过程中由负载分配装置进行负载的自动调节,如果电网负载较小时,经过负载平衡分配后,每台发电机的负载过小,系统将会自动卸载一台原来备用的发电机,待脱离电网运行延时后自动熄火并回到备用状态,实现电站的自动解列。
1. CAN 总线与船舶电站
随着航运事业的发展和船舶电站的要求提高,总线技术逐渐在船舶控制技术中使用,分布式系统在新设计系统中渐渐成为主角。其中控制器局域网(Controller Area Network,CAN)模块是一个串行 接口 ,可用于与其他外设或者 单片机 之间进行通信,此接口/协议是针对允许在噪声环境下通信而设计的。本文以CAN总线为基础,结合单片微机( MCU )技术,
将船舶电站中的三台发动机、三台发电机、三个主配电屏构成的供电电站系统实现无人自动控制并可实现远程 监控 。
CAN具有几个重要的特点:一是总线协议完全开放,从相关 CAN芯片或 MCU中可以直接得到相关的控制字及 寄存器 ,只要对相关的寄存器进行有效的设置,CAN总线模块能自动地进行通讯,MCU可以直接通过读或写处理 CAN通讯的信息;二是 CAN为底层协议,用户完全可以在此基础上进行用户自定制的高层协议;三是该总线有成熟的市场使用,有可靠的抗干扰特性。所以在船舶控制系统中也越来越多地使用CAN 总线。
船舶电站按控制功能可以分成如下几个部分:
1) 发动机的起动、停止控制
2) 发电机的电压控制和无功分配控制
3) 发电机的信号检测及保护控制
4) 发电机自动并车控制
5) 发电机的电能管理控制
上述控制各有对应的 传感器 ,信号 变送器 和执行控制器与之相配,本系统将各环节或组成部分用带 CAN总线的单片微机来实现,系统结构具体如图 2所示,系统分为三层,昀高一层是一个电网的电能管理控制器( PMU), 检测电网的用电情况,并根据情况向中间一层对应的控制器发送起动或停止信号,或发出负荷增减信号,中间一层是每台发电机所需要的控制器,根据需要调节控制各自的电量信号,如电压或 电流 等,昀低一层是传感器和执行器层,由一个或几个传感器或执行器构成一个 CAN总线的单元,所有的组成均挂在一个 CAN总线网上,为保证系统可靠,物理上每个单元带双 CAN接口,整个网络构成两个 CAN网络,即 CAN 总线实现冗余控制,理论上,任意一个控制器均可控制任意一个传感器或执行器,即可实现控制器的冗余控制,实际上是将三台发电机对应功能的控制器做成相互冗余,不同性质的控制器不做冗余,但是昀高一级的控制器( PMU)内带中间以及所有控制器的功能,可以实现向下冗余控制。
开关 量输入变送器 1是检测燃油发动机的一些基本信号并将其转换成CAN 总线接口信号,这些基本信号包括:冷却水压力,滑油温度,油底壳油位,发动机备用状态,发动机自动控制位置,燃油压力,起动空气压力等;CAN总线 2是整个系统通讯的网络总线,图示为一条总线,实际为保证系统可靠,使用两条总线方式,每个单元均带 2个总线接口,实现双总线冗余;起停输出执行器 3是带 CAN接口的 继电器 输出,去控制发动机的起动、停止和紧急停止 电磁阀 ;发动机起动停止及保护控制器 4是控制发动机运行或停止的控制核心,一方面接受控制按钮等信号,一方面接受 CAN总线的信号,并根据这些命令信号去控制发动机;加减输出执行器 5是带CAN总线的继电器输出控制器,并带本地手动输出,其作用是控制发动机内调速器的输入,起到调节速度或负载的目的;燃油发动机 6根据起动或停止电磁阀控制运行,根据调速器来调节运行速度或输出功率;转速等模拟输入变送器 7是检测发动机的速度,冷却水温度,滑油压力,排气温度等一些重要参数的传感器并将信号转换为 CAN总线接口的信号;电站电能管理控制器 8是整个控制系统的调度控制单元,检测电网和每台发动机的状态,实现调频调载的自动控制,或实现自动起动,或控制自动卸载解列;调压执行器9是带CAN总线控制的相复励自动调压控制器,根据 CAN总线来的命令或自带的调节旋钮信号调节其旁路 可控硅 的触发角,从而实现发动机的调压控制;发电机 10接受 9的励磁调节,由原动机 6带动输出电能给配电装置;自动调压及无功控制器 11根据发电机的电压,电流信号,同时需要判断其无功功率和功率因素值,来调节其输出给单元9,实现电压恒定及无功分配均衡;电压电流信号输入变送器 12是检测本发电机输出的电压和电流信号以及两者之间的相位差,计算出需要使用的功率值,无功功率值,功率因素值等电量,并转换为数字信号通过 CAN接口提供给需要的其他环节;主开关保护控制器 13主要实现发电机的过电流、欠电压、逆功率的保护,其输入信号由环节 12提供,主开关及配电屏状态信号作为辅助信号输入,其控制的是主开关的分断控制;屏上按钮等输入变送器 14是将配电屏上的按钮等所有操作信号转换为标准的CAN 接口信号并提供给 CAN网络上的有关环节使用;主配电屏15是含主开关,有关继电回路,有关设备安装其内部的配电装置;主开关并车控制器 16将检测本发电机和电网之间的电量差别,通过调节本发电机实现两者的同步并自动并车;主开关合闸/分闸执行器 17是带 CAN接口的继电器输出环节,其与主开关配套,实现主开关的储能,合闸或分闸的控制;供电母线 18是船舶电站三台发电机供电的电网,所有外部用电设备均经过本电网供电。 [page]
2. 带 CAN总线接口的 MCU单元
从图2可以看出,控制系统相关环节均需要配有CAN总线接口,包括传感器信号输入和控制输出,其中有些信号变送环节还需要经过计算和分析,基本上带CAN总线的单元均需要配单片微型 计算机 MCU,通过MCU采集需要的信号或输出控制信号,由MCU和CAN实现总线接口,为方便该功能的实现,选择带CAN总线接口的MCU,本系统使用 MICROCHIP 公司的 PI C30系列的控制芯片来实现,其内置CAN模块主要特性如下:
• 实现CAN协议:CAN 1.2、CAN 2.0A和CAN 2.0B
• 标准和扩展的数据帧
• 数据长度为0 到8 字节
• 可编程比特率达到1 Mb/s
• 支持远程数据帧
• 双缓冲的接收器,带两个区分优先级的接收报文 存储 缓冲器
根据上述具备 CAN通讯接口的 MCU特性描述,结合使用场合,配以相关的 电路 可以实现带双 CAN接口的多种多样的变送器和执行器,MCU采用 dsP IC30f5011,内置两路 CAN接口。MCU与 CAN接口电路如图 3所示,C1Tx是 1号 CAN总线的发送信号,C1Rx是 1号 CAN总线的接受信号,C2Tx是 2号 CAN总线的发送信号,C2Tx是 2号 CAN总线的接受信号,外围开关量可以实现昀大 48路输入或输出,模拟量昀大可以实现 16路输入。MCU与外围采用高速芯片 6N137进行光电隔离 , CAN总线 收发器 采用标准的 PCA82C250,其输出为差分信号,定义为 CANH和 CANL一对,采用双绞线方式挂在整个系统 CAN总线网络上。CANH 和 CANL之间并联小 电容 可以起到滤除总线上的高频干扰和一定的防电磁辐射的能力,另外,在 CAN 总线的终端处的两根线 CANH 和 CANL间还并联一个 120欧姆的 电阻 ,以消除信号的反射。
MCU内具备强大功能, 16位 CPU ,程序 存储器 达 66K,4K RAM ,1K EEP ROM ,16 ×16bit工作寄存器,昀高 时钟 可以使用 10M 晶振 倍频 16倍,所以一般应用场合均能适应,由于自带 DSP核心,对要求快速响应的数据处理也能胜任,一般不需要扩展即可满足需要,具体需要实现的信号输入输出,只要配以合适的外围接口电路即可实现;需要实现的控制功能也可编程实现。在本系统中除电站电能管理控制器要求比较复杂,需要进一步增强系统配置外,其它控制器和信号接口或变送器等均使用上述电路实现,带 CAN接口的变送器或执行器一端如图 3所示实现 CAN总线接口,另一端配以 MCU对应的外围电路,可实现带CAN总线的不同功能的输入输出。具体如下:
2.1 带 CAN总线的常用信号变送器
常用的信号分为开关量输入, 0-5V,4-20mA,热电阻,热电偶等,其中开关量信号输入采用 光耦 隔离输入,模拟量输入采用高性能的仪表 运算放大器 构成,热电阻,热电偶等均采用标准的信号调理电路,所以对 MCU而言,输入的均为标准的0-5V信号,对应传感器的昀大量程。经信号调理后的 16路模拟量输入接到 MCU的RB0-15,即可实现 MCU对该 16路模拟量输入的采样。开关量输入信号变送器将输入信号隔离后送到 MCU的PORTB-G口,昀大可以实现 48个输入,除使用光耦隔离电路外中间不需要其它电路。
2.2 带 CAN总线的编码信号变送器
正交脉冲编码输入,有A,B正交的2相输入,即相位上相差90度,其昀到频率可达20KHz。由于频率较高,光电隔离应采用高速光耦来采样,可以使用 MCU的信号捕捉接口 RD8—11来实现 2组 4个正交脉冲编码输入,配置 MCU相应的寄存器可实现正交脉冲编码的计数和正负判断。
2.3 带 CAN总线的电量信号变送器
电量信号的采样需要采集电压和电流信号并转换成有效值,调理成 MCU需要的0-5V信号,同时需要正弦-方波的转换,送到 MCU的中断接口处,便于相位计算。电压信号的调理电路如图 4所示,电流型电压 互感器 将取样电压信号转换成 mA电流信号经运放 U2放大成电压信号,经 U1A比较电路取得交流电压过零方波的检测信号,供频率转换和相位计算用,运放 U1B,U1C电路构成整流电路,U1D电路为滤波电路,其输出为 MCU需要的0-5V电压信号。电压信号采样考虑到变化幅度有限,选择 1.5倍额定电压对应 MCU昀大输入5V,而电流信号变化比较大,特别是大电机起动时,电流可以达到其额定电流6-8倍,电流的保护控制也需要能有效地实现8-10倍的保护控制,所以同一个电流的采样分成三个等级来实现,一是 2倍额定电流对应 MCU对答输入5V,一是 4倍额定电流对应 MCU的 5V输入,另一是 10倍额定电流对应 5V输入。电路原理与图 4所示类似,这样,一台发电机输出的 三相电 压和电流的采样要用到 12个模拟量输入,3个电压过零中断输入,3个电流过零中断输入。根据上述信号 MCU将不仅得到相应的电压值、电流值,还要计算出相位差,功率因素,有功功率,无功功率,视在功率,有功电能统计等,同时需要根据额定值确定是否有过电压、欠电压、长延时过电流、短延时过电流、瞬时过电流,逆功率等故障信号,所以本电量变送器含多重功能。
2.4带 CAN总线的执行器
MCU的 I/O 口可以配置为输出,根据需要将相应的 I/O配置成输出后,接到光电 耦合 单元,其输出再经过 三极管 驱动继电器实现继电器的输出。执行器的控制为其控制电源经过继电器的 触点 后送到执行器上,控制其正反运转实现相应的调节,或控制电磁阀回路的通断等。在一些特殊场合,MCU的输出可经过光电耦合后再经三极管驱动 MOSFET ,实现 PWM的调节控制,或有关的执行器件的动作调节。
3. 带CAN总线接口的各种控制器
带 CAN总线的控制器 CAN接口与上述 MCU的相同,在控制器中,输入输出不是主要的,主要的是 MCU的运算能力,存储能力,控制能力,显示驱动等,所以考虑使用的 MCU为 PIC系列中较为高端的MCU,其硬件电路也大同小异,除与图 3使用 CAN接口电路相同外,另外为配合需要使用了一些带I 2C的扩展电路,如EEPROM,时钟电路等,如图5所示,其中SCL,SDA为 MCU中自带的 I 2C的接口,定义为时钟线和数据线,A0,A1,A2为相同器件同时使用时的选择信号,由 MCU控制,U3为时钟芯片DS1307,与为时钟源晶振,24C08为I 2C接口的EEPROM。如需要其他功能,可以在原来I 2C总线接口电路上再扩展。在此硬件基础上,通过 CAN接受总线上的信息,各控制器按其需要的功能编制相应的软件,并将相应的输出信号通过 CAN发送到对应的输出 CAN接口模块去。控制器按具体位置和功能分成发动机控制器、自动调压及无功调节控制器、配电保护控制器、同步并车控制器、电能管理控制器等。
4.冗余控制技术
除主要的电能管理控制器 PMU外,设计的其他几个控制器的硬件电路接近,实现的功能不同,但是可以通过软件实现相互间的控制冗余,所以在实际设计中,每个控制器内设计成两套控制程序,正常情况下,一套本身主要的程序在工作,另一套作为其它控制器的备用在读取 CAN总线上的数据,但是备用的程序不作输出动作。当系统中某控制器故障出现时,CAN总线网络上无该控制器正常工作的心跳信号后,作为它备用的控制器将其备用的程序唤醒工作并输出,以替代故障的控制器,同时在工作的控制器上出现相应的显示。系统设计中各控制相互冗余备用的关系如表 1所示,其中电能管理控制器可以作为其他控制器的备用。
除控制器具备的冗余外,前述 CAN总线均采用双 CAN接口,实际线路也是对应的双 CAN网络,其中一个 CAN总线出现故障后,系统可以自动启用备用 CAN网络,从而实现 CAN总线的冗余控制。
5. 结论
船舶电站控制系统采用分布式结构 , 硬件设计标准化,软件设计 模块化 ,使整个系统设计组合较为灵活,这种设计方法对于其他项目的研制也具有一定参考价值。系统实际运行效果良好,工作可靠,说明 CAN总线技术在船舶电站中的使用是成功的,并可推广使用。
本文创新点:昀初开发的 CAN协议被运用于汽车 制造 领域,现把 CAN技术移植到船舶电站的控制方面,实现了船舶电站的无人操纵、过程自动控制及远程监控,提高了船舶自动化程度,改善了系统性能。
责任编辑:gt