Application and task layer
- Robot programme, process sequence, tool commands
- Workpiece logic and application-specific functions
Robotics Control-System Engineering Guide
An engineering guide to robot-control hardware, software, motion, safety, communication and ROS integration
A robot controller interprets programs, calculates robot motion, coordinates servo axes, exchanges signals with factory equipment and monitors the state of the robotic system.
This guide explains the controller’s hardware and software layers, how it differs from a PLC or servo drive, how ROS-based systems connect to industrial controllers, and what engineers should evaluate before selecting a platform.
A robot controller is the computing and control system that interprets robot programs and converts them into coordinated commands for the robot’s axes, tools and connected equipment.
It typically manages robot kinematics, trajectory generation, real-time motion interpolation, communication with servo drives, input and output, diagnostics, program execution and interfaces to external automation.
Safety-related control may be integrated into the same controller cabinet, but it remains a separately defined and validated functional layer.
remains the published international vocabulary reference for robotics terminology.
The robot controller is the main computing and motion-control unit. The robot control system is the broader system that may include the controller, servo drives, motors, feedback sensors, safety devices, power equipment, programming tools, communication networks and external automation.
| Layer | Typical elements |
|---|---|
| Main controller | CPU, motion kernel, program runtime and storage |
| Axis control | Servo drives, current control and motor feedback |
| Robot mechanics | Motors, reducers, joints and links |
| Safety | Safety CPU, safe I/O, drive-safety functions and protective devices |
| Process automation | PLC, tools, fixtures, vision and process equipment |
| Human interface | Teach pendant, HMI and programming workstation |
| Factory integration | Fieldbus, OPC UA, MES, SCADA and data systems |
Position and process feedback → Controller
MoveIt distinguishes planning from trajectory processing: its planning scene contains the robot state and environment used for motion planning, while trajectory-processing algorithms assign timing while respecting joint velocity and acceleration limits.
| Element | Function | Evaluation questions |
|---|---|---|
| Main CPU or processor | Runs robot programs and higher-level control | Architecture, performance, lifecycle and replacement |
| Real-time motion processor | Executes deterministic motion functions | Update period, jitter and supported axes |
| Memory and storage | Stores programs, models, logs and configuration | Capacity, endurance, backup and recovery |
| Drive interface | Connects controller to servo drives | Protocol, synchronization and supported drive models |
| Industrial I/O | Connects tools and equipment | Digital, analog, high-speed and safety I/O |
| Network interfaces | Connects PLCs, vision and factory systems | Protocols, ports, isolation and licensing |
| Safety hardware | Executes safety-rated logic where applicable | Certification, architecture and validation scope |
| Power supply | Powers control electronics | Voltage, redundancy and replacement |
| Cooling | Maintains operating temperature | Fans, filters, heat sinks and environmental limits |
| Teach pendant interface | Connects programming and operator device | Compatibility, emergency stop and lifecycle |
| Expansion hardware | Supports additional axes, I/O or processes | Slot availability and product roadmap |
A faster processor does not automatically create better robot performance. Motion quality depends on the real-time software, drive interface, kinematic model, trajectory implementation, feedback architecture and mechanical system.
The exact partition varies. Some controllers combine PLC, motion, robotics and safety functions in one hardware platform, while others divide them among separate devices.
| Device | Primary responsibility | Usually does not own |
|---|---|---|
| Robot controller | Robot kinematics, trajectories, coordinated axes and robot programme | Complete factory-line sequencing |
| Motion controller | Coordinated motion for defined axes or machine kinematics | Full robot application and vendor ecosystem |
| Servo drive | Motor current, commutation and lower-level axis control | Robot path planning or application logic |
| PLC | Machine sequence, process logic, I/O and interlocks | Robot kinematics unless robotics functions are implemented |
| Safety PLC/controller | Safety-related logic and safe-state supervision | Normal robot task execution |
| Industrial PC | Perception, AI, planning, data or general computing | Safety-rated motion by default |
| Teach pendant | Human programming and operating interface | Core robot-control execution |
| ROS computer | Distributed robotics software and high-level integration | Certified robot safety or deterministic servo control by default |
defines Structured Text, Ladder Diagram and Function Block Diagram for programmable controllers. This supports the PLC’s role in programmable machine logic but does not itself provide robot kinematics or coordinated robot-motion functionality.
A robot controller normally owns the robot’s geometry, kinematics, trajectory generation and synchronized joint motion. A PLC normally coordinates the wider machine process, including conveyors, fixtures, sensors, valves, interlocks and production sequencing. The two systems often exchange commands and status through industrial communication, although some platforms combine robot and PLC functions.
| Function | Robot controller | PLC |
|---|---|---|
| Forward and inverse kinematics | Primary | Usually not native |
| Coordinated multi-axis robot motion | Primary | Platform-dependent |
| Robot path blending | Primary | Usually not primary |
| Machine sequence logic | Supported | Primary |
| Large distributed I/O | Supported | Primary |
| Process interlocks | Shared | Primary |
| Robot programming | Primary | Limited or vendor-specific |
| Conveyor and tool coordination | Shared | Shared |
| Safety logic | Separate rated layer | Safety PLC where applicable |
A PLC can control robotic mechanisms when the PLC or motion platform includes the necessary kinematic, interpolation and servo-control functions. The distinction is functional, not merely the device label.
The robot controller determines the desired motion of the robot. The servo drive controls electrical power to one motor or axis so that the measured motion follows the commanded position, velocity or torque. The controller coordinates the robot. The drive controls the motor.
Encoder feedback → Drive and controller
See servo motor and drive selection for lower-level servo-loop architecture, torque-speed performance and drive compatibility.
The controller converts a desired tool path into synchronized joint motion. Each joint may travel a different distance and speed, but the controller generates time-aligned trajectories so that the robot follows the intended path and orientation.
Key capabilities include joint-space interpolation, Cartesian interpolation, velocity and acceleration limits, jerk limiting, path blending, singularity handling, external axes, multiple motion groups, conveyor tracking and tool-centre-point control.
Axis count is not the same as coordinated-axis capability. A controller may support many physical drives while allowing only a smaller number to participate in one synchronized kinematic group.
| Function | Primary question |
|---|---|
| Path planning | Where should the robot move? |
| Collision checking | Is the proposed path geometrically feasible? |
| Trajectory generation | How should the path evolve over time? |
| Time parameterization | What velocity and acceleration should each joint use? |
| Interpolation | What setpoint should each axis receive at each control interval? |
| Servo control | How should motor current be adjusted to follow the setpoint? |
A system can have sophisticated motion planning but weak real-time execution. It can also have precise real-time servo control without collision-aware planning. The complete architecture must provide both the planning capability and the execution capability required by the application.
Do not allow one undefined “cycle time” field. Engineers should evaluate worst-case latency, jitter, missed deadlines, synchronization and performance under representative processor and network load.
| Timing term | Meaning |
|---|---|
| Application cycle | Frequency at which task or process logic runs |
| Motion-planning time | Time required to calculate a path or trajectory |
| Interpolation period | Interval between generated joint setpoints |
| Position-loop period | Frequency of axis-position correction |
| Velocity-loop period | Frequency of velocity correction |
| Current-loop period | Frequency of motor-current regulation |
| Fieldbus cycle | Network update interval between controller and devices |
| I/O response time | Delay from physical input to control reaction |
| End-to-end latency | Delay from command or sensor event to physical response |
| Jitter | Variation in the timing of repeated events |
ROS 2’s real-time design documentation distinguishes real-time behaviour from ordinary fast computation and notes that deterministic operation depends on system architecture, operating-system support and carefully written software.
A generic multi-axis controller is not automatically a robot controller. To control a robot in Cartesian space, it must understand or be provided with the robot’s kinematic structure and coordinate transformations.
Evaluate protocol name and version, update rate, worst-case latency, jitter, time synchronization, supported topology, device profiles, safety protocol where applicable, licensing, configuration tools and diagnostic access.
A controller that supports a protocol name is not necessarily compatible with every device using that protocol. Profiles, data models, synchronization, update rates and optional features must also match.
The normal robot-control system executes the production task. The safety-related control system monitors defined safety conditions and initiates or maintains a safe state when required. The two may share a cabinet or hardware platform, but their responsibilities, software and validation scope must remain explicit.
Potential safety functions, where supported and applicable, include safe torque off, safe stop, safe operating stop, safely limited speed, safe position or workspace monitoring, safe direction, safety-rated monitored stop, safe input and output, and operating-mode control.
Robot product safety ≠ completed robot-cell safety. Controller safety certification ≠ validation of the complete application.
defines requirements for safety-related power-drive systems. addresses safety requirements for the industrial robot as partly completed machinery. covers industrial robot applications and robot cells.
ROS is not a robot controller in the same sense as a complete industrial robot-control platform. ROS is a set of software libraries and tools for building robot applications. It can provide communication, hardware abstraction, planning, perception and control-framework components, but the complete robot still requires suitable hardware, real-time execution, servo interfaces, fault handling and safety architecture.
| Dimension | Industrial controller | ROS-based architecture |
|---|---|---|
| Primary model | Integrated robot product | Modular software framework |
| Hardware | Defined controller and drive platform | User-selected computer and hardware |
| Motion execution | Vendor-controlled implementation | Architecture-dependent |
| Safety | Product-specific rated implementation | Requires separate suitable safety design |
| Programming | Vendor language and tools | C++, Python and ROS packages |
| Hardware access | Vendor interfaces | ROS drivers and hardware abstractions |
| Planning | Built-in or option-dependent | Broad planning ecosystem |
| Determinism | Defined for supported configuration | Depends on OS, executor, middleware and code |
| Support | OEM lifecycle and field service | Community, integrator or selected vendor |
| Flexibility | Controlled ecosystem | High architectural flexibility |
| Certification | Product and option specific | Must be established for the completed product |
ROS and an industrial controller are not mutually exclusive. A common architecture uses ROS 2 for perception, planning or application logic while the industrial controller retains real-time joint execution and the defined safety boundary. Direct-drive research systems, mobile robots and proprietary products may use different control partitions.
Controller selection should be based on the complete robot architecture, motion requirements, drive interfaces, real-time behaviour, software ownership, safety boundary, communication ecosystem and lifecycle—not processor specifications alone.
Evaluate base controller software, motion options, additional-axis licences, fieldbus licences, vision and force-control options, offline-programming licence, simulation or virtual-controller licence, SDK and API access, ROS driver support, runtime licence restrictions, source-code or escrow requirements, remote-service licence, update entitlement and replacement-controller migration.
The controller purchase price does not necessarily represent the complete software and lifecycle cost. Compare required options, development tools, runtime licences, integration, maintenance and migration costs.
A connected robot controller is part of the operational-technology environment. Cybersecurity decisions must account for production availability, safety, legacy interfaces, remote access and the consequences of unauthorized motion or software modification.
ROS support, Ethernet connectivity or cloud diagnostics should not be treated as cybersecurity evidence. Request the controller supplier’s actual security architecture, update policy, remote-access controls and vulnerability-response process.
provides security guidance for operational-technology systems, including PLC and industrial-control environments.
Safety validation must be performed against the applicable product and application requirements by qualified parties; the normal controller test does not replace the and safety process.
| Mistake | Likely consequence |
|---|---|
| Selecting from CPU specifications | Real-time or motion performance remains unknown |
| Treating axis count as coordinated-axis capacity | External axes cannot move as required |
| Comparing undefined “cycle times” | Invalid controller comparison |
| Ignoring the drive interface | Motor and controller incompatibility |
| Assuming PLC support replaces robot kinematics | Incomplete motion architecture |
| Assuming ROS support replaces the industrial controller | Missing execution or safety layer |
| Treating Ethernet connectivity as protocol compatibility | Integration failure |
| Ignoring licence-dependent features | Unexpected project cost |
| Ignoring offline-program compatibility | Deployment delays |
| Ignoring safety scope | Robot and cell responsibilities become unclear |
| Selecting around a prototype API | Serial-product lifecycle risk |
| Ignoring software-update policy | Security and support exposure |
| Ignoring replacement migration | High future switching cost |
| Accepting supplier benchmarks without test conditions | Non-comparable performance claims |
China has controller suppliers spanning complete robot OEMs, independent motion-control companies, servo-drive manufacturers, industrial-PC platforms, embedded-control developers and integrated robot-joint providers.
The central sourcing question is not whether a controller can move a demo robot. The buyer must establish who owns the kinematic model, motion kernel, drive interface, programming environment, safety subsystem, fieldbus stack and long-term software roadmap.
Supplier evaluation should classify suppliers as complete robot-controller technology owners, robot OEMs with internally developed controllers, robot OEMs using third-party controllers, independent motion-controller suppliers, servo-drive and motion-platform suppliers, industrial-PC or EtherCAT controller integrators, ROS-based control-platform providers, controller assemblers or private-label suppliers, and distributors or trading companies.
Evaluate legal and operating identity, controller hardware ownership, motion-kernel ownership, kinematic and trajectory software ownership, servo-drive source, safety-controller source, operating system or RTOS, fieldbus and protocol licences, ROS and API ownership, firmware update process, cybersecurity responsibility, manufacturing and end-of-line testing, English technical documentation, overseas commissioning and support, and software and hardware lifecycle.
A supplier may control the controller cabinet without controlling the motion software. Another may own the motion software but depend on third-party drives, safety hardware or fieldbus stacks. The responsibility map must therefore be established at subsystem level.
A robot controller is the hardware and software system that interprets robot programs, calculates coordinated motion, sends commands to servo drives, monitors feedback and connects the robot to tools and external automation. See the definition section and parent robot components guide.
It manages robot programmes, kinematics, trajectories, synchronized axes, process I/O, diagnostics and communication. Safety-related functions are handled through the controller’s defined safety architecture. See how a robot controller works.
It converts the requested tool or joint movement into time-aligned axis commands. Servo drives then regulate the motors using encoder feedback. See the controller vs servo drive section and servo motor guide.
The robot controller coordinates the robot’s overall motion. A servo drive controls electrical power and feedback for an individual motor or axis. See controller vs servo drive.
A robot controller normally manages kinematics and coordinated robot motion. A PLC normally manages machine sequencing, process logic and distributed I/O. The two systems often work together. See the comparison table.
A PLC can control a robotic mechanism when the platform includes the necessary motion, kinematic and interpolation functions. A conventional PLC logic engine alone is not equivalent to a complete robot controller. See controller vs PLC.
A robot motion controller generates and coordinates axis trajectories. A complete robot controller normally adds robot programming, kinematics, I/O, diagnostics, safety interfaces and application integration. See device comparison.
ROS is a software framework and tool ecosystem, not a complete industrial controller by itself. It can provide planning, communication, drivers and control frameworks but still requires suitable execution, drive and safety architecture. See Is ROS a robot controller?
It can form part of a custom robot-control system, but replacement requires the designer to provide the real-time execution, hardware interfaces, fault handling, lifecycle support and safety architecture otherwise supplied by the industrial controller. See industrial vs ROS-based control.
ros2_control is a ROS 2 framework that separates controllers from robot hardware through command and state interfaces and manages controller lifecycles through the Controller Manager. See ROS 2 architecture.
MoveIt is a ROS 2 manipulation framework that provides robot modelling, kinematics, planning-scene management, collision checking, motion planning and trajectory processing. See ROS 2 architecture.
The term can refer to application logic, trajectory interpolation, servo control, network update or I/O response. The exact timing layer and worst-case jitter must be stated before controllers can be compared. See the timing terminology table.
Depending on the product, controllers may support industrial Ethernet, fieldbus, OPC UA, vendor APIs and ROS interfaces. Compatibility depends on profiles, timing, data models and licensed options—not the protocol name alone. See communication architecture.
Some controllers support several robot or motion groups, but the number of attached axes and the number of synchronously coordinated groups are separate specifications. See multi-axis coordination.
Start from the robot architecture, motion requirements, servo drives, real-time timing, process I/O, communication, safety, programming environment, software ownership and required lifecycle. See the 14-stage selection framework.
Verify controller and software ownership, motion evidence, drive compatibility, safety scope, protocol documentation, manufacturing tests, cybersecurity, licensing and long-term support. See the supplier evidence framework.
Define the complete control architecture first, then establish which hardware, motion software, safety functions and communication stacks the supplier owns and which depend on third parties. See the China sourcing section and component sourcing service.
If you have defined the robot architecture, motion requirements and controller integration needs, Yana can help structure supplier research, controller comparison and validation planning for robotics components in China.