Which are the Absolute Positioning functions and protocols of Bosch Autodome & MIC cameras?
This article contains detailed examples for the absolute position functions of the various IP models of the Autodome & MIC cameras.
The support model series are: • Current Models: AUTODOME IP 4000/5000, AUTODOME IP 4000i/5000i, VG5 IP 7000, MIC IP 7000 & MIC IP 7000i, MIC IP 9000i • EOL models: VG5 700, VG5-800, JR HD
NOTES: 1. These commands will NOT work with either the Analog cameras with the serial interface.
2. The HD cameras do not support the OSRD absolute position commands. The HD models operate using the BICOM protocol over IP.
1. Command Repetition Rate
In order to avoid conflicting commands to the camera pan & tilt motors, commands must be controlled using one of the following methods.
Wait for Acknowledge using the GET command
After a SET command is issued, use the GET command to read the dome position and wait for the dome to reach the final position to ensure that it has stopped before sending another SET command. OR
Check to determine if the motors have stopped
The compound PTZ command includes the motors status in the reply to the GET (Inquiry) command. After the camera is told to Move (SET command) to a position, then GET commands can be used to check the motor status. If the motors are still moving, then don’t send another Move (SET) commands. OR
Add a fixed delay time between commands
A fixed delay of 100 mS could be added before a new SET command is issued. The camera will not reach the final position within this amount of time, but the internal buffer can receive commands at this rate. The camera will move to each position in the order that the commands are received, before it will move to the next position. NOTE: The Zoom position data updates at 4 times per second. If the Zoom command isn’t changed, then the value is not updated.
Important: If commands are sent faster than 100 mS, the following will occur:
• When the Autodome motors are in motion to go to a position, and they are not stopped before moving to another position, mechanical slippage will randomly occur.
o This will cause a loss of the home position, which in turn will cause all movements after this to be incorrect. o This will occur more often if the new position is not in the same direction.
• This will not happen when using the MIC IP 7000 camera, since it has an internal resolver that always ensures that any shifts in position are corrected.
2. Bicom Protocol Message Syntax
The Bicom message syntax consists of Flags + Server ID + Object ID + Operation + Bicom Data.
0x81 if a Return_Payload is expected 0x80 if No Return_Payload
Bicom PTZ Server ID:
0x0006 PTZ Server The PTZ server controls the pan, tilt and zoom position.
The Object ID consists of 4 Hex values (0x####). This document explains 0x1D0 & 0x, object ID.
0x01 GET (Read a value back from the device) 0x02 SET (Send a value to a device) 0x03 SET_GET (Will perform either of the above actions)
Bicom Data (Up to 30 bytes)
This depends on the type of command being sent. This document is restricted to the Absolute Position commands and the data bytes are defined below.
NOTE: The 0x at the beginning of these values indicates that it is a Hex value. The 0x is only sent as the beginning characters of the Payload. It is removed for the rest of the data. Refer to the examples below.
3. Position Coordinates
The position data is defined by the Bosch Unified Coordinate System (UCS). The figure below illustrates how the UCS is defined.
NOTES: 1. All versions of cameras have a Pan range of 0.00 to 359.99 2. The Autodome cameras Tilt down from 90.00 Degrees (Horizon) to 180.00 Degrees (looking straight down). 3. The MIC 7000 Camera Tilts up from 90.00 to 0.00. 4. All camera models adjust the coordinates when mounted inverted when the correct setting is configured.
4. Object ID 0x1D0 “Compound PTZ Command”
This section describes the Pan/Tilt/Zoom Compound Absolute Position Object, plus Movement Status object. This object provides control of the Pan, Tilt, Zoom positions in a single command. There is also an option to ignore any of these positions.
E.g. Send the Pan and Zoom position data and ignore the Tilt data. The Hex data for the Pan and Tilt positions is degrees (x100). The Zoom position Hex data is the focal length in mm (x 100).
NOTES: 1. The VG5 700; 800; JR HD FW version must be 5.5 or higher. 2. The AutoDome IP 7000 series & MIC IP HD 7000 series FW version must be 5.92 or higher. 3. This object is not supported by the VG4, VG5 600, MIC analog cameras, and the MIC IP PSU. a) There are separate documents available for these models. 4. The Absolute Position command is typically used for a movement to an Alarm condition to move the cameras as quickly as possible to a known location. Therefore, the camera always responds to an Absolute Position command at the MAX speed after the camera reaches this position, the control then typically changes to use the Variable Speed PTZ command to provide finer control of the camera Section VII). 5. The Maximum Speed varies for each model. Please refer to the Data Sheet for the specific values
Definition of the Get command and response (PTZPosMoveStatus)
Definition of the Set command and response (PTZPosMoveStatus)
Definition of the Data Bytes:
*********Description of Individual Data Bytes********* Bytes# 0 - 5 : PTZ Positions - Request and Response PPPP - 2 bytes Pan Position in Degrees x 100 (UCS) TPTP - 2 bytes Tilt Position in Degrees x 100 (UCS) ZPZP - 2 bytes Zoom position in Focal Length x 100 ****** Byte 6 : Ignore Flags - Expects valid data during Request (SET/SETGET), Don’t care during GET or Response
IP - Ignore Pan: 1 IT - Ignore Tilt: 1 IZ - Ignore Zoom: 1
****** Byte# 7 : Motors Move Flags - Don’t care during Request Motors status is reflected during Response MMF - Motors Move Flags reflects Motion Flags in the returned Data (GET)
PMF - Pan Move Flags: 0 - Stopped, 1 - Moving TMF - Tilt Move Flags: 0 - Stopped, 1 - Moving ZMF - Zoom Move Flags: 0 - Stopped, 1 – Moving
Refer to the PTZ_MovementReferenceGuide_Autodome_&_MIC_7000series_4_1.xlsx for a table of Magnification values.
5. Compound PTZ Absolute Command Examples
Bosch IP Video products in video management system environments are mainly controlled and managed using an enhanced version of Remote Control Protocol, RCP+, pronounced “RCP plus”.
This protocol defines commands and messages that allow to configure the units and to establish communication between units, or units and management systems. As RCP+ message and command sets are dependent on firmware features.
Full RCP+ documentation is available, but a brief summary is:
RCP+ provides opcodes (e.g. 0x9A5) for data transfer. It may be used with any programming language such as C++ or CGI scripts.
CGI Script Example
The use of absolute positioning does require detailed knowledge of programming or scripting languages and the user has to know how to use RCP+. The RCP+ Opcode used in this CGI script example is 0x09A5.
Please refer to the complete RCP+ documentation on usage of this message.
1. Syntax http://aaa.bbb.ccc.ddd/rcp.xml?command=0x09A5&type=P_OCTET&direction=WRITE&num=1&payload=0x80000601d002pppptptpzpzpiiff
• pp pp=Pan values in Hex (Degrees x 100) • tp tp = Tilt values in Hex (Degrees x 100)
• zp zp=Zoom values in HEX (Focal Length x 100)
• ii = Ignore flags (section V, ii)
• ff = Motor Move Flags (section V, ii)
Examples SET Commands:
SET command to pan 90, tilt 90, and zoom to full wide focal length (4.3 mm * 100, Decimal 430, HEX 01AE) http://aaa.bbb.ccc.ddd/rcp.xml?command=0x09A5&type=P_OCTET&direction=WRITE&num=1&payload=0x80000601d0022328232801ae0000
SET command to pan 270, tilt 135, zoom full optical focal length (129 mm * 100, Decimal 12900, HEX 01d6) http://aaa.bbb.ccc.ddd/rcp.xml?command=0x09A5&type=P_OCTET&direction=WRITE&num=1&payload=0x80000601d002697a34d832640000
SET command to pan 180, tilt 180 15X zoom (64.5 mm, Decimal 6450, HEX 1932) http://aaa.bbb.ccc.ddd/rcp.xml?command=0x09A5&type=P_OCTET&direction=WRITE&num=1&payload=0x80000601d0024650465019320000
6. Object ID 0x110 (Operation 0x85) “Variable Speed PTZ Command”
This section describes the Variable Speed Pan/Tilt/Zoom Position Movement object. This object provides control of the Pan, Tilt, Zoom positions in a single command. NOTES: • The Hex data for the Pan and Tilt positions is degrees (x100). • The Zoom position Hex data is the focal length (x 100).
Definition Position.MoveContVarSpeed: (0x85)
Notes: • A speed greater than 0 will cause the operation to start. • A speed equal to 0 for an individual command will cause that operation to stop for that one movement (P, T, or Z). • A speed equal to 0 for all three commands will stop ALL movement (PTZ) • The default mode is for the unit to operate in Proportional Speed. This means that a correction factor is applied to reduce the Speed, so that the control is smoother when at increased magnification factors. • The correlation of the Proportional Speed reduction versus the Zoom/Magnification Factor is provided in PTZ_MovementReferenceGuide_Autodome_&_MIC_7000series_4_0.xlsx.
7. Variable Speed PTZ Command Examples
Refer to Section 5. Compound PTZ Absolute Command Examples for more details on the format of these examples.
Send the command to pan Right at a speed of 15, Tilt Down at a speed of 2, and Zoom Out at a speed of 3 http://aaa.bbb.ccc.ddd/rcp.xml?command=0x09A5&type=P_OCTET&direction=WRITE&num=1&payload=0x8000060110858F0203
Send the command to Tilt Up at a speed of 5 and Zoom In at a speed of 3 http://aaa.bbb.ccc.ddd/rcp.xml?command=0x09A5&type=P_OCTET&direction=WRITE&num=1&payload=0x800006011085008383
... View more