当前位置:首页 > 单片机 > 单片机
[导读]本文所要介绍的是作者单位正在进行的25kW燃料电池轿车项目中,燃料电池单片电压巡检测试、分析系统的设计。

关键词: RS-485   燃料电池   PIC16F873   单片电压

1  引言
燃料电池是21世纪最有望取代目前汽车燃油内燃机的新动力体系之一,它是一种将H2和O2的化学能通过电极反应直接转换成电能的装置。一个燃料电池堆是将多片电池片串联起来构成的,整个电堆的性能和单片电池电压有很大的关系。因此在燃料电池的研制中有必要采集不同条件下单片电池的电压值,通过分析找出H2和O2的反应环境和单片电池电压之间的关系。本文所要介绍的是作者单位正在进行的25kW燃料电池轿车项目中,燃料电池单片电压巡检测试、分析系统的设计。本系统的上位机软件采用VB6.0编程语言进行开发,该语言功能强大,具有面向对象和可视化编程,界面友好,特别适于在 Windows环境下图形界面和用户程序的编制,数据采集由多个以8位PIC单片机为核心的数据采集模块来完成。

2  系统组成和工作原理
本系统由上位机、主控单片机和若干个数据采集模块所组成,如图1所示。上位机为一台工业控制计算机,其主要功能是通过RS-232串口实现和主控单片机的通信,接收采集数据和发送控制命令;实时显示单片电池的电压值和绘制同一时刻单片电压变化趋势曲线;将测量数据分类保存到数据库,并具有对测量结果进行多种数学分析的功能。

 主控单片接收来自上位机的控制命令

 图1     系统组成图
实现对各个数据模块的控制,并将各个模块发来的数据通过RS-232串口转发给上位机。主控单片机和各个数据采集模块间采用RS-485总线进行通信,并设成主从结构,主控单片机设为主机,各个数据采集模块为从机。主控单片机在收到上位机的检测开始命令后,按照轮循的方式依次给各个数据采集模块发采集命令,在每发出一个采集命令后就等待接收该采集模块的采集数据,如果在等待时间内收到采集模块发回的采集数据,就将数据打包转发给上位机;如果等待超时仍然没有接收到数据就直接向下一个采集模块发采集命令,如此反复循环下去。

各数据采集模块的软硬件构成是完全一样的,并通过RS-485总线实现和主控单片机的通信。每个数据采集模块在收到来自主控单片机的测试命令后开始对其负责测试的16片电池电压值进行采样,然后将采样所得的16片电池电压值打包一起发送给主控单片机。每一个数据采集模块能采集16片单片电池的电压,可根据电池片的总数相应地增减数据采集模块的数量。

3  数据采集模块设计
在本巡检系统中单片电池电压值的采集是由各个数据模块来完成。数据采集模块主要是以PIC16F873单片机为核心加一些外围电路构成如图2所示。PIC16F873单片机是Microchip公司生产的一款精简指令集(RISC),哈佛双总线和两级指令系统流水线结构的高性价比的8位嵌入式控制器,具有集成度高、速度快、工作电压低、功耗低、I/O直接驱动、指令简单易学易用等特点。其内置8k×14 Flash存储器,1个10位四输入通道A/D转换器,和一个UART。并可在线串行编程(ICSP),开发和使用都很方便,所需外围扩展器件少。在数据采集模块中多路模拟信号的输入是通过16路模拟开关CD4067来选择的,单片机通过I/O口RC1~RC4来选择具体那一路输入。由于单片电池电压一般比较低在0.5V~1.2V间,这个电压在CD4067的准许范围内,所以在CD4067的输入口没有加隔离电路。由于数据采集模块和主控单片机之间是通过485总线通信的,因此单片机的串口输入/输出要经过MAX485进行电平转换后才能接到485总线上。采样速率可由主控单片机控制。由于篇幅有限下位机软件设计在此没有提及。

图2     数据采集模块原理图

4  上位机通信程序设计
应用VB6.0内嵌MSComm控件只要通过简单的设置与编程,就能实现串行数据的发送与接收。MSComm控件提供了一系列封装好的标准串行通信的属性和方法,使用它可以建立应用程序和串口的连接,完成串行数据的发送与接收。其初始化属性设置如下:
If MSComm1.PortOpen=True Then
MSComm1.PortOpen=False
End If
MSComm1.CommPort=CommNum ‘串口号
'9600波特,无奇偶校验,8 位数据,一个停止位。
MSComm1.Settings="9600,N,8,1"
MSComm1.InputLen=0
MSComm1.RThreshold=20  ‘接收数据门限
MSComm1.SThreshold=0 ‘发送完不成生事件
MSComm1.InputMode=comInputModeBinary
‘通信为二进制模式
MSComm1.PortOpen=True ‘打开串口
MSComm1.InBufferCount=0 ‘清空接收缓冲区
MSComm1.OutBufferCount=0 ‘清空发送缓冲区
下位机向上位机发送的数据帧格式如图3所示:

图3     接收数据帧式

每一帧数据由20个字节组成,依次是:一个字节的帧起始标志为FF;一个字节的数据组号;16个字节的数据;一个字节的校验和,校验和是组号和16个字节的数据间相互异或的结果;最后一个字节为帧结束标志为FD。16个字节的数据中每个字节表示一片电池的电压值,为0~255的一个整数,将该数除以100及得到电压实际值,一般单片电池电压在0.5V~1.2V间。用MSComm进行串行通信接收数据时可采用两种方式实现,一种是查询方式,另一种是事件触发方式。在本系统中选择的是事件触发方式,每当接收缓冲区中数据字节数到达20个时就触发一个接收事件。接收通信程序如下:
Private Sub MSComm1_OnComm()
Dim InputData() As Byte
Dim strSum  As Byte
Dim i As Integer
Dim Volvalue(0 To 18) As Single
With MSComm1
Select Case .CommEvent '判断通信事件
comEvReceive:       '收到20字节的数据
InputData = .Input  ‘读接收缓冲区
If InputData(0) = 253 And InputData(18) = 237 Then ‘判断收到的帧格式正确否
For i = 1 To 17 Step 1
Volvalue(i) = InputData(i)
Next I
strSum = InputData(1)
For i = 2 To 17  ‘计算校验和
strSum = InputData(i) Xor strSum
Next I  ‘将接受数据校验和与发送校验和异或
If strSum = "0" Then ‘如果接收数据正确
Volvalue(N) = InputData(i) / 100
‘换算得到电压实际值
…………数据处理
Case Else
MSComm1.InBufferCount = 0 ‘清空接收缓冲区
MsgBox "串口通信错误"
Exit Sub
End  Sub

在此要注意的一点是从缓冲区读数据时,数组InputData()一定要定义成Byte类型不能为Integer或Single,因为接收模式设置为二进制。上位机发送的指令较少也很简单在此就没有仔细分析。

结束语
燃料电池作为21世纪前景比较看好的一种新的、洁净型能源,有关它的各项技术的研究都有助于推动它向实用阶段进一步发展。本文在单片电压的检测和分析系统的设计上作了一些工作。虽然是面向燃料电池的,但也可借鉴到其它类似的多点检测和控制系统的设计当中去。

本站声明: 本文章由作者或相关机构授权发布,目的在于传递更多信息,并不代表本站赞同其观点,本站亦不保证或承诺内容真实性等。需要转载请联系该专栏作者,如若文章内容侵犯您的权益,请及时联系本站删除。
换一批
延伸阅读

9月2日消息,不造车的华为或将催生出更大的独角兽公司,随着阿维塔和赛力斯的入局,华为引望愈发显得引人瞩目。

关键字: 阿维塔 塞力斯 华为

加利福尼亚州圣克拉拉县2024年8月30日 /美通社/ -- 数字化转型技术解决方案公司Trianz今天宣布,该公司与Amazon Web Services (AWS)签订了...

关键字: AWS AN BSP 数字化

伦敦2024年8月29日 /美通社/ -- 英国汽车技术公司SODA.Auto推出其旗舰产品SODA V,这是全球首款涵盖汽车工程师从创意到认证的所有需求的工具,可用于创建软件定义汽车。 SODA V工具的开发耗时1.5...

关键字: 汽车 人工智能 智能驱动 BSP

北京2024年8月28日 /美通社/ -- 越来越多用户希望企业业务能7×24不间断运行,同时企业却面临越来越多业务中断的风险,如企业系统复杂性的增加,频繁的功能更新和发布等。如何确保业务连续性,提升韧性,成...

关键字: 亚马逊 解密 控制平面 BSP

8月30日消息,据媒体报道,腾讯和网易近期正在缩减他们对日本游戏市场的投资。

关键字: 腾讯 编码器 CPU

8月28日消息,今天上午,2024中国国际大数据产业博览会开幕式在贵阳举行,华为董事、质量流程IT总裁陶景文发表了演讲。

关键字: 华为 12nm EDA 半导体

8月28日消息,在2024中国国际大数据产业博览会上,华为常务董事、华为云CEO张平安发表演讲称,数字世界的话语权最终是由生态的繁荣决定的。

关键字: 华为 12nm 手机 卫星通信

要点: 有效应对环境变化,经营业绩稳中有升 落实提质增效举措,毛利润率延续升势 战略布局成效显著,战新业务引领增长 以科技创新为引领,提升企业核心竞争力 坚持高质量发展策略,塑强核心竞争优势...

关键字: 通信 BSP 电信运营商 数字经济

北京2024年8月27日 /美通社/ -- 8月21日,由中央广播电视总台与中国电影电视技术学会联合牵头组建的NVI技术创新联盟在BIRTV2024超高清全产业链发展研讨会上宣布正式成立。 活动现场 NVI技术创新联...

关键字: VI 传输协议 音频 BSP

北京2024年8月27日 /美通社/ -- 在8月23日举办的2024年长三角生态绿色一体化发展示范区联合招商会上,软通动力信息技术(集团)股份有限公司(以下简称"软通动力")与长三角投资(上海)有限...

关键字: BSP 信息技术
关闭
关闭