其他分享
首页 > 其他分享> > BIOPAC MP 160 数据采集

BIOPAC MP 160 数据采集

作者:互联网

1.找到并引用设备的API自带DLL:mpdev.dll 和 xerces-c_3_1.dll

2.调用API自带的命名空间:namespace Biopac.API.MPDevice

其中,需要填入

public enum MPTYPE
{
MP150 = 101,
MP36,
MP160  //需要手动新增
}

3.连接设备:int retval = MP.connectMPDev(MPTYPE.MP160, MPCOM.MPUDP, "AUTO");  //可指定S/N连接,这里使用“AUTO”连接

4.设定采样率:retval = MP.setSampleRate(1000*1.0f/SampleRate);  // 参数是:取一个样本点所需的时间 ,单位ms

5.选取采样的信号通路:

bool[] CH = {false, false, false, false,
false, false, false, false,
false, false, false, false,
false, false, false, false};  //共可以采集4x4路信号

CH[n] = true;   //选取n通道的数据,对应通道的标号是n+1

retval = MP.setAcqChannels(CH);

6.高级取数方式:设定一个虚拟服务器

retval = MP.startMPAcqDaemon();
if (retval != MPCODE.MPSUCCESS)
{
Console.WriteLine("虚拟服务器启动失败:" + System.DateTime.Now);

MP.stopAcquisition();
MP.disconnectMPDev();

}

retval = MP.startAcquisition();

7.在定时器timer中取数

double[] buffer = new double[2000* 1* 5];//(采样率,通道个数,执行次数)

int readNum=buffer.Length;

if (MP.receiveMPData(buffer, buffer.Length, out readNum) != MPCODE.MPSUCCESS)
{
abortAcquisition();
Console.WriteLine("取数时异常!");
return;
}

8.数据处理

根据项目所需,对采集出的数据进行处理......

【思路指南,仅供参考】

标签:CH,false,buffer,160,BIOPAC,API,MP,retval
来源: https://www.cnblogs.com/call-it-a-day/p/15982107.html