燃料电池单片电压巡检显示模块的设计
时间:11-04
来源:互联网
点击:
燃料电池电动汽车是治理汽车尾气污染和解决燃料问题最现实的途径, 燃料电池技术将成为21世纪汽车工业的核心。在燃料电池发动机的研发应用中,为了延长电堆的使用寿命和鲁棒性,必须确定和优化燃料电池测试时能量输出的特性,因此测试系统必须能够灵活的采集实时数据、并具有监视及报警功能,以精确地测试出燃料电池性能。
燃料电池单片电压巡检系统作为燃料电池堆的关键检测设备,它能准确监控燃料电池堆在各个氢气流量、温度、压力和湿度情况下对燃料电池单片的输出电压的影响。通过设计高精度电压检测单元、高速网络控制单元和LCD显示及键盘硬件接口电路,制定CAN和SCI应用层协议,设计功能完善的上位机软件,巡检系统可通过LCD显示采集的燃料电池单片电压数据,监测燃料电池堆的运行状况,并对接收到的数据进行处理、分析,电压异常及时报警,同时也可将数据实时上传到上位机或液晶显示存储。
1. PIC18F258与CA12864F的硬件接口电路
大功率燃料电池堆通常由几百片单片电池串联组成。由于电池堆中单片电池的串联结构,在燃料电池堆运行过程中,单片电池的异常会影响整个电堆的性能与安全,需要实时监测各单片电池电压,便于控制系统作出正确的决策,保障燃料电池安全可靠运行。
巡检系统采用MICROCHIP公司的PIC18F258单片机作为MPU,PIC18F258单片机MICROCHIP公司主推的一款高性价比的8位单片机,它的工作电压范围是4.2V至5.5V(LF系列工作电压范围为2.0V至5.5V),具有高达32KB的FLASH程序存储器,高达1.5K字节的用户SRAM及256字节的EEPROM,它采用精简指令集(RISC)、哈佛总线结构、流水线取指令方式,具有实用、低价、抗干扰性能好、功耗低、速度高、体积小、功能强等特点。本文所提出的系统主要由信号采集电路,数据处理单片机PIC18F258,上位机(巡检主机板) ,键盘系统和液晶显示器五个模块组成,整个系统通过PIC18F258驱动LCD显示。该模块的硬件设计框图如图1所示。
按键有六个按键组成,功能分别为UP、DOWN、LEFT、RIGHT、ENTER、ESC,单片机的RA0~RA5作为键盘输入端口,当键盘按下时,产生一个低电平发送到单片机I/O口,单片机控制液晶做出相应按键的处理,如翻页等。
2.液晶模块CA12864F的特点
液晶显示器(LCD) 具有可编程驱动、接口控制方便、显示信息多、高画质、无辐射、体积小、功耗低、具有良好的可视化人机界面等特点,在智能设备尤其是便携式仪器仪表中得到了广泛应用。在本设计中,采用的液晶模块是松山电子科技有限公司的CA12864F,逻辑电路如图2所示,CA12864F作为大规模点阵式液晶显示器,板载负压、带LED背光,使用KS0108B作为列驱动器, KS0107B作为行驱动器,共有20个引脚, 7-14脚以8位数据并行接收电压信号,最大驱动能力达128×64点阵。
PIC18F258的I/O口具有很强的驱动能力, 其PORTB口最大可通过25mA的电流,单片机的通用I/O口对液晶的控制信号直接进行控制和驱动,将单片机的RB端口进行数据交换和指令发送。PORTC口与液晶显示器CA12864F的RS, RW, E, CS1, CS2引脚相连,控制数据交换的性质和方向。液晶显示器CA12864F的工作电压为:- 5V~+ 5V,且其内部已集成了所需的负电源,CA12864F的Vout引脚将输出-5V。通过调节V0的电压来改变液晶显示器的亮度。CA12864F第19和第20引脚LED +、LED - 作为背光电源,本设计将+ 5V通过一个限流电阻和一个起驱动作用的电容接到LED-引脚上,减少了功耗。
3.系统软件设计
CA12864F液晶显示屏分为两块,因模块自身不带字库,所以要显示的字符和图片动画要通过字模软件获得,然后随程序固化在Flash中。
字模软件基本操作有参数设置、取模方式等,根据液晶的驱动芯片选择横向取模或纵向取模,根据需要显示的字体大小设置几号字,然后即可得到生成的点阵数组。如图3所示为武汉理工大学校徽的64×64点阵数组生成图。
液晶显示完成实时曲线、单片电压数据显示、异常报警显示、简单故障诊断显示、系统设置等功能。用UP、DOWN、LEFT、RIGHT、ENTER、ESC六个按键配合液晶完成菜单选择和翻页、参数设定等功能。
液晶显示程序中,子程序比较多,底层关于驱动器的指令子程序包括读LCD状态、查询BF标志、等子程序。显示汉字和图画的子程序包括LCD整屏清屏、显示汉字等子程序。用户界面子程序包括显示电压值等。整个LCD显示系统主程序流程图如图4所示。
该系统的程序设计使用C语言编制而成,包括初始化程序和应用程序。应用程序分为显示背景、单片电压和显示实时曲线三部分。
下面给出用CA12864F进行显示的部分软件程序代码:
void main( void )
{
TRISC = 0x80;
RC5 = 1;
ADCON1 = 0x07; //配置端口为数字信号
TRISA = 0x3f;
lcd_init(); //液晶初始化,包括开屏、清屏和关屏
sci_init(); //通信初始化,接收电池电压信号
tmr3_init(); //计时初始化,设置采样时间
data_readEE();//设定的单片电压数量
lcd_logo();
while( 1 )
{
key_process();//按键扫描程序,包括上下左右确定退出
data_process();//设置曲线页数graph_page和最后曲线页显示片数graph_endN
lcd_display(); //液晶显示程序,
}
}
燃料电池单片电压巡检系统作为燃料电池堆的关键检测设备,它能准确监控燃料电池堆在各个氢气流量、温度、压力和湿度情况下对燃料电池单片的输出电压的影响。通过设计高精度电压检测单元、高速网络控制单元和LCD显示及键盘硬件接口电路,制定CAN和SCI应用层协议,设计功能完善的上位机软件,巡检系统可通过LCD显示采集的燃料电池单片电压数据,监测燃料电池堆的运行状况,并对接收到的数据进行处理、分析,电压异常及时报警,同时也可将数据实时上传到上位机或液晶显示存储。
1. PIC18F258与CA12864F的硬件接口电路
大功率燃料电池堆通常由几百片单片电池串联组成。由于电池堆中单片电池的串联结构,在燃料电池堆运行过程中,单片电池的异常会影响整个电堆的性能与安全,需要实时监测各单片电池电压,便于控制系统作出正确的决策,保障燃料电池安全可靠运行。
巡检系统采用MICROCHIP公司的PIC18F258单片机作为MPU,PIC18F258单片机MICROCHIP公司主推的一款高性价比的8位单片机,它的工作电压范围是4.2V至5.5V(LF系列工作电压范围为2.0V至5.5V),具有高达32KB的FLASH程序存储器,高达1.5K字节的用户SRAM及256字节的EEPROM,它采用精简指令集(RISC)、哈佛总线结构、流水线取指令方式,具有实用、低价、抗干扰性能好、功耗低、速度高、体积小、功能强等特点。本文所提出的系统主要由信号采集电路,数据处理单片机PIC18F258,上位机(巡检主机板) ,键盘系统和液晶显示器五个模块组成,整个系统通过PIC18F258驱动LCD显示。该模块的硬件设计框图如图1所示。
按键有六个按键组成,功能分别为UP、DOWN、LEFT、RIGHT、ENTER、ESC,单片机的RA0~RA5作为键盘输入端口,当键盘按下时,产生一个低电平发送到单片机I/O口,单片机控制液晶做出相应按键的处理,如翻页等。
2.液晶模块CA12864F的特点
液晶显示器(LCD) 具有可编程驱动、接口控制方便、显示信息多、高画质、无辐射、体积小、功耗低、具有良好的可视化人机界面等特点,在智能设备尤其是便携式仪器仪表中得到了广泛应用。在本设计中,采用的液晶模块是松山电子科技有限公司的CA12864F,逻辑电路如图2所示,CA12864F作为大规模点阵式液晶显示器,板载负压、带LED背光,使用KS0108B作为列驱动器, KS0107B作为行驱动器,共有20个引脚, 7-14脚以8位数据并行接收电压信号,最大驱动能力达128×64点阵。
PIC18F258的I/O口具有很强的驱动能力, 其PORTB口最大可通过25mA的电流,单片机的通用I/O口对液晶的控制信号直接进行控制和驱动,将单片机的RB端口进行数据交换和指令发送。PORTC口与液晶显示器CA12864F的RS, RW, E, CS1, CS2引脚相连,控制数据交换的性质和方向。液晶显示器CA12864F的工作电压为:- 5V~+ 5V,且其内部已集成了所需的负电源,CA12864F的Vout引脚将输出-5V。通过调节V0的电压来改变液晶显示器的亮度。CA12864F第19和第20引脚LED +、LED - 作为背光电源,本设计将+ 5V通过一个限流电阻和一个起驱动作用的电容接到LED-引脚上,减少了功耗。
3.系统软件设计
CA12864F液晶显示屏分为两块,因模块自身不带字库,所以要显示的字符和图片动画要通过字模软件获得,然后随程序固化在Flash中。
字模软件基本操作有参数设置、取模方式等,根据液晶的驱动芯片选择横向取模或纵向取模,根据需要显示的字体大小设置几号字,然后即可得到生成的点阵数组。如图3所示为武汉理工大学校徽的64×64点阵数组生成图。
液晶显示完成实时曲线、单片电压数据显示、异常报警显示、简单故障诊断显示、系统设置等功能。用UP、DOWN、LEFT、RIGHT、ENTER、ESC六个按键配合液晶完成菜单选择和翻页、参数设定等功能。
液晶显示程序中,子程序比较多,底层关于驱动器的指令子程序包括读LCD状态、查询BF标志、等子程序。显示汉字和图画的子程序包括LCD整屏清屏、显示汉字等子程序。用户界面子程序包括显示电压值等。整个LCD显示系统主程序流程图如图4所示。
该系统的程序设计使用C语言编制而成,包括初始化程序和应用程序。应用程序分为显示背景、单片电压和显示实时曲线三部分。
下面给出用CA12864F进行显示的部分软件程序代码:
void main( void )
{
TRISC = 0x80;
RC5 = 1;
ADCON1 = 0x07; //配置端口为数字信号
TRISA = 0x3f;
lcd_init(); //液晶初始化,包括开屏、清屏和关屏
sci_init(); //通信初始化,接收电池电压信号
tmr3_init(); //计时初始化,设置采样时间
data_readEE();//设定的单片电压数量
lcd_logo();
while( 1 )
{
key_process();//按键扫描程序,包括上下左右确定退出
data_process();//设置曲线页数graph_page和最后曲线页显示片数graph_endN
lcd_display(); //液晶显示程序,
}
}
电动汽车 电压 LCD 电路 PIC 单片机 总线 显示器 电子 LED 电流 电阻 电容 C语言 ADC 相关文章:
- 即将普及的碳化硅器件(10-19)
- 纳米技术帮助锂电池瘦身(08-20)
- 智能型的铅酸蓄电池管理系统(04-29)
- PWM加相移复合控制双向DC/DC变换器优化设计(07-28)
- 基于PIC单片机的数字式智能铅酸电池充电器设计(07-29)
- 数字化智能充电器的设计(08-30)