Installation
This process uses AutoScript 4.8.1 and TriBeam_API_Python 2_2.1 provided by Thermo Fisher Scientific, which is a Windows-only configuration.
Pre-installation
-
Uninstall any prior installations of AutoScript
-
Follow the Autoscript installation instructions provided by Thermo Fisher Scientific
-
With
AutoScript_4.8.1.exe, install AutoScript according to Thermo Fisher Scientific's instructions:- Section 5 - Procedure, select the appropriate scripting configuration. This codebase has been tested in both "Local" and "Offline" Scripting Configurations.
- Select Components screen
- AutoScript Client components
- We recommend not installing the following: PyCharm Community IDE, .NET API, preferring to use VS Code as an IDE
- AutoScript Client components
- Select Components screen
- Select the installer option to add
pythonto the systemPATH. - Register to activate the AutoScript license on this computer.
- Restart the computer.
- Section 5 - Procedure, select the appropriate scripting configuration. This codebase has been tested in both "Local" and "Offline" Scripting Configurations.
-
Follow the Laser Control installation instructions provided by Thermo Fisher Scientific
- Install iFast and Python APIs
The AutoScript installer installs several Python modules. Expand the section below to view the full pip freeze output.
Show full AutoScript Python module list
appdirs==1.4.4
argon2-cffi-bindings==21.2.0
argon2_cffi==21.3.0
attrs==21.2.0
autoscript-core @ file:///C:/Program%20Files/Thermo%20Scientific%20AutoScript/PythonPackages/autoscript_core-5.17.0-py3-none-any.whl
autoscript-sdb-microscope-client @ file:///C:/Program%20Files/Thermo%20Scientific%20AutoScript/PythonPackages/autoscript_sdb_microscope_client-4.8.1-py3-none-any.whl
autoscript-sdb-microscope-client-tests @ file:///C:/Program%20Files/Thermo%20Scientific%20AutoScript/PythonPackages/autoscript_sdb_microscope_client_tests-4.8.1-py3-none-any.whl
autoscript-toolkit @ file:///C:/Program%20Files/Thermo%20Scientific%20AutoScript/PythonPackages/autoscript_toolkit-4.8.1-py3-none-any.whl
backcall==0.2.0
bleach==4.1.0
build==0.7.0
ceres_solver==2.1.0
certifi==2021.5.30
cffi==1.14.6
charset-normalizer==2.0.3
colorama==0.4.6
configobj==5.1.0.dev0
cycler==0.11.0
Cython==0.29.33
decorator==5.1.0
defusedxml==0.7.1
docutils==0.17.1
entrypoints==0.4
fonttools==4.31.1
h5py==3.6.0
idna==3.1
imagecodecs==2022.2.22
imageio==2.16.2
importlib_metadata==4.11.4
intel_fortran_rt==2022.0.3
intel_openmp==2021.4.28
ipykernel==5.5.6
ipython==7.31.1
ipython-genutils==0.2.0
jedi==0.18.0
Jinja2==3.0.3
joblib==1.1.0
jsonschema==3.2.0
jupyter-client==6.1.12
jupyter-core==4.8.1
jupyterlab-pygments==0.1.2
kiwisolver==1.4.0
libaec==1.0.6
libbz2==1.0.8
libfreetype==2.12.1
libgflags==2.2.2
libglog==0.6.0
libharfbuzz==3.2.0
libhdf5==1.12.1
libicu==70.1
liblcms2==2.12
liblz4==1.9.3
liblzma==5.2.5
libopenjpeg==2.4.0.post1
libpng==1.6.37
libprotobuf==3.13.0
libqhull==8.0.2
libsodium==1.0.18
libtiff==4.3.0
libturbojpeg==2.1.2
libyaml==0.2.5
libz==1.2.11
libzmq==4.3.4
libzstd==1.5.0
Markdown==3.3.7
MarkupSafe==2.1.1
matplotlib==3.5.1
matplotlib-inline==0.1.6
mfc_runtime==14
mistune==0.8.4
mkl==2021.3.0
mkl-service==2.4.0
msvc_runtime==14
nbclient==0.5.12
nbconvert==6.4.2
nbformat==5.2.0
nest-asyncio==1.5.4
networkx==2.7.1
notebook==6.4.8
numexpr==2.8.1
numpy==1.21.2
opencv_python==4.6.0
packaging==22.0
pandas==1.3.2
pandocfilters==1.5.0
parso==0.8.2
pep517==0.9.1
pickleshare==0.7.5
Pillow-SIMD==9.0.0.post1
prometheus-client==0.13.1
prompt-toolkit==3.0.24
psutil==5.8.0
pycparser==2.20
Pygments==2.8.1
pyparsing==2.4.7
pyrsistent==0.15.3
PySide6==6.2.3
python-dateutil==2.8.2
pytz==2022.6
PyWavelets==1.3.0
pywin32==301
pywinpty==2.0.4
PyYAML==5.4.1
pyzmq==22.3.0
qtbase==6.2.3
qtconsole==5.3.0
qtdeclarative==6.2.3
qtmultimedia==6.2.3
QtPy==2.3.0
qtshadertools==6.2.3
qtsvg==6.2.3
qttools==6.2.3
requests==2.26.0
scikit-image==0.19.2
scikit-learn==1.0.2
scipy==1.8.0
Send2Trash==1.8.0
shiboken6==6.2.3
sip==6.5.1
six==1.16.0
terminado==0.13.2
testpath==0.5.0
thermoscientific-logging @ file:///C:/Program%20Files/Thermo%20Scientific%20AutoScript/PythonPackages/thermoscientific_logging-5.17.0-py3-none-any.whl
threadpoolctl==3.1.0
tifffile==2022.4.8
toml==0.10.2
tomli==2.0.1
toolz==0.11.1
tornado==6.1
traitlets==5.1.0
urllib3==1.26.3
wcwidth==0.2.5
webencodings==0.5.1
zipp==3.7.0
Confirm the installation location of Autoscript's python environment, which should default to the following path: C:/Program Files/Enthought/Python/envs/Autoscript/python.exe. You can verify this by running the following in the Command Prompt (cmd.exe):
where python
which should output something similar to the following:
C:\Program Files\Enthought\Python\envs\AutoScript\python.exe
Main Installation
The user should first download the source code from the github repository. For offline machines, you can create a ZIP archive of the desired branch and transfer it to the destination machine. Otherwise, standard git clone commands can be utilized. For normal client use, it is recommended to use the latest version of the main branch.
Installation can be performed by running the provided batch file pytribeam_install.bat from the local directory where you want to install the package. This can be accomplished by either simply by double clicking on the pytribeam_install.bat file from the Windows Explorer, or navigating to the source pytribeam directory and running from either PowerShell or Command Prompt:
./pytribeam_install.bat
This install script will uninstall any exisiting version of pytribeam before installing the current version. Wheels of various open-source dependencies with the package will be installed. Wheels are provided in order to eliminate the need for internet connectivity on the microscope, and a full list of the current provided wheels can be found here: wheelhouse
note
pytribeam currently defaults to install in developer (editable) mode, which provides the user with the ability to modify and expand the source code, such as adjusting default values in the constants module. Such editing would be needed to run unit tests included in the package, as running of tests are tied to specific machine names provided in the constants module. Compiled unit test coverage for the package can be found for the latest release without installing as a developer here: test-coverage.
Verification
After running the install.bat script, confirm the package installation by opening a new terminal and run the following to list the available package commands:
pytribeam
which should generate the following output:
--------
pytribeam
--------
pytribeam
Prints this command line documentation.
pytribeam_info
Prints the module version, supported AutoScript and Laser API versions,
and detected installed environment.
pytribeam_gui
Launches the GUI for creating configuration .yml files and controlling
experimental collection.
pytribeam_exp <path_to_file>.yml
Runs the 3D data collection workflow based on an input .yml file.
pytribeam_exp --help
Prints help for the experiment command.
Example:
path/to/experiment/directory> pytribeam_exp path/to/config/file.yml
tip
You can also find out what version of pytribeam is installed, as well as currently supported version of AutoScript and Laser APIs by running the following from a terminal:
pytribeam_info
API docs were last built in an environment with the following info:
pytribeam module version: v0.1.4.dev48
Maximum supported .yml schema version: v1.0
Supported Thermo Fisher AutoScript versions: v4.8.1, v4.10.0, v4.11.0
Supported Laser API versions: v2.2.1
Installed environment:
AutoScript:
Distribution metadata: detected, version: 4.8.1
Import package autoscript_sdb_microscope_client: available
Laser API:
Distribution metadata: not detected, version: not detected
Import package Laser: not importable
Import package Laser.PythonControl: not importable
Test Validation
If you are interested in running the test suite on your hardware, see additional instructions here: Running Tests.