Automation1 iSMC Software-Based Machine Controller


Design Features

  • Runs on a real-time operating system (RTOS) installed on a Windows 10-based industrial PC
  • Connects to motor drives, galvo scan head controllers and more over Aerotech’s HyperWire® fiber-optic communication bus, which has 20x the bandwidth of 100BASE-T Ethernet buses
  • Creates 20 kHz servo motor trajectories and 100 kHz galvo scan head trajectories
  • Connects to and synchronizes motion trajectory and I/O for up to 32 drives
  • Enables custom machine interfaces and control schemes that work side-by-side with application programming interfaces (APIs) from other vendors through the .NET API
  • Executes real-time application code developed in the Automation1 Studio application
  • Integrates with the Automation1 MDK, the most user-friendly interface available for precision motion control

Get Moving Faster.

Part of the Automation1 precision motion control platform, the Software-Based Machine Controller (iSMC) tightly integrates precision motion with process control. Whether you’re programming a simple move, building a complete machine, or doing something in between, the Automation1 iSMC delivers high-quality automation and improved throughput. And the iSMC integrates with the Automation1 Motion Development Kit (MDK) — the most user-friendly interface available for precision motion control — to get you moving faster. You’ll quickly configure and develop your application, easily set up control devices — drives, motors and stages — and enjoy programming with features like intelligent autocomplete, context sensitive help, EasyTune®, live build checking, a variable and I/O watch window and more.

Powerful Features for Automated Solutions.

From the advanced AeroScript™ programming language and powerful Aerotech motion engine to multiple options for easily integrating complex automation solutions, you’ll have everything you need to get your process in motion.

Precision Motion Comes First.

Precision motion control is at the Automation1 iSMC’s core. The iSMC runs on a real-time operating system and generates 20 kHz servo motor trajectory rates. With powerful lookahead technology, its Aerotech motion engine translates your programmed trajectory into multi-axis, synchronized commands sent to up to 32 axes over our new HyperWire® fiber-optic motion bus. Additionally, the iSMC’s proprietary C programming language interface enables kinematics to be calculated at the same rate as standard trajectories.

Integrate Your Process.

The iSMC enables different approaches to incorporating vision systems, robotics, laser control, sensors and more. Use the .NET API side-by-side with other APIs to build a complex control architecture and custom user interface, or build custom functionality by programming applications with the AeroScript programming language. AeroScript programs run on a RTOS, which allows code to execute faster and more deterministically than Windows-based applications. Many users take a hybrid approach, using the API and AeroScript language to combine user interface design with high-performance, real-time application code.

Real-Time Programming.

Build custom functionality into your application with the AeroScript programming language. AeroScript’s modern syntax is easily accessible when programming in the Automation1 Studio application’s integrated development environment. You’ll use this advanced language to build structures, declare variables, perform mathematical operations, call functions, return values and so much more. Internal libraries include in-demand features like basic and advanced motion, transformations, I/O, controller status and data collection. Better yet, AeroScript enables you to build your own libraries and then circulate only the compiled version — protecting your intellectual property.

Built for Collaboration.

The complete Automation1 MDK, which includes status utility and console applications, can be installed on multiple workstations free of charge. This means your whole team can log in and collaborate on an Automation1 iSMC controller.

Expert-Level Motion Control.

Known for precision motion control, the iSMC can command up to 32 axes of coordinated or independent motion and communicate to Automation1 servo motor drives over the HyperWire fiber-optic communication bus at a 20 kHz trajectory rate.
Coordinated MotionVelocity Profiling
Both independent and coordinated moves feature:
• Linear, rapid and arbitrary (point-by-point) single- and multi-axis move commands
• Advanced trajectory lookahead and acceleration limiting
• Linear, half-sine and s-curve acceleration profiles
• Trajectory transformations, including scaling translations, rotations and mirroring
• Velocity profiling modeAcceleration Limiting
• Manual feedrate override (MFO) and feedrate hold
• Motion command completed verification (by position, velocity or minimal time)

Precision Control for Each Axis.

Electronic GearingThe iSMC provides user-friendly, accessible functionality for each axis it controls.

Choose from seven homing functions; speed, distance and distance hold jogging controls; axis in position verification and axis stability verification; incremental motion; geared motion; camming motion and freerun motion commands.

CammingStandard commands include moving an axis into and out of two opposing limit conditions.

Multi-Axis Motion Control.

Coordinate up to 32 axes to move in both multi-axis coordinated and non-coordinated methods.

Cutter Compensation

Coordinated moves start and stop simultaneously and can incorporate a velocity profiling mode of operation. Non-coordinated moves start at the same time, but do not necessarily end at the same time.

Set up multi-axis move commands to obey coordinated acceleration values and apply acceleration limiting via multi-axis trajectory lookahead. This acceleration limiting feature greatly improves following error along a contoured motion path.
Point To Point Motion
Because it’s often advantageous to control your process based on velocity or position, analog outputs can track vector velocity commands or feedback signals, while industrial lasers and other tools can be set to trigger based on distance traveled.

Multi-axis coordinated velocities and accelerations can also be limited by the use of a dependent axis — a particularly helpful feature if your machine has a rotary axis with known required limitations.

Calibration and Corrections.

Use metrology tools to gather information about linearAxis Calibration and angular errors, then build calibration tables to load onto the controller. Correction values from the tables are applied automatically and do not change the programmed positions presented in the user interface.

The controller natively supports 1D, 2D and orthogonality calibration tables. 2D Axis CalibrationCross-axis calibration methods — often used to correct the position of an axis based upon the position of one or more other axes — are also available. Multiple calibration tables can be used in combination.

Finally, backlash compensation corrects for the mechanical backlash in gear-driven and ball screw-driven mechanical systems.

Complete Machine Control.

The AeroScript programming language can program up to 31 controller tasks, enabling each task to better manage specific aspects of your machine’s functionality.

The features most often used for machine control include:
  • Fault and error handling
  • The controller file system
  • Message callbacks
  • Signal logging
  • Automation1 studio application customization
  • Safe zones
  • Cutter compensation
  • Analog and digital I/O
Protect your process by limiting access to the controller. Automation1’s Access Control feature prevents unwanted users from connecting to an Automation1 controller.

See this Example of How You Can Use Task-Based Programming to Deploy Machine Control:
Program Type How Program Is Run Controller Task Task Functionality
Controller Task Machine operator (or custom process) loads and runs program on the machine 1 Part and/or inspection routine motion
Program Automation Program Loaded and run on specified controller task via Automation1’s program automation feature 2 Machine-related motion
3 Joystick/handwheel interface
4 PLC Functionality
5 Data acquisition

Control Your Process Tool.

Fast Position Capture
With position synchronized output (PSO), you can control industrial lasers, cameras and other tools with less latency. Set analog outputs based on motion conditions, such as vector velocity. Complete processes such as on-the-fly end point modification, high-speed registration, constant force generation, spindle control and fast position captures. Electronic gearing and cam tables are both available, too.

The iSMC works in combination with memory on Automation1 driHigh Speed Registrationve electronics to control I/O and acquire data based on logic that operates at the drive. This means data can be captured and I/O can be set at rates as fast as the drive’s own 20kHz servo control rate. This data is transferred to the controller and can be written to files for later evaluation.

Do More with AeroScript.

With our new AeroScript programming language, you’ll get more out of your iSMC than any previous controller. Although it’s easy to learn and use, AeroScript provides the advanced features software engineers and developers need. In addition to making your code more flexible and portable, AeroScript gives you the power to build libraries and distribute those files in their compiled version — providing intellectual property protection to your machines.

Native AeroScript Features Native AeroScript Libraries
Variable scope: global, program and local variables Basic motion and motion setup Encoder Echo
Variable types: numeric, axis, string and handle Advanced motion Pulse
Variable arrays and array manipulation Transformations Servo loop tuning
Integer and floating point literals Analog and digital I/O Signal logging
String operators Controller status Fault and error handling
Structures and enumerations Data collection Safe zones
Conditional and iterative execution Task control Mathematical
Labels and unconditional branching Program control String manipulation
Functions and returns Parameter control File and file system
Use defined library with intellectual property protection Galvo  
Message callbacks Joystick  
Signal logging and data acquisition ThermoComp  
RS-274 G-code Brake  
Operators: assignment, compound assignment, arithmetic, comparison and more  Message callback  
Position synchronized output

Easily Access Data

Easy Access DataThe iSMC gives you fast and easy access to data through the Automation1 studio application and libraries.

More than 100 axis status items, 50 task status items and 25 system-level status items are available to collect in the Automation1 studio application.

Each of these items can be displayed using the data visualizer, written to a file and exported to a Windows file.

All the Flexibility of .NET Core

NET Core GraphicFrom programming simple motion to coordinating and synchronizing the motion of multiple axes in your machine, the iSMC provides the flexibility and power you need to tackle today’s automation challenges — and it’s all accessible through a powerful .NET API, built on .NET Core.

You’ll never have to worry that using Aerotech’s API will reduce the capabilities of your own products or developments. The powerful Automation1 .NET API is made accessible to our customers in the same structure and format that we use to develop our own applications.

Our APIs make it easier than ever to connect, configure, execute commands, program files, communicate, monitor status and collect data.

Functionality Description
Connect Connect to one or several controllers.
Configure Configure settings, set/retrieve controller and drive parameters, tune motors and encoders, and load drive firmware.
Execute Commands Execute AeroScript commands in .NET.
Program Files Compile AeroScript programs, get build errors, load and run AeroScript programs on the controller, and handle the controller tasks that run AeroScript programs.
Communicate Set up and command drive and controller communication ports and protocols.
Monitor Status See status and monitor information coming from the controller.
Collect Data Collect data on the controller in real time (this exposes functionality used by the data visualizer).


Specification Description
Axes 32 axes available
Programming Tasks 31 user tasks available
Position Modes Absolute, incremental, dynamic trajectory correction
RS-274 G-Code Support Coordinated Synchronous Motion
Coordinated motion refers to moves that follow a well-defined path in space. Coordinated moves start and stop axes at the same time. They can execute in velocity profiling mode.
• Linear motion
• Clockwise and counterclockwise
Independent Motion Types Non-Coordinated Synchronous Motion
Non-coordinated motion refers to moves in which axes start at the same time but do not necessarily end at the same time. Each axis moves at its own velocity specified in the command or by axis parameters. Program execution does not continue to the next line until all axes in the move command have completed motion.

Multiple procedures are available to establish the home position of an axis:
• Home past limit switch to home marker
• Home to limit switch and reverse to home marker
• Home to home marker
• Home to limit switch
• Home at current position and set to zero
• Home at current position and set to nonzero
• Home at current position and set to absolute position

MoveRapid Command
Generates single or multi-axis point-to-point motion

Asynchronous Motion
Asynchronous motion commands cause program execution to continue on to the next program block immediately after the move starts. The controller does not wait for the move to end before continuing to the next command.
• Home an axis without waiting for completion
• Free run an axis at the specified velocity
• Move to an absolute position
• Move incrementally
• Move an axis out of a limit condition
• Move an axis into a limit condition
• Move point by point (PVT, PT)*

* PVT and PT motion normally blocks the task.
Acceleration Profiles Acceleration Types
• Linear-constant acceleration applied, resulting in linear velocity profile
• Sine (sinusoidal half-sine)-parabolic acceleration applied, resulting in a sine wave velocity profile
• S-curve-trapezoidal acceleration applied, resulting in an “s-curve” velocity profile

Acceleration Modes
• Time based - axis acceleration takes place over a specified time• Rate based - axis acceleration takes place at a specified rate
Velocity Profiling Blend multiple, coordinated motion commands into one continuous motion path. In velocity profiling mode, the controller does not decelerate to zero between consecutive, coordinated moves. Velocity can be changed during the move sequence. The axes will increase or decrease in speed in a coordinated way to maintain the programming path.


Without velocity profiling.

Velocity 2

With velocity profiling.
Advanced Features • Corner rounding
• Tool normalcy control
• Cutter compensation
• Programmable fixture off sets
• Part profile rotation
• Part profile scaling
• Polar & cylindrical transformations
• Orthogonality correction
• Electronic gearing
• EasyTune® & classical tuning
• Backlash compensation
• Spindle motion
• High-speed registration
• Multi-dimensional error mapping
Access Control Control who can connect to the Automation1 controller. Access Control utilizes Windows groups and users, including the active directory, to quickly deploy added security to your system.
Controller Files The Automation1 Controller has a local file system. Part programs, program automation files, calibration files and more are stored locally on the controller and managed via the Studio application.
Safe Zones Safe zones prevent motion either into or out of n-dimensional hypercubes. 
• Typical dimensions: 1, 2 or 3
• Maximum dimension: 32
• Maximum number of safe zones: 32
• Boundary action: When motion approaches the boundary of an area that is not permitted, the motion decelerates smoothly and stops one count before it reaches the boundary.
Programming • AeroScript
• RS-274 G-code
• .NET

Get the Right PC

The Automation1 Software-Based Machine Controller (iSMC) controller is engineered to run on a real-time operating system (RTOS) in front of Windows on an industrial PC. To get a PC that is built for real-time performance, choose from one of the following options. Note that options one, two and three are built on Advantech industrial motherboards, which are on the Intel-embedded roadmap, and contain Windows 10 IoT Enterprise Long-Term Service Channel (LTSC) installations. The Intel-embedded roadmap and Windows LTSC ensures your PC solution will work reliably for years to come.

Contact Sales at any time for assistance.

Option 1. Buy a PC From Aerotech

The “simple, ready to go” solution.
Recommended for: All end-users, worldwide

The Automation1 iPC is a completely configured and optimized industrial PC. It can be shipped from Aerotech ready to immediately start controlling your system.  

To learn more, visit Automation1 iPC.

Option 2. Buy Through Arrow Electronics

The “install it yourself” solution.
Recommended for: Integrators in the continental USA

Electronics distributor Arrow Electronics can directly ship the PC hardware on which the Automation1 iPC is built. All hardware settings, basic input/output settings (BIOS) and Windows 10 LTSC installation are managed by Arrow.  

Note: The Automation1 Motion Development Kit (MDK), Automation1 iSMC and the HyperWire® PCIe (peripheral component interconnect express) card must be purchased directly from Aerotech and installed upon receipt of the PC hardware.

Please contact Arrow sales representative Kelly O’Rourke to purchase one of the following PC options from Arrow Electronics:

PC Specifications for Automation1 iSMC

PC Type Arrow Part Number
Control Cabinet PC
(Similar to the A3200-iPC, -CC02 hardware option)
Control Cabinet PC
(Similar to the A3200-iPC, -CC03 hardware option)
4U Rack Mount PC
(Similar to the Automation1 iPC, -R402 hardware option)
1U Rack Mount PC
(Similar to the Automation1 iPC, -R103 hardware option)
Desktop PC
(Similar to the Automation1 iPC, -DT01 hardware option)

Option 3. Buy Direct From Advantech

The “build it yourself” solution.
Recommended for: OEM machine builders and integrators, worldwide

Advantech, a global supplier of industrial PCs, has partnered with Aerotech to supply customers with a reliable, high-performance PC solution. Detailed instructions on the required parts, configurations and setup procedures are available on the Aerotech manuals and help files page and here.

Option 4. Buy Your Own PC

Due to PC configuration changes caused by Windows 10 updates over the lifetime of operation, Aerotech does not recommend this option. We recommend one of the Intel- embedded roadmap motherboards and Windows 10 LTSC installations offered in options one, two and three above.  

However, if you do choose this option, we offer a few recommended PC specifications:
Recommended PC Specifications for Automation1 iSMC Installation
Processor Recommended:
  • Intel Core i5/i7 or Xeon processor with four or more cores(1,2,3)

Not Supported:
  • AMD, Intel Celeron, Intel Pentium 4, Intel Pentium D, Itanium or notebook/laptop/mobile processors(4)
RAM 16GB or 32GB, 32GB preferred
Operating System(5) Windows 10, 64-bit version 1607 or newer
PCIe Expansion Port A single, open PCIe card slot is required to accommodate the required HyperWire-PCIe card for Aerotech's motion bus
Graphics Display Minimum 1920 x 1080 resolution and a standard display adapter(6)
Hard Disk Space 1 GB available disk space
1. A PC that has two physical processors is not supported. Use a PC with one processor and more than one physical core.

2. Intel Xeon processors based on the Intel Core 2 or Intel Core i3/i5/i7 architecture are supported. Intel Xeon processors based on older architectures are not supported.

3. A PC that has INtime configured is always limited to 32 cores, even when the PC has more than 32 physical cores.

4. Laptop computers are not supported. They can be used for offline debugging and simulation only.

5. To avoid machine disruption, Aerotech disables automatic updates on Windows PCs that are shipped from Aerotech. To customize your update settings, refer to Microsoft's Windows documentation or Aerotech's User Guide to Windows 10 Updates.

6. Aerotech recommends that you do not use high-end display adapters because they can cause interference with Automation1. Use a medium-performance onboard integrated graphics adapter or a medium-performance PCI express dedicated graphics card. If your graphics card causes problems with Automation1 performance, try a different graphics adapter. For more information, refer to the “change the display configuration” section of the Optimizing A3200 Performance Guide.

Other PC-Related Services from Aerotech

PC Evaluations
Aerotech can evaluate your PC for a fee. Contact Global Technical Support for this service. No guarantee of compatibility can be made.

Servicing a Non-Approved PC
A non-approved PC can be serviced. Phone/email support for remote support is billed at an hourly rate (one-hour minimum). No guarantee of compatibility can be made.

Ordering Information

PC Requirements and Configuration
Aerotech supplies free support for Automation1 installation if you purchase an Automation1 iPC industrial PC or an approved PC from the supplier list that is maintained on the Automation1 iSMC website.

Automation1 iSMC Machine & Motion Control Developer’s Kit

License (Required)
-L1 Automation1 iSMC installation on a single PC
-L2 Adds a paid option to an existing license* **
-L3 Extends the subscription period for an existing license*
-L4 Increases the number of seats for an existing license*
-L5 Provides hard copy media for an existing license*
*Requires the current License ID.
**Price is based on the new options added. If a subscription extension is required, an -L3 must be processed first
Controller Plus
-CP0 Base controller (four user tasks, one reserved task)
-CP1 Controller plus option (31 user tasks, one reserved task)
HyperWire® Axes
-H00 No HyperWire axes connectivity (virtual mode)
-H06 Connect up to six HyperWire axes (default)
-H16 Connect up to 16 HyperWire axes
-H32 Connect up to 32 HyperWire axes
Contoured Motion
-CM1 Up to four axes of contoured motion
-CM2 Five or more axes of contoured motion (export controlled)
Controller Subscription
-S1 One-year subscription to software version upgrades
-S3 Three-year subscription to software version upgrades
-S5 Five-year subscription to software version upgrades
-S0 One-month subscription to software version upgrades
HyperWire Card
-HW0 No HyperWire card
-HW1 HyperWire card included
Installation Media
-M1 Installation file downloaded from
-M2 Installation file provided on USB and downloadable from
-M3 Installation file provided on CD and downloadable from
-Default Current version of software
-Legacy Legacy version of software

HyperWire Communication Network (Items Ordered Separately)

Automation1 Communication Accessories (ComAcc)
HyperWire® PCIe HyperWire interface card, PCIe bus.
Aerotech Communication Cables
HyperWire AO10-5 HyperWire cable, AOC, 10G, 5DM
HyperWire AO10-10 HyperWire cable, AOC, 10G, 10DM
HyperWire AO10-30 HyperWire cable, AOC, 10G, 30DM
HyperWire AO10-50 HyperWire cable, AOC, 10G, 50DM
HyperWire AO10-200 HyperWire cable, AOC, 10G, 200DM