Servo driver and servo system
Patent Information
- Application Number
- JP2021038182
- Authority / Receiving Office
- JP · JP
- Patent Type
- Patents
- Current Assignee / Owner
- Filing Date
- 2021-03-10
- Publication Date
- 2025-03-27
- Estimated Expiration
- 2041-03-10
AI Technical Summary
【0013】 開示の技術によれば、サーボモータ交換の検知精度を高めることができる。
Smart Images

Figure 0007651889000001 
Figure 0007651889000002 
Figure 0007651889000003
Abstract
Description
[Technical field]
[0001] The present invention relates to a servo driver and a servo system. [Background technology]
[0002] In a servo system, the servo driver generally controls the servo motor according to commands from a controller such as a PLC. Each servo motor has its own set of parameters. The servo driver obtains these parameters from a non-volatile memory such as an Electrically Erasable Programmable Read-Only Memory (EEPROM) in the encoder of the servo motor, and reads them. The obtained parameters are used to perform servo control of the servo motor.
[0003] Since the parameters of a servo motor are different for each servo motor, when a servo motor is replaced, the parameters must be reacquired from the replaced servo motor. Therefore, the servo driver recognizes the individual servo motor based on the servo motor identification information, such as the serial numbers of the motor and the encoder, stored in the non-volatile memory of the encoder, and detects that the servo motor has been replaced if the identification information differs. Then, when the servo driver detects the replacement of the servo motor, it can issue an error report. [Prior art documents] [Patent documents]
[0004] [Patent Document 1] Japanese Patent Application Publication No. 8-023692 [Patent Document 2] JP 2018-021789 A [Patent Document 3] International Publication No. 2014 / 109054 Summary of the Invention [Problem to be solved by the invention]
[0005] Here, in circumstances where the servo driver and the servo motor are supplied from different suppliers, it may be unclear in which area of the non-volatile memory of the encoder the identification information is stored. In such a case, the servo driver cannot obtain the identification information from the servo motor, and therefore cannot detect the replacement of the servo motor. Therefore, the servo driver cannot report an abnormality, and there is a risk that the servo control of the replaced servo motor will be performed using the parameters obtained from the servo motor before the replacement.
[0006] The present invention has been made in consideration of the above problems, and has an object to provide a servo driver and a servo system that can improve the accuracy of detecting the replacement of a servo motor. [Means for solving the problem]
[0007] One aspect of the disclosed technology is exemplified by a servo driver as follows. The servo driver controls a servo motor including an encoder and a motor body, and includes a servo control unit that servo-controls the servo motor, a memory provided in the encoder, and a calculation unit that performs a calculation process to acquire data from a nonvolatile memory accessible from the servo driver when the servo driver is energized as a block of predetermined data and input the acquired predetermined data into a hash function to calculate a hash value, a storage unit that stores the hash value calculated by the calculation unit, and a storage unit that stores the predetermined hash value obtained by performing the calculation process on the nonvolatile memory of a predetermined encoder accessible from the servo driver when the servo driver is next energized, the predetermined hash value being stored in the storage unit. and a detection unit that detects replacement of the servo motor when the hash value differs from the hash value stored in the memory unit.
[0008] The servo driver acquires data stored in the non-volatile memory of the encoder and detects the replacement of the servo motor based on the hash value. That is, the servo driver does not acquire and compare information such as a serial number from the servo motor, so that the servo driver can detect the replacement of the servo motor even if the arrangement of the data stored in the non-volatile memory is unknown. Therefore, the servo driver can improve the detection accuracy of the replacement of the servo motor. For example, the calculation unit may acquire all data stored in the non-volatile memory of the encoder as the predetermined data. The storage unit of the servo driver may store the hash value calculated by the calculation unit when the most recent servo driver is energized.
[0009] Here, the calculation unit may acquire, as the predetermined data, data stored in the non-volatile memory of the encoder, excluding variable data that is accessible by the servo driver and whose value fluctuates. The non-volatile memory may store variable data whose value fluctuates, such as measurement data measured by various sensors, such as a temperature sensor. By excluding such variable data, the servo driver is prevented from erroneously detecting that the servo motor has been replaced when the servo motor has not been replaced.
[0010] The calculation unit may calculate a hash value of the predetermined data for each of a first hash function of a first algorithm and a second hash function of a second algorithm in the calculation process. The detection unit may compare a hash value calculated by the first hash function stored in the storage unit with a hash value obtained by using the first hash function in the calculation process when the next servo driver is energized, and may compare a hash value calculated by the second hash function stored in the storage unit with a hash value obtained by using the second hash function in the calculation process when the next servo driver is energized, and may detect the replacement of the servo motor when at least one of the hash values calculated by the first hash function and the second hash function is different. In a hash function, a collision may occur in which the same value is calculated even though input data is different. By using two different algorithms, a decrease in detection accuracy of motor replacement due to the occurrence of such a collision is suppressed.
[0011] The servo control unit may prohibit control of the servo motor connected to the servo driver at that time when the detection unit detects replacement of the servo motor while the servo driver is energized. By providing such a feature, it is possible to prevent the control of the replaced servo motor by parameters set for controlling the servo motor before the replacement.
[0012] Here, the present invention can also be seen from the aspect of a servo system. That is, the servo system includes a servo motor including an encoder and a motor body, and a servo driver that controls the servo motor. The servo driver includes a servo control unit that servo-controls the servo motor, a calculation unit that is a memory provided in the encoder and that acquires data from a non-volatile memory that is accessible from the servo driver when the servo driver is energized as a block of predetermined data, inputs the acquired predetermined data into a hash function, and performs an arithmetic process to calculate a hash value, a storage unit that stores the hash value calculated by the calculation unit, and a storage unit that stores the predetermined hash value that is obtained by performing the arithmetic process by the calculation unit on the non-volatile memory of a predetermined encoder that is accessible from the servo driver when the servo driver is next energized, and is different from the hash value stored in the storage unit. and a detection unit that detects replacement of the servo motor in such a case. Effect of the Invention
[0013] According to the disclosed technology, the accuracy of detecting servo motor replacement can be improved. [Brief description of the drawings]
[0014] [Figure 1] FIG. 1 is a diagram illustrating an example of the configuration of a servo system. [Diagram 2] FIG. 2 is a diagram showing a schematic configuration of the motor. [Diagram 3] FIG. 3 is a first diagram illustrating an example of data stored in a storage unit of the encoder. [Figure 4] FIG. 4 is a diagram showing a schematic configuration of a functional section of the servo driver. [Diagram 5] FIG. 5 is a diagram showing a process flow for detecting replacement of a motor by a servo driver. [Figure 6] FIG. 6 is a second diagram showing an example of data stored in the storage unit of the encoder. [Figure 7]FIG. 7 is a diagram showing a detection flow for detecting replacement of a motor by a servo driver in the first modified example. [Figure 8] FIG. 8 is a diagram showing a detection flow for detecting replacement of a motor by a servo driver in the second modified example. DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS
[0015] Hereinafter, an embodiment of the present invention will be described in detail with reference to the drawings. In the drawings, the same or corresponding parts are denoted by the same reference numerals, and the description thereof will not be repeated. In this disclosure, an industrial system is shown as one exemplary embodiment of a servo system. However, the use of the servo system according to the present invention is not particularly limited.
[0016] <Embodiment> FIG. 1 is a diagram showing a schematic configuration example of a servo system 100. The servo system 100 includes a programmable logic controller (PLC) 1 and a servo driver 2. The servo driver 2 is arranged to drive and control a servo motor 3. An output shaft 32 of the servo motor 3 is connected to a screw shaft 52 by a coupling 51. A precision stage 53 is arranged on the screw shaft 52, and is configured so that the precision stage 53 is displaced by driving a servo motor (hereinafter referred to as a "motor") 3. Stoppers (not shown) are provided at both ends of the driving range of the precision stage 53 along the screw shaft 52. The impact when the precision stage 53 contacts the stopper is reduced as much as possible by torque control of the motor 3. A workpiece 8 is placed on the precision stage 53. In the servo system 100 shown in the figure, one driving shaft driven by the motor 3 is provided, but two or more driving shafts may be provided.
[0017] Here, the PLC 1 outputs a command signal to the servo driver 2. The PLC 1 functions, for example, as a monitor device for the servo driver 2 by executing processing according to a program prepared in advance.
[0018] The servo driver 2 receives a command signal from the PLC 1. Furthermore, the servo driver 2 receives a feedback signal from the motor 3. In the servo driver 2, a servo system that performs feedback control using a position controller, a speed controller, a current controller, etc. is formed, and these signals are used to servo-control and drive the motor 3.
[0019] The motor 3 also includes a motor body 30 and an encoder 31. The motor 3 is, for example, an AC servo motor. The motor 3 receives a driving current from the servo driver 2 through a power line 40. Power is supplied via the encoder 31. The encoder 31 detects the displacement of the output shaft 32 of the motor body 30. Examples of the displacement of the output shaft 32 detected by the encoder 31 include the rotation direction, rotation amount, and rotation speed of the output shaft 32. The encoder 31 outputs a feedback signal indicating the detected displacement to the servo driver 2 via an encoder cable 41.
[0020] Next, a description will be given of the functional configuration of the encoder 31. Fig. 2 is a diagram showing a schematic configuration of the motor 3. The encoder 31 provided in the motor 3 includes a signal generating unit 311, a communication unit 312, and a storage unit 313.
[0021] The signal generating unit 311 detects the operation of the motor main body 30 of the motor 3 driven by the servo driver 2, and generates a feedback signal indicating the detected operation. The feedback signal is output to the communication unit 312. The feedback signal includes, for example, information on the rotational position (angle) of the rotating shaft of the motor main body 30, information on the rotational speed of the rotating shaft, information on the rotation direction of the rotating shaft, etc. The signal generating unit 311 can be configured, for example, as a known incremental type or absolute type.
[0022] The communication unit 312 is an interface for communicating with the servo driver 2. In this embodiment, the communication unit 312 sends a feedback signal to the servo driver 2 via the encoder cable 41. In this embodiment, serial communication is applied to the transmission of the feedback signal and the detection signal from the communication unit 312. This makes it possible to reduce the number of signal lines included in the cable. For the serial communication via the encoder cable 41, a known communication standard such as Recommended Standards 232 (RS-232C), RS-422, or RS-485 can be adopted.
[0023] The storage unit 313 is a storage unit that stores data related to servo control of the motor 3. The storage unit 313 is, for example, an EEPROM. FIG. 3 is a first diagram showing an example of data stored in the storage unit 313 of the encoder 31. In FIG. 3, the position where the data is stored and the data stored in the position are shown in correspondence with each other. The position is shown, for example, by an address. The storage unit 313 stores data related to the encoder 31, such as the encoder serial number and various parameters. The manufacturer of the encoder 31 may be different from the manufacturer of the motor main body 30. Therefore, the storage unit 313 is further provided with a motor area. In FIG. 3, the data stored in the motor area is indicated by an arrow.
[0024] In the motor area, various parameters used to drive the motor main body 30 are stored by the manufacturer of the motor main body 30. In the example of FIG. 3, the motor area stores the motor model name, motor serial number, and servo control parameters. The servo control parameters of the motor main body 30 are adjusted for each individual motor main body 30. Therefore, the servo control parameters of the motor main body 30 may differ for each individual motor main body 30 (for each serial number of the motor main body 30) even if the motor main body 30 has the same model name. In other words, even if the motor main body 30 has the same model name, the servo control parameters suitable for servo control may differ for each individual motor main body 30.
[0025] As described above, the preset data is stored in the storage unit 313. The data stored in the storage unit 313 is transmitted from the communication unit 312 to the servo driver 2 in response to a command from the servo driver 2. Note that the configuration of the storage unit 313 shown in FIG. 3 is merely an example, and the configuration of the storage unit 313 is determined by the manufacturer of the encoder 31 and differs depending on the encoder 31.
[0026] When the servo driver 2 and the motor 3 are supplied from the same supplier, the supplier can set the configuration of the storage unit 313 in the servo driver 2. Therefore, the servo driver 2 can detect the replacement of the motor 3 by acquiring the model name, serial number, and serial number of the encoder 31 from the storage unit 313. However, when the servo driver 2 and the motor 3 are supplied from different suppliers (for example, when the servo driver 2 and the encoder 31 are supplied from different suppliers), the supplier of the servo driver 2 cannot grasp the configuration of the storage unit 313, and the supplier of the servo driver 2 cannot set the configuration of the storage unit 313 in the servo driver 2. Therefore, the servo driver 2 cannot acquire the model name, serial number, and serial number of the encoder 31 from the storage unit 313 of the newly connected motor 3, and cannot detect the replacement of the motor 3. Therefore, in this embodiment, in order to solve such a problem, the servo driver 2 has a functional unit described below.
[0027] Fig. 4 is a diagram showing a schematic configuration of the functional units of the servo driver 2. The servo driver 2 can be regarded as a computer having an arithmetic unit, a storage device, and the like. The functional units shown in Fig. 4 are realized by executing a predetermined program, etc. in the servo driver 2. The servo driver 2 has a communication unit 21, a servo control unit 22, a calculation unit 23, a detection unit 24, and a storage unit 25, but may have other functional units.
[0028] The communication unit 21 is a function that controls communication with the outside via the communication cable 11. For example, the communication unit 21 functions as an interface for communication with the PLC 1. Furthermore, the communication unit 21 also functions as an interface for communication with the encoder 31 via the encoder cable 41.
[0029] The servo control unit 22 is a functional unit for servo-controlling the motor 3 based on a command from the PLC 1, and specifically, is a functional unit for performing feedback control using a position controller, a speed controller, a current controller, etc. Note that for the position controller, speed controller, current controller, etc., control parameters such as speed gain are appropriately set so that servo control of the motor 3, which is the control target, is suitably performed.
[0030] The calculation unit 23 acquires data stored in the storage unit 313 of the encoder 31, for example, when the servo driver 2 is energized. Here, the calculation unit 23 does not need to interpret the meaning of the acquired data. Therefore, the detection unit 24 only needs to acquire the data stored in the storage unit 313 as a simple bit string (a chunk of data). Then, the calculation unit 23 performs an arithmetic process of inputting the data acquired from the storage unit 313 into a hash function to calculate a hash value.
[0031] Here, various algorithms of hash functions can be used as the hash function used by the calculation unit 23. Algorithms of the hash function used by the detection unit 24 can be, for example, SHA-1, SHA-256, SHA-512, etc.
[0032] The detection unit 24 is a functional unit that detects replacement of the motor 3. The detection unit 24 stores the hash value calculated by the calculation unit 23 in the storage unit 25. The detection unit 24 then compares the hash value calculated when the servo driver 2 is energized with the hash value already stored in the storage unit 25, and detects that the motor 3 has been replaced if these hash values differ.
[0033] The storage unit 25 is a functional unit that stores various data related to the processing performed by the servo driver 2, such as data used for servo control of the motor 3, the hash value calculated by the calculation unit 23, and the like.
[0034] Next, a detection flow for detecting replacement of the motor 3 by the servo driver 2 will be described. Fig. 5 is a diagram showing a process flow for detecting replacement of the motor 3 by the servo driver 2. The process flow shown in Fig. 5 is executed, for example, when the servo driver 2 is energized (started). Hereinafter, a process flow for detecting replacement of the motor 3 by the detection unit 24 will be described with reference to Fig. 5.
[0035] In S1, the calculation unit 23 acquires all data stored in the storage unit 313 of the encoder 31. In S2, the calculation unit 23 inputs all data acquired in S1 to a hash function to calculate a hash value.
[0036] In S3, the detection unit 24 determines whether or not there is a hash value already stored in the storage unit 25. If there is a hash value already stored (YES in S3), the process proceeds to S4. If there is no hash value already stored (NO in S3), the process proceeds to S6.
[0037] In S4, the detection unit 24 compares the hash value calculated by the calculation unit 23 in S2 with the hash value already stored in the storage unit 25. If these hash values match (YES in S4), it is determined that the motor 3 has not been replaced, and the process proceeds to S7. If these hash values differ (NO in S4), the process proceeds to S5.
[0038] In S5, the detection unit 24 detects replacement of the motor 3. The detection unit 24 that detects replacement of the motor 3, for example, outputs an alarm and does not start driving the motor 3. The alarm output may be, for example, a buzzer sound. The alarm output may also be achieved by sending a message to a higher-level device such as the PLC 1. Then, since the process of S7 is not executed in the process flow that reaches S5, the drive start process of the motor 3 is prohibited.
[0039] In S6, the calculation unit 23 stores the hash value calculated in S2 in the storage unit 25. If a hash value has already been stored, the calculation unit 23 erases the stored hash value and then stores the hash value calculated in S2 when the servo driver 2 is energized this time. The stored hash value is used, for example, for the determination in S4 the next time the servo driver 2 is energized. In S7, the servo control unit 22 starts driving the motor 3.
[0040] In the embodiment described above, the servo driver 2 calculates hash values for all data stored in the storage unit 313 of the encoder 31, and detects replacement of the motor 3 by comparing the calculated hash values. Therefore, the servo driver 2 can detect replacement of the motor 3 even if it is unclear what data is stored in which area of the storage unit 313.
[0041] The servo driver 2 employs a hash value to compare all data stored in the storage unit 313 of the encoder 31. The hash value is fixed-length data according to the algorithm of the hash function. That is, even if the data stored in the storage unit 313 is large, the size of the hash value does not become large. Therefore, according to this embodiment, the capacity of the storage unit 25 used to store the hash value can be reduced. In addition, by using the hash value when comparing the data stored in the storage unit 313, the calculation load of the servo driver 2 can be reduced compared to directly comparing the data stored in the storage unit 313.
[0042] <First Modification> In the embodiment described above, preset data is stored in the storage unit 313 of the encoder 31. In the first modified example, a case will be described in which variable data whose values fluctuate, such as measurement data measured by various sensors exemplified by a temperature sensor, is also stored in the storage unit 313.
[0043] 6 is a second diagram showing an example of data stored in the storage unit 313 of the encoder 31. In the example of FIG. 6, in addition to the data shown in FIG. 3, measurement data measured by various sensors connected to the encoder 31 is also stored in the storage unit 313. Therefore, when the detection unit 24 acquires data in the entire area of the storage unit 313 and calculates a hash value, there are cases where the hash value is different even if the motor 3 has not been replaced. Therefore, the detection unit 24 may erroneously detect the replacement of the motor 3.
[0044] Therefore, the calculation unit 23 acquires data stored in an area other than the area where the variable data is stored among the data stored in the storage unit 313, and calculates the hash value of the data. For example, the calculation unit 23 may specify in a command to access the storage unit 313 that all data excluding the area where the variable data is stored be acquired.
[0045] Fig. 7 is a diagram showing a detection flow for detecting replacement of the motor 3 by the servo driver 2 in the first modified example. The detection flow shown in Fig. 7 differs from the detection flow shown in Fig. 5 in that S1a is executed instead of S1.
[0046] In S1a, the calculation unit 23 instructs to acquire all data other than the area where the variable data is stored in the command to acquire data from the storage unit 313. That is, the calculation unit 23 acquires data stored in the entire area of the storage unit 313 in S1 of Fig. 5, whereas in S1a of Fig. 7, the calculation unit 23 acquires data stored in the storage unit 313 excluding the area where the variable data is stored.
[0047] In the first modified example, the data stored in the storage unit 313 is acquired excluding the area in which the variable data is stored, and a hash value of the acquired data is calculated. Therefore, even if the value of the variable data stored in the storage unit 313 changes, the hash value does not change unless the motor 3 is replaced. Therefore, according to the first modified example, even if the variable data is stored in the storage unit 313, the detection unit 24 can detect replacement of the motor 3.
[0048] <Second Modification> In the embodiment described above, a single hash function is used to calculate the hash value of the data acquired from storage unit 313. In the second modified example, an example will be described in which a hash value of the data acquired from storage unit 313 is calculated using hash functions of two different algorithms.
[0049] Fig. 8 is a diagram showing a detection flow for detecting replacement of the motor 3 by the servo driver 2 in the second modified example. The detection flow shown in Fig. 8 differs from the detection flow shown in Fig. 5 in that S2a is executed instead of S2, S4a is executed instead of S4, and S6a is executed instead of S6.
[0050] In S2a, the calculation unit 23 calculates a hash value of the data acquired in S1 using two hash functions with different algorithms. For example, the calculation unit 23 calculates a hash value of the data acquired in S1 using a hash function of SHA-1. Also, the calculation unit 23 calculates a hash value of the data acquired in S1 using a hash function of SHA-256.
[0051] In S4a, the detection unit 24 compares the two hash values calculated in S2a with the two hash values stored in S6. That is, the detection unit 24 compares the hash value calculated using SHA-1 stored in S6 with the hash value newly calculated using SHA-1 in S2a. Furthermore, the detection unit 24 compares the hash value calculated using SHA-256 stored in S6 with the hash value newly calculated using SHA-256 in S2a. This If the comparison shows that at least one of the hash values calculated using SHA-1 and SHA-256 does not match (NO in S4a), the process proceeds to S5. If both hash values match (YES in S4a), the process proceeds to S7.
[0052] In S6a, the calculation unit 23 stores the two hash values calculated in S2a in the storage unit 25. If there are already stored hash values, the calculation unit 23 erases the already stored hash values and then stores the two hash values calculated in S2a during the current energization of the servo driver 2. The calculation unit 23 may store the two hash values in the storage unit 25 in association with the algorithm by which they were calculated, for example.
[0053] With hash functions, the same hash value may be calculated even when the input data is different (occurrence of a collision). In the second modified example, hash values are calculated using hash functions of two different algorithms for the data obtained from the storage unit 313, and replacement of the motor 3 is detected if the hash values calculated using at least one of the algorithms in S4a do not match. It is considered that the probability of a collision occurring between hash functions of two different algorithms for the same input data is extremely low. Therefore, according to the second modified example, the accuracy of detecting replacement of the motor 3 can be improved.
[0054] The above-described embodiments and modifications can be combined.
[0055] <Appendix 1> A servo driver (2) for controlling a servo motor (3) including an encoder (31) and a motor body (30), a servo control unit (22) that servo-controls the servo motor (3); a calculation unit (23) that performs a calculation process of acquiring data from a non-volatile memory (313) that is provided in the encoder (31) and that is accessible from the servo driver (2) when the servo driver (2) is energized as a block of predetermined data, inputting the acquired predetermined data into a hash function, and calculating a hash value; a storage unit (25) that stores the hash value calculated by the calculation unit (23); a detection unit (24) that detects replacement of the servo motor (3) when a predetermined hash value obtained by performing the arithmetic processing by the calculation unit (23) on a non-volatile memory (313) of a predetermined encoder (31) accessible from the servo driver (2) during the next power supply to the servo driver (2) differs from the hash value stored in the storage unit (25); A servo driver (2).
[0056] <Appendix 2> a servo motor (3) including an encoder (31) and a motor body (30); A servo system (100) including a servo driver (2) for controlling the servo motor (3), The servo driver (2) a servo control unit (22) that servo-controls the servo motor (3); a calculation unit (23) that performs a calculation process of acquiring data from a non-volatile memory (313) provided in the encoder (31) that is accessible from the servo driver (2) when the servo driver (2) is energized as a block of predetermined data, inputting the acquired predetermined data into a hash function, and calculating a hash value; a storage unit (25) that stores the hash value calculated by the calculation unit (23); The next time the servo driver (2) is energized, the calculation unit ( and a detection unit (24) that detects replacement of the servo motor (3) when a predetermined hash value obtained by performing the arithmetic processing by the storage unit (23) differs from the hash value stored in the storage unit (25). A servo system (100). [Explanation of symbols]
[0057] 1. PLC 2. Servo driver 3. Motor 8. Work 21. Communications Department 22 Servo control unit 23 Calculation section 24. Detection unit 25...Storage section 30 Motor body 31 Encoder 311 Signal generation unit 312 Communications Department 313...Storage section 32 Output shaft 41 Encoder cable 51 Coupling 52 Screw shaft 53 Precision stage 53 100··Servo system
Claims
1. A servo driver that controls a servo motor including an encoder and a motor body, a servo control unit that servo-controls the servo motor; a calculation unit that performs an arithmetic process of acquiring all data stored in a non-volatile memory that is provided in the encoder and that is accessible from the servo driver when the servo driver is energized, as a block of predetermined data, inputting the acquired predetermined data into a hash function, and calculating a hash value; a storage unit that stores the hash value calculated by the calculation unit; a detection unit that detects replacement of the servo motor when a predetermined hash value obtained by performing the arithmetic processing on a non-volatile memory of a predetermined encoder accessible from the servo driver by the calculation unit when the servo driver is next energized differs from the hash value stored in the storage unit, The calculation unit is In the calculation process, a hash value of the predetermined data is calculated for each of a first hash function of a first algorithm and a second hash function of a second algorithm; The detection unit is comparing the hash value calculated by the first hash function stored in the storage unit with a hash value obtained by using the first hash function in the arithmetic process when the next servo driver is energized; comparing the hash value calculated by the second hash function stored in the storage unit with a hash value obtained by using the second hash function in the arithmetic process when the next servo driver is energized; detecting a replacement of the servo motor when at least one of the hash values calculated by the first hash function and the hash value calculated by the second hash function is different; Servo driver.
2. The storage unit stores the hash value calculated by the calculation unit when power is most recently applied to the servo driver.
2. The servo driver according to claim 1.
3. When the detection unit detects replacement of the servo motor while the servo driver is energized, the servo control unit prohibits control of the servo motor connected to the servo driver at that time.
3. The servo driver according to claim 1 or 2.
4. a servo motor including an encoder and a motor body; A servo system including: The servo driver includes: a servo control unit that servo-controls the servo motor; a calculation unit that performs a calculation process of acquiring all data stored in a non-volatile memory that is provided in the encoder and that is accessible from the servo driver when the servo driver is energized as a block of predetermined data, inputting the acquired predetermined data into a hash function, and calculating a hash value; a storage unit that stores the hash value calculated by the calculation unit; a detection unit that detects replacement of the servo motor when a predetermined hash value obtained by performing the arithmetic processing by the calculation unit on a non-volatile memory of a predetermined encoder accessible from the servo driver when power is next applied to the servo driver differs from the hash value stored in the storage unit, The calculation unit is In the calculation process, a hash value of the predetermined data is calculated for each of a first hash function of a first algorithm and a second hash function of a second algorithm; comparing the hash value calculated by the first hash function stored in the storage unit with a hash value obtained by using the first hash function in the arithmetic process when the next servo driver is energized; comparing the hash value calculated by the second hash function stored in the storage unit with a hash value obtained by using the second hash function in the arithmetic process when the next servo driver is energized; detecting a replacement of the servo motor when at least one of the hash values calculated by the first hash function and the hash value calculated by the second hash function is different; Servo system.
5. The storage unit stores the hash value calculated by the calculation unit when power is most recently applied to the servo driver.
5. The servo system according to claim 4.
6. When the detection unit detects replacement of the servo motor while the servo driver is energized, the servo control unit prohibits control of the servo motor connected to the servo driver at that time.
6. The servo system according to claim 4 or 5.
Citation Information
Patent Citations
Motor control method
JP1996023692A
Motor controller, motor control method, information processing program, and storage medium
JP2017163760A
Encoder capable of erasing memory information and motor system equipped with the same
JP2018021789A
Diagnostic device, learning device, and diagnostic system
JP2018025945A
Motor module and motor authentication method
JP2020018168A