feat(idsueye): Add exposure range validation and query support
- Query camera's actual exposure range before setting exposure time - Validate and clamp exposure values to supported min/max limits - Log detailed information about range, requested vs actual values - Add GET_EXPOSURE_RANGE command to UDP control interface - Update Python control scripts with exposure range query support This prevents IS_INVALID_EXPOSURE_TIME errors and ensures values are always within the camera's capabilities. The exposure range varies by framerate and sensor configuration.
This commit is contained in:
@@ -197,8 +197,9 @@ Examples:
|
||||
|
||||
parser.add_argument('command',
|
||||
nargs='?',
|
||||
choices=['test', 'get-exposure', 'set-exposure', 'get-framerate', 'set-framerate',
|
||||
'get-gain', 'set-gain', 'get-auto-exposure', 'set-auto-exposure',
|
||||
choices=['test', 'get-exposure', 'get-exposure-range', 'set-exposure',
|
||||
'get-framerate', 'set-framerate', 'get-gain', 'set-gain',
|
||||
'get-auto-exposure', 'set-auto-exposure',
|
||||
'get-auto-gain', 'set-auto-gain', 'status'],
|
||||
help='Command to execute')
|
||||
|
||||
@@ -236,6 +237,9 @@ Examples:
|
||||
if args.command == 'get-exposure':
|
||||
success = simple_command("GET_EXPOSURE", "Getting current exposure")
|
||||
|
||||
elif args.command == 'get-exposure-range':
|
||||
success = simple_command("GET_EXPOSURE_RANGE", "Getting exposure range")
|
||||
|
||||
elif args.command == 'set-exposure':
|
||||
if args.value is None:
|
||||
print("Error: set-exposure requires a value (exposure in milliseconds)")
|
||||
|
||||
Reference in New Issue
Block a user