飞思卡尔杯第六届设计应用大奖赛——电梯安全监控系统比赛编号:1000231日期:2007-11-28姓名:李勇(LiYong)职业:在读本科生姓名:顾锋(GuFeng)职业:在读本科生姓名:赵国海(ZhaoGuoHai)职业:在读本科生姓名:赵文龙(ZhaoWenLong)职业:在读本科生指导老师:陈敏(ChenMin)职业:教师电子邮箱:arlai360@sina.com电话:13675164128单位名称:南京师范大学电气与自动化工程学院通讯地址:江苏省南京市板仓街78号南京师范大学紫金校区04713信箱邮编:210042电梯安全监控系统摘要:本文介绍了一种利用加速度传感器对运行中的电梯进行安全监控的监控系统。本方案采用飞思卡尔半导体公司的MMA7260Q型3轴小量程加速传感器和MC9S08QG8CPBE单片机,在自制电梯模型上进行仿真试验,对电梯轿箱运行中的加速度进行实时监控。监控系统采用了虚拟仪器技术,单片机(下位机)与PC机(上位机)通过串口进行通信,上位机采用NI公司的LabVIEW制作监控软件。关键词:电梯、安全监控、加速度传感器、虚拟仪器、LabVIEW引言在现代社会中,人们对作为垂直交通工具的电梯已习以为常,且越来越依赖它。像任何其他交通工具一样,电梯在给人们节省时间和体力的同时,也不可避免地带来了一定的风险。为了把这种风险降到最低限度,多年来人们一直在对电梯安全性方面进行摸索,使它的安全保障措施日趋完善。当工程师们在评估某种机械运动将产生的毁灭性效应或交通工具带给乘员的不舒适度时,加速度是首先要考虑的重要因素,随着城市建设的现代化,高层和超高层建筑越来越多,因而高速电梯的使用就很广泛了,如上海金茂大厦就高达88层,电梯速度达9.1m/s.电梯在运行中,起动和制动相当的频繁,也就是说,其加速度的变化相当明显.因此考虑加速度的变化率(即加加速度)就显得十分更加重要了.同时,电梯经过长时间的运行后,许多部件容易磨损甚至损坏,例如最重要的铰链,如若断裂,在自由落体过程中,速度在很短的时间内将会很大,如果有人在里面,将会带来严重的生命危险。飞思卡尔半导体公司制造的MMA7260Q型3轴小量程加速传感器的传感器模块在三维加速度检测方面十分出色,因其小巧轻便,使用方便,将其安装在电梯轿厢中,实时检测电梯运行的状况,必将在电梯安全性能上大大改善,市场也十分广大。一.设计概述1.1系统概述:本方案采用飞思卡尔半导体公司的MC9S08QG8CPBE单片机和MMA7260Q型3轴小量程加速度传感器,在自制电梯模型上进行仿真试验,使用基于虚拟仪器技术的监控系统对电梯轿箱运行中的加速度进行实时监控。在监控过程中,若有危险情况出现,即加速度传感器模块检测到的加速度信息超过规定的范围,那么单片机(下位机)将给出指令信号使(1)电机停转(2)制动系统启动(3)蜂鸣器报警,然后等待危险解除,再恢复正常运行。1.2系统模块z主控制模块:通过MC9S08QG8CPBE处理加速度传感器采集的数据并对电梯实施控制z加速度传感器模块:通过MMA7260Q型3轴小量程加速传感器将变化的加速度转换成数字信号供单片机处理z通信模块:通过采用了FTDI公司制造的FT232R作为USB-COM桥接芯片实现上位机与下位机的通信。是基于FT232R桥接芯片开发USB/UART接口设计的。通用异步收发器(UART:UniversalAsynchronousReceiver/Transmitter)一直是PC中最主要的串行通信接口。然而随着高速通用串行总线(USB)的出现使得外围设备到计算机的连接更加高效、便利。它不仅具有快速、即插即用、支持热插拔的特性而且最高支持连接127个外部设备可以有效地解决PC机外围接口不足的问题。但是由于USB规范对电缆长度的限制是:对于高速设备、全速设备之间不超过5米;对于低速设备则限制为3米(UART组成485网络可以传输1200米以上)。这限制了USB在长距离工业数控系统中的应用,所以UART目前还被大量地应用在工业、通信和家电控制等方面。鉴于PC机USB接口的通用性以及充分发挥USB/UART各自接口优势我们引入了基于FT232R的USB/UART接口设计摆脱了常规USB接口设计难度加快了系统开发进程。z人机界面监控模块:通过LabVIEW编制应用程序采集下位机数据,进行分析处理,实时监控电梯状况。本方案采用了虚拟仪器技术,自20世纪90年代以来,在计算机技术的推动下,以虚拟仪器为标志的通用化、智能化和网络化测量仪器及测试系统得到了迅速发展,使得测量仪器和数据采集系统的设计方法和实现技术发生了深刻变化。在虚拟仪器系统中,硬件仅仅是为了解决信号的输入输出,软件赋予仪器生命,是整个仪器系统设计的关键,任何一个使用者都可以通过修改软件的方法,很方便地改变、增减仪器系统的功能与规模,所以有“软件就是仪器”之说。NI公司的LabVIEW是当前流行的图形化开发环境,同时它也是一种功能强大的编程语言(亦被称为G语言).它是一套专为数据采集与仪器控制、数据分析和数据表达而设计的图形化编程软件,使创建的程序模块化,易于调试、理解和维护。而且程序编程简单、直观.因此它特别适用于数据采集处理系统。LabVIEW软件本身免费提供RS232、GPIB、VXI等总线的驱动程序,这大大简化了计算机控制过程中的通信处理工作。单片机(下位机)与PC机(上位机)通过串口进行通信,上位机采用NI公司的LabVIEW制作监控软件。采用虚拟仪器技术的优点是:充分利用PC机强大的运算处理功能,减轻单片机的运算负荷,从而提高整个系统的高效性、准确性、可靠性。1.3系统框图zPC与MCU通信框图MCUUSB-COMLabVIEWGUI图1.1PC与MCU通信框图zMCU控制框图电梯轿厢报警系统采样模块微控制器止动系统驱动模块电机停转初始化设置Pin口选择图1.2MCU控制框图二.硬件概述2.1系统硬件原理图系统硬件主要由四部分组成:微控制器、传感器、电机及驱动模块、电磁抱闸模块等,其原理图如下:图2.1系统硬件原理图2.2单片机(MC9S08QG8CPBE)简介单片机使用的是日本Sunhayato株式会社的SF9S08C。SF9S08C是已将串行监控程序写入飞思卡尔半导体公司制造的单片机MC9S08QG8CPBE后的Sunhayato产品。其芯片引脚图如下:图2.2芯片引脚图MC9S08QG8CPBE是采用高性能、低功耗的HCS08内核的飞思卡尔8位微控制器系列中具有很高集成度的器件。MC9S08QGMCU集成了那些通常只有较大、较昂贵的元器件才具有的性能,包括背景调试系统以及可进行实时总线捕捉的内置在线仿真(ICE)功能,具有单线的调试及仿真接口。该产品的特色还包括一个可编程的16位定时器/脉冲宽度调制(PWM)模块(TPM),是同类产品中最灵活、最经济的模块之一。MC9S08QG8CPBE系列单片机的特点:z电压高于2.1V时,工作频率高达20MHz;小于2.1V时,工作频率达16MHzz8KFLASH存储器,512字节RAMz支持多达32个中断/复位源z带有8位预分频器的8位模数定时器模块(MTIM)z增强型8通道、10位模数转换器(ADC)z模拟比较器模块z三个通讯接口:SCI、SPI与IIC2.3加速传感器简介MMA7260QT低成本微型电容式加速度传感器采用了信号调理、单极低通滤波器和温度补偿技术,并且提供4个量程可选,用户可在4个灵敏度中的选择。该器件带有低通滤波并已做零g补偿。MMA7260QT功能:z可选灵敏度(1.5g/2g/4g/6g)z低功耗:500µAz休眠模式:3µAz低压运行:2.2V~3.6Vz6mmx6mmx1.45mm的无引线四方扁平(QFN)封装z高灵敏度(800mV/g@1.5g)z快速开启z低通滤波器具备内部信号调理z设计稳定、防震能力强z无铅焊接z环保封装z成本低2.4FTDIUSB-COM芯片资料通信原理:采用了FTDI公司制造的FT232R作为USB-COM转换电路。这样,电脑就会把CT-298看作是一个带有虚拟串行端口的器件。图2.3FT232R引脚原理图2.5电梯动作执行机构及执行方式本方案中,轿箱的升降动力由步进电机提供,电机型号是42H47412小型步进电机,供电电源采用12V开关电源单独供电;其驱动芯片型号为TA8453,采用5V电源单独供电。单片机可通过两个I/O口方便的控制电机的运行,一个I/O口发送驱动脉冲信号(脉冲频率高则电机速度快,频率低则慢),一个I/O口给出高低电平来使电机正反转(即电梯的上升和下降);制动系统的执行机构是由一个电源电压12V的电磁铁来完成的。在这里,单片机必须再定义一个I/O口,正常情况下其电平信号为低,当出现危险时给出高电平,此高电平信号为3.3V,不能直接驱动电磁铁,方案采用中间继电器来间接控制电磁铁的动作。电磁铁安装在电梯轿箱上,当接通电源以后,铁心弹出,顶在电梯导轨上面,导轨内侧附有皮条,通过这个摩擦力来达到制动的目的;蜂鸣器为单片机自带。三.软件概述3.1固件程序模块3.1.1程序框图图3.1固件程序流图3.1.2芯片主程序模块:z使能中断EnableInterrupts;/*enableinterrupts*/z初始化ADC/*****************ADC初始化*************************************/voidADC_INI(void){ADCSC1=0x20;//选择通道号,使能ADCADCSC2=0x00;ADCCFG=0x49;//四分频、10位模式、时钟源为总线时钟/2APCTL1=0b00000001;//选择管脚16(通道1)ADCSC1=0x1f;//禁止ADC}z频率可调脉冲模块(驱动步进电机驱动器)z初始化串口(详见串口通信模块)z接收上位机命令并进行处理(详见串口通信模块)z电梯危险处理x_acc=filter_3(x_port);//读当前加速度while(SCIS1_TDRE){//a=(x-337.92)/163.84(g)正常时为1gSCIS1_TDRE=0;delay_1(100);SCID=(byte)(x_acc/4);//a=(scid*4-337.92)/163.84g}while(x_acc584||x_acc420){//加速度超出1.5g0.5gdeal();//处理子程序——停止电机、抱闸while(SCIS1_TDRE){SCIS1_TDRE=0;delay_1(100);SCID=(byte)(x_acc/4);}x_acc=filter_3(x_port);alam=1;//报警}3.1.3传感器监测模块:/************初始化传感器********************/……PTBDD_PTBDD5=1;//PTBD_PTBD5设置为输出MM2860的电源控制PTBD_PTBD5=0;//启动MM2860的电源……3.1.4串口通信模块:SCI(SerialCommunicationsInterfaceModule)功能描述:SCI允许在MCU和远程设备(包括其它MCU)之间进行全双工、异步、不归零串行通信。SCI包含一个波特率发生器、一个发送器模块和一个接收器模块。SCI共有8个8位寄存器用于控制波特率、选择SCI选项、报告SCI的状态和发送/接收数据。尽管使用的是同一个波特率发生器,发送器和接收器的操作是独立完成的。正常操作时,MCU监测SCI的状态,写入被发送的数据并处理接收到的数据。所有SCI寄存器的绝对地址分配请参考本技术手册中“存储器”一章的“直接页面寄存器总结”。一个飞思卡尔提供的等同的或者头文件用来映射这些名字为适当的绝对地址,通过它们的名字对寄存器和控制位进行引用。寄存器定义:zSCI波特率寄存器(SCIBDH,SCIBHL)zSCI控制寄存器1(SCIC1)zSCI控制寄存器2(SCIC2)zSCI状态寄存器1(SCIS1)zSC