Navigation
1. Introduction & Navigation
The ARES User Interface is the centralized command deck for the ARES Operating System.
A. The Sidebar
Navigation is handled via the panel on the far left of the screen.
-
Collapse/Expand: Use the "Hamburger" menu icon (three horizontal lines) at the top left to minimize the sidebar for a full-screen view.
-
Navigation Groups: The menu is divided into three logical areas:
-
Operations: Dashboard.
-
Automation: The suite of tools for designing and running experiments.
-
Analysis & State: Data viewing and device logging.
-
-
Utility Footer: Three icons at the bottom for Events, Settings, and Profile.
B. Global Safety Footer (Emergency Stop)
Located at the very bottom of the window is the dedicated safety footer, which remains visible across every page of the application.
- The Button: A large red "Emergency Stop" button.
- Function: Clicking this immediately sends the "Enter Safe Mode" command to all connected devices. If an experiment is running when this is pressed, it will be ended immediately.
- When to use: Press this if you observe the hardware moving erratically, risking collision, or posing a safety hazard.
- Note: This is a software-level stop. For critical human safety, this button does not replace the use of a physically hard-wired E-Stop.
2. Dashboard
Access: Sidebar -> "Dashboard"
The Dashboard is the home page of ARES. Unlike a static status screen, this is an interactive workspace where Control UIs for added devices are displayed.
-
Device Widgets: Every device registered in the system (e.g., Furnaces, Cameras, Pumps) renders its manual control interface here.
-
Manual Control: Use this page to manually jog motors, set temperatures, or toggle sensors.
-
Configuration vs Control: Devices, whether physical, simulated, plugin-based, or remote, are registered and configured in the Settings view (see the Adding a Device guide). Once registered, their control widgets appear on the Dashboard for day-to-day manual interaction.
3. Automation Suite
The core functionality of ARES is grouped under the Automation tab. Click this to reveal the four sub-modules:
A. Campaign Designer
Access: Automation -> "Campaign Designer"
This is the hub for creating, editing, and deleting Experiment Scripts. A "Campaign" is the container for your experimental logic.
-
Template Creation: Build templates that define:
-
Planning Parameters: The inputs required (e.g., GridSize, Exposure).
-
Lifecycle Scripts: Define the Startup, Experiment Loop, and Closeout logic.
-
Component Assignment: Link specific Planners and Analyzers to the script.
-
B. Custom Command Designer
Access: Automation -> "Custom Commands"
The Custom Command Designer lets you define reusable, script-backed commands that can be shared across campaigns.
-
Custom Commands list: Provides a table of saved custom commands, showing name, description, input summary, and output summary, with actions to refresh, edit, or delete commands.
-
Designer: For each custom command, you can configure metadata (name and description), define input parameters and their schemas, specify an output value schema, and author the script body with diagnostics support.
Use the Custom Command Designer when you want to encapsulate common logic into reusable commands instead of repeating the same sequence of low-level device commands across multiple campaigns.
C. Execution
Access: Automation -> "Execution"
This is the "Mission Control" for active operations.
-
Start a Campaign: Select a pre-built Campaign from the Designer to begin a run.
-
Runtime Controls:
-
Pause: Temporarily halt the scheduler (allows for safe manual intervention).
-
Stop/Abort: Immediately end the current campaign and trigger the safe-shutdown protocols.
-
-
Live Monitoring: View the current progress of the active experiment loop.
D. Execution History
Access: Automation -> "Execution History"
A "Quick View" log of past activities.
-
The List: Displays a summary of recent campaigns, including their names and completion times.
-
Campaign Details: Selecting a campaign opens a detailed view with timestamps, experiment count, tags, notes, and a hierarchical tree of experiments, steps, and commands, including analyzer and parameter information.
4. Data Viewer
Access: Sidebar -> "Data Viewer"
This is the deep-dive analysis tool. While Execution History summarizes individual runs, Data Viewer (the Data Explorer page in the UI) focuses on tabular datasets for completed campaigns and device state.
-
Device State tab: Use filters (time window, minimum sample interval, campaign and experiment selection) to generate state tables for one or more devices. Choose display modes (separate per device, wide, or long) and export the current view as CSV or multiple tables as a ZIP.
-
Campaign Data tab: Select a completed campaign to generate experiment tables. Tags and notes recorded with the campaign are shown alongside the tables, and you can export a single table or all tables for that campaign.
Execution History is ideal for inspecting the structure of a run (experiments, steps, commands), while Data Viewer is designed for aggregating and exporting the underlying data for analysis.
5. Device States
Access: Sidebar -> "Device States"
ARES logs the state of hardware components independently of experiments. This page allows for bulk data extraction.
-
Constraints: Define a time window (Start Time / End Time) or specific device IDs.
-
Download: Export a dataset of device states (e.g., "Give me the temperature log of the Heater for the last 24 hours") for external auditing or debugging.
6. System Utilities (Footer)
Located at the very bottom of the sidebar.
A. Event History (Bell Icon 🔔)
A persistent log of high-level system notifications.
-
What it tracks: Workflow milestones (Start/Stop), connectivity alerts ("Camera Connected"), and critical errors and warnings.
-
Use Case: Quickly reviewing what happened to your laboratory.
B. Settings (Gear Icon ⚙️)
The configuration center for the ARES OS.
-
Device Management: Register new hardware, Planners, and Analyzers here.
-
Logging Preferences: Adjust how you choose when to log device state information, such as by time intervals or only when data changes beyond a specified delta.
C. Profile (Person Icon 👤)
Currently Unimplemented.
- Future functionality will include user accounts, role-based access control (RBAC), and user-specific preferences.