| Customize Help

MILweb overview



You can monitor your MIL application from one or more remote computers by configuring it to be a MILweb server application. When MILweb functionality is enabled for your application, you can make some MIL objects (such as 2D displays) available over the network. Published MIL objects can be accessed by a MILweb client application, which you write using the provided JavaScript or C/C++ MILweb API.

The JavaScript MILweb API is suitable for writing a client application that can run in a compatible web browser on a variety of devices (including computers, phones, and tablets) under a variety of operating systems (including Windows, Linux, MacOS, Android, iOS, and others). The C/C++ MILweb API is suitable for writing a standalone client application that can run under Windows or Linux. Regardless of the chosen API, the remote computer is not required to have MIL installed, have a MIL license, nor contain Matrox hardware to run a MILweb client application.

You can create a single MILweb client application that simultaneously connects to multiple MILweb server applications. You can also create more than one MILweb client application for connecting to the same MILweb server application. For example, it can be useful to have one MILweb client application used to monitor a single vision controller in an HMI, and another used to monitor several vision controllers simultaneously from another location. You do not need to use the same MILweb API (JavaScript or C/C++) for each MILweb client application you create.

Capabilities of MILweb client applications

Both the C/C++ and JavaScript MILweb client APIs are designed for you to create a MILweb client application that performs the following tasks:

  • Show 2D displays published by the MILweb server application (including annotations).

    For example, you might select the last processed image to a display in your MIL application, and show that display in your MILweb client application.

  • Manipulate displays of the MILweb server application (including annotations).

    For example, you might design your MILweb client application to allow the user to interactively pan, zoom, and annotate a display of your MIL application.

  • Receive other information from the MILweb server application in the form of messages.

    For example, you might design your MIL application to send a message to your MILweb client application indicating whether the last image passed or failed an inspection process. You can then show this pass or failure result to the user in your MILweb client application.

  • Send information to the MILweb server application in the form of messages.

    For example, your MILweb server application might have some operational settings that can be changed at runtime (such as which digitizer to use for grabbing images, or the parameter settings for image processing functions). You can design your MILweb client so that the user can select new settings from an interface; your MILweb client can then send the updated setting in a message, which is received and applied by your MIL application.

    Since you can send any type of information in a message, you can control any aspect of your MIL application using messages by establishing your own protocol. For example, you might design your MILweb server application to grab an image every time a MILweb client application sends the number 12345 in a message. For more information, see the MILweb messages subsection of the Fundamentals for creating your MILweb client application section later in this chapter.