SNVT_pos_ctrl

Overview:

Position control.  (receiver, controller ID, controller priority, function, action, value.) .   

Used for the programmable-position camera-command interface.

The command interface consists of three different command functions:

  • Programmable camera-position presets/prepositions (CMF_REL),
  • Programmable tables of preposition tours (CMF_TOUR), and
  • Absolute positions for pan and tilt, in degrees (CMF_ABS).

The three command functions each have a set of actions, and arguments.

The programmable table of prepositions, a preposition tour table, can be called by number. A network tool configures the preposition tour table. The programmable prepositions are used by:

  • Saving a preposition by number (CMA_SAV), and
  • Recalling (going to) a previously saved preposition by number (CMA_CALL).

The absolute position can be:

  • Read for the current position (CMA_READ), or
  • Invoked (set) by using the ‘write’ command.

Each command input may have a response output, giving the status of the command.

If any illegal command function has been used, the response status is CMF_NUL (cam_func_t).

If any legal command function has been used, with an illegal action, the response status is CMA_NUL (cam_action_t).

The SNVT_pos_ctrl may be used also in a control-arbitration scenario. The receiver_id is used to refer to one particular device in a group of equal, controllable devices.

The controller_id is used to identify the requesting device from a group of equal, controlling devices. The controller_prio is used for the control arbitration in the controllable device. Standard control devices (e.g., keyboards) in normal control mode must have the priority assigned in the range 1 to 50. The range 51 to 200 is used in alarm control mode. The priority value zero (0) is used to release control.

EXAMPLES

Example 1, call of a preposition

Physical value controller #2, having priority 20, requests camera telemetry receiver #1, to go to (recall), a relative position, preposition #4.
nvoPositionCtrl.controller_id = 2
nvoPositionCtrl.controller_prio = 20
nvoPositionCtrl.receiver_id = 1
nvoPositionCtrl.action = CMA_CALL
nvoPositionCtrl.function = CMF_REL
nvoPositionCtrl.value.number = 4

Example 2, call of a preposition tour table

Physical value controller #2, having priority 20, requests camera telemetry receiver #1, to start (recall) a preposition tour, preposition tour #2.
nvoPositionCtrl.controller_id = 2
nvoPositionCtrl.controller_prio = 20
nvoPositionCtrl.receiver_id = 1
nvoPositionCtrl.action = CMA_CALL
nvoPositionCtrl.function = CMF_TOUR
nvoPositionCtrl.value.number = 2

Example 3, read current position as absolute values

Physical value controller #2, having priority 20, requests camera telemetry receiver #1, to retrieve (read), absolute positions of pan, tilt, and zoom.
nvoPositionCtrl.controller_id = 2
nvoPositionCtrl.controller_prio = 20
nvoPositionCtrl.receiver_id = 1
nvoPositionCtrl.action = CMA_READ
nvoPositionCtrl.function = CMF_ABS

Example 4, call of a position as absolute values

Physical value controller #2, having priority 20, requests camera telemetry receiver #1, to go to an absolute position, defined by values of pan, tilt, and zoom.
nvoPositionCtrl.controller_id = 2
nvoPositionCtrl.controller_prio = 20
nvoPositionCtrl.receiver_id = 1
nvoPositionCtrl.action = CMA_CALL
nvoPositionCtrl.function = CMF_ABS
nvoPositionCtrl.value.abspos.pan = _____
nvoPositionCtrl.value.abspos.tilt = _____
nvoPositionCtrl.value.abspos.zoom = _____

Details:

Resource Set: Standard 00:00:00:00:00:00:00:00-0
Index: 152
Obsolete: no
Size: 13
Programmatic Name: SNVT_pos_ctrl
Neuron C Type:
Structure
receiver_idReceiver ID.  (ID number.) .   
 
unsigned long
Minimum: 0
Maximum: 65535
Invalid: 0
Scaling (A,B,C): 1,  0,  0
Scaled value: 1 *10 0 *(Raw+0)
Resolution: 1
controller_idController ID.  (ID number.) .   
 
unsigned long
Minimum: 0
Maximum: 65535
Invalid: 0
Scaling (A,B,C): 1,  0,  0
Scaled value: 1 *10 0 *(Raw+0)
Resolution: 1
controller_prioController priority.  (priority value.) .   
 
unsigned short
Minimum: 0
Maximum: 100
Scaling (A,B,C): 1,  0,  0
Scaled value: 1 *10 0 *(Raw+0)
Resolution: 1
functionCamera function.  (camera function names.) .   
 
cam_func_t
actionCamera action.  (camera action names.) .   
 
cam_act_t
valueFunction value..   
 
Union
numberAction number.  (action number.) .   
 
unsigned short
Minimum: 0
Maximum: 255
Invalid: 0
Scaling (A,B,C): 1,  0,  0
Scaled value: 1 *10 0 *(Raw+0)
Resolution: 1
absposFunction absolute values.  (pan, tilt, zoom.) .   
 
Structure
panPan position..   
 
SNVT_angle_deg
tiltTilt position..   
 
SNVT_angle_deg
zoomZoom position..   
 
SNVT_lev_percent
Formats:

SNVT_pos_ctrl:  text("%d %d %d %m %m %d %f %f %f", receiver_id, controller_id, controller_prio, function, action, value.number, value.abspos.pan, value.abspos.tilt, value.abspos.zoom)