
设计并实现一种通用的多通道神经电生理刺激实验平台软件。
从逻辑架构上采取软硬件分层的设计,避免了对具体硬件的过度依赖。在保证与现有设备兼容的前提下,基于.NET Frameworks平台开发可扩展的控制算法,实现多通道、可反馈的程控刺激输出。软件具有刺激/记录功能,可在实验过程中动态改变刺激程序与切换电极,且具有良好的人机交互界面。
测试结果表明,该软件可稳定控制刺激器,并根据用户提供的参数(选定电极、幅值、间隔等)生成随机刺激序列和同步控制信号;在刺激序列中各电极切换时延为600 ms级。
该软件对现有设备系统具备良好的兼容性,可针对多导联神经电生理刺激研究的特性和需求实现多通道、实时、可反馈的程控刺激输出,允许在运行时动态改变刺激程序并切换电极,为网络层级神经网络反馈回路的机理研究提供了工具。
版权归中华医学会所有。
未经授权,不得转载、摘编本刊文章,不得使用本刊的版式设计。
除非特别声明,本刊刊出的所有文章不代表中华医学会和本刊编委会的观点。
建立脑和计算机系统间的双向通讯是神经工程领域的重要研究方向[1,2],能显著促进神经科学及相关领域的发展,如皮层群体编码机制研究[3]和神经可塑性的长期在体研究[4]。近30年来,神经细胞群体活动的记录技术不断发展,其中多微电极阵列技术因其具备的长时间、无损伤、多点同步记录的优势[5,6],被广泛地应用到各种不同层次的实验模型中,如分散培养的神经元网络[7,8,9,10,11,12]、急性分离的脑片[13]、视网膜[14]、脑区等[15]。但与此同时,刺激输出控制方案仍停留在较早期水平。目前,商用刺激输出控制设备主要存在的问题有:①通道功能状态(刺激/记录)必须提前设定,无法在实验过程中随网络特征改变。②刺激波形和输出时刻需要预先编程,无法根据网络状态反馈调整。上述缺点为神经网络中刺激-响应动力学特征研究造成了障碍,不利于进一步探索神经系统对外界输入的应答规律[16,17,18]。
由于市售通用设备无法满足科研需求,许多研究人员尝试自行开发可满足需求的刺激输出装置,如在商业设备基础上通过叠连自行研制刺激电路,实现多通道实时程控的刺激输出[16,19]。由于神经电生理信号的采集和处理过程对噪声高度敏感,给设备的连接和适配提出了较高要求,不仅使硬件设备的通用性下降,同时也提高了控制软件对具体硬件的依赖性。此外,现有设备控制软件通常为基于Linux平台的命令行程序,可操作性较差,且要求使用者具有丰富的操作系统底层知识,不利于研究人员掌握。
本研究开展多通道神经电生理刺激软件开发研究,在不影响设备硬件稳定性和通用性的同时,通过二次开发利用软件控制算法实现了多通道、可反馈的程控刺激输出,并可实现运行中的任意电极刺激/记录功能的快速切换,且对已有技术高度兼容。
本软件使用的硬件系统为MEA60 Standard System(德国Multichannel Systems公司),包括多微电极阵列培养皿及适配器、刺激器、信号前端放大器、滤波放大器、PCI高速信号采集卡、温控设备等。信号采样频率设置为25 kHz。
为保证硬件的兼容性,通过分层设计将软件逻辑和硬件操作分离。所有的软件逻辑位于主程序中,对硬件设备的请求交由委托层完成,使软件逻辑和硬件设备解耦合,增强了刺激软件的通用性(图1)。刺激软件运行于.NET Framework 4.0平台。根据设备驱动程序性质的不同,部分硬件设备请求可通过运行在.NET Framework 2.0平台的代理程序(委托层)委托提交,而少数硬件操作(如电极切换)必须直接递交至驱动程序,即通过.NET互操作性(.NET Interop)的方式完成。刺激软件的核心工作流是刺激器和电极切换状态的协调,有2种备选时序流程方案,分别基于定时器触发和刺激器硬件触发。


基于定时器触发的时序流程方案可根据使用要求设定一个或多个定时器。电极的切换由定时器触发完成,每次刺激前必须将刺激电极切换到刺激位,刺激完成后还原到记录位。电极切换完成后,向刺激器发出刺激请求。由于刺激器操作和电极切换都属于独占资源操作,在上一次操作未完成前,无法接受和正确处理新的操作请求。因此,该时序方案存在2个严重缺陷。①刺激请求分为刺激信号上传和刺激起始2个步骤,由于刺激信号上传是不确定的时间量,因而难以确定定时器的附加时延;若时延不足,则极易导致硬件冲突,若时延过多,则造成系统实时反馈性能的下降。②由于通用操作系统的非实时特征,无法精确设定定时器间隔,容易造成系统的不稳定。基于刺激器硬件触发的时序流程方案中,因为刺激器输出最后一个刺激信号后,会触发一次硬件中断,通过捕获这一中断信号作为刺激循环时序的起始,能够有效控制整个流程。系统接受到刺激完成信号后,可根据刺激程序定义,决定电极状态,并可自由地设置下一次刺激开始前的时延。然而,由于系统内在延迟时间的问题,基于硬件触发中断的方式会在长时间连续刺激/记录时形成不断累积的时间误差。因此在设计时,需在软件逻辑上分别判断首次刺激和后续刺激的不同流程,尤其针对长时间连续刺激,需要考虑可能的误差累积效应,对实验者进行提示,避免实验方案的误设计和误操作。
基于多电极阵列的常见刺激方案中,可按刺激的持续时间分为2类:①对时间精度要求相对较高(间隔在数秒内),但刺激持续时间较短的电刺激(持续时间在毫秒级、秒级)。②主要关注刺激前后整体对比的长刺激(持续时间在分钟级)。通过需求分析,以刺激器硬件触发中断作为时序中心的方案能够避免硬件冲突,有助于保证短刺激条件下的输出时间精度和持续刺激条件下的稳定性。


因为研究人员往往缺乏计算机编写、调试的相关经验,为了使其专注于科学研究,软件系统的易用性十分重要。因此,本刺激软件基于图形界面,并选择在Windows系列平台(Windows XP、Vista、7、8、10)上进行开发,使软件能够兼容大量已有的数据处理软件。此外,本刺激软件基于.Net Framework/.Net Framework Core的调用接口,便于多个处理软件间的协同工作。本刺激软件遵循GPL(GNU public license)协议,允许在非商业应用的前提下实施开源,便于用户修复问题、扩展功能,保证了软件的扩展性,便于添加新的功能。为保证开发效率和运行速度,本刺软件采用C#语言编写,因为基于.NET Framework的C#语言是一种类型安全的面向对象语言,不仅开发效率高且支持动态扩展的优势,且执行效率接近传统使用的C++语言,在通用计算机上也能保证运行性能[20]。
采用TDS-2012示波器(美国Tektronix公司)对刺激软件的准确性进行验证。将示波器的输入端与刺激器的输出端相连,对比实际刺激输出信号是否与设置值相符。另外,将示波器的2个输入端分别连接刺激器的输出端和同步信号输出端,对比实际波形和理论设置值的差异。输出的刺激信号为电压信号,波形分为PN型(先正后负)和NP型(先负后正)。所得数据以平均值±标准偏差表示。
多通道神经电生理刺激软件的运行界面如图3所示。操作者可通过可视化的用户界面,直观的选择硬件端口、调整刺激参数,并通过报告窗实时获取刺激执行状态。刺激软件可根据用户提供的参数(选定电极、幅值、间隔等)随机生成刺激序列,有助于开展背景随机输入对皮层信息处理过程影响的研究。同时,刺激软件还分别提供了刺激参数设置和刺激输出序列的导入/储存功能,便于实验的重复验证。


本刺激软件中,同步输出信号可用于门控刺激信号。当同步信号为逻辑真时,刺激电压才能被加载到所选择的刺激电极上。为减小刺激伪迹,可提前给定同步信号,以便让信号记录设备有充足的时间进行电极切换(如:可提前100 μs给定同步信号,也可在刺激信号结束后100 μs再停止输出同步信号),使电极有充分的时间放电,以减小基线漂移。测试时,将刺激信号设置为±500 mV、持续时间为1 ms的PN脉冲方波,输出同步信号(逻辑真、电压5 V)早于刺激信号100 μs输出,延迟100 μs结束。结果显示,刺激信号和同步信号的输出符合预期。进一步取消同步信号的提前输出,并将同步信号时延分别设置为100、300和500 μs。结果显示,刺激软件仍可正确输出同步信号。(图4)


在神经电生理研究中,常见的刺激控制参数包括脉冲刺激的幅值、持续时间和波形(PN或NP)。测试时,分别设置刺激信号为±250、±500、±750 mV、持续时间为1 ms的PN脉冲方波,以及刺激信号为±500 mV、持续时间分别为200、400、600、800、1 000 μs的PN脉冲方波。结果显示,本刺激软件可正确控制刺激器输出刺激信号(图5)。为了进一步考察刺激软件对输出波形的控制能力,设置刺激信号为±500 mV、持续时间为1 ms的脉冲方波,分别令其波形为PN型和NP型。结果表明,本刺激软件具备刺激波形的控制能力(图6)。




由于电极切换属于独占式硬件操作,因此其切换时延是整个刺激流程的时间瓶颈。常见的电生理研究硬件系统的时延一般小于100 ms,因此软件时延是电极切换总时延的关键。为评价本刺激软件的切换效率,开展了连续2 500次刺激实验,得到平均电极切换时延为(618.93±7.65)ms。此前研究结果表明,刺激模式常需要电极能够在刺激序列1 s内完成切换[4,17],因此本刺激软件能够满足神经电生理刺激研究中"刺激-响应关系"的需求。
为了验证多通道电生理研究功能,开展了刺激器与电极阵列联合验证实验。选取培养时间为6周的皮质神经元样本,使用本刺激软件进行随机电极刺激,对培养皿各通道输出3轮±500 mV的PN波,刺激波形时长2×400 μs,刺激间隔1 s,检查该样本对应的各个通道中是否存在缺陷电极或不良的细胞接触。随后,开展持续5分钟的多电极切换随机刺激(±500 mV,刺激波形为PN波,刺激波形时长2×400 μs,刺激间隔1 s),比较随机刺激对放电活动(spikes per second array-wide,SPSA)的影响。结果显示,在全皿多个通道上施加随机刺激,不仅能够有效诱导网络增强放电活动[12],而且出现了网络振荡现象[20,21],提示本刺激软件能够实现设计目标并满足研究需求。(图7)


本研究设计并实现了一种通用神经电生理刺激软件平台,该软件对现有设备系统具有良好的兼容性,可配合多微电极阵列技术实现多通道、实时、可反馈的程控刺激输出,且允许在运行时动态改变刺激程序并切换电极功能。该软件不仅提供了易于操作的图形界面,同时保证了设备的通用性和可靠性。软件从设计上降低了对硬件设备的依赖性,不需要对现有硬件设施进行改造。
经实验验证,在该软件能控制刺激器稳定输出预期信号,电极切换时延小于1 s,能够满足神经网络研究中"刺激-响应"反馈通路的需求[18,19,20,21,22],为深入探索网络的可塑性机制及学习与记忆的网络基础提供了工具基础。但是该软件的运行平台为非实时操作系统,导致软件在实时性上存在不足,后续研究中将通过引入Raspberry Pi等实时系统板的形式,进一步提高系统的实时性能。
无





















