日本横河GM10通信接口类数据收集系统

gm10使之间的沟通MATLABGM10从日本横河采集系统。类实现方法获得瞬时和FIFO模拟输入(AO)的数据。方法手工操作的数字输出(做)和模拟输出(AO)通道也实现。基本信道配置方法是可用的。帮助gm10类型MATLAB更多信息提示。

关于命令类型和语法的更多信息,请参阅横河手册:IM04L51B01-17EN_090 (GM10通信命令用户手册)

内容

示例1:瞬时温度数据

在这个例子中,一个连接GM10建立数据收集,紧随其后的是扫描间隔和通道配置。然后热电偶数据测量的采样周期约。0.25十年代。然后绘制和数据GM10对象删除。

%创建GM10对象GM10 = GM10 (“192.168.1.11”);%定义抽样参数t = 0.25;%采样周期执行循环(年代)tStop = 10;%总收购时间(s)%定义GM10频道列表ChList = {“0008”,“0210”};%配置GM10扫描间隔GM10.setScanInterval (1,“100 ms”);%配置热电偶GM10频道列表GM10.setChannelAI (ChList“TC”,“K”)%初始化时间和数据数组时间= [];数据= [];%初始化当前时间tCurr = 0;%起动电流时间时钟tStart =抽搐;%循环直到停止时间tCurr < = tStop%开始执行头时钟tHead =抽搐;%获得当前时间价值tCurr = toc (tStart);%保存当前时间的价值时间=[时间;tCurr];% #好< AGROW >%获得当前数据点Data =[数据;GM10.getInstData (ChList)];% #好< AGROW >%暂停对采样率一致暂停(Ts-toc (tHead));结束%转移时间数组从0开始时间=时间(1);%创建图无花果=图;FigPos =获得(图,“位置”);集(图,“位置”,(FigPos (1:2) 800 300]);%绘制热电偶数据PlotData =情节(时间、数据(:1));PlotData。标志=“。”;集(gca),“NextPlot”,“添加”,“XLim”(10 0),“YLim”120年[0]);PlotData =情节(时间、数据(:,2));PlotData。标志=“。”;包含(“时间(s)”);ylabel (“温度(华氏度数)”);%删除GM10对象删除(GM10)

示例2:FIFO温度数据

在本例中FIFO(先进先出)的功能是利用收集的数据在0.1秒采样GM10检索设备,但在1秒的时间间隔执行循环。

%创建GM10对象GM10 = GM10 (“192.168.1.11”)%定义抽样参数t = 1.0;%采样周期执行循环(年代)TsScan = 0.1;% GM10采样间隔设置在示例1tStop = 10;%总测试时间(s)%定义GM10频道列表ChList = {“0008”,“0210”};%停下来允许FIFO填满暂停(3 * Ts)%初始化时间和数据数组时间= [];数据= [];%初始化之前的时间戳TimePrev = 0;%初始化当前时间tCurr = 0;%起动电流时间时钟tStart =抽搐;%循环直到停止时间tCurr < = tStop%开始头钟tHead =抽搐;%计算当前时间的价值tCurr = toc (tStart);%获得FIFO数据所需的行(2倍)DataAux = GM10.getFIFOData (ChList 2 * Ts / TsScan);%检查第一个消磨时间在空数组如果isempty(时间)%分配默认的FIFO模块的数量nFIFO = Ts / TsScan;其他的%分配数量的FIFO模块基于时间戳的三角洲nFIFO = min(地板(tCurr-Time(结束)-0.5 * TsScan) / TsScan),大小(DataAux, 1));%更新之前的最后的时间戳值TimePrev =时间(结束);结束%存储当前FIFO块时间值时间=[时间;tCurr-TsScan * (nFIFO: 1:1)];% #好< AGROW >%当前FIFO存储块的数据点Data =[数据;DataAux(大小(DataAux 1) -nFIFO + 1:,:)];% #好< AGROW >%暂停对采样率一致暂停(Ts-toc (tHead));结束%转移时间数组从0开始时间=时间(1);%创建图无花果=图;FigPos =获得(图,“位置”);集(图,“位置”,(FigPos (1:2) 800 300]);%绘制热电偶数据PlotData =情节(时间、数据(:1));PlotData。标志=“。”;集(gca),“NextPlot”,“添加”,“XLim”(10 0),“YLim”120年[0]);PlotData =情节(时间、数据(:,2));PlotData。标志=“。”;包含(“时间(s)”);ylabel (“温度(华氏度数)”);%删除GM10对象删除(GM10)
GM10 = GM10属性:SerialNum:“S5PC07595”固件:‘R4.01.03 IPAddress:“192.168.1.11”TempUnit:“degF”NumFIFO: 1 NumModules: 4个模块:[1 x4 struct] ChannelAI: [1 x20的struct] ChannelAO: [1 x4 struct] ChannelDO: [1 x6 struct]