




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、专业综实训报告 基于ARM9的新型充电机的设计摘要:本设计介绍了一种矿用智能充电机的主要设计过程,在控制电路的设计上采用先进的以ARM9为核心的嵌入式技术,控制算法上采用一种变结构的控制技术。经过项目开发过程中的实验,结果表明基于arm9系统控制的矿用嵌入式系统充电机充电效果良好。关键词:充电机, 嵌入式系统, ARM91 引言针对当前矿用充电机存在充电效率低、充电时间长、对蓄电池损害大等缺点,笔者利用智能控制技术、嵌入式系统应用技术和现代电力电子等领域中的最新成果,形成高效、快速、无损的蓄电池优化充电思想和技术方案。依据最佳充电电流曲线给定,采取瞬间放电减少极化,提出了以蓄电池极化电压和蓄电
2、池的荷电状态决定充电电流的智能充电思路;采用一个两单元的智能功率模块IPM作主回路开关器件,实现新型BuckBoost拓扑,完成向蓄电池充电和蓄电池去极化放电功能;设计了基于Sam-sung公司 S3C44BOX为核心的矿用充电机控制电路,实现高速的数据采集、复杂的控制算法和PWM输出控制等功能,从而完成高效、快速、无损的充电过程。2 新型智能充电机主电路(1)BuckBoost双向功率传输电路主电路采用BuckBoost双 向功率传输电路,为AC-DC-DC变换电路.其AC-DC部分的作用是通过将三相交流电源U、V、W进行降压、隔离和整流后得到不可控制的直流电压U1;DC-DC部分采用的电路
3、和一般资料中所介绍的 Buck-Boost电路不同。这里BuckBoost电路的含义是一个方向为Buck电路,另一方向为Boost电路;即对蓄电池充电时为Buck电路,放电时为Boost电路,如图1所示。图1 Buck/Boost DC-DC可逆电路当对蓄电池进行充电时,全控器件Q关断,直流电压U1经过全控开关器件 Q1、续流二极管D2和电感L(同时兼作滤波)组成的Buck电路,并通过控制Q通断来控制输出电压U2的大小,来控制蓄电池的充电电流和充电电压。当蓄电池需去极化放电时,Q1关断,通过控制由Q2、L和D1所组成的Boost电路,将蓄电池去极化时的能量通过Boost电路传递给电容C1,当蓄
4、电池去极化结束,转人充电时,由于电容C1,储存有蓄电池去极化时放电的能量,电容两端电压很高,因此电容C1通过Q1,D2和L组成的Buck电路将所储存的能量释放给蓄电池,当电容C1,电压低于一定值后,由电网通过充电装置向蓄电池组进行充电。 (2)IPM-PM200DSA120模块主电路的全控器件采用的是MITSUBISHI公司生产的IPM PM200DSA120模块。它是一个两单元的耐压1200V、电流 200A、频率可达20kHz,集控制、驱动、保护于一体的智慧型IGBT模块。两个单元分为P和N,都具有过流、短路、欠压检测及保护功能,N单元还具有超温检测及保护功能。每个单元均有5个控制信号,以
5、N单元为例,按管脚顺序分别为:V(NI-)电源端,一般接+15V电源;S(NR-)模块本身提供的+5V电源;C(NI-)PWM控制信号输入端;V(NC-)接地端;F(NO-)故障信号输出端 。3. 新型智能充电机控制电路控制电路主要由Samsung公司生产的基于ARM7TDMI的嵌入式微控制器 S3C44BOX作为核心器件,再加上相应的接口电路组成,控制电路如图 2所示。EINT1S3C44BOXEINT2外部中断PWM控制电路 Tout1EINT3EINT2Tout2 ADC信号调理模块 UGPIO系统控制总线ITLCD/触摸屏模块SDRAMFLASH 图2 控制电路结构图(1)S3C44B
6、0XSamsungS3C44BOX微处理器是三星公司提供的高性价比高性能的微控制器,它使用ARM7TDMI核,工作在66MHz。为了降低系统总成本和减少外围器件,这款芯片中还集成了以下部件:1)8KB Cache;2)外部存储器控制器;3)LCD控制器;4)4个DMA通道;5)2通道UART;6)1个多主I2C总线控制器;7)1个Is总线控制器;8)5通道PWM定时器及一个内部定时器;9)71个通用IO口;10)8个外部中断源;11)实时时钟;12) 8通道10位ADC等。该芯片还具备ARM的高速结构和精简系统,可以完成各种复杂的控制任务。(2)外扩存储器1)FLASH扩展了一片AMD公司生产
7、的FLASH芯片AM29V160,其容量为2MB,速度为90ns。将其连接到S3C44B0X八个存储体中的Bank0上,作为系统的自举ROM存储体,设定其地址为0x000000000x001ff。由于AM29V160为 16×1Mbit,因此通过OM1:0=01配置 Bank0的总线宽度为 16位。2)SDRAM系统实现新型智能充电算法时采用了模糊神经网络(FNN)在线控制的程序设计和模糊控制器(FC)的隶属度求解和模糊推理,同时采用了触摸屏实现人机交互,因此移植了嵌入式操作系统uCOS-,因而系统对内存要求较高,为此本系统扩展了HYUNDAI公司生产的SDRAM芯片HY57V641
8、620,其为 16×4Mbit,容量为8MB。用SDRAM作系统内存,只有S3C44BOX的Bank0Bank7能支持SDRAM,所以将SDRAM HY57V641620接在Bank6上。设定其地址为0x0c0000000x0c7fff。(3)LCD与触摸屏电路该部分主要实现充电参数的设置以及蓄电池的端电压、充电电流、充电时间 、蓄电池电解液的温度、蓄电池的荷电状态以及故障和充电结束等状态以及充电电压和充电电流的曲线的显示。S3C44BOX自带LCD控制器模块,这样就无需加外围LCD控制器芯片。在此作者直接使用S3C44BOX自带LCD 控制器模块,将其控制信号经74HC245驱动后
9、直接与台湾生产的320×240带4线触摸屏液晶显示模块RG322421WNHDWB-T相连。S3C44BOX通过端口G模拟串行的SIO接口与Burr-Brown公司生产的触摸屏控制芯片ADS7843进行数据传输,完成对 触摸屏触摸位置坐标的读取。主要完成电极电压的切换以及采集接点处电压并进行AD转换功能 。(4)信号检测与 AD转换电路 S3C44BOX内部集成了一个10位数模转换器,它包括一个8通道的模拟输入、自动过零比较器 、时钟发生器、10位连续近似寄存器(SAR)和输出寄存器,并提供软件选择的运行模式。系统充分利用S3C44BOX片内所带AD,与信号检测电路全隔离信号调理模块
10、的输出端相连。由于S3C44BOX片内自带AD转换器的输入电压范围为0-2.5V,因此充电电压的检测采用输入为0-450VDC输 出为0-2.5V电压信号可与微机直接接口的全隔离信号调理模块检测,加在 S3C44BOX片内自带AD转换器的AIN0上;充电电流首先通过输入为300A输出为75mV的分流器,然后通过输入为0-75mV输出为0-2.5V的全隔离信号调理模块隔离后加在S3C44BOX片内自带AD转换器的AIN1上。蓄电池的电解液温度采用特制耐酸的温度范围为-50/+150的热电偶Cu50检测并经输人为 -5O/+150、输出为0-2.5V的全隔离信号调理模块处理后加在S3C44BOX片
11、内 自带AD转换器的AIN2上。由于全隔离模块的隔离电压为2000VDC(1 min),再加上数字量都使用光电耦合器隔离,使主电路和控制电路完全隔离,因而整个装置的控制电路安全可靠。(5)PWM驱动和保护 电路S3C44BOX中有6个16位定时器,其中定时器0-4五个有PWM功能,并具有:6个基于DMA或基于中断操作的16位定时器;3个8位预分频器,2个5位除法器,1个4位除法器;输出波形可编程的功率控制(PWM);自动装载或短脉冲模式;死区发生器等功能。系统应用了其TOUT1和TOUT2实现对全控器件IPM PM200DSA120模块的控制。充电时,由S3C44BOX的TOUT1口输出频率为
12、20kHz,占空比可变的 PWM 信号,通过光电隔离后控制IPM的上臂导通,从而控制充电电流的大小。去极化放电时,由S3C44BOX的TOUT2口上产生周期为1k占空比为0.5的PWM信号,通过光电隔离后加在IPM下臂的控制端,实现对蓄电池进行反向去极化放电。IPM本身具有过流、短路、欠压和过温保护,当有上述故障发生时,IPM自身能够快速关断,但关断不死。另外当IPM发生上述故障时,其在 FNO端输出脉宽大于1ms的低电平(正常时该端为高电平),作者将IPM上、下臂的故障信号信号FPO和FNO相与后通过光电隔离加在S3C44BOX的外部中断端EINT2和EINT3上。一旦发生故障,FPO或FN
13、O端输出低电平,产生外中断。在外中断服务程序中封锁TOUT1和TOUT2口输出的加在IPM输入端CPI和CNI上的脉冲,从而更加可靠地保 护了IPM模块。如图 3所示。此外,该系统留有以太网接口、RS232串行扩展接口,以实现联网及通讯功能。图3 驱动电路和保护电路4软件设计根据系统的功能,笔者移植了源码公开的实时嵌入式操作系统uCOS-I,uCOS-I仅是一个实时内核,它不像其它实时操作系统那样提供给用户的只是一些 API函数接口。系统的软件部分主要包括三层结构,如图4所示。在设备驱动程序部分,主要针对本系统所用到的硬件外围设备,定制了4个驱动程序,分别为:AD转换数据采集驱动(addata
14、.c)、触摸屏驱动(tou-ch. c )、液晶显示器驱动( lcd. c)和PWM定时器控制输出驱动(pwm. c )。另外,系统还包括8个功能模块,分别为:模糊神经网络(FNN)在线控制的程序设计模块、模糊控制器(FC)模块、数据采集模块、数据存储模块、LCD显示模块、触摸模块、PWM控制输出模块以及其它应用模块。图4 系统软件结构5 仿真及功能应用 图5 仿真及功能应用在焊机电路板时尽量合理分配能把焊接失误率降到最低,软件编程很麻烦,但是把老师以前讲过的东西好好捋顺后会好很多。 图6 数显充电器把外壳安装好,按键放到指定位置。就可以正常工作了。但是在安装调试时出现一些问题,在焊机时排版有
15、些困难,编程时很多字符不太清楚,查阅资料很费时间,但是学会了很多东西,调试时因为焊接瑕疵很多参数有一定问题。unsigned char ENDPOINT_A0_FIFO8;/判断输入的是SETUP请求,并将其读入缓冲区ENDPOINT_A0_FIFOif(ENDPOINT_A0_FIFO0 & 0b011000000)=0x00)if(ENDPOINT_A0_FIFO1<=0C)(*StandardFunctionTableENDPOINT_A0_FIFO1)();return;const void (*StandardFunctionTable)(void)=GetSatus,
16、ClearFeature,USB_Reserved,SetFeature,USB_Reserved,SetAddress,GetDescriptor,SetDescriptor,GetConfiguration,SetConfiguration,GetInterface,SetInterface,SynchFrame;USB设备在正常使用以前,必须由主机配置设备。主机一般会从USB设备获取配置信息后再确定此设备有哪些功能。作为配置操作的一部分,主机会设备设备的配置值,如果必要的话会选择合适的接口备选设备。其初始化函数为:void D12_int() XmtBuff.pNum=16;D12_CO
17、MMAND=0xf4;/读中断寄存器ist=D12_DATA;ist=D12_DATA;if(ist & 0x01) /ENDP0_OUTXmtBuff.out=0;XmtBuff.in=1;D12_COMMAND=0x40; /读OUT最后状态ist=D12_DATA;if(ist & 0x20)/收到SETUP包 Setup_read();Setup_control();else Setup_read();else if(ist & 0x02)/ENDP0_IN XmtBuff.in=1;D12_COMMAND=0x41;/读in最后状态ist=D12_DATA;U
18、SB_submit();else if(ist & 0x04)/ENDP1_OUT XmtBuff.out=2;XmtBuff.in=3;D12_COMMAND=0x42;/读out最后状态ist=D12_DATA;read_out();else if(ist & 0x08)/ENDP1_IN XmtBuff.in=3;D12_COMMAND=0x43;/读in最后状态ist=D12_DATA;XmtBuff.b0=5;XmtBuff.wrLength=1;XmtBuff.p=XmtBuff.b;USB_submit();在发出连接USB命令后,主机先读取设备描述符,然后发出设
19、置USB地址SETUP包,设置USB地址后,进行主机客户驱动与设备初始化。其余端点(ENDPOINT)依此类推。在其头文件里需定义USB规范中的各种描述符格式,包括设备描述表、配置描述表、接口描述表、端点描述表、字符串描述表以及描述表类型。这样,在发送配置联合描述表时,主机USBD可以根据描述类型标识区分各种分描述表。下面是固件程序的主循环部分:#include<reg51.h>/指向外部D12访问地址#define D12_COMMAND(*(unsigned char xdata *)0xff01)#define D12_DATA (*(unsigned char xdata
20、*)0x7f02)extern void D12_int();sbit D12_suspend=P10;sbit D12_int_n=P11;sbit D12_eot_n=P12;sbit D12_DMAck_n=P13;sbit D12_DMAreq=P14;void main(void)unsigned char ist;P1=0xff;D12_COMMAND=0xf3;D12_DATA=0x06;/设置模式0D12_DATA=0x03;/初始化频率12MHzD12_COMMAND=0xd0;D12_DATA=0x80;/设置地址0使能D12_COMMAND=0xf3;/连接主机D12_D
21、ATA=0x16;while(1) if(!D12_int_n)D12_int();在编写USB的固件程序时,需要注意:单片机的中断应设置为电平触发;中断后一定要读上次传输状态寄存器(命令4045H),以清除中断寄存器中的中断标志。这样,PDIUSBD12的中断输出才能变回高电平,这一点非常重要。在接收到Setup包后,一定要调用D8命令重新使能端口0。在向IN端写完数据后,一定调用命令FAH,指明缓冲区中的数据有效,可以发送到主机。读写数据后,一定调用命令F2H,以保证可以接收新的包。可以通过调用命令FDH,检查PDIUSBD12是否工作。该命令要读两个字节数据。USB设备驱动程序的编写需要
22、用到下列软件:(1) Microsoft Visual C+。(2) SDK(Software Development Kit,软件开发工具包)。(3) DDK(Driver Development Kit,驱动开发工具包)。Visual C+是包含标准编译工具(编译程序和连接程序)的集成开发环境,通过正确设置,其可用来建立内核模式的设备驱动程序。SDK是Microsoft公司提供的软件开发工具包,它含有比Visual C+更多的工具。DDK是Microsoft公司提供的驱动开发工具包,它是开发设备驱动程序所必需的软件组件。win32应用程序的编写需要利用软件开发工具,其中常用的有:(1) M
23、icrosoft Visual C+。(2) Microsoft Visual Basic。我们可以选择其中一个来进行应用程序的编写。但鉴于Microsoft Visual C+编写出来的程序运行效率高,兼容性好等特点,在此我们将会选用其作为win32应用程序的开发工具。在win32系统中,把每一个设备都抽象为文件,此时的应用程序只需通过几条简单的文件操作API函数,就可以实现与驱动程序中某个设备的通信。特点:1)输入输出变压器尺寸大;2)用于消除高次谐波的输出滤波器尺寸大;3)变压器和电感产生音频噪声;4)对负载和市电变化的动态响应性能较差.5)效率低;6)输入无功率因数矫正,对电网污染较严重;7)成本高,特别对于小容量机型,无法与高频机相比.应用:本产品在技术的更新和先进系统的应用让本产品大大提高了竞争力,由于体积小,制作成本不高,能够投入流水线生产,提高存
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年家庭农场承包合同
- 基于手势识别的自然交互界面探索-洞察阐释
- 能源采购居间服务协议范本
- 绿色建筑示范场开发与推广合作协议
- 柴油运输环保风险评估合同
- 2025合作合同范本母公司与发展公司合作协议模板
- 2020年江苏公务员考试申论真题及答案(C类)
- 系统功能测试计划
- 量子化学测试题目及答案
- 新证券法考试题及答案
- 成人手术后疼痛评估与护理团体标准
- UL1034标准中文版-2020电子防盗锁UL标准中文版
- 网络直播平台化妆师合作协议
- 高等数学基础-007-国开机考复习资料
- 四川省英语高考试题及解答参考(2025年)
- 《传染病防治法》课件
- 中南运控课设-四辊可逆冷轧机的卷取机直流调速系统设计
- 呼吸系统测试题(含参考答案)
- 欧洲文明概论学习通超星期末考试答案章节答案2024年
- 民兵知识小常识
- 山西省大同市平城区2023-2024学年六年级下学期期末考试英语试卷
评论
0/150
提交评论