Download presentation
Presentation is loading. Please wait.
1
基于神经刺激止痛系统的无线电压信 号采集与刺激脉冲产生模块的设计
电子科学与技术系 熊涛 指导老师:杨晓非 基于神经刺激止痛系统的无线电压信号采集与刺激脉冲产生模块的设计
2
目录 门径初窥 系统框架 模块展示 云帆远济 门径初窥 模块展示 系统框架 云帆远济
基于神经刺激止痛系统的无线电压信号采集与刺激脉冲产生模块的设计
3
疼痛难忍 止痛乏术 DBS 存在问题 门 径 初 窥 前 景 无 限 基于神经刺激止痛系统的无线电压信号采集与刺激脉冲产生模块的设计
4
手持显示 刺 激 发 生 疼 痛 采 集 门 径 初 窥 系 统 框 架 基于神经刺激止痛系统的无线电压信号采集与刺激脉冲产生模块的设计
5
采集和显示 系 模 统 框 架 块 展 示 2019/2/16 暂时完成的模块
基于神经刺激止痛系统的无线电压信号采集与刺激脉冲产生模块的设计
6
在实验过程中我们将CPU为S3C2440,屏幕分辨率为480x272的TQ2440 Arm9 开发板和Nrf24L01无线传输模块搭建成了一个简单的手持显示控制模块。整个模块的运行不基于任何操作系统,主要完成的工作是arm接收显示波形这一部分,而发射控制信号的部分还在进一步研究之中。对于接收显示模块,其难点在于数据的实时采集,即在保证丢包率极小的情况下波形的显示速率和信号发出的速率能够保持一致。 基于arm的手持显示控制模块主要由以下两部分构成: (1) LCD驱动模块 屏幕背景选取为白色,采取的逐点扫描的方式将接收到的数据依次画在屏幕上。具体的算法是,每次接收32个数据,每接收完一次即在LCD上显示。当LCD每个横坐标对应的点即480个点全部画完时,清屏,重新开始扫描显示。主要的程序如下: if(nRF24L01_RxPacket(RxBuf)) //接收到数据 { for(i=0;i<32;i++) x++; if(x>480) //480个点显示完 x=0; Lcd_ClearScr( (0x1f<<11) | (0x3f<<5) | (0x1f) ) ; //清屏 Glib_Line(0,136,480,136,150); //x 轴 Glib_Line(240,0,240,272,150); // y轴 } PutPixel(x,RxBuf[i],0); // 画点; 此部分的主要不足在于,屏幕的刷新速率相比于PC机较慢,每清一次屏相当于对480x272个点进行操作,限制了其接收速率,肉眼看上去有闪烁感。另外,由于每个点画得比较小,在LCD屏幕显示得稍微有点分散,整体看起来不是一条连续的曲线。 Nrf24L01无线接收发射模块。 这一部分我们通过模拟的SPI来驱动Nrf24L01接收数据,虽然相对于SPI而言模拟SPI速度稍慢,但仍可以满足整个系统的要求,影响其接收速率的主要原因在于LCD的清屏速率。此模块的重点在于相关的I/O口的配置以及接收地址和接收频道调与发射地址和发射频道之间的匹配性。具体如下: uchar TX_ADDRESS[TX_ADR_WIDTH]= {0x34,0x43,0x10,0x10,0x03}; //本地地址 uchar RX_ADDRESS[RX_ADR_WIDTH]= {0x34,0x43,0x10,0x10,0x03}; //接收地址 void init_NRF24L01(void) inerDelay_us(100); CE_LOW; // chip enable CSN_HIGH; // Spi disable SCK_LOW; // Spi clock line init high SPI_Write_Buf(WRITE_REG + TX_ADDR, TX_ADDRESS, TX_ADR_WIDTH); // 写本地地址 SPI_Write_Buf(WRITE_REG + RX_ADDR_P0, RX_ADDRESS, RX_ADR_WIDTH); // 写接收端地址 SPI_RW_Reg(WRITE_REG + EN_AA, 0x01); // 频道0自动 ACK应答允许 SPI_RW_Reg(WRITE_REG + EN_RXADDR, 0x01); // 允许接收地址只有频道0,如果需要多频道可以参考Page21 SPI_RW_Reg(WRITE_REG + RF_CH, 40); // 设置信道工作为2.4GHZ,收发必须一致 SPI_RW_Reg(WRITE_REG + RX_PW_P0, RX_PLOAD_WIDTH); //设置接收数据长度,本次设置为32字节 SPI_RW_Reg(WRITE_REG + RF_SETUP, 0x0f); //设置发射速率为1MHZ,发射功率为最大值0dB SPI_RW_Reg(WRITE_REG + CONFIG, 0x0e); // IRQ收发完成中断响应,16位CRC,主发送 SetRX_Mode(); //接收模式 疼痛信号采集模块长4cm,宽2cm,暂时通过外部电源3.3V供电,可通过商用nrf24l01模块配合an3216芯片天线发送经过处理的疼痛信号数据。在采集模块中对数据的处理主要是对原始信号的放大、滤波以及模拟-数字转换。 原始数据 模拟信号 放大滤波 无线发送 NRF24L01 A-D转换 C8051F920 因为我们采集的是生物信号,其特点是信号强度微弱,易受干扰和噪声的影响。本模块中选取ina333这款仪用放大器进行精确地前级放大。经过放大的信号中掺杂着干扰和噪声,我们使用opa2333配合两个二阶滤波电路对低频和高频噪声进行过滤。实际使用中最重要的干扰来自工频干扰,模块中也配置了一个50Hz的陷波电路去除工频干扰。经过处理的模拟信号接下来被发送到C8051F920单片机进行模拟到数字的转换,得到数字化得信号,最后由NRF24L01模块无线发送,给配套的控制模块进行接收。 刺激模块的信号通路和采集模块相反,而且较为简单。刺激模块接受由控制模块发出的无线指令信号,然后发出相应电脉冲即可。 ARM手持显示 信号采集和无线传输 已经完成的系统 基于神经刺激止痛系统的无线电压信号采集与刺激脉冲产生模块的设计
7
模块展示:实验 基于神经刺激止痛系统的无线电压信号采集与刺激脉冲产生模块的设计
8
云 展 帆 远 济 模 块 示 拓展应用 1.小型化 2.长期使用供电 3.与生物体不排斥
这样一个系统不仅仅可以应用在止痛放面。只要稍稍改变采集信号的频率范围,任何与生物体有关的信号采集及无线发送任务都可以由它来完成,系统的适用性广泛,应用前景很好。 3.与生物体不排斥 4.流畅显示 5.增加通道数 6.终端信号传输距离 7.…… 基于神经刺激止痛系统的无线电压信号采集与刺激脉冲产生模块的设计
9
Thanks Thanks Thanks 杨晓非老师 左超师兄 王扬师兄 欧阳君师兄 张宇嘉同学
杨晓非老师 左超师兄 王扬师兄 欧阳君师兄 张宇嘉同学 基于神经刺激止痛系统的无线电压信号采集与刺激脉冲产生模块的设计
Similar presentations