Difference between revisions of "How Do I Configure the Matlab Interface?"

From BESA® Wiki
Redirect page
Jump to: navigation, search
m (ConfigureBesaMatlabInterface.exe)
(Redirected page to MATLAB Interface#Configuration)
 
(14 intermediate revisions by 2 users not shown)
Line 1: Line 1:
 +
#REDIRECT [[MATLAB_Interface#Configuration]]
 +
 
{{BESAInfobox
 
{{BESAInfobox
 
|title = Module information
 
|title = Module information
 
|module = BESA Research Basic or higher
 
|module = BESA Research Basic or higher
|version = 5.2 or higher
+
|version = BESA Research 5.2 or higher
 
}}
 
}}
  
Line 20: Line 22:
 
** The path for the 32-bit version: '''C:\Program Files\MATLAB\R2009b\bin\win32'''
 
** The path for the 32-bit version: '''C:\Program Files\MATLAB\R2009b\bin\win32'''
  
* Open the ''"System Properties"'' dialog by holding down the ''"Windows"'' key and pressing the ''"Pause"'' key at the same time.
+
* Open the "'''System Properties'''" dialog by holding down the ''"Windows"'' key and pressing the ''"Pause"'' key at the same time (Windows logo key + Pause).
** In XP, the dialog is opened directly.
+
** In Windows XP, the dialog is opened directly.
** In Vista and Window 7, the key combination opens the ''"System Display"''. Click on the link ''"Change Settings"''.
+
** In Windows Vista and Windows 7, the key combination opens the ''"System Display"''. Click on the link ''"Change Settings"''.
** In Windows 8, the key combination also opens the ''"System Display"''. Click on the link ''"Advanced system settings"''. Skip the step in this description, as you have already chosen the advanced settings.
+
** In Windows 8 and Windows 10, the key combination also opens the ''"System Display"''. Click on the link "'''Advanced system settings'''".
 +
*** Skip the step in this description, as you have already chosen the advanced settings.
  
* Select the ''"Advanced"'' tab.
+
* Select the "'''Advanced'''" tab in the ''"System Properties"'' dialog.
* Press the ''"Environment Variables"'' button.
+
* Press the "'''Environment Variables...'''" button.
* Under ''"System variables"'' click on the ''"Path"'' variable and then click ''"Edit"''. In the resulting dialog, enter a semicolon (;) at the end of the path string, and add the path after the semicolon.
+
* Under "'''System variables'''" click on the "'''Path'''" variable, and then click the ''"Edit..."'' button.
* Click ''"OK"'' to close and save the path variable. Click ''"OK"'' to close the ''"System Properties"'' dialog. When using Windows Vista/7/8, you will also need to close the ''"Control Panel"'' window afterwards.
+
** In the resulting dialog, enter a semicolon (;) at the end of the path string, and add the path after the semicolon.
 +
** In Windows 10, click the ''"New"'' button in the resulting dialog and then add the path
 +
* Click ''"OK"'' to close and save the path variable. Click ''"OK"'' to close the ''"System Properties"'' dialog. When using Windows Vista/7/8/10, you will also need to close the ''"Control Panel"'' window afterwards.
  
 
<div><ul>  
 
<div><ul>  
Line 40: Line 45:
  
 
=== ConfigureBesaMatlabInterface.exe ===
 
=== ConfigureBesaMatlabInterface.exe ===
 +
 +
[[File:ConfigureBesaMatlabInterface_01.png|250px]]
 +
 
(Only required after a change of your MATLAB configuration after installation of BESA Research)
 
(Only required after a change of your MATLAB configuration after installation of BESA Research)
  
During the installation process of BESA Research, the program <span style="color:#ff9c00;">ConfigureBesaMatlabInterface.exe</span> (or SetupBesaMatlabInterface.exe) in the BESA Research root folder (C:\Program Files (x86)\BESA\Research_7_0) was executed.
+
During the installation process of BESA Research, the program <span style="color:#ff9c00;">ConfigureBesaMatlabInterface.exe</span> (or SetupBesaMatlabInterface.exe) in the BESA Research root folder (e.g.: '''C:\Program Files (x86)\BESA\Research_7_0''') was executed.
  
 
Run this program '''as administrator''' again when your MATLAB configuration has changed, e.g. after updating your MATLAB version. In the dropdown list, select the MATLAB version that you are using.
 
Run this program '''as administrator''' again when your MATLAB configuration has changed, e.g. after updating your MATLAB version. In the dropdown list, select the MATLAB version that you are using.
  
 
This program performs two operations:
 
This program performs two operations:
* It copies the appropriate interface Dll to the BESA Research root folder and renames it to "<span style="color:#ff9c00;">BesaMatlab.dll</span>" (32-bit version) or "<span style="color:#ff9c00;">BesaMatlab64.dll</span>" (64-bit version), and
+
* It copies the appropriate interface dll file to the BESA Research root folder and renames it to "<span style="color:#ff9c00;">BesaMatlab.dll</span>" (32-bit version) or "<span style="color:#ff9c00;">BesaMatlab64.dll</span>" (64-bit version), and
* If you are using a 64-bit version it creates an entry in <span style="color:#ff9c00;">BESA.ini</span> as follows:
+
* If you are using a 64-bit version, it creates an entry in [[The Initialization File: BESA.ini|BESA.ini]] (e.g.: '''C:\Users\Public\Documents\BESA\Research_7_0''') as follows:
  
 
<source lang="dos">
 
<source lang="dos">
Line 57: Line 65:
 
=== BesaMatlab64Interface.exe ===
 
=== BesaMatlab64Interface.exe ===
  
If the installed MATLAB is 64-bit version, please run the program <span style="color:#ff9c00;">BesaMatlab64Interface.exe</span> in the BESA Research root folder (C:\Program Files (x86)\BESA\Research_7_0). If the MATLAB path is set properly, one program window is shown up without an error message. After that please just close the window.
+
[[File:BesaMatlab64Interfaces_01.png|200px]]
  
 +
'''Note: This step is not needed from BESA Research 7.1 March 2021.'''
 +
 +
If the installed MATLAB is 64-bit version, please run the program <span style="color:#ff9c00;">BesaMatlab64Interface.exe</span> in the BESA Research root folder (e.g.: '''C:\Program Files (x86)\BESA\Research_7_0'''). If the MATLAB path is set properly, a program window as the screenshot below is shown up without an error message. After that please just close the window.
 +
 +
[[File:BesaMatlab64Interfaces_02.png|400px]]
  
 
== Updating the MATLAB Interface after MATLAB Upgrade ==
 
== Updating the MATLAB Interface after MATLAB Upgrade ==
Line 64: Line 77:
 
Sometimes, the BESA to MATLAB interface stops working after installation of new/additional MATLAB version on one computer. The reason is the registry change/corruption caused by the newly installed version. In order to correct this, one has to perform the following steps:
 
Sometimes, the BESA to MATLAB interface stops working after installation of new/additional MATLAB version on one computer. The reason is the registry change/corruption caused by the newly installed version. In order to correct this, one has to perform the following steps:
  
# Make sure that in the ''"Path"'' environment variable only the path to one MATLAB version exists.
+
# Make sure that in the "'''Path'''" environment variable only the path to one MATLAB version exists.
# Make sure that the correct <span style="color:#ff9c00;">Matlab.dll</span> is installed by starting the tool <span style="color:#ff9c00;">ConfigureBesaMatlabInterface.exe</span> and selecting the corresponding Matlab version and architecture.
+
# Make sure that the correct MATLAB interface dll (<span style="color:#ff9c00;">BesaMatlab.dll</span> (32-bit version) or <span style="color:#ff9c00;">BesaMatlab64.dll</span> (64-bit version)) is installed by starting the tool <span style="color:#ff9c00;">ConfigureBesaMatlabInterface.exe</span> (or SetupBesaMatlabInterface.exe) and selecting the corresponding MATLAB version and architecture.
# Run '''CMD (Command Prompt) as administrator''', and then execute the following command <source lang="dos">matlab -regserver</source> (registers MATLAB as a Component Object Model (COM) server).
+
# Run '''CMD (Command Prompt) as administrator''', and then execute the following command <source lang="dos">matlab -regserver</source> ([https://www.mathworks.com/help/matlab/matlab_external/register-matlab-as-automation-server.html registers MATLAB as a Component Object Model (COM) server]).
# Sometimes if the MATLAB license is connected to a specific user account and the user account does not have administrator rights it could be problematic to execute that command. In that case change the corresponding account to an administrator account and then perform the actions again. After that the account could be made to regular user account again.
+
#* Close the CMD window (there should be no error message).
 
+
#* Sometimes if the MATLAB license is connected to a specific user account and the user account does not have administrator rights, it could be problematic to execute that command. In that case, change the corresponding account to an administrator account and then perform the actions again. After that the account could be made to regular user account again.
 +
# Run '''CMD (Command Prompt) as NOT administrator''', and then execute the following command <source lang="dos">matlab -automation</source> ([https://www.mathworks.com/help/matlab/matlab_external/creating-the-server-manually.html Manually create automation server]: start MATLAB as a Component Object Model (COM) Automation server. MATLAB does not display the splash screen).
 +
#* Close the CMD and MATLAB Command Window (there should be no error message).
  
 
== Testing ==
 
== Testing ==
  
* Start BESA Research and check if '''Send to MATLAB...''' is displayed in the '''File''' menu. If it is, the interface is set up correctly. Note that the item will be grayed if no file is open in BESA Research.
+
Start BESA Research and check if '''Send to MATLAB...''' is displayed in the '''File''' menu. If it is, the interface is set up correctly. Note that the item will be grayed if no file is open in BESA Research.
* Test the interface: open a data file, mark a short (e.g. 1 s) time range, and select '''File / Send to MATLAB...''' to open the Export data dialog (Fig. 4).
+
 
 +
Test the MATLAB interface
 +
* Open a data file, mark a short (e.g. 1 s) time range, and select '''File / Send to MATLAB...''' to open the Export data dialog (Fig. 4).
 
* The MATLAB window should open, and BESA Research will display a progress bar (Fig. 5).
 
* The MATLAB window should open, and BESA Research will display a progress bar (Fig. 5).
 
* After the window closes, open the MATLAB window, and type '''<code>workspace</code>''' to open the workspace window (Fig. 6), or '''<code>desktop</code>''' to open the standard MATLAB desktop.
 
* After the window closes, open the MATLAB window, and type '''<code>workspace</code>''' to open the workspace window (Fig. 6), or '''<code>desktop</code>''' to open the standard MATLAB desktop.
Line 83: Line 100:
 
<li style="display: inline-block;"> [[File:ExportedMatlabStructure.png|thumb|300px|Figure 6. Data exported from BESA Research to MATLAB]] </li>
 
<li style="display: inline-block;"> [[File:ExportedMatlabStructure.png|thumb|300px|Figure 6. Data exported from BESA Research to MATLAB]] </li>
 
</ul></div>
 
</ul></div>
 +
  
 
== Troubleshooting if the interface is not working after the above steps ==
 
== Troubleshooting if the interface is not working after the above steps ==

Latest revision as of 14:40, 6 May 2021