李敏 (芜湖职业技术学院信息工程学院,安徽芜湖 241006)
包广华 (芜湖市产品质量监督检验所,安徽芜湖 241007)
夏跃武 (芜湖职业技术学院信息工程学院,安徽芜湖 241006)
庞辉 (埃泰克汽车电子(芜湖)有限公司,安徽芜湖 241009)
基于USB通信技术的车用电动天窗检测系统设计
李敏 (芜湖职业技术学院信息工程学院,安徽芜湖 241006)
包广华 (芜湖市产品质量监督检验所,安徽芜湖 241007)
夏跃武 (芜湖职业技术学院信息工程学院,安徽芜湖 241006)
庞辉 (埃泰克汽车电子(芜湖)有限公司,安徽芜湖 241009)
采用STM32处理器作为系统下位机实现核心控制,设计了一种车用电动天窗检测系统,完成了车用电动天窗的控制、位置、状态检测及判别,通过USB接口实现了PC机与STM32系统通信,并采用C#语言设计了系统PC端软件界面及USB通信程序主要控制天窗开启,设置天窗电机参数和运行次数以及进行故障监测和报警,并记录运行状况(包括故障时间和无故障运行次数),同时将数据导入到Execl表中,便于后期数据管理。实际应用表明,利用该系统可实现汽车电动天窗生产的在线测试和整车厂抽检。
USB;STM32;电动电窗
为适应消费者对汽车安全、舒适的各方面需求,电动天窗被广泛使用[1]。为了防止车窗质量问题引发安全事故(如车窗难以打开、打开移动不到位等电机堵转故障),影响整车质量问题,因此在车窗产品出厂或整车安装前均需进行检测。国内目前已研制出的电动天窗测试系统多数采用上下位机联合控制,由下位机控制天窗的运行及信号检测,经通信线路传至上位机显示参数并报警,同时记录保存[2],通信多采用RS232标准。由于RS232标准通信低速且可靠性较低,硬件系统较为复杂。此外,目前多数PC机配置无RS232接口。因此,采用高速传输且可靠的USB通信方式实现上下位机通信传输对于工业测控系统来说意义重大。为此,笔者基于USB通信技术设计了一种车用电动天窗检测系统。
电动天窗检测系统硬件由供电电路、天窗信号检测和开启关闭控制电路、天窗电机过载信号检测、放大及报警电路等构成。系统采用STM32F103作为主控芯片,PA1作为天窗关闭到位检测信号,将PA2作为天窗开启到位检测信号,PA11和PA12作为USB通信接口,利用PD0控制电动天窗供电, PD1控制电动天窗的关闭,PD2控制电动天窗的开启。此外,将PA6作为过载信号的检测输入,PA4作为故障报警信号输出。系统主控原理图如图1所示。
1.1 天窗开启关闭到位检测及控制电路
天窗开启关闭到位控测及控制电路如图2所示。系统采用传统红外光电传感器检测天窗开启和关闭位置检测,输出开关量信号。该信号通过4N35光电耦合器输入至PA1和PA2口,实现位置信号输入,采用光电耦合器隔离,降低输入输出信号间干扰。在天窗开启关闭控制中,根据电动天窗控制系统要求[3],由PD1输出高电平经4N35光电耦合器进行信号隔离,同时PD2输出低电平经4N35光电耦合器进行信号隔离,输出至天窗控制器,控制天窗开启,反之控制天窗关闭。
1.2 天窗电机堵转信号检测、放大及报警电路
天窗电机堵转信号检测、放大及报警电路如图3所示。天窗电机因故障发生堵转时,采样电阻R8电压上升,将该信号经过LM2904N放大后,再经过LM2904N构建的电压跟随器输入至电压频率变换器VFC320转换为频率信号,为防止信号干扰,再通过4N35光电耦合器隔离至STM32的PA6,作为过载信号的检测输入,并通过USB接口将相关数据传至PC上位机处理。当数据处理出现堵转时,报警数据经USB接口下传至STM32。STM32接收上位机数据在PA4引脚输出低电平通过光电耦合器至2SC8015控制蜂鸣器报警。在PD0引脚输出低电平通过光电耦合器隔离控制继电器、交流接触器,切断电机供电电源,实现断开天窗电机总电源。在交流接触器的常闭触点两端并接阻容吸收电路,消除交流接触器触点火花干扰。根据天窗负载特性,供电电源断开后暂停几十秒,再给天窗电机供电,实现天窗重复运行。由于车用电动天窗电机不能长时间连续工作,天窗控制中设置了中间位置的停顿,因而检测天窗时要对中间位置停顿信号进行判断,相应方法如下:首先检测开启和关闭信号是否均为低电平,若是低电平,则表明此时天窗处在中间位置,再判断电流是否超过额定值;若电流接近零,则表明是中间位置停顿,延迟一段时间后,发出之前的天窗控制信号,天窗正常测试;若电流超过额定值,则表明天窗在中间位置堵转。
图1 系统主控原理图
图2 天窗开启关闭到位检测及控制电路图
2.1 STM32采样控制和USB通信软件
STM32系统软件采用C#语言开发,包括系统初始化、USB初始化、USB数据接收中断子程序、天窗开闭到位中断子程序、过载电流采样子程序、USB通信程序等。STM32F103芯片内含USB控制器,直接使用PA11和PA12与PC端通信。USB控制器内部有16位寄存器,可实现与缓冲区的数据交换,根据数据传输方向,实现发送或接收数据分组,并触发USB设备端点中断。设备端点所用的缓冲区描述块内容主要包含地址和存储容量以及传输字节数等。相关流程如下:建立USB通道、响应PC机请求后执行枚举操作、等待中断; USB接收中断,上位机发出复位启动命令和堵转电流值时,触发USB数据接收中断;电机过载中断,当电机发生过载时,通过电压频率转换器产生频率信号触发输入捕捉中断;红外光电传感器到位检测中断。STM32系统软件信号采集及USB通信程序流程图如图4所示。
图3 天窗电机堵转信号检测、放大及报警电路图
2.2 检测系统PC端软件设计
图4 STM32系统软件信号采集及USB通信程序流程图
PC端软件采用C#语言设计,USB系统采用中断传输模式,通信采用HID驱动,从而实现USB免驱。STM32与PC机之间信息传输通过数据缓冲区进行操作,该缓冲区设256字节存储容量和2个单向端口,PC上位机识别USB设备属性通道为端口0、PC上位机接收STM32下位机数据为端口1,PC上位机向STM32下位机发送数据为端口2[4];当PC向STM32发送请求,STM32接收PC请求后作出响应。PC与STM32的USB通信格式如图5和图6所示。
PC端软件流程如下:首先系统初始化并加载USB组件,PC查询USB设备,若STM32系统已接上,则在界面上显示设备检测状态和厂家ID和产品ID,同时进入中断等待状态;中断类型有2 个,一是等待事件中断,若有事件发生则读取按键控件ID,通过ID判断是哪一个按键中断并发送相应数据至STM32,二是USB数据接收事件中断,当下位机发送相应数据至PC,则触发此中断并显示数据内容。检测系统操作界面设计如图7所示。当按下复位键,则天窗执行关闭操作,实现复位。天窗运行关闭到位时,界面上关闭有效显示绿色,当天窗发生过载,界面过载显示红色,同时可按复位键使得天窗回到关闭位置。此外,在操作界面上可设置检测天窗的批次和运行次数以及过载电流大小,并显示天窗的实际运行次数以及运行起始时间和停止时间,同时记录不合格天窗的数据并保存至Excel表中。
图5 STM32至PC的USB通信格式
图6 PC至STM32系统的USB通信格式
图7 车用电动天窗检测系统界面
设计了一种车用电动天窗检测系统,实现了电动天窗到位检测、电机的过载电流检测以及中间位置停顿检测,并采用USB通信方式将采集数据上传到PC机显示,其中PC机界面和通信程序采用C#语言设计,主要控制天窗开启,设置天窗电机参数和运行次数以及进行故障监测和报警,并记录运行状况(包括故障时间和无故障运行次数),同时将数据导入到Execl表中,便于后期数据管理。实际应用表明,利用该系统能够实现汽车电动天窗的在线测试和整车厂抽检,因而具有可行性。
[1]张志敏,陶永琴.基于嵌入式系统的智能汽车天窗的设计[J].电子测试,2013(9):111-113.
[2]李军,王立涛.电动天窗耐久性测试系统的研制与开发[J].微计算机信息,2008,24(1):112-114.
[3]任佳丽,李月香.汽车电动天窗控制单元的设计与实现[J].机械管理开发,2009,24(2):185-187.
[4]田明,徐平,黄国辉,等.基于STM32和μC/OS-II的USB数据采集系统[J].机电工程,2012,29(4):482-485.
[编辑]李启栋
U463.85
A
1673-1409(2014)19-0046-04
2013-10-20
安徽省校企合作实践教育基地项目(2012sjjd047);安徽省信息技术专业群教学团队项目(2013jxtd051)。
李敏(1977-),男,硕士,讲师,现主要从事检测技术与自动化装置方面的教学和研究工作。
包广华(1955-),男,工程师,现主要从事电器产品质量监测检验方面的研究工作;E-mail:2910130948@qq.com。