
First Time With a Servo Drive: From Unboxing to Spinning the Motor
As someone who had never touched a servo before, I tried out this Estun DX4/ED5L.
I normally work on grasping and tactile sensing, focused on those last few centimeters at the end effector. This time I wanted to build a lead-screw preload test rig, which needs a small axis that can move at millimeter-level positioning. Before, I always bought off-the-shelf modules that work as soon as you plug them in; this time the supplier only gave me the drive and the motor, and I had to wire up the rest myself. I first touched lead-screw preload five days ago, and servo was from zero. This post is about everything from unboxing to the motor moving a set distance on command — every pitfall I hit, none omitted.
A servo drive is basically the driver for the motor. You say "move forward 3 mm," and it handles the speed, torque, and when to stop. The watershed between it and an ordinary VFD is feedback: there's an encoder on the motor's tail, essentially a real-time ruler reporting "how much I've turned." The drive compares this feedback against the command and compensates for the difference. This layer is called the position loop, governing "where to stop." Outside that there are velocity and torque loops; this time I only used the position loop.
Not much to prepare. The drive itself, the matching EM3 motor, power cable, encoder cable, 24V control power, main power, a debug cable to connect to the PC, plus the vendor's tuning software. For the first round, don't put on a load — let the motor spin free, running the axis unloaded is safest.
From wiring to making it move, I went step by step. Wire everything with all power off: power cable to the motor's three phases, encoder cable to its own port, 24V into the control power terminals, main power separately. These two power paths are separate; wire them all, then check again, especially the encoder plug — screw it all the way down. After wiring, apply control power and check the panel; normally it shows a ready state or the current feedback value — don't rush to apply main power at this step. Next install the tuning software, scan for devices, see the drive appear in the list, click connect; the first thing after connecting is to read the existing parameters and save an archive. Then match the motor model and encoder info — the software usually has a dropdown for this; pick wrong and everything after is wrong.
Select position mode for the control mode. For commanding, I first used the dumbest method, pulse mode, because it needs no bus configuration, has fewer wires, and is easy to troubleshoot. Click Servo On to enable — you'll hear a slight shaft-locking sound, and the motor is now stiff, you can't turn it by hand; that's correct. Switch to JOG, set the speed very low, say a few dozen RPM, tap forward, tap reverse, confirm the direction matches what you expect. Give a relative positioning distance, say move 10 mm, check the actual arrival, then check how much the feedback value in the software differs from the command value — a small difference means the closed loop is working properly. Finally save parameters, power off, power back on, and confirm the parameters are still there.
I hit three pitfalls. First was the encoder connector — power on gave an immediate alarm, the panel threw an encoder communication fault. I first suspected wire order, flipped through the manual for ages, and finally found the plug wasn't screwed all the way down, off by half a turn. A dumb pitfall, but beginners especially fall into it, because the plug looks inserted. Second, after enabling, jogging shot off — I'd set the jog speed too high, plus no soft limits, so one tap sent it running a long way forward, scaring me into cutting power. The correct order is to set soft limits first, press the jog speed very low, then enable. Reversing this order is dangerous, especially with something already mounted on the axis. Third, parameters weren't saved — I tuned it, thought it was usable, powered off for a meal, and it was all gone when I came back. Later I got into the habit of saving after every parameter group change; don't let them pile up.
One more thing that's not exactly a pitfall but is annoying: when the axis reaches position there's a slight whine, and the feedback value jitters near the target. That's gains not being tuned. The software has auto-tuning — run it once, let it measure inertia and give a set of gains, and the whine basically goes away. You can tune manually too, but beginners shouldn't touch it — the more you tune the messier it gets.
My impression of this DX4/ED5L is that the features are sufficient; the barrier isn't the hardware, it's "knowing which parameters to set." The hardware wiring is just a few wires; flipping through the parameter table is what really takes time. The manual is fairly clear, but it's written on the premise that "you already understand servos," so a beginner has to look up terms while reading.
While searching for material I saw a claim that some vendors are now moving control logic into the drive — i.e., the drive carries a small PLC, so simple sequencing and logic don't need an external controller. I believe in this direction. For those of us doing dexterous hands and grasping, it means the control of those small axes at the end effector can sit closer to the actuator — one less control cabinet, one less layer of communication latency. Right now my unit still honestly takes commands from a host PC, but the trend is there.
After learning jog and single-segment positioning, you can try multi-segment positions next, run a simple trapezoidal velocity profile, and see how acceleration/deceleration settings affect positioning accuracy; you can also hook it up to the robotic arm or slide on your bench for single-axis coordinated motion — that's when engineering details like homing, limits, and emergency stop really surface. If you do tactile sensing, you can even use the tactile signal as a trigger condition to fire a positioning action; once that chain runs through, the test rig counts as usable.
Physix Frontier