• 要求—模拟输入任务必须是硬件定时。输出任务不必与采样时钟边沿保持硬件同步。
  • 解答—使用DAQmx实时报告丢失采样属性,当读取操作完成上个循环所有采样的转换前,有新的采样生成,该属性将返回错误。

    优点

    • 输入采样为硬件定时。
    • 读取、处理和写入操作可进入下一个采样周期,只要后续的读取操作有足够的时间完成读取下一组输入样本。从多路复用设备(例如,E系列和M系列)的多条通道上采集数据的应用程序必须等待设备转换输入样本,然后读取操作才返回数据。允许处理和写入操作进入下一个采样周期,应用程序可充分利用空闲时间。从而达到更高的控制循环率。

    缺点

    输出更新有延迟,因为输出数据不是硬件定时。

  • 应用范例-硬件定时输入,软件定时输出

    模拟控制循环,从特定数量的多路复用模拟输入通道读取采样,使用控制算法(例如PID)处理数据,然后将新的控制值写入模拟输出通道。

    时序示意图



    LabVIEW范例-硬件定时输入,软件定时输出

    备注 该范例针对LabVIEW用户而写,但是编程思想适用于其他ADE,例如,LabWindows/CVI。
    • 将模拟输入操作的报告丢失采样属性设置为TRUE。
    • 如读取操作完成转换上个循环的采样之前就有新采样生成,模拟输入操作将返回一个错误。

    范例的程序框图



    备注
    • 当模拟输入读取溢出发生时,如要收到一个警告而非错误,请将将最近错误转换为警告属性设置为TRUE。
    • 不要在同一个LabVIEW循环中使用“等待下一采样时钟”VI和报告丢失采样属性。
    • 只有硬件定时单点模拟输入任务支持报告丢失采样属性。
    • 因为模拟输出任务是软件定时,写入调用一旦开始值即被写出。无需等待硬件时钟输出数据。