Back

Streamlining Operations with Operator's Toolbox

Have you ever found yourself doing the same things in STK over and over again? I know I have, especially when it relates to operational usage. STK is a powerful tool for multi-domain operations, but setting up the problem can take some time. On top of this, an operational scenario must be updated on a normal basis to reflect near real-time changes. For small scenarios this is not an issue, but for large scenarios the updating process can take a while (with a lot of manual effort in certain situations). This is where the STK Object Model comes in. These APIs enable you to automate every aspect of STK and integrate custom user interfaces as plugins.

While spending time with operational users, I’ve received numerous requests to automate certain features of STK. I accumulated those requests and the result is Operator’s Toolbox. Operator’s Toolbox is a UI plugin designed to improve the efficiency of common operational tasks. Operator’s Toolbox currently contains 13 tools to automate processes, including but not limited to: TLE import and update, improved stored views, automated chain/tracking interval creation, and new, custom, ground classification types. You can see an example of some of the interfaces in the image of STK below.

In a world that requires high speed and efficiency, custom plugins are the best way to streamline common processes and accelerate your workflow. The nice thing about Operator’s Toolbox is that not only does it provide automated processes for common tasks, it also provides an infrastructure to build additional features and tools. The code base for Operator’s Toolbox is available for public download at the AGI GitHub. This means that you, as an individual user, can add features to it. The paneled design of the plugin makes it easy to add new interfaces without the pain of designing the lower-level infrastructure. But even if you are not a coder, the tools that are already in the Operator’s Toolbox provide helpful functionality for almost any STK user.

Use cases

There are too many use cases of Operator’s Toolbox to discuss in one blog post, but here are a few examples of the most common ones.

Large Scale Object Import

STK has options for importing single objects and child objects, but what about importing many objects at once? Whether it is a full satellite constellation, a tracking network, or any combination of objects, there is always some manual effort required, especially when there are inter-object dependencies. Operator’s Toolbox has several tools to help with this process. The Templates tool enables you to save any number objects from a scenario and import the entire configuration into a new scenario while maintaining object dependencies. This is not limited to a specific object type, which makes it versatile. In addition, the Facility Creator tool can create, save, and import a full SOSI tracking constellation into a scenario with the click of a button.

Satellite State Updates

STK already has satellite update features, but what if you are using a custom TLE database or are not connected to the internet? This is where things start to get time-consuming. If you are using a custom TLE database, you likely have to manually update each satellite. To make the process easier, Operator’s Toolbox contains several features for satellite state updates including updating TLEs using a custom database, updates from the Unified Data Library (UDL), and ephemeris updates/time slips.

Coverage Analysis

Coverage is one of the most powerful tools for large scale analysis in STK. The Operator’s Toolbox coverage utility builds on the existing functionality to streamline the creation process. The utility not only creates the coverage definition but also any required area targets. It also sets up the figure of merit (FOM), configures the graphics, and sets the constraints and assets all in one interface. There are many built-in FOM types such as navigational accuracy, N Asset coverage, revisit time, and more. The Operator’s Toolbox also provides an easy way to jump between analysis areas and see metrics at any given time in the main window.

Ensuring RPO Mission Safety

Rendezvous and proximity operations (RPO) missions are a common part of many operator’s daily operations. Part of this process is ensuring the RPO trajectory is safe relative to the reference vehicle. The Passive Safety Checker is a tool in Operator’s toolbox that checks if the approaching satellite will come within a user-specified zone around the target. Specifically, it will check all expected trajectories if a maneuver on the approaching satellite fails to execute. This ensures that if something goes wrong in the maneuvers, the two satellites will never collide or come too close to one another.

Downloads

Operator’s Toolbox is available for STK 12 and STK 11.7.1 (backwards compatible to STK 11.4). The complete install of the plugin for both STK versions is linked in this knowledge article. The article gives a high-level overview for each tool. A full set of documentation can be found in the download as a PDF. I recommend that you read the documentation before you start using the plugin. The download requires no coding, and you can install it immediately.

The entirety of the code base for Operator’s Toolbox has also been made available to the public. You can find it at the AGI GitHub. The code base provides all the required components of the plugin. The code is written in C# 8.0 and was made in Visual Studio 2019. Not only does the code provide a great example of STK automation, but it also provides a pre-built infrastructure to build more tools into the Toolbox. If this is right up your alley, then happy coding!

Hopefully you enjoy the plugin and find it useful in daily operations or as a template for new plugin development. If you run into any issues or have questions, please contact AGI support at support@agi.com.

 

Author

Selby Stout

Selby is a field application engineer that works primarily with the U.S. Space Force.


Systems Tool Kit (STK)

The most important thing on your desktop.