-
Notifications
You must be signed in to change notification settings - Fork 21
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
- Loading branch information
1 parent
7620283
commit 8426efd
Showing
1 changed file
with
345 additions
and
0 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,345 @@ | ||
<?xml version="1.0" encoding="utf-8" ?> | ||
<!DOCTYPE article PUBLIC "-//NLM//DTD JATS (Z39.96) Journal Publishing DTD v1.2 20190208//EN" | ||
"JATS-publishing1.dtd"> | ||
<article xmlns:mml="http://www.w3.org/1998/Math/MathML" xmlns:xlink="http://www.w3.org/1999/xlink" dtd-version="1.2" article-type="other"> | ||
<front> | ||
<journal-meta> | ||
<journal-id></journal-id> | ||
<journal-title-group> | ||
<journal-title>Journal of Open Source Software</journal-title> | ||
<abbrev-journal-title>JOSS</abbrev-journal-title> | ||
</journal-title-group> | ||
<issn publication-format="electronic">2475-9066</issn> | ||
<publisher> | ||
<publisher-name>Open Journals</publisher-name> | ||
</publisher> | ||
</journal-meta> | ||
<article-meta> | ||
<article-id pub-id-type="publisher-id">6028</article-id> | ||
<article-id pub-id-type="doi">10.21105/joss.06028</article-id> | ||
<title-group> | ||
<article-title>Scanbot: An STM Automation Bot</article-title> | ||
</title-group> | ||
<contrib-group> | ||
<contrib contrib-type="author" corresp="yes"> | ||
<contrib-id contrib-id-type="orcid">https://orcid.org/0000-0003-3990-8852</contrib-id> | ||
<name> | ||
<surname>Ceddia</surname> | ||
<given-names>Julian</given-names> | ||
</name> | ||
<xref ref-type="aff" rid="aff-1"/> | ||
<xref ref-type="aff" rid="aff-2"/> | ||
<xref ref-type="corresp" rid="cor-1"><sup>*</sup></xref> | ||
</contrib> | ||
<contrib contrib-type="author"> | ||
<contrib-id contrib-id-type="orcid">https://orcid.org/0000-0003-2282-8223</contrib-id> | ||
<name> | ||
<surname>Hellerstedt</surname> | ||
<given-names>Jack</given-names> | ||
</name> | ||
<xref ref-type="aff" rid="aff-1"/> | ||
<xref ref-type="aff" rid="aff-2"/> | ||
</contrib> | ||
<contrib contrib-type="author"> | ||
<contrib-id contrib-id-type="orcid">https://orcid.org/0000-0002-5157-7737</contrib-id> | ||
<name> | ||
<surname>Lowe</surname> | ||
<given-names>Benjamin</given-names> | ||
</name> | ||
<xref ref-type="aff" rid="aff-1"/> | ||
<xref ref-type="aff" rid="aff-2"/> | ||
</contrib> | ||
<contrib contrib-type="author"> | ||
<contrib-id contrib-id-type="orcid">https://orcid.org/0000-0003-1140-8485</contrib-id> | ||
<name> | ||
<surname>Schiffrin</surname> | ||
<given-names>Agustin</given-names> | ||
</name> | ||
<xref ref-type="aff" rid="aff-1"/> | ||
<xref ref-type="aff" rid="aff-2"/> | ||
</contrib> | ||
<aff id="aff-1"> | ||
<institution-wrap> | ||
<institution>School of Physics & Astronomy, Monash University, | ||
Clayton, Victoria 3800, Australia</institution> | ||
</institution-wrap> | ||
</aff> | ||
<aff id="aff-2"> | ||
<institution-wrap> | ||
<institution>ARC Centre of Excellence in Future Low-Energy Electronics | ||
Technologies, Monash University, Clayton, Victoria 3800, | ||
Australia</institution> | ||
</institution-wrap> | ||
</aff> | ||
</contrib-group> | ||
<author-notes> | ||
<corresp id="cor-1">* E-mail: <email></email></corresp> | ||
</author-notes> | ||
<pub-date date-type="pub" publication-format="electronic" iso-8601-date="2023-03-13"> | ||
<day>13</day> | ||
<month>3</month> | ||
<year>2023</year> | ||
</pub-date> | ||
<volume>9</volume> | ||
<issue>99</issue> | ||
<fpage>6028</fpage> | ||
<permissions> | ||
<copyright-statement>Authors of papers retain copyright and release the | ||
work under a Creative Commons Attribution 4.0 International License (CC | ||
BY 4.0)</copyright-statement> | ||
<copyright-year>2022</copyright-year> | ||
<copyright-holder>The article authors</copyright-holder> | ||
<license license-type="open-access" xlink:href="https://creativecommons.org/licenses/by/4.0/"> | ||
<license-p>Authors of papers retain copyright and release the work under | ||
a Creative Commons Attribution 4.0 International License (CC BY | ||
4.0)</license-p> | ||
</license> | ||
</permissions> | ||
<kwd-group kwd-group-type="author"> | ||
<kwd>Python</kwd> | ||
<kwd>Scanning Tunneling Microscopy</kwd> | ||
<kwd>STM</kwd> | ||
<kwd>Automation</kwd> | ||
</kwd-group> | ||
</article-meta> | ||
</front> | ||
<body> | ||
<sec id="summary"> | ||
<title>Summary</title> | ||
<p>Scanning Tunnelling Microscopes (STM) are capable of capturing | ||
images of surfaces with atomic-scale resolution. This is achieved by | ||
scanning an atomically sharp probe across the surface of the sample | ||
while monitoring an electric current. However, the quality of STM data | ||
relies heavily on the atomic-scale geometry and composition of the | ||
scanning probe apex, as well as the roughness and cleanliness of the | ||
scanned region. For instance, blunt tips result in blurry images while | ||
contaminated tips can lead to noisy images due to interactions with | ||
the sample. As a result, optimal STM data acquisition commonly | ||
requires time-consuming tasks such as probe conditioning—i.e., | ||
sharpening via “tip-shaping”, where the apex of the probe can be | ||
refined by poking it into a clean metal surface—and identification of | ||
areas of interest of the sample. Moreover, the quality of the probe | ||
can vary during a scan, especially when scanning over debris or | ||
excessively rough areas, necessitating additional tip-shaping.</p> | ||
<p>Here, we present Scanbot, a program that fully automates common STM | ||
data acquisition techniques, as well as tip-shaping and sample | ||
surveying. Scanbot relies on a dual sample holder (DSH; | ||
<xref alt="[fig:1]" rid="figU003A1">[fig:1]</xref>), where a sample of | ||
interest is mounted alongside a clean reference metal surface, which | ||
is ideal for tip preparation. Scanbot is able to analyse STM images | ||
and identify when the probe requires conditioning, subsequently moving | ||
it from the sample of interest to the clean reference metal, where it | ||
will prepare a scanning probe capable of obtaining high-quality STM | ||
images. This is accomplished using built-in piezoceramic scanners to | ||
maneuver the STM tip while tracking its position through a camera | ||
feed; <xref alt="[fig:1]" rid="figU003A1">[fig:1]</xref>b). Once | ||
Scanbot determines that the probe has been conditioned adequately, it | ||
moves the tip back to the sample of interest and STM data acquisition | ||
resumes.</p> | ||
<fig> | ||
<caption><p>Tracking and maneuvering the STM probe above the dual | ||
sample holder (DSH). <bold>a)</bold> Schematic of the STM tip over | ||
the dual sample holder setup. A sample of interest is mounted next | ||
to a clean reference metal substrate (e.g. Au(111)) which is ideal | ||
for tip shaping. <bold>b)</bold> Image from the camera feed used by | ||
Scanbot to track and maneuver the STM probe automatically from the | ||
sample to the clean reference metal, where it can be refined. The | ||
red (green) marker indicates the probe apex position (target | ||
position, respectively). See Scanbot | ||
<ext-link ext-link-type="uri" xlink:href="https://new-horizons-spm.github.io/scanbot/automation/">documentation</ext-link> | ||
for a video example. | ||
<styled-content id="figU003A1"></styled-content></p></caption> | ||
<graphic mimetype="image" mime-subtype="png" xlink:href="TipTracking.png" /> | ||
</fig> | ||
<p><xref alt="[fig:2]" rid="figU003A2">[fig:2]</xref> demonstrates | ||
Scanbot’s ability to recondition a ‘bad’ tip on a clean reference | ||
metal surface. Scanbot can gently impinge the scanning probe apex onto | ||
a clean, flat region of the metal surface, which results in an imprint | ||
associated with the geometry of the tip. This imprint can then be | ||
scanned, and the resulting image is similar to the auto-correlation | ||
function of the tip’s apex. The quality of the tip can be assessed by | ||
measuring the area and circularity of the imprint. If the imprint does | ||
not meet the desired criteria, a more aggressive tip shaping action is | ||
carried out, and the process is repeated until a high-quality tip is | ||
achieved.</p> | ||
<fig> | ||
<caption><p>Successive STM images (left to right) of the tip’s | ||
imprint on a clean metal surface, each following a more agressive | ||
tip-shaping action in a different location. The area and circularity | ||
of each imprint reflects the geometry of the apex of the scanning | ||
probe. Thus the process is repeated until a desired geometry is | ||
achieved.<styled-content id="figU003A2"></styled-content></p></caption> | ||
<graphic mimetype="image" mime-subtype="png" xlink:href="AutoTipShaping.png" /> | ||
</fig> | ||
</sec> | ||
<sec id="statement-of-need"> | ||
<title>Statement of need</title> | ||
<p>To reduce the time-intensive nature of STM experiments, various | ||
innovative solutions have been implemented to automate specific tasks. | ||
For instance, Wang et al. created a Python package that automates | ||
probe conditioning for Scanning Tunneling Spectroscopy | ||
(<xref alt="Wang et al., 2021" rid="ref-Wang_2021" ref-type="bibr">Wang | ||
et al., 2021</xref>). However, this package still requires manual | ||
preparation of the tip such that it can acquire clean images. Some | ||
researchers have employed the use of machine learning algorithms to | ||
analyse acquired images and determine when a probe needs refining | ||
(<xref alt="Gordon et al., 2020" rid="ref-Gordon_2020" ref-type="bibr">Gordon | ||
et al., 2020</xref>; | ||
<xref alt="Rashidi & Wolkow, 2018" rid="ref-Rashidi_2018" ref-type="bibr">Rashidi | ||
& Wolkow, 2018</xref>), then Reinforcement Learning (RL) agents | ||
can condition the probe accordingly | ||
(<xref alt="Krull et al., 2020" rid="ref-Schiffrin_2020" ref-type="bibr">Krull | ||
et al., 2020</xref>). Although these approaches have significantly | ||
advanced automation in STM experiments, they are often tailored to | ||
specific surfaces and STM equipment, making it challenging to transfer | ||
them directly to other labs studying different kinds of samples or | ||
working with different STM systems.</p> | ||
<p>To overcome these limitations, we have developed Scanbot, a Python | ||
robot that is compatible with a broader range of STMs, specifically | ||
those compatible with the Nanonis V5 software | ||
(<xref alt="Ceddia et al., 2022" rid="ref-Ceddia_2022" ref-type="bibr">Ceddia | ||
et al., 2022</xref>; | ||
<xref alt="Specs-GmBH, 2015" rid="ref-Nanonis_2015" ref-type="bibr">Specs-GmBH, | ||
2015</xref>). Additionally, our package incorporates Scanbot’s | ||
distinctive approach to tip shaping, which involves monitoring the | ||
tip’s motion above a dual sample holder. This method is particularly | ||
beneficial in experiments where the sample’s properties might make it | ||
challenging to achieve a high-quality scanning probe without needing | ||
to manually switch out the sample for a clean metal on which the tip | ||
can be prepared.</p> | ||
<p>Scanbot has been developed in a modular fashion, which means its | ||
functionality can easily be expanded or improved through contributions | ||
from the open-source community. Furthermore, through the use of | ||
<ext-link ext-link-type="uri" xlink:href="https://new-horizons-spm.github.io/scanbot/hooks/">hooks</ext-link>, | ||
users can customise or replace key funcionalities that are system- or | ||
lab-specific, without rewriting Scanbot’s source code. This has the | ||
advantage of being able to update Scanbot to the latest version | ||
without losing customised code. Such hooks can also be used to improve | ||
Scanbot’s existing functionality or test potential new features. For | ||
instance, Scanbot’s algorithmic approach to automated tip shaping | ||
might benefit the integration of an RL agent. This could be achieved | ||
by leveraging the hook | ||
<ext-link ext-link-type="uri" xlink:href="https://new-horizons-spm.github.io/scanbot/hooks/#hk_tipshape">hk_tipShape</ext-link>, | ||
where important parameters related to tip shaping can be adjusted | ||
based on images of the tip’s imprint. Complete documentation for | ||
Scanbot, including how such hooks can be leveraged, can be found at | ||
<ext-link ext-link-type="uri" xlink:href="https://new-horizons-spm.github.io/scanbot">https://new-horizons-spm.github.io/scanbot</ext-link>.</p> | ||
</sec> | ||
<sec id="acknowledgements"> | ||
<title>Acknowledgements</title> | ||
<p>A.S. acknowledges funding support from the ARC Future Fellowship | ||
scheme (FT150100426). J.C., B.L., and J.H. acknowledge funding support | ||
from the Australian Research Council (ARC) Centre of Excellence in | ||
Future Low-Energy Electronics Technologies (CE170100039). J.C., and | ||
B.L. are supported through an Australian Government Research Training | ||
Program (RTP) Scholarship.</p> | ||
</sec> | ||
</body> | ||
<back> | ||
<ref-list> | ||
<title></title> | ||
<ref id="ref-Gordon_2020"> | ||
<element-citation publication-type="article-journal"> | ||
<person-group person-group-type="author"> | ||
<name><surname>Gordon</surname><given-names>Oliver M</given-names></name> | ||
<name><surname>Junqueira</surname><given-names>Filipe L Q</given-names></name> | ||
<name><surname>Moriarty</surname><given-names>Philip J</given-names></name> | ||
</person-group> | ||
<article-title>Embedding human heuristics in machine-learning-enabled probe microscopy</article-title> | ||
<source>Machine Learning: Science and Technology</source> | ||
<publisher-name>IOP Publishing</publisher-name> | ||
<year iso-8601-date="2020-02">2020</year><month>02</month> | ||
<volume>1</volume> | ||
<issue>1</issue> | ||
<uri>https://dx.doi.org/10.1088/2632-2153/ab42ec</uri> | ||
<pub-id pub-id-type="doi">10.1088/2632-2153/ab42ec</pub-id> | ||
<fpage>015001</fpage> | ||
<lpage></lpage> | ||
</element-citation> | ||
</ref> | ||
<ref id="ref-Wang_2021"> | ||
<element-citation publication-type="article-journal"> | ||
<person-group person-group-type="author"> | ||
<name><surname>Wang</surname><given-names>Shenkai</given-names></name> | ||
<name><surname>Zhu</surname><given-names>Junmian</given-names></name> | ||
<name><surname>Blackwell</surname><given-names>Raymond</given-names></name> | ||
<name><surname>Fischer</surname><given-names>Felix R.</given-names></name> | ||
</person-group> | ||
<article-title>Automated tip conditioning for scanning tunneling spectroscopy</article-title> | ||
<source>The Journal of Physical Chemistry A</source> | ||
<year iso-8601-date="2021">2021</year> | ||
<volume>125</volume> | ||
<issue>6</issue> | ||
<uri> | ||
https://doi.org/10.1021/acs.jpca.0c10731 | ||
|
||
</uri> | ||
<pub-id pub-id-type="doi">10.1021/acs.jpca.0c10731</pub-id> | ||
<fpage>1384</fpage> | ||
<lpage>1390</lpage> | ||
</element-citation> | ||
</ref> | ||
<ref id="ref-Schiffrin_2020"> | ||
<element-citation publication-type="article-journal"> | ||
<person-group person-group-type="author"> | ||
<name><surname>Krull</surname><given-names>A.</given-names></name> | ||
<name><surname>Hirsch</surname><given-names>P.</given-names></name> | ||
<name><surname>Rother</surname><given-names>C.</given-names></name> | ||
<name><surname>Schiffrin</surname><given-names>A.</given-names></name> | ||
</person-group> | ||
<article-title>Artificial-intelligence-driven scanning probe microscopy</article-title> | ||
<source>Communications Physics</source> | ||
<year iso-8601-date="2020">2020</year> | ||
<volume>3</volume> | ||
<issue>1</issue> | ||
<uri>https://doi.org/10.1038/s42005-020-0317-3</uri> | ||
<pub-id pub-id-type="doi">10.1038/s42005-020-0317-3</pub-id> | ||
</element-citation> | ||
</ref> | ||
<ref id="ref-Ceddia_2022"> | ||
<element-citation publication-type="software"> | ||
<person-group person-group-type="author"> | ||
<name><surname>Ceddia</surname><given-names>Julian</given-names></name> | ||
<name><surname>jhellerstedt</surname></name> | ||
<name><surname>benlowe1</surname></name> | ||
</person-group> | ||
<article-title>New-horizons-SPM/nanonisTCP: nanonisTCP v1.0.0</article-title> | ||
<publisher-name>Zenodo</publisher-name> | ||
<year iso-8601-date="2022-12">2022</year><month>12</month> | ||
<uri>https://doi.org/10.5281/zenodo.7402665</uri> | ||
<pub-id pub-id-type="doi">10.5281/zenodo.7402665</pub-id> | ||
</element-citation> | ||
</ref> | ||
<ref id="ref-Rashidi_2018"> | ||
<element-citation publication-type="article-journal"> | ||
<person-group person-group-type="author"> | ||
<name><surname>Rashidi</surname><given-names>Mohammad</given-names></name> | ||
<name><surname>Wolkow</surname><given-names>Robert A.</given-names></name> | ||
</person-group> | ||
<article-title>Autonomous scanning probe microscopy in situ tip conditioning through machine learning</article-title> | ||
<source>ACS Nano</source> | ||
<year iso-8601-date="2018">2018</year> | ||
<volume>12</volume> | ||
<issue>6</issue> | ||
<uri> | ||
https://doi.org/10.1021/acsnano.8b02208 | ||
|
||
</uri> | ||
<pub-id pub-id-type="doi">10.1021/acsnano.8b02208</pub-id> | ||
<fpage>5185</fpage> | ||
<lpage>5189</lpage> | ||
</element-citation> | ||
</ref> | ||
<ref id="ref-Nanonis_2015"> | ||
<element-citation publication-type="webpage"> | ||
<person-group person-group-type="author"> | ||
<name><surname>Specs-GmBH</surname></name> | ||
</person-group> | ||
<article-title>Mimea nanonis</article-title> | ||
<year iso-8601-date="2015">2015</year> | ||
<uri>https://www.specs-group.com/nanonis/products/mimea/</uri> | ||
</element-citation> | ||
</ref> | ||
</ref-list> | ||
</back> | ||
</article> |