

The Linear Motion Actuator (LMA) is a device designed to convert electrical energy into linear motion. This component is widely used in automation, robotics, and various industrial applications where precise linear movement is required. LMAs are essential in systems that require controlled and repeatable motion, such as CNC machines, 3D printers, and automated assembly lines.








| Parameter | Value | 
|---|---|
| Operating Voltage | 12V - 24V DC | 
| Current Rating | 1A - 5A | 
| Stroke Length | 50mm - 300mm | 
| Load Capacity | 10kg - 100kg | 
| Speed | 5mm/s - 50mm/s | 
| Position Feedback | Optional (Potentiometer) | 
| Control Interface | PWM, Analog, or Digital | 
| Operating Temperature | -10°C to 50°C | 
| Pin Number | Pin Name | Description | 
|---|---|---|
| 1 | VCC | Power Supply (12V - 24V DC) | 
| 2 | GND | Ground | 
| 3 | IN1 | Control Signal 1 (Direction/Speed Control) | 
| 4 | IN2 | Control Signal 2 (Direction/Speed Control) | 
| 5 | FB | Feedback Signal (Optional, for position sensing) | 
Arduino UNO          LMA
-----------          ---
5V         --------> VCC
GND        --------> GND
D9         --------> IN1
D10        --------> IN2
A0         --------> FB (Optional)
// Define pin connections
const int IN1 = 9;
const int IN2 = 10;
const int FB = A0; // Optional, for position feedback
void setup() {
  // Initialize pins as outputs
  pinMode(IN1, OUTPUT);
  pinMode(IN2, OUTPUT);
  pinMode(FB, INPUT); // Optional, for position feedback
  // Start with the actuator stopped
  digitalWrite(IN1, LOW);
  digitalWrite(IN2, LOW);
}
void loop() {
  // Example: Move actuator forward
  digitalWrite(IN1, HIGH);
  digitalWrite(IN2, LOW);
  delay(2000); // Move for 2 seconds
  // Stop actuator
  digitalWrite(IN1, LOW);
  digitalWrite(IN2, LOW);
  delay(1000); // Wait for 1 second
  // Example: Move actuator backward
  digitalWrite(IN1, LOW);
  digitalWrite(IN2, HIGH);
  delay(2000); // Move for 2 seconds
  // Stop actuator
  digitalWrite(IN1, LOW);
  digitalWrite(IN2, LOW);
  delay(1000); // Wait for 1 second
  // Optional: Read position feedback
  int position = analogRead(FB);
  // Use the position value as needed
}
Actuator Not Moving:
Overheating:
Inaccurate Position Feedback:
Can I use an LMA with a different voltage range?
How do I control the speed of the LMA?
Is it possible to get position feedback from the LMA?
By following this documentation, users can effectively integrate and utilize the Linear Motion Actuator (LMA) in their projects, ensuring reliable and precise linear motion control.