You are here: Start » User Interface » Remote Access to the Runtime Application
Remote Access to the Runtime Application
It is possible to use FabImage Studio to control an FabImage Executor running on a remote computer, if only the two computers are in the same Ethernet subnet. To enable remote access in FabImage Executor, the option "Allow remote control" should be enabled. For security reasons, it is also possible to protect connection with a password:
In FabImage Studio the list of available remote systems is accessible in the Connect to Remote Executor window which opens up after choosing the File › Connect to Remote Executor menu command:
If an expected remote system is not visible on the list, please verify that: (1) it is configured for the same local area network, and (2) it can access Ethernet through its firewall (in the first place verify that in the Windows' Control Panel, Windows Firewall section, the option "Notify me when Firewall blocks a new program" is enabled). In some local networks information about communication type and ports may be useful to assign application access through firewall. In this case please use UDP ports 6342 and 6343 or TCP port 6342.
When connecting to a selected device, the program will ask for the password (if it has been set):
After successful connection, management of the selected executor becomes possible. Now you are able to do several actions: Upload Files, Control Program and Get Diagnostics.
To Manage Files on remote executor, click Upload Files button. In this window it is possible to send program files to the remote executor. By default all files are stored in the directory <CommonApplicationData>\FabImage\FabImage Executor.
In the Remote executor window you are able to control currently executed program. In the middle of the window we can see the current program status and the path to the currently loaded program. Next there are four buttons controlling program execution. Finally there is an option to open another program.
In the Remote Executor window there is available a few diagnostic tools. Here, it is possible to preview the execution log and a screen preview from the currently connected executor. All diagnostic options are located at the top of the Remote executor window.
Remote Image Acquisition
It is also possible to get images from a connected device using the remote executor. This method offers an easy way to acquire images using a different image protocols. Remote image acquisition filters enable to run this same code on the smart cameras (client side) as good as on developer computers without any additional modifications.
To enable remote image acquisition it is necessary to stop the executor program and enable the "Enable smart grabber" option:
In FabImage Studio it is possible to use the filters from the category Camera Support\Smart to get images from a device connected to the remote Executor system.
Currently the available image acquisition protocols are:
- AvSMART – access to AvSMART,
- GenICam – access to GenICam complaint devices,
- Roseek – access to Roseek cameras,
- SynView– access to NET GmbH cameras,
- WebCamera– access to DirectX complaint image sources like web cameras or frame grabbers.
To grab images using one of these protocols it is necessary to set inIpAddress in the filter input. The IP Address can be checked in the Connect to Remote Executor window when "Allow remote control" option is enabled in the Executor.
If system detect that the provided IP address describes local machine the Smart_GrabImage filters will perform all operation on local computer. So it is no need to perform any changes during transferring project from developers machine to the client side device.
If the program is deployed to a device with another IP address then the input inIpAddress should be changed to the IP of the Executor or left empty. If the input inIpAddress is empty then the image is always grabbed using an appropriate local image acquisition protocol.
Available filters for the remote image acquisition:
If inDeviceID is set toNILthe first found device will be used.
|Previous: Deploying Programs with the Runtime Application||Next: Performing General Calculations|