The following example demonstrates how motor attributes are set to some default values:
#!/usr/bin/env python from PyTango import * def setDefaults( name): defaults = {'Acceleration': 10000, 'BaseRate': 20, 'Conversion': 1000, 'SettleTime': 0.1, 'SlewRate': 10000, 'SlewRateMax': 1044000, 'SlewRateMin': 0, 'StepBacklash': 100, 'StepCalibration': 0, 'StepCalibrationUser': 0, 'StepLimitMax': 500000, 'StepLimitMin': -500000, 'UnitCalibration': 0, 'UnitCalibrationUser': 0} dev = DeviceProxy( name) try: print( "Device %s " % name) for key in list( defaults.keys()): print( " %s to %s " % ( str(key) defaults[ key])) attr = dev.read_attribute( key) attr.value = defaults[ key] dev.write_attribute( attr.name, attr.value) except DevFailed: extype, value = sys.exc_info()[:2] print( "Failed with exception %s" % str(extype)) for err in value: print( " reason ", err.reason) print( " desc ", err.desc) print( " origin ", err.origin) print( " severity ", err.severity) sys.exit() except: print( " Failed to access ", name) print( sys.exc_info()[0]) sys.exit() return 1 # # ---- main # db = Database() devices = db.get_device_exported( "*mot*") for name in devices: setDefaults( name)