Python-Infrastruktur für STM-Steuerung und atomare Manipulation
Die Bibliothek amrl-transport bietet eine konsistente Schnittstelle für Rastertunnelmikroskope (STM). Die Klasse STMTransport definiert 12 Methoden mit physikalischen Einheiten: Nanometer, Millivolt und Pikampere. Die Implementierung unterscheidet sich je nach Controller – Createc, Nanonis oder Simulator.
from amrl_transport.transport.protocol import STMTransport
class STMTransport(ABC):
def connect(self) -> None: ...
def scan_image(self, size_nm, offset_nm, pixel, bias_mv) -> ScanResult: ...
def lateral_manipulation(self, x_start_nm, y_start_nm,
x_end_nm, y_end_nm, ...) -> ManipResult: ...
def tip_shape(self, x_nm, y_nm, ...) -> bool: ...
# plus 8 weitere Methoden
Zu den Methoden gehören Oberflächenabtastung, laterale und vertikale atomare Manipulation, Spitzenformgebung sowie chemische Operationen. RL-Agenten arbeiten auf einer Abstraktionsebene und sind unabhängig von der Hardwareplattform.
Simulation zur Entwicklung ohne Hardware
SimulatorTransport emuliert den gesamten STM-Ablauf. Oberflächenatome werden mit Gauß-Verteilungen generiert, und benutzerdefinierter Rauschanteil ist möglich. Die Physik der Manipulation: Atome bewegen sich bei ausreichendem Strom; die Spitze wird im Laufe der Zeit stumpf und schärft sich wieder.
from amrl_transport.transport import SimulatorTransport
import numpy as np
with SimulatorTransport(seed=42) as stm:
img = stm.scan_image(
size_nm=5.0,
offset_nm=np.array([0.0, 0.0]),
pixel=128,
bias_mv=100,
)
# img.img_forward — numpy-Array 128x128
Der Simulator ermöglicht die direkte Trainings von RL-Agenten auf einem Laptop. Der Übergang zu echter Hardware erfordert die Überbrückung der Sim-to-Real-Lücke.
Ersetzung des LabVIEW-Server DeepSPM
DeepSPM (Nature Communications, 2020) nutzt einen LabVIEW-TCP-Server zur Kommunikation mit Createc-Controllern. Das Protokoll wurde rekonstruiert: 6 Befehle – scan, tipshaping, tipclean, getparam, approach, movearea. Antworten sind binär.
Die Python-Implementierung mit asyncio ist voll kompatibel:
python -m amrl_transport.deepspm --transport simulator
Der DeepSPM-Code verbindet sich ohne Änderungen mit localhost:5556. LabVIEW (Kosten: 3.500 $/Jahr, Windows-only) wird durch plattformübergreifenden, MIT-licenzierten Code ersetzt.
Warteschlangensystem für parallele Aufgaben
RabbitMQ + Redis steuern die Aufgabenaufteilung über mehrere Mikroskope. Aufgaben werden über Pydantic-Modelle definiert: ManipulationTask, AtomTarget.
# Worker
python -m amrl_transport.cli worker --transport simulator --worker-id sim-01
# Aufgabe absenden
python -m amrl_transport.cli submit --atoms '[[0,0],[1,0],[0.5,0.866]]'
Unterstützt paralleles Scannen und Manipulieren über 3–5 Geräte. Graceful Shutdown und Retry-Backoff in Workern.
Integration in RL-Umgebungen
TransportEnv ist ein Drop-in-Ersatz für RealExpEnv von SINGROUP (Aalto University). Gym-kompatible Schnittstelle:
from amrl_transport.transport import SimulatorTransport
from amrl_transport.integration import TransportEnv
stm = SimulatorTransport(seed=42)
stm.connect()
env = TransportEnv(
transport=stm,
step_nm=0.2,
max_mvolt=20,
max_pcurrent_to_mvolt_ratio=2850,
goal_nm=2.0,
)
state, info = env.reset()
next_state, reward, done, info = env.step(action)
Getrainierte Modelle lassen sich nahtlos von der Simulation auf echte Hardware übertragen.
Wichtige Funktionen der STM-Steuerung:
- Atomare Auflösung bei der Abtastung
- Laterale Manipulation (~10 Sekunden pro Atom)
- Vertikale Manipulation
- Spitzen-induzierte Chemie
- Autonome Steuerung durch RL-Agenten
Testen und Architektur
41 Tests decken Protokolle, Simulator, COM/TCP-Simulatoren, asyncio-Server, Warteschlangen und Integration ab. Alle laufen ohne physische Ausrüstung:
$ pytest tests/ -v
... 41 passed in 2.34s
Architektur:
amrl_transport/
├── transport/ # ABC + Adapter
├── deepspm/ # asyncio-Server
├── queue/ # RabbitMQ/Redis
├── integration.py # Gym-Umgebung
└── cli.py
Warum es wichtig ist
- Einheitliche API für Createc, Nanonis und Simulator
- Vollständige Emulation der STM-Physik ohne 500.000 $-Ausrüstung
- Plattformübergreifende Alternative zu LabVIEW (MIT vs. 3.500 $/Jahr)
- Direktes Gym-Environment für RL-Training zur atomaren Manipulation
- Parallelisierung über mehrere Mikroskope
— Editorial Team
Noch keine Kommentare.