This application is a U.S. national stage application of the PCT International Application No. PCT/JP2017/010900 filed on Mar. 17, 2017, which claims the benefit of foreign priority of Japanese patent application 2016-067192 filed on Mar. 30, 2016, the contents all of which are incorporated herein by reference.
The present disclosure relates to a data storage device, a robot system, and a data storage method.
PTL 1 discloses a method of displaying a robot malfunction occurrence history. A conventional method of displaying a robot malfunction occurrence history will be described with reference to
As depicted in
Step S901 includes determining whether or not malfunction detection flag F has an initial value of “zero”. If malfunction detection flag F is not “zero”, an alarm is occurring. The sampling data memorization accordingly ends. If malfunction detection flag F is “zero”, the flow proceeds to subsequent step S902.
Step S902 includes reading a torque command current value. The flow then proceeds to subsequent step S903.
Step S903 includes adding one to address search index i. Address search index i has an initial value of “zero”. The flow then proceeds to subsequent step S904.
Step S904 includes determining whether or not address search index i obtained after the addition of one exceeds n. The flow proceeds to step S906 if address search index i does not exceed n. If address search index i exceeds n, address search index i is set to “one” (step S905). The flow then proceeds to step S906.
In step S906, the torque command current value read in step S902 is memorized as sampling data corresponding to address search index i in the data memory file. The flow then proceeds to subsequent step S907.
In step S907, address search index i is memorized in final record address memory register Pe. The flow then proceeds to subsequent step S908.
Step S908 includes determining whether or not an alarm is occurring. If an alarm is occurring, malfunction detection flag F is set to “one” (step S909). The sampling data memorization then ends. If no alarm is occurring, the sampling data memorization ends without including step S909.
The sampling data memorization (step S901 to step S909) is repeated at predetermined period Δt to generate data memory file 910 as indicated in
A torque command before alarm occurrence by time corresponding to n·Δt can be indicated in accordance with data memory file 910, as in the graph of
PTL 2 and PTL 3 also refer to storing sampling data in case of alarm occurrence.
PTL 1: Unexamined Japanese Patent Publication No. 9-311715
PTL 2: Unexamined Japanese Patent Publication No. 2005-103681
PTL 3: Unexamined Japanese Patent Publication No. 2008-203962
The conventional method of displaying a robot malfunction occurrence history includes storing sampling data at a preset sampling period and at preset sampling time. It is desired to store sufficient sampling data on a plurality of robot malfunctions. There is, however, a limit in capacity of a memory storing sampling data. The data stored through sampling is thus constant in volume. It is accordingly difficult to store all necessary data on a plurality of malfunctions. The present disclosure provides a data storage device configured to efficiently store data on a plurality of robot malfunctions even with a limit in memory capacity.
The present disclosure provides a data storage device configured to store data on malfunction of a robot and including a first acquisition unit, a second acquisition unit, a first determination unit, a second determination unit, a memory, and a controller. The first acquisition unit acquires first data on first malfunction of the robot. The second acquisition unit acquires second data on second malfunction of the robot. The first determination unit determines whether or not to store the first data in accordance with the first data. The second determination unit determines whether or not to store the second data in accordance with the second data. The memory stores the first data and the second data. The controller stores the first data in the memory at a first period when the first determination unit determines to store the first data. The controller stores the second data in the memory at a second period longer than the first period, when the first determination unit determines not to store the first data and the second determination unit determines to store the second data.
The present disclosure further provides a robot system including the data storage device, the robot, and a robot control device. The robot includes a drive unit. The robot control device controls the drive unit.
The present disclosure also provides a data storage method of storing data on malfunction of a robot, the method including: acquiring first data on first malfunction of the robot; acquiring second data on second malfunction of the robot; determining whether or not to store the first data in accordance with the first data; determining whether or not to store the second data in accordance with the second data; and storing the first data at a first period upon determination to store the first data, and storing the second data at a second period longer than the first period, upon determination not to store the first data and determination to store the second data.
The data storage device according to the present disclosure is configured to efficiently store data on a plurality of robot malfunctions even with a limit in memory capacity. The data storage device thus enables more accurate robot malfunction analysis.
An exemplary embodiment of the present disclosure will now be described with reference to
Robot control device 2 controls servomotors 4. Data storage device 3 is configured to store data on malfunction of robot 20, and includes first acquisition unit 10a, second acquisition unit 10b, third acquisition unit 10c, first determination unit 11a, second determination unit 11b, third determination unit 11c, memory 12, and controller 13. Display 1 is configured to display data on malfunction of robot 20 stored in memory 12. Robot control device 2 is further configured to stop servomotors 4 in accordance with the data on malfunction of robot 20 stored in memory 12. Robot control device 2 according to the present exemplary embodiment includes data storage device 3. The present disclosure is, however, not limited to this configuration. The present disclosure is also applicable to a configuration in which robot control device 2 does not include data storage device 3 and robot system 30 includes both robot control device 2 and data storage device 3.
Examples of display 1 include a liquid crystal display. Examples of memory 12 include a hard disk drive. The examples of memory 12 also include a solid state drive. Memory 12 functions as a data buffer.
Data storage device 3 executes sampling mode setting and sampling condition setting for data on malfunction of robot 20. Data storage device 3 stores sampling data as data on malfunction of robot 20. Data storage device 3 will be described below in terms of these operations with reference to
The sampling mode setting will be described with reference to
Controller 13 sets a last sampling mode as a current sampling mode (step a1).
Third acquisition unit 10c acquires, from each servomotor 4, temperature of servomotor 4 as third data on third malfunction of servomotor 4. The third malfunction of servomotor 4 relates to an overload of servomotor 4. Third determination unit 11c determines whether or not to store the temperature of servomotor 4 as the third data in accordance with the temperature of servomotor 4. Specifically, third determination unit 11c determines whether or not to store the temperature of servomotor 4 as the third data through determining whether or not the temperature of servomotor 4 is equal to or more than predetermined temperature (step a2). If third determination unit 11c determines to store the temperature of servomotor 4 (Y in step a2), controller 13 sets the sampling mode to overload detection (step a3). If third determination unit 11c determines not to store the temperature of servomotor 4 (N in step a2), the flow proceeds to step a4.
Subsequently, second acquisition unit 10b acquires, from servomotor 4, a speed feedback value of servomotor 4 as second data on second malfunction of servomotor 4. The second malfunction of servomotor 4 relates to a locked state of servomotor 4. Second determination unit 11b determines whether or not to store the speed feedback value of servomotor 4 as the second data in accordance with the speed feedback value of servomotor 4. Specifically, second determination unit 11b calculates locked state time from the speed feedback value of the servomotor. Second determination unit 11b then determines whether or not to store the speed feedback value of servomotor 4 as the second data through determining whether or not the locked state time of servomotor 4 is equal to or more than predetermined time (step a4). If second determination unit 11b determines to store the speed feedback value of servomotor 4 (Y in step a4), controller 13 sets the sampling mode to locked state detection (step a5). If second determination unit 11b determines not to store the speed feedback value of servomotor 4 (N in step a4), the flow proceeds to step a6.
Subsequently, first acquisition unit 10a acquires, from servomotor 4, an error counter value of servomotor 4 as first data on first malfunction of servomotor 4. The first malfunction of servomotor 4 relates to error counter excess of servomotor 4. First determination unit 11a determines whether or not to store the error counter value of servomotor 4 as the first data in accordance with the error counter value of servomotor 4. Specifically, first determination unit 11a determines whether or not to store the error counter value of servomotor 4 as the first data through determining whether or not the error counter value of the servomotor is equal to or more than a predetermined value (step a6). If first determination unit 11a determines to store the error counter value of servomotor 4 (Y in step a6), controller 13 sets the sampling mode to error counter excess detection (step a7). If first determination unit 11a determines not to store the error counter value of servomotor 4 (N in step a6), the sampling mode setting ends.
As described above, when first determination unit 11a determines to store the error counter value, controller 13 sets the sampling mode to error counter excess detection. When first determination unit 11a determines not to store the error counter value and second determination unit 11b determines to store the speed feedback value, controller 13 sets the sampling mode to locked state detection. When first determination unit 11a determines not to store the error counter value, second determination unit 11b determines not to store the speed feedback value, and third determination unit 11c determines to store the temperature of servomotor 4, controller 13 sets the sampling mode to overload detection.
The sampling modes are determined in an order of longer sampling periods of the respective sampling modes. Specifically, a sampling mode having a shorter sampling period is set preferentially. Specifically, the overload detection has the longest sampling period, the locked state detection has the second longest period, and the error counter excess detection has the shortest sampling period. These sampling periods correspond to urgency degrees upon alarm occurrence in these sampling modes.
The sampling condition setting will be described with reference to
As depicted in
As depicted in
As depicted in
Controller 13 subsequently initializes (clears to zero) sampling period counter CNTs and buffer counter Wp (step b14). In other words, controller 13 sets sampling period counter CNTs and buffer counter Wp to “zero”. Controller 13 can optionally store sampling data A1 to An1, B1 to Bn2, and C1 to Cn3 tentatively in a random access memory during the above operations.
Sampling data storage will be described with reference to
First acquisition unit 10a, second acquisition unit 10b, and third acquisition unit 10c acquire data at every control period in
Specific example of the stored sampling data will be described with reference to
Controller 13 determines that the sampling mode is the overload detection at control period d1 in
Controller 13 subsequently determines that the sampling mode is the locked state detection at control period d2 in
Controller 13 subsequently determines that the sampling mode is the error counter excess detection at control period d3 in
As described above, data storage device 3 is configured to store data on malfunction of robot 20 with a sampling mode having a higher urgency degree being prioritized. Data storage device 3 is thus configured to efficiently store data on a plurality of malfunctions of robot 20.
First acquisition unit 10a, second acquisition unit 10b, third acquisition unit 10c, first determination unit 11a, second determination unit 11b, third determination unit 11c, and controller 13 described above are each configured by an integrated circuit or the like. Part or entirety of first acquisition unit 10a, second acquisition unit 10b, third acquisition unit 10c, first determination unit 11a, second determination unit 11b, third determination unit 11c, and controller 13 can alternatively be configured by a single integrated circuit. Each function of first acquisition unit 10a, second acquisition unit 10b, third acquisition unit 10c, first determination unit 11a, second determination unit 11b, third determination unit 11c, and controller 13 can be achieved by an integrated circuit and a program in cooperation with each other. In other words, each of first acquisition unit 10a, second acquisition unit 10b, third acquisition unit 10c, first determination unit 11a, second determination unit 11b, third determination unit 11c, and controller 13 can be configured by a microcontroller.
Data storage device 3 optionally excludes third acquisition unit 10c and third determination unit 11c. Data storage device 3 thus configured stores the first data on the first malfunction and the second data on the second malfunction.
The data storage device according to the present disclosure is configured to efficiently store data on a plurality of robot malfunctions even with a limit in memory capacity. The data storage device according to the present disclosure is useful for more accurate analysis of robot malfunction and industrially worthful.
Number | Date | Country | Kind |
---|---|---|---|
2016-067192 | Mar 2016 | JP | national |
Filing Document | Filing Date | Country | Kind |
---|---|---|---|
PCT/JP2017/010900 | 3/17/2017 | WO | 00 |
Publishing Document | Publishing Date | Country | Kind |
---|---|---|---|
WO2017/169898 | 10/5/2017 | WO | A |
Number | Name | Date | Kind |
---|---|---|---|
20050017602 | Arms | Jan 2005 | A1 |
20050188267 | Farchmin | Aug 2005 | A1 |
20060025897 | Shostak | Feb 2006 | A1 |
20060208169 | Breed | Sep 2006 | A1 |
20070043585 | Matos | Feb 2007 | A1 |
20100036269 | Ferren | Feb 2010 | A1 |
20110046775 | Bailey | Feb 2011 | A1 |
20120296579 | Poling | Nov 2012 | A1 |
20130050121 | Bruemmer | Feb 2013 | A1 |
20130345718 | Crawford | Dec 2013 | A1 |
20140018792 | Gang | Jan 2014 | A1 |
20160029998 | Brister | Feb 2016 | A1 |
20160045841 | Kaplan | Feb 2016 | A1 |
20160375592 | Szatmary | Dec 2016 | A1 |
20170296179 | Shelton, IV | Oct 2017 | A1 |
Number | Date | Country |
---|---|---|
1 353 252 | Oct 2003 | EP |
6-036050 | Feb 1994 | JP |
9-311715 | Dec 1997 | JP |
2005-044192 | Feb 2005 | JP |
2005-103681 | Apr 2005 | JP |
2008-203962 | Sep 2008 | JP |
Entry |
---|
International Search Report of PCT application No. PCT/JP2017/010900 dated May 9, 2017. |
Extended European Search Report dated Mar. 15, 2019 in related European Patent Application No. 17774439.8. |
Number | Date | Country | |
---|---|---|---|
20190022865 A1 | Jan 2019 | US |