Precise Robot Control
with Simple Code
PLEM is a C++ library for real-time industrial manipulator control. Build complex robot systems easily with EtherCAT-based 1kHz control and an intuitive API.
Powerful Features
PLEM provides all the essential features needed for industrial robot control.
Intuitive API
Implement complex robot control easily with a clear and user-friendly C++ interface.
Learn moreReal-time Control
Precise real-time control with fast response performance to meet industrial requirements.
Learn moreModular Design
Extensible architecture supporting various manipulator models and custom algorithms.
Learn moreSafety Systems
Dual state machine with SafetyMode and RobotMode separates hardware protection from operational control.
Learn moreROS2 Integration
Seamless ROS2 ecosystem integration with Action servers, Composable Launch, and namespace isolation.
Learn moreEtherCAT Real-Time
Achieve sub-50µs jitter with EtherCAT-based 1kHz control loops and PREEMPT_RT kernel.
Learn moreWorkflow
From robot configuration to real-time monitoring in 4 steps.
Configure Robot
Configure any robot model in just a few lines of code
auto robot = Robot::builder<MyRobot>()
.with_network_interface("eth0")
.build();Launch System
Start RT drivers and controllers with Composable Launch
ComposableLaunch(
robot_driver_node,
controller_node
).start();Safe Control
Execute mode transitions and trajectories with dual state machine
robot->set_mode(RobotMode::TRAJECTORY);
trajectory_action->execute(goal);Monitor Performance
Real-time monitoring of RT metrics via wait-free queue
auto metrics = monitor.get_rt_metrics();
// jitter: 12µs, cycle: 1000µsWhy PLEM?
Discover what sets PLEM apart from existing solutions.
Contact Us About PLEM
Experience the new standard in robot control
Request Demo
See PLEM's performance in your environment. Our engineers will provide a hands-on demonstration.