IntroductionDescriptionThe Tratec Norcon Modbus Server provides an open interface between Milestone XProtect VMS,using the proprietary Milestone Integration Platform (MIP) and an existing or new SCADA or PLCsystem. Interface to the universally standardized Modbus protocol is supported by the vast majorityof OPC servers, SCADA and PLC systems available, enabling low cost and hassle free integration ofMilestone XProtect VMS into your automation systems.Using the Modbus Server provides full flexibility in selecting automation systems, as it supports bothnew and pre-existing installations.The Modbus Server provides runtime feedback of camera statuses and alarms, allowing for triggingpre-defined events and operation of individual cameras – all configured and maintained in MilestoneXProtect VMS.The Modbus Server is provided as a single installer file for Windows, and will run on both 32 and 64bit operating systems. It is easy to configure and setup the Modbus Server using the provided userinterface application.Milestone Xprotect VMSMilestone IntegrationProtocol (MIP)Tratec NorconModbus ServerModbusProtocolModbus capableSCADA systemModbus capablePLC systemModbus capableOPC serverKey Features Easy to integrate Milestone XProtect VMS into PLC software or SCADA software, eitherdirectly or via an OPC server.Data from Milestone XProtect VMS is made available on the universally available Modbusprotocol, opening up to a wide range of possible uses.Runtime feedback of Milestone XProtect VMS information on any Modbus capable deviceopens up for even more flexibility. Operator control and making information available inmost automation systems is also made possible.PrerequisitesSome basic requirements must be fulfilled in order to use the software:1. A computer to install the Modbus Server on:Page 1 of 15

a. Windows 7 Professional, 32 or 64 bitb. Windows Server 2008 R2 Standard SP1c. .Net framework 4.0 or higher must be installed prior to installationd. Other operating systems might complye. Administrator rights for installation and configuration of the software2. Access to the Milestone XProtect VMS server:a. The server must be reachable via Ethernet from the computer where the applicationis installedb. User details for logging into the Milestone XProtect VMS serverc. Port 22333 must be opened on the Milestone XProtect VMS server for propercommunication with event serverInstallationIn order to install the Modbus Server, follow the instructions below:Installation stepImage1. Run the provided "Setup TN ModbusServer.exe" with administratorprivileges. Click Next.2. Use default installation path or select adifferent one. Click Next.3. Configure shortcuts as desired. ClickNext.Page 2 of 15

Installation stepImage4. Finally click Install.5. If all goes well, the software is installedwithout issues. Be aware that acommand window appears for a shorttime, this is normal and expected andindicates registration of the applicationas a service.The software is now ready forconfiguration.ActivationThe Tratec Norcon Modbus Server require activation for proper operation. A grace period of 2 hoursis provided, and an evaluation activation valid for 30 days is available as well. Managing activations isdone via the separate tool Tratec Norcon Activation Manager.ConfigurationA bit of adviceCommunication between the Modbus Server and Milestone XProtect VMS could prove a bit slowdepending on network speeds and computer load. Do not worry if the software becomes slightlyunresponsive at times – this is expected. Click F5 to refresh view manually.Main overviewBrowse to the installation folder of the application (default location is [Program Files (x86)]\TRATECNORCON AS\TN Modbus Server\) and start the application TN Modbus Server UI.exe. A windowappears:Page 3 of 15

Graphical elementImageA. Server address. Settingserver address is done via aAseparate form, see furtherdown for more information.BB. List of connected Modbusclients in the form [IPEDCaddress]:[port no]. Amaximum of 2 clients couldbe connectedFC. Service controller. Willindicate in green in field"Installed" if service isinstalled correctly. If notgreen, reinstall or checkGservice registration. Willindicate green in "Running"if service is running. Must berunning in normal operation.Also service start/stopbuttons.D. Graphic indicatingconnection status fordifferent clients.Possible indications areshown to the right.Milestone VMS indicatescorrect connection toXProtect software, andModbus client(s) indicatesone or more clients areconnected.E. Event and status list with messages from the service.The first message in a normal running system will always be Port(s) [portno] open(ed) on[IP address].Then a message should appear indicating Milestone configuration loaded successfully. Thisis not necessarily the second message if an OPC server is connecting to the application.Then it would list several messages indicating Connection request received from [IPaddress]:[portno] and Network stream [IP address]:[portno] stopped. This indicates thatModbus clients are attempting to connect to the server. The list of connected clients, D,will list all currently active clients.F. Text filter for the list of discovered cameras and events.List of discovered cameras and events. This list is read from the Milestone XProtect VMS.G. Text filter for the list of configured combined objects.List of configured combined objects.In addition, there is a menu bar at the top of the application:Menu elementImageThis is the top level menu.Page 4 of 15

Menu elementImageClicking "File" opens a submenu like the oneto the right. "Edit Config" is used forgraphically building up Modbus addressspace. "Download " is used for downloadingand saving configuration in the Modbusserver. "Restart " is used for restarting theModbus server software, and is relevantwhen new configuration is downloaded.Note: Changed configuration will not betaken into account until after a Restart.Clicking "View" opens a submenu like the oneto the right. "Refresh" forces a refresh of dataand user interface. "System telegram"displays the available system data presentedon Modbus, like rolling counter. "Properties"opens a dialog for setting Milestone URI,username, password and other settings.The "Help" button provides access to anAbout dialog.Properties – First stop for configurationFirst, a connection to the Milestone XProtect VMS must be established. Login credentials is providedusing the Properties dialog.Enter login details and provide a path for storing settings (important!). Poll time indicates the intervalat which data will be automatically updated from the UI. After all settings are done, click OK anddownload to Modbus Server. Wait a few seconds (max 30) to check if login succeeded. If not, repeatuntil proper login. The event and status list will inform of progress.Page 5 of 15

Main windowWhen correct connection data is entered and saved (A), the server could be attempted started (C) ifnot already running. This could take some time. The status and event list (E) will indicate any errormessages. If a valid connection is established, the list of discovered items will be updated with datafrom the Milestone XProtect VMS. Click F5 for forced update. See example below of a properlyconnected system:Assigning Modbus registers to cameras and eventsThere are two possible methods of assigning Modbus addresses to cameras and events. Either byassigning addresses to each camera and event in the Discovered items list, or by "packing" camerasand events into special combined objects. The most normal use would be directly from the list ofDiscovered items.Each object, regardless of type (either camera, event, PG77 KAMERA or EVENT ARRAY ) uses 5word registers. How data is arranged for the different types is explained in chapter Available data fordifferent types.Right clicking an object in the list of Discovered items will display a context menu:Page 6 of 15

Context menuDescriptionDisable/enable use – assigns an available object number to the selectedobject. The object number is used for calculating the Modbus address.Info – for cameras the available properties of that camera is displayed ina popup. For events, nothing is displayed.Export to csv – exports all discovered data to a set of files which couldbe used in a separate editor or as configuration backup.Display Data – opens a popup indicating the register addresses and theirvalue.A maximum of 399 combined objects may be configured, with a maximum of 800 cameras andevents (totally). This gives a maximum capacity of the software of 1199 objects.Using the Configuration tool for Modbus address setupA separate tool is available for generating import files for the Modbus Server software. Simply clickFile Edit Config to open the tool:This tool provides an easy to use interface for creating combined objects.Page 7 of 15

Graphical elementA. A list of all camera objects found inthe Milestone VMS.A filter field for the cameras isavailable above the list (use * aswildcard).B. A list of all event objects found inthe Milestone VMS.A filter for the events is availableabove the list (use * as wildcard).C. List of combined objects. When aselection is made, the available"positions" in that combined objectappears in D.Right click to add new combinedobject from context menu (F).D. A list of all "positions" in thecurrently selected combinedobject. Use drag and drop from listof cameras or events to populatesub items.Note: It is only possible to addevents to free event slots, andcameras to camera slots.E. Sets the selected item (in D) asSPARE.F. Context menu when right clickingin C. Used to add a new object ofeither available type, orremove/delete the selected object.ImageFACEDBFNote that all required camera and/or event objects used in combined objects will be enabled (ifrequired).If you select File Save or File Save and close, you will be given a choice of importing theconfiguration when returning to the main application:Page 8 of 15

Click Yes. After import is completed, download settings to Modbus Server and restart it. The datashould be available on Modbus Server straight away.InfoThe info selection will open a dialog and present information read from Milestone. This is relevantfor Discovered items only. Below is an example for a PTZ camera:Display dataThe Display Data menu selection will open a dialog where you could inspect the data being presentedon Modbus. The below example is a camera object:Page 9 of 15

The dialog displays the Modbus register address, a brief description and the actual value as bitpattern and integer.Note! This dialog will only work for objects with an address different from 0 (that is, an enabledobject). All objects with object number 0 is not given an address, and is therefore not possible toinspect.Display Data is available from both Discovered items as well as Combined objects.Page 10 of 15

Available data for different typesIntroductionAll data is read using Modbus RTU over TCP, function code 3 (holding registers - preferred) or 1 (coil).Data is written using function code 6 (single register – preferred) or 5 (single coil).A general note regarding commands. As a general rule, all commands are set from the connectedModbus client, and the command bit will be reset by the Modbus Server once it is executed.System telegramThe system telegram is available for reading status of the Modbus Server. The different registerscontains the following information:Register address(WORD)Contained dataBit12345TRUEFALSEStatus0Connected to MilestoneNot connected to Milestone1Milestone VMS is runningMilestone VMS is not runningSpareSpareSpareRolling counter. Will be updated every 15 seconds. Will count from 0 to30000, jump to 0 and start over again.Discovered itemsIntroductionDiscovered items are the basis objects in the Modbus server. Even if used in combined objects, thediscovered items must be enabled. This section explains the data layout for the Discovered items.Note! Not all statuses and commands are available for all cameras. Available options are dependenton selected hardware and their built-in possibilities.Page 11 of 15

CameraThe camera object mirrors statuses and commands to/from the Modbus Server. The differentregisters contains the following information:Register address(WORD)Contained dataBit(Object no * 5) 1Status012345678910Bit(Object no * 5) 2No PTZ availableNo PTZ center availableNo PTZ rectangle availableNo PTZ home availableNo PTZ diagonal availableNo panNo tiltNo zoomNo ipixNo panoramic lensNo shortcutTRUEFALSETRUETRUECommands48Move up49Move down50Move left51Move right52Move center53Move down and left54Move down and right55Move up and left56Move up and right57Move home58Zoom in59Zoom out60Start recording61Stop recordingBit(Object no * 5) 5Has PTZ availableHas PTZ center availableHas PTZ rectangle availableHas PTZ home availableHas PTZ diagonal availableHas panHas tiltHas zoomHas ipixHas panoramic lensHas shortcutStatus32Not responding33In alarmBit(Object no * 5) 4FALSEStatus16Preset position 1 available 31Preset position 16 availableBit(Object no * 5) 3TRUETRUECommands64Go to preset position 1 79Go to preset position 16Preset position 1 not availablePreset position 16 not availableFALSERespondingNot in alarmFALSENothing happensNothing happensNothing happensNothing happensNothing happensNothing happensNothing happensNothing happensNothing happensNothing happensNothing happensNothing happensNothing happensNothing happensFALSENothing happensNothing happensPage 12 of 15

EventThe event object presents one command only, and that is for firing the associated event.Register address(WORD)Contained data(Object no * 5) 1(Object no * 5) 2(Object no * 5) 3SpareSpareSpareBit(Object no * 5) 4(Object no * 5) 5TRUECommands48Fire eventSpareFALSENothing happensCombined objectsCombined objects utilize discovered items and "pack" them into other objects with other Modbusinterfaces. This is mostly used for specialized applications, but could be used in some cases.PG77 Camera objectThis object combines one camera object and one event object into one common object, packed into5 word address space. This combined object is created for highly specialized solutions, and isnormally not interesting for other applications. The object handles blocking of alarms and errors, andhas made addresses available for outside use.The camera object is organized into two objects really, a camera object covering WORD addresses 1to 3, and a communication status object covering WORD addresses 4 and 5.Register address(WORD)Contained dataBit(Object no * 5) 1Bit(Object no * 5) 2TRUEFALSECamera Status0InAlarmNot in Alarm1Alarm blockedAlarm not blocked2ErrorNot in Error3Error blockedError not blockedVarious status bits with no other meaning than being possible to4-11read (always FALSE)TRUECamera Commands16Block alarm17Release blocking of alarm18Block error19Release blocking of error20Select camera21Activate fireplanFALSENothing happensNothing happensNothing happensNothing happensNothing happensNothing happensCamera parameter(Object no * 5) 3Fireplan no – integer for holding fireplan number. Could be read/written,but no other action is implemented.Page 13 of 15

Register address(WORD)Contained dataBit(Object no * 5) 4Bit(Object no * 5) 5TRUECamera communication Status48Communication errorCommunication error blocked49TRUECamera communication CommandsBlock communication error64alarmRelease blocking of65communication alarmFALSENo communication errorCommunication error notblockedFALSENothing happensNothing happensEvent Array objectThis object combines up to 32 events into one common object, packed into 5 WORD address space.This object could prove more convenient if the task is to trigger huge amounts of events and camerainformation is of less importance (it is of course possible to combine and use this object type incombination with other objects).Register address(WORD)Contained dataBitTRUEFALSEEvent 00 available/configuredEvent 00 notavailable/configuredEvent 15 available/configuredEvent 15 notavailable/configuredTRUEFALSEEvent 16 available/configuredEvent 16 notavailable/configuredEvent 31 available/configuredEvent 31 notavailable/configuredTRUEFALSEStatus(Object no * 5) 10 15BitStatus(Object no * 5) 216 31Bit(Object no * 5) 3Commands0Trigger Event 00 15Trigger Event 15Bit(Object no * 5) 4(Object no * 5) 5TRUECommands0Trigger Event 16 15Trigger Event 31SpareNothing happensNothing happensFALSENothing happensNothing happensPage 14 of 15

Status bits will only reflect if an event is connected to that bit. It will not reflect missing connection tothe Milestone XProtect VMS or deletion of an event in the VMS.In daily useBackupIt is recommended to keep a backup of the settings folder as assigned in the Properties dialog.Replacing the backup files and restarting the Modbus Server will result in a complete restoration ofconfiguration.Fault findingBelow is a list of possible faults and recommended solutions.Error/problem1. The UI opens up, but there seemsto be information missing.2. I have changed my configuration,but it seems it is not taken intoaccount.3. I would like to download mysettings, but the menu selectionFile Download is unavailable.4. It seems the software is unable toconnect to Milestone even withcorrect credentials.5. I cannot connect with my Modbusclient.Proposed solution This could be an issue when starting the UI. Click F5for refreshing all data and UI elements. Download settings via File Download Restart via File Restart Try again. Open the Properties dialog via View Properties andclick OK. This will enable download again. 6. "Display data" is not displayinganything!7. I am unable to get the softwareworking correctly. 8. My property settings disappeared! Verify port 22333 is opened on Milestone server.Also check the same port is opened on the MilestoneEvent server (if running on a different computer).This software opens port 502 as default. Check thestatus window to verify which IP address this port isopened on. This is the IP address your client mustconnect to.You may change the default port by manipulatingsettings file MBServer.xml. Alter the elementPortsToOpen/int to your preferred port number.Restart service "TN Milestone to Modbus Server.exe.Did you allow the service to communicate in yournetwork (firewall settings)?The form could be a bit slow to indicate data whenopened. Give it a few seconds to settle.If no data appears, close it and try again.Did you provide a valid path for settings files(View Properties)?There is a grace period of 2 hours for testingpurposes. After this period, the software stopsworking. A renewed grace period is available ifsoftware is restarted.To get an activation code, follow the instructions inthe separate tool TN Activation Manager.The properties are stored in the remote service. TheUI does not store properties. The Properties areuploaded from the service when a connection isestablished.Page 15 of 15

of OPC servers, SCADA and PLC systems available, enabling low cost and hassle free integration of Milestone XProtect VMS into your automation systems. Using the Modbus Server provides full flexibi