A servo motor encoder outputs 2500 pulses per revolution, with a rated speed of 3000 r/min (50 Hz). The motor is directly connected to a leadscrew with a leadcrew pitch of 5 mm, and the servo driver has an internal electronic gear ratio of 1. How can you calculate how long it takes for the servo motor to drive a workpiece to travel 1 meter in approximately 5 seconds?
First, calculate the required number of pulses:
(1). Walking a distance of 1m is equivalent to the lead screw rotating 1*1000/5=200 times;
(2). That is, the servo motor emits 2500*200=500000 (500,000) pulses;
(3). The 16 bits of binary can represent “0 to 65535” (65,000) or “-32768 to +32768” in decimal, that is, the number of pulses required is not met by 16 bits of data;
(4) 32 bits of binary can represent the decimal range "0 to 4294967295" (4.29 billion), which is far greater than the required 500,000 pulses. That is, 32 bits of data can definitely meet the required number of pulses.
In summary, it takes 500,000 pulses to travel the required distance.
Next, determine the servo's walking speed:
(1). The rated speed of the servo motor is 3000 r/min (50 Hz), which is 50 r/s;
(2). The rated number of pulses emitted by the servo motor is 50 * 2500 = 125000 pulses/s;
(3). The number of pulses to be emitted in about 3 seconds is 3*125000=375000 pulses/s (370,000 pulses), which means that overspeed or delay is required;
(4) If it is specified that it will be completed in about 3 seconds, then 500000/3=166667 pulses/s, 166667*50/125000=67Hz, which is a bit fast;
(5) The theoretical fastest time is 500000/125000=4s, which means the fastest time is 4s. With a 20% deceleration, 5-6s is more suitable.
In summary, for this distance, a time of about 5 seconds is suitable for 125,000 pulses.
In actual operation, is the instruction like this? Let's take DRVI as an example to illustrate this situation. DRVI is an instruction that performs single-speed position control in a relative drive mode, and its usage format is shown in the figure.
DRVI command
[S1·]: Number of output pulses (relative to the specified distance)
16-bit instructions: -32768 to +32767 (the numbers appear to have decreased).
32-bit instructions: -999999 to +999999 (the number will definitely become smaller).
[S2·]: Output pulse frequency (relative to the specified speed)
16-bit instructions: 10–32767 (Hz)
32-bit instructions range from 10 to 100,000 Hz (the numbers are definitely smaller).
[D1·]: Pulse output start address (only Y000 or Y001 can be specified), the programmable controller output must use transistor output mode.
[D2·]: The starting address for the rotation direction signal output. The operation is performed according to the sign of [S·].
[+(正)]→[D2·]=ON
[-(negative)]→[D2·]=OFF
In summary, DDRVI (K500000K100000Y0Y4) travels 1000mm in 5 seconds at a frequency of 40Hz and a speed of 200mm/s (K00000). Is this really the case? It's best to test it in actual operation.