一旦设备对象已经创建并连接,它可以被用作接口的仪器。本章介绍了如何访问和配置仪器的设置,以及如何读取和写入数据的仪器。
每个设备对象所包含的属性特定于它代表的仪器。这些属性由设备对象创建过程中使用的仪器驱动器定义。例如,可以有用于示波器允许您调整触发参数,或在屏幕显示的对比度特性。
属性是在设备创建对象分配缺省值。在执行连接
该对象被更新以反映该仪器,或者反之亦然的状态,这取决于给定的第二个参数连接
。
您可以通过调用获取配置属性的完整列表组
命令以及使所述设备对象。
本实施例说明了如何使用设备对象配置的仪器。
所使用的仪器是泰克®TDS 210双通道示波器。的方波被输入到示波器中的信道1。任务是使触发信号的下降沿时调整范围的设置:
创建设备对象 -创建一个GPIB接口对象,然后设备对象用于TDS 210示波器。
G = GPIB( 'N',0,1);d = icdevice( 'tektronix_tds210',G);
连接的设备对象- 使用连接
函数到所述设备的对象连接到仪器。
连接(d);
检查当前坡
对于设置触发
属性-创建一个变量来代表触发属性,然后使用得到
函数来获得所述示波器的电流值坡
设置。
dtrigger = GET(d, '触发');dtrigger.Slope ANS =上升
该坡
当前设置为升起
。
更改坡
设置- 如果要触发的下降沿出现,你需要修改的设备对象设置。这可以通过完成组
命令。
dtrigger.Slope = '下降');
这种变化坡
至落下
。
断开连接并清理- 当你不再需要的设备对象,从仪器上断开,并从内存中删除。从MATLAB删除该设备对象和接口对象®工作区。
断开(d);删除(d);清除d克dtrigger;
设备对象包含方法的具体到他们所代表的仪器。实现细节背后一个单一的功能隐藏。仪器特有的功能在MATLAB仪器驱动程序定义。
该方法
功能显示用于该设备对象的所有可用的驱动程序定义的函数。显示器被分为两个部分:
通用对象功能
驱动程序特定对象的功能
以查看可用的方法中,输入
方法(OBJ)
使用instrhelp
函数来获得设备对象功能的帮助。
instrhelp(OBJ,方法名);
要叫你使用特定仪器的方法调用
功能。调用
需要设备的对象和功能的名称。您还必须提供输入参数,在适当的时候。下面的例子演示了如何使用调用
从示波器获得的测量数据。
该实施例说明如何调用的特定仪器的设备对象的功能。你的任务是获得一个波形的频率测量。该仪器是一种泰克TDS 210双通道示波器。
范围已预先配置了一个方波输入到示波器中的信道1。硬件支持四种不同的测量:频万博1manbetx率,均值,周期和峰 - 峰。所请求的测量是与所指使用索引变量的从1到4。
出于演示的目的,在这个例子中示波器已经预先正确的测量设置:
创建设备对象- 创建一个GPIB接口对象和用于示波器设备对象。
G = GPIB( 'N',0,1);d = icdevice( 'tektronix_tds210',G);
连接的设备对象- 使用连接
命令打开GPIB对象并更新在设备对象的设置。
连接(d);
得到频率测量- 使用调用
命令和呼叫测量
。该测量
功能需要的索引参数指定。索引指定哪个测量示波器应返回的值。对于泰克TDS示波器210的当前设置,为1的索引指示该频率将被测量。
调用(d, '测量',1)ANS = 999.9609
返回的频率是999.96赫兹,或接近1千赫。
断开连接并清理- 你不再需要的设备对象,以便您可以从仪器上取下。你也应该从内存中删除,并从MATLAB工作区中删除它。
断开(d);删除(d);明确d克;
控制命令是存在于所有的设备对象的特殊功能和属性。您可以使用控制命令来识别仪器,重置硬件设置,执行诊断程序,并检索仪表误差。所设定的控制命令的由
所有的控制命令,为您的设备MATLAB仪器驱动程序中定义。
InstrumentModel
是一个设备对象属性。当被查询时,该仪器的识别命令发送到仪器。
例如,对于一个泰克TDS示波器210,
d.InstrumentModel ANS =泰克TDS 210,0,CF:91.1CT FV:V2.03 TDS2MM:MMV:1.04
要在仪器恢复出厂设置,使用devicereset
功能。什么时候devicereset
被调用时,相应的复位指令发送到您的仪器。
该命令接受一个连接的设备对象,并且没有输出参数。
devicereset(OBJ);
此命令请求您的仪器进行自诊断。实际执行的操作和输出参数是特定于设备对象连接到仪器。自我测试
接受一个连接的设备对象作为输入参数。
导致=自检(OBJ);
您可以通过检索与仪器产生的错误信息geterror
功能。返回的消息是仪器专用。geterror
接受一个连接的设备对象作为输入参数。
MSG = geterror(OBJ);