App Introduction¶
Instrument Connections¶
ARES connects to lab equipment using VISA resource addresses, which are stored in the instrument database. When the user presses Connect, ARES reads these addresses and establishes communication using MATLAB’s visadev interface.
How It Works:
Each dropdown in the Instruments tab corresponds to an entry in the instrument database.
When a valid resource string is selected, ARES:
Attempts to connect using
visadev.Sends an
*IDN?query to confirm the instrument identity.Updates the GUI with the model number or connection status.
Handles connection failures gracefully using the error logging system.
Supported Address Types
ARES supports VISA-compatible resource strings:
Type |
Example Format |
|---|---|
GPIB |
GPIB0::19::INSTR |
LAN |
TCPIP0::192.168.0.101::inst0::INSTR |
SOCKET |
TCPIP0::192.168.2.16::5025::SOCKET |
USB |
USB0::0x0957::0x2807::MY62003488::0::INSTR |
Plot Exporting¶
ARES includes a built-in right-click export system for all major plots across the application, making it easy to save results directly from the GUI.
How It Works:
Right-click on any plot.
A context menu with export options appears next to the plot.
Choose a format:
PNG, JPG – High resolution images
PDF – Vector graphics for papers and presentations
TikZ – For LaTeX users
Note
TikZ export requires the
matlab2tikzpackage and is only supported for Cartesian 2D plots.PDF export is not supported for the 3D Radiation Plot due to MATLAB’s
exportgraphicslimitations on 3D content.
Measurement Time Logging¶
ARES automatically logs performance metrics for every measurement session to help users monitor and optimize testing efficiency.
Each log entry includes:
Measurement Type:
PAorAntennaStart Time and End Time
Total Duration of the measurement
Number of Measured points or positions
Average Time per point/position
This log is stored in:
<userpath>/ARES/ARES_Measurement_Log.txt
This log enables users to:
Benchmark performance across different configurations
Optimize sweep parameters and delays
Maintain a record of test durations for reproducibility or documentation
Measurement Log Example:
[27-Apr-2025 15:57:38]
Antenna Measurement Summary:
Start Time: 27-Apr-2025 15:56:11
End Time: 27-Apr-2025 15:57:38
Duration: 00:01:26
Total Positions Measured: 19
Average Time Per Position: 00:00:04
---------------------------------------------------------------------------
Error Logging¶
ARES includes a built-in error handling system to capture unexpected issues during execution. When an error occurs:
A pop-up alert with the error message is shown to the user.
A detailed error report is automatically logged to:
<userpath>/ARES/ARES_Error_Log.txt
Each error entry includes:
Timestamp
Error Message
Error Identifier
Stack Trace (file, function name, and line number)
Note
If the log file or folder doesn’t exist, ARES will create it automatically.
This feature is particularly useful when debugging or reporting issues. The user can easily share the log file with our team to diagnose problems quickly.
Error Log Example:
[08-May-2025 19:57:30]
Error: Unrecognized function or variable 'units'.
Identifier: MATLAB:UndefinedFunction
Stack Trace:
In file: C:\Users\USERNAME\Documents\GitHub\AutomatedRadioEvaluationSuite\src\support\AntennaFunctions\RADIATIONPATTERN3D.m
Function: RADIATIONPATTERN3D
Line: 70
In file: C:\Users\USERNAME\Documents\GitHub\AutomatedRadioEvaluationSuite\src\support\AntennaFunctions\plotAntenna3DRadiationPattern.m
Function: plotAntenna3DRadiationPattern
Line: 83
In file: C:\Users\USERNAME\Documents\GitHub\AutomatedRadioEvaluationSuite\src\ARES.mlapp
Function: ARES.AntennaSelectedFrequencyValue
Line: 1793
In file: C:\Program Files\MATLAB\R2025a\toolbox\matlab\appdesigner\appdesigner\runtime\+matlab\+apps\AppBase.m
Function: @(source,event)executeCallback(ams,app,callback,requiresEventData,event)
Line: 54
---------------------------------------------------------------------------