脑电波采集及无线传输摘要无线可穿戴干电极脑电帽与驾驶员警觉度监测系统,即要求设计开发针对驾驶员的便携式无线可穿戴干电极脑电帽,保证在驾驶状态下,能便捷、稳定、长时间地采集驾驶员的脑电信号,最终为航天、航空和汽车等领域提供精确的警觉度实时监测和预警技术。本课题是脑电信号无线传输子系统。它要求设计实现低功耗、高可靠性、高稳定性嵌入式多通道高分辨率脑电信号处理与传输电路,将前端放大电路输出的信号进行A/D转换后,进行信号处理,然后进行无线传输,分别输出到主机(数据训练阶段)和嵌入式移动终端(实时预警阶段)。本系统将ADC的转换结果先输出到CPLD中暂存,再输出到MCU中。在分析了系统设计指标并确定关键技术之后,开始设计嵌入式系统框架。在本系统中,MCU输出ADC的时钟输入以及其他控制信号,由此控制ADC进行数据采集与转换;ADC将转换后的串行数据输出到CPLD中暂存;CPLD将从ADC得到的串行数据转换成并行数据后,通过4-1多路复用器发送到MCU;最后,MCU将数据输送到蓝牙模块,通过它将数据无线发出。关键词:脑电波,嵌入式系统,ARM,CPLD,信号采集,无线传输第一章系统技术指标与性能要求在系统设计之前,必须明确系统的技术指标与性能要求,这些信息决定了系统方案的选择和软硬件的设计开发。因此,为满足无线可穿戴干电极脑电帽与驾驶员警觉度监测系统的设计要求,本课题设计之初,对整个系统的结构进行了仔细的分析,并分别与前端脑电信号放大子系统、后端嵌入式移动终端的负责人进行了讨论和研究,对常用芯片的性能进行了调研1.1系统技术指标本系统的设计指标如表1-1所示,由于在目前技术下,前端信号放大电路可以输出8通道单端信号,因此这里采样通道数目必须与之保持一致。1.2系统性能要求为了满足整个系统的设计要求,本系统还需具有如下性能:(1)系统架构简单、低功耗、便于携带;(2)较高的性价比;(3)系统具有较高的可靠性和稳定性;(4)留有备用接口,便于系统扩展和调试。第二章系统总体设计方案2.1系统总体框架本系统总体框架如图2-1所示:由图2-1可知,MCU输出ADC的时钟输入以及其他控制信号,由此控制ADC进行数据采集与转换;ADC将转换后的串行数据暂存到CPLD中;CPLD将串行数据转换成并行数据后,通过4-1多路复用器将数据发送到MCU;最后,MCU通项目指标电源供电普通直流+5V电源供电采样通道数目8通道单端信号每通道采样率≥500HZADC分辨率16bitADC参考电压能够满足不同的信号电压和动态范围要求工作电流100mA传输速度100Kbps无线传输距离≥10米过蓝牙模块,将数据无线发出。各个模块间的连接方法将在第三章硬件电路设计中分模块详细阐述。将ADC的转换结果暂存到CPLD中是为了减轻MCU与ADC接口上的负担,进而减少MCU在该接口上的处理时间。系统数据流图见图2-2所示。2.2硬件器件选择系统总体框架设计完成后,开始选择硬件器件。硬件器件选择应满足表1-1中的统功能性需求指标,它主要包括:ADC、CPLD、MCU、蓝牙模块、电压转换芯片、接口插件、电容电阻等。这里只介绍主要硬件器件的选择:(1)ADC选型:ADS8344是TI公司生产的8通道、16位、高精度、低功耗SAR-ADC(SuccessiveApproximation-AnalogDigitalConverter,逐次逼近型模数转换器),采样速率高达100KHz。由于所需采样率500Hz(见表1-1)远低于选用芯片的最高采样率,因此可以通过多个模拟通道切换实现采样,这一方面降低了系统功耗,另一方面降低了设计成本。ADS8344满足系统多通道、高精度、低功耗采集数据的要求,因此选用此款芯片。为了能够处理各种前端放大电路(不同的信号电压和动态范围要求)的输出信号,选用外部参考电压元器件,这样能够根据需求直接改变ADC的输入满量程电压值。另外,现在前端系统只有8路单端信号,用1个8(单端)通道/4(差分)通道的ADC芯片即可。但是随着系统的改进,前端系统可能提供8路差分信号,因此,为了满足8个通道的数据采样,选用4个8(单端)通道/4(差分)通道的ADC芯片,为系统的改进与扩展留有余地。(2)CPLD选型:Altera公司的MAXII系列CPLD是有史以来功耗和成本最低的CPLD。本系统选用MAXII系列的EPM240,它功耗低、价格低、速率快、面积小(100-pinTQPF封装),满足系统设计的各方面要求。该芯片有240个逻辑单元,满足所需要的逻辑电路设计,通过逻辑设计综合得到的结果,整个芯片的资源占用率为55%,为今后功能扩展留有余地。(3)MCU选型:考虑到功耗问题,使用ARM处理器,在保证计算能力的条件下尽量减少功耗。本系统选用NXP公司的LPC2144型ARM微处理器。LPC2144采用超小LQFP64封装,功耗很低,因此特别适用于访问控制和POS机等小型应用中。它的最大工作频率为260MHz。它内置2个UART、2个高速IC总线(400Kbit/s)、SPI、具有缓冲作用和数据长度可变功能的SSP,以及2个10位ADC、10位DAC、和多达9个边沿或电平触发的外部中断管脚,使它特别适用于工业控制和医疗系统。基于这一处理器能够尽量减少外部控制器的数量,提高了系统可靠性并降低了成本。(4)蓝牙模块选型:为了简化设计并降低系统功率,选用市场上成熟的蓝牙传输模块。本系统选用重庆金瓯公司的蓝牙内嵌模块BTM0704C2P。这一模块由于内部带有蓝牙协议控制软件,大大简化了单片机的软件设计难度。此芯片具有标准UART接口,具有自动节能模式,支持低功耗工作模式/高速工作模式,支持多种波特率(1.2k、2.4k、4.8k、9.6k、19.2k、38.4k、57.6k、115.2k、230.4k、460.8k、921.6k、1.384Mbps),有效通信距离为10米,满足系统设计的各方面要求。(5)电压转换芯片的选择:系统采用直流+5V电源供电,而ARM、CPLD、蓝牙模块等芯片均需采用+3.3V直流电源,因此选用SPX1117M-3.3作为电压转化芯片。它是Sipex公司生产的LDO(lowdropoutregulator,低压差线性稳压器)芯片,其特点为输出电流大,输出电压精度高,稳定性高。SPX1117系列LDO芯片输出电流可达800mA,输出电压的精度在±1%以内,还具有电流限制和热保护功能,广泛应用在手持式仪表、数字家电、工业控制等领域。虽然LDO在特定的供电电压下,效率不及DC-DC变换器,但这一设计能够简化电路结构、提高可靠性并降低设计成本。第三章硬件电路设计在选择好硬件器件并设计完成系统总体框架后,开始根据器件的性能和系统要求进行电路设计。本章分电源、ADC、CPLD、微处理器子系统、无线通信电路和其它电路共六个模块对电路设计进行介绍。3.1电源电路设计本系统采用+5V直流电源供电,通过SPX1117M-3.3实现电平转换,将电压转换为+3.3V。系统电源电路见图3-1。SPX1117M-3.3使用时,其输出端需要一个至少10uF的钽电容来改善瞬态响应和稳定性。为了降低噪声和出错几率,ADC的供电电源、ARM与其他芯片的数字电源、ARM的模拟电源三者应进行隔离。因此,电源电路中设计有三路电源。其中,3V3A1为ADC提供供电电压;3V3D为ARM、CPLD、蓝牙等其他芯片提供供电电压;3V3A为ARM提供模拟3.3V端口电压,同时也为ARM内部的ADC转换器提供参考电压。二极管D5用于限制电源的导通方向,经过C22、C23(或C28、C29)滤波,然后通过SPX1117M-3.3将电源稳压至3.3V。电感L1和L2实现三个电源之间的隔离。另外,将各个电源的地线通过电感L3、L4和L5与总电源地线连接,降低各电源之间的噪声干扰。当电源接通时发光二极管D6亮红光。3.2ADC模块电路设计3.2.1ADS8344工作原理ADS8344主要由多路转换开关、采样/保持器、参考电压、ADC转换器、比较器、控制逻辑电路和逐次逼近寄存器(SAR)等部分组成。3.2.2输入模式切换Din端输入提供了用于输入模式切换及通道选择的控制字A2、A1、A0、SGL/DIF̅̅̅̅̅(详见控制字部分)。当SGL/DIF̅̅̅̅̅为高电平时,芯片处于八通道单端模式。当转换器进入保持模式时,+IN与-IN端的电压差被内置电容检测到。-IN端的输入电压范围是-0.2V~1.25V,这使得+IN端与-IN端的共模电压能相互抵消。+IN端的输入电压范围是-0.2V~VDD+0.2V。3.2.3参考电压𝐕𝐫𝐞𝐟的选择和设计ADC的外部输入参考电压Vref决定了模拟量输入的范围,当Vref确定之后,模拟量的输入必须在0~Vref之间。必须注意的是,这里所说模拟量的输入是指图3-3中+IN端与-IN端之间的电压差。ADS8344的输入参考电压Vref必须在100mV~+VCC之间。本系统设计两种外部参考电压供电方案:(1)由电阻分压得到恒定的参考电压电路如图3-5所示,当前端输出信号稳定且在VCC/2~VCC之间时,采用此方案。这时,将JP2连接即可。(2)LPC2144芯片内有一个DAC,能够通过P0.25/AOUT口输出可控的模拟量。此方案就是将P0.25/AOUT的输出UVref作为ADS8344的参考电压,这样参考电压可控,能够满足前端放大电路不同的信号电压和动态范围要求,提高了系统的可适用性。为了增大UVref的电流驱动能力,将UVref通过运算放大器LM358放大后再接到ADS8344的Vref端。当选用此方案时,将JP1连接即可,如图3-6所示。这一设计的的主要目的是通过ARM输出可变电压实现有限的AGC(AutomaticGainControl,自动增益控制)功能,调整量化后的数据动态范围,为后续处理提供有效的测量,也为前端的放大电路设计提供额外的可调参数。3.2.4ADC模块外围电路结构ADC与CPLD、ARM的连接框图如下图所示。由图3-7可知,ARM通过SSP口与ADC通信,控制ADC进行数据采集与转换;ADC将转换后的串行数据输出到CPLD中暂存,并将芯片当前的状态告知CPLD。为了尽量减小各通道采集数据的时差,本系统中四个ADC将同步并行采集数据,因此其片选端CS、串口、掉电控制位SHDN以及参考电压连接到ARM中同一端口,而其转换结果输出Dout和芯片状态输出BUSY则分别连到CPLD中的不同管脚。3.2.5供电电路设计如图3-8所示,+VCC接电压3V3A1,C1和C2用于滤波,分别置于ADC芯片的两个电源管脚。3.3基于CPLD的逻辑控制电路设计EPM240是MAXII系列中的逻辑单元数最少的一款。该芯片有240个逻辑单元(LE),等效宏单元是192个,资源比较丰富,内有8KbitFlash的存储空间,能够满足系统设计需求。由于其功耗低、价格低、速率快、面积小(100-pinTQPF封装)等优点,本系统选用了此款CPLD。3.3.1CPLD外围电路结构CPLD与ADC、MCU的连接框图如下图3-9所示。CPLD暂存ADC芯片的输出数据,并结合ADC当前的状态,对数据进行预处理,在适当的时候,通过多路复用器,将数据发送给ARM。控制逻辑部分能够根据当前ADC输出数据和ARM读取数据的状态,判断ARM能否继续读取当前数据。同时,为了方便数据处理,并且减少CPLD与ARM接口的数目,这里CPLD先将各个ADC输出的串行数据转换为并行数据,然后将四路数据通过多路复用器输出到ARM中。所选微处理器LPC2144的最大工作频率为60MHz,远高于ADS8344的采样频率(100KHz),因此通过多路复用的方法能够有效的输出数据。3.3.2供电电路设计EPM240T100C3需要两个不同的输入电压。V和V为输入输出缓冲提供电压,可取电压值3.3V、2.5V、1.8V或1.5V。为芯片内部逻辑电路提供电压,可取电压值3.3V或2.5V。为方便起见,供电电压均取为3.