code: def read_data(self,variable_instance):
          
          if self.inst is None:
               return
          vp_func = variable_instance.variableproperty_set.filter(name=':FUNC').first()
          measure_function = ''
          if vp_func:
              if vp_func.value():
                  measure_function = ':FUNC "%s";'%vp_func.value()
  
          trig_delay = 0.1
          if variable_instance.visavariable.device_property.upper() == 'PRESENT_VALUE':
              return self.parse_value(self.inst.query(':FETCH?'))
          m = re.search('(PRESENT_VALUE_CH)([0-9]*)', variable_instance.visavariable.device_property.upper())
          if m:
              return self.parse_value(
                          self.inst.query(':route:close (@%s);%s:TRIG:DEL %1.3f;:fetch?'%(m.group(2),measure_function,trig_delay)))
          return self.parse_value(self.inst.query(variable_instance.visavariable.device_property.upper()))
docs: read values from the device