Login| Sign Up| Help| Contact|

Patent Searching and Data


Title:
A METHOD, SYSTEM AND A DEVICE FOR CONTROLLING A WORK MACHINE
Document Type and Number:
WIPO Patent Application WO/2013/053977
Kind Code:
A1
Abstract:
The invention relates to a method for controlling a work machine comprising at least a first control bus and a second control bus. The method comprises examining of at least one element of the work machine to detect if there is a fault in the at least one element. If a fault has been detected, an alarm indication is set on, the alarm indication comprising an alarm code. The alarm code is transformed to another code, when the alarm indication is transmitted in the second control bus. The invention also relates to a system and a device in which the method is implemented.

Inventors:
VIITALA JANNE (FI)
HERRALA JUHA (FI)
HAVERINEN EEMELI (FI)
RANTANEN ARTTU (FI)
Application Number:
PCT/FI2011/050875
Publication Date:
April 18, 2013
Filing Date:
October 11, 2011
Export Citation:
Click for automatic bibliography generation   Help
Assignee:
SANDVIK MINING & CONSTR OY (FI)
VIITALA JANNE (FI)
HERRALA JUHA (FI)
HAVERINEN EEMELI (FI)
RANTANEN ARTTU (FI)
International Classes:
G07C7/00; G05B23/02; G08B21/18; H04L12/40; H04L67/12; E21F17/18
Foreign References:
US20030074118A12003-04-17
US20050004735A12005-01-06
US20050254518A12005-11-17
US20020110146A12002-08-15
KR20070082299A2007-08-21
US20040249526A12004-12-09
CN101799686A2010-08-11
US20120166040A12012-06-28
Other References:
DUAN, J. ET AL.: "Framework of CANopen Protocol for a Hybrid Electric Vehicle", PROCEEDINGS OF THE 2007 IEEE INTELLIGENT VEHICLES SYMPOSIUM, 13 June 2007 (2007-06-13), ISTANBUL, TURKEY, pages 906 - 911, XP031127062
Attorney, Agent or Firm:
TAMPEREEN PATENTTITOIMISTO OY (Tampere, FI)
Download PDF:
Claims:
Claims:

1 . A method for controlling a work machine (2) comprising at least a first control bus and a second control bus, wherein in the method operation of at least one element of the work machine is examined to detect if there is a fault in the at least one element, wherein if a fault has been detected, an alarm indication is set on, the alarm indication comprising an alarm code, characterized in that the alarm code is transformed to another code, when the alarm indication is transmitted in the second control bus.

2. The method according to claim 1 , characterized in that in the first control bus a first format is used in transmission of the alarm code, and in the second control bus a second format is used in transmission of the alarm code.

3. The method according to claim 2, characterized in that the alarm code is transformed from a code of a J1939 protocol to a code in the first format.

4. The method according to claim 1 , 2 or 3, characterized in that the transformed alarm code is transmitted to a supervisor node (3).

5. The method according to claim 4, characterized in that the supervisor node (3) stores the transformed alarm code into at least one of the following: an alarm log or an alarm history.

6. The method according to any of the claims 1 to 5, characterized in that a machine control node (8) examines the operation of the at least one element of the work machine, wherein the machine control node (8) stores the transformed alarm code into an alarm log of the machine control node (8).

7. A system for controlling a work machine (2), the work machine (2) comprising at least a first control bus and a second control bus, and at least one element, wherein the system comprises an examining element to detect if there is a fault in the at least one element, wherein if a fault has been detected, the examining element is adapted to set an alarm indication on, the alarm indication comprising an alarm code, characterized in that the system comprises a transforming element adapted to transform the alarm code to another code when the alarm indication is transmitted in the second control bus.

8. The system according to claim 7, characterized in that a first format is adapted to be used in transmission of the alarm code in the first control bus, and a second format is adapted to be used in transmission of the alarm code in the second control bus.

9. The system according to claim 8, characterized in that the alarm code in the second control bus is a code of a J1939 protocol and the alarm code in the first control bus is a code the first format.

10. The system according to claim 7, 8 or 9, characterized in that the system comprises a gateway (23) comprising the transforming element.

1 1 . The system according to claim 10, characterized in that the gateway (23) is adapted to provide the transformed alarm code to a supervisor node (3) of the system. 12. The system according to claim 1 1 , characterized in that the gateway (23) is implemented in the supervisor node (3).

13. The system according to claim 1 1 or 12, characterized in that the supervisor node (3) is adapted to store the transformed alarm code into at least one of the following: an alarm log or an alarm history.

14. The system according to claim 10, characterized in that the supervisor node (3) is connected to the first control bus (5), wherein the gateway (23) is adapted to transmit the transformed alarm code to the first control bus (5).

15. The system according to any of the claims 7 to 14, characterized in that a machine control node (8) of the work machine is adapted to examine the operation of the at least one element of the work machine, wherein the machine control node (8) is further adapted to store the transformed alarm code into an alarm log of the machine control node (8).

16. A work machine comprising a system according to any of the claims 7 to 15.

17. The work machine according to claim 16, characterized in that the work machine is a drill rig, a loader, a dumper, a crushing and screening apparatus, a conveyor, a road header, or a continuous miner.

18. An apparatus for controlling a work machine (2) comprising at least a first control bus and a second control bus, the apparatus comprising at least one processor and at least one memory, the memory embodying computer program instructions when executed by the at least one processor cause the apparatus to:

- detect if there is a fault in at least one element of the work machine;

- set an alarm indication on if a fault has been detected; and

- including an alarm code into the alarm indication

characterized in that the memory further embodying computer program instructions when executed by the at least one processor cause the apparatus to transform the alarm code to another code, when the alarm indication is transmitted in the second control bus.

19. A computer program product embodying computer program instructions when executed by a processor cause an apparatus to:

- detect if there is a fault in at least one element of the work machine;

- set an alarm indication on if a fault has been detected; and

- include an alarm code into the alarm indication

characterized in that the computer program product further embodying computer program instructions when executed by the processor causes the apparatus to transform the alarm code to another code, when the alarm indication is transmitted in the second control bus.

Description:
A METHOD, SYSTEM AND A DEVICE FOR CONTROLLING A WORK MACHINE

Technical Field

The present invention relates to a method for controlling a work machine in which a status of at least one element of the work machine is examined to detect an abnormal state of the at least one element. The invention also relates to a system for controlling a work machine, the work machine comprising at least one element, wherein the system comprises a status indicator to detect an abnormal state of the at least one element. There is further provided a device for a work machine, the work machine comprising at least one element, wherein the device comprises a status indicator to detect an abnormal state of the at least one element.

Background Information

Work machines such as mining apparatuses comprise different elements to enable mining operations such as rock excavation. For example, a mining apparatus may comprise a rock drill or another tool which is controlled by a control system. Some mining apparatuses may comprise a crusher for crushing substances such as stones, for example. The tool may be mounted in a carrier of the mining apparatus. Mining apparatuses may further comprise an engine to generate power for moving the mining apparatus, for running a generator to generate electricity for the mining apparatus, and for operating e.g. one or more hydraulic pumps, which may be used to generate pressure for a hydraulic system of the mining apparatus. The hydraulic system may include valves, pipes, hydraulic cylinders etc. The hydraulic cylinders may be used e.g. to move different parts of the mining apparatus such as a drill boom. The rock drill may also use the hydraulic system for drilling. The control system of the mining apparatus may comprise elements for controlling the operation of the hydraulic cylinders and other actuators which may be present in the mining apparatus. In some mining apparatuses electric actuators such as electric motors and/or solenoids may be used instead of or in addition to hydraulic actuators. A user may control the operation of the mining apparatus e.g. by a control panel which may comprise a wheel, a joystick, switches and/or some other means for moving the mining apparatus, for positioning the tool, for switching the tool on and off, etc.

Mining machines may have actuators for performing different tasks, sensors to detect states of actuators and/or to measure conditions of different parts of the mining apparatus and possibly to take measurements about the environment, etc. The actuators and sensors may be under the control of a control system, which may comprise a supervisor element providing visual and/or audible information to the user by e.g. a graphical user interface (GUI), to control the operation of the actuators, to analyze sensor signals, parameters etc. possibly needed in determining the status of the mining apparatus. The user interface provides information to the user and receive user's commands. The control panel may be part of the user interface and controlled by the supervisor element.

To enable good efficiency the mining apparatuses should be able to be operated without failures as long as possible and with minimum service breaks. However, being complicated machines the mining apparatuses may not always function properly but different kinds of faults or malfunctioning may occur. Mining apparatuses usually have some sort of diagnostic system or other means to detect faults and/or situations which may be indicative of a forthcoming fault. The diagnostic system may generate a warning of a situation which may lead to a more sever situation, and they may also generate an alarm when a fault or a malfunctioning has been detected. These warnings and alarms may be indicated to the user of the mining apparatus so that the user may perform appropriate tasks to prevent the fault occurring or to repair the detected fault. In some situations the control system may automatically stop the mining apparatus or parts of it when a fault has been detected, especially when the fault may cause human and/or material damages.

Signals between different parts of the control system may be transferred by a communication network, such as a fieldbus or a CAN bus (Controller Area Network). This kind of communication network is also called as a control bus in this application. The communication network may use a higher level protocol such as CANopen or J1939 when exchanging information between nodes of the communication network. Actuators, sensors and other elements may be connected to the communication network as nodes of the network, or they may be connected with a communication device which is connected to the network to operate as a node. Hence, the communication device can communicate with other parts of the network to receive from the network e.g. commands to be delivered to the actuators and/or to send to the network information obtained, for example, from the sensors. Certain functionality in the device acting as a node is required so that it can attach to the network, send messages to the network and receive messages from the network.

It may happen that if the node which is intended to monitor an operational status of an element of the mining apparatus detects a fault or malfunctioning and, therefore, generates an alarm and communicates it to the network. Some systems may comprise two or more different kinds of sub-networks in which information protocols may differ from each other. Therefore, also alarm indications from one sub-system may not be useable as such in the other sub-system(s) or in a supervisor node of the system. Summary

The present invention provides solutions to improve error handling in a work machine. According to some example embodiments of the present invention there is provided a method to transform alarm indications from a control bus to another format. The method may use a mapping operation or another operation in the transforming. There may also be provided an indication of the originating component i.e. the actual source for the fault. Therefore, the real reason for the alarms may be easier to figure out compared to the situation that only a node-id were informed with the alarm.

According to a first aspect of the present invention there is provided a method for controlling a work machine comprising at least a first control bus and a second control bus, wherein in the method operation of at least one element of the work machine is examined to detect if there is a fault in the at least one element, wherein if a fault has been detected, an alarm indication is set on, the alarm indication comprising an alarm code. The method is characterized in that the alarm code is transformed to another code, when the alarm indication is transmitted in the second control bus.

According to a second aspect of the present invention there is provided a system for controlling a work machine, the work machine comprising at least a first control bus and a second control bus, and at least one element, wherein the system comprises an examining element to detect if there is a fault in the at least one element, wherein if a fault has been detected, the examining element is adapted to set an alarm indication on, the alarm indication comprising an alarm code. The system is characterized in that the system comprises a transforming element adapted to transform the alarm code to another code when the alarm indication is transmitted in the second control bus.

According to a third aspect of the present invention there is provided an apparatus for controlling a work machine comprising at least a first control bus and a second control bus, the apparatus comprising at least one processor and at least one memory, the memory embodying computer program instructions when executed by the at least one processor cause the apparatus to:

- detect if there is a fault in at least one element of the work machine;

- set an alarm indication on if a fault has been detected, and

- including an alarm code into the alarm indication.

The apparatus is characterized in that the memory further embodying computer program instructions when executed by the at least one processor cause the apparatus to transform the alarm code to another code, when the alarm indication is transmitted in the second control bus.

According to a fourth aspect there is provided a computer program product embodying computer program instructions when executed by a processor cause an apparatus to:

- detect if there is a fault in at least one element of the work machine;

- set an alarm indication on if a fault has been detected, and

- include an alarm code into the alarm indication.

The computer program product further embodies computer program instructions when executed by the processor causes the apparatus to transform the alarm code to another code, when the alarm indication is transmitted in the second control bus.

Description of the Drawings

In the following the present invention will be described in more detail with reference to the appended drawings, in which

Figs. 1 a— 1 c depict simplified example layouts of control systems for mining apparatuses;

Fig. 1 d depicts a simplified example of control systems of a mining apparatus; Fig. 2 depicts an example of a control system for a mining apparatus utilizing a can bus;

Fig. 3a depicts an example of some operational elements of a node of a control system for a mining apparatus;

Fig. 3b depicts another example of some operational elements of a node of a control system for a mining apparatus;

Fig. 3c depicts yet another example of some operational elements of a node of a control system for a mining apparatus;

Fig. 4 illustrates an example of an alarm state machine according to an example embodiment of the present invention; Fig. 5 illustrates an example of storing alarm information to alarm log and to alarm history;

Fig. 6 depicts an example of an apparatus according to the present invention;

Fig. 7 depicts as a flow diagram an example of a method according to the present invention; and Figs. 8a— 8c depict examples of work machines. Detailed Description of some Example Embodiments

The presently disclosed embodiments are applicable, in particular, to control systems relating to work machines such as mobile mining apparatuses required in mining industry, such as various mobile rock drilling, loading and transport machines. In the following, work machines of this kind are referred to as mining vehicles. The application of the present features is not limited to the control systems of a mining vehicle illustrated below, but features of the invention may also be applied to control systems of mining vehicles of other types. It should also be noted that, in general, a mining vehicle may also refer to various machines used for rock excavation in a surface or underground operating area.

Some non-limiting examples of work machines 2 are depicted in Figures 8a— 8c. Figure 8a depicts an example of a drilling rig, figure 8b depicts an example of a loader, and figure 8c depicts an example of a crushing apparatus.

Figure 1 a depicts a simplified example layout of a control system 1 for a mining vehicle 2. The control system includes a supervisor device 3 (SUP- PC#1 ), such as a computer, which is in a communication connection 4 with a control bus 5. The supervisor device 3 forms a kind of a supervisor level 6 of the control system 1 . The supervisor device 3 is also called as a supervisor node 3 in this application. The control system 1 also comprises a machine control level 7 in which elements connected with different kinds of actuators, sensors etc. are located. The machine control level 7 may comprise one or more devices 8 for different purposes in communication connection with the control bus 5. The devices operating as nodes on the machine control level are also called as machine control nodes 8 in this application. The node 8 may include a programmable logic controller (PLC) having inputs and outputs for connections to and from the actuators, sensors and other elements of the hardware of the mining vehicle. Figure 1 b depicts a simplified example layout of another control system 1 , which is intended for a boom control system 21 of the mining vehicle 2. In this example embodiment the machine control level 7 comprises a pointing device 9 such as a joystick, which is connected to the PLC#1 . The machine control level 7 also comprises two valves 10a, 10b for the hydraulic cylinders of the boom (not shown in Figure 1 b).

Figure 1 c depicts a simplified example layout of yet another control system 1 for the mining vehicle 2. In this example embodiment the supervisor level 6 comprises a first supervisor device SUP-PC#1 and a second supervisor device SUP-PC#2. The machine control level 7 comprises among other things a machine control computer MC-PC, several PLC devices PLC#1 , PLC#2, some I/O devices etc. There is also a second control bus 1 1 to which the first PLC device PLC#1 is connected. The control bus 1 1 is intended to enable communication between I/O devices connected to the second control bus 1 1 and the first PLC. Hence, the first PLC has access to the I/O devices and acts as a gateway between the first control bus 5 and the second control bus 1 1 . The first control bus 5 and the second control bus 1 1 may utilize the same protocol or different protocols. For example, both first control bus 5 and the second control bus 1 1 may utilize CANopen protocol, or the first control bus 5 may utilize CANopen protocol and the second control bus 1 1 may utilize J1939 protocol. In the latter case the gateway 23 may need to perform protocol conversions between messages of the first control bus 5 and the second control bus 1 1 as will be described later in this application.

It should be noted here that the example systems presented in Figures 1 a— 1 c are only simplified examples and in practical implementations systems may comprise much more devices acting as nodes in the control bus, and there may also be a large number of I/O devices, actuators, sensors and other elements to enable the operation of the mining vehicle. Furthermore, one mining vehicle may comprise several different systems which may or may not communicate with each other. For example, there may be one system for controlling the operation of the engine, transmission, brakes and lights of the mining vehicle and another system for controlling the operation of the tools, boom(s) etc. of the mining vehicle. There may be a gateway 23 between the first system and the second system as is illustrated in Figure 1 d. In the following the operation of the control system according to an example embodiment regarding possible fault situations shall be illustrated in more detail. A simplified example of the control system for a mining vehicle 2 utilizing a can bus 5 and depicted in Figure 2 comprises the supervisor device 3 which is in communication connection with the can bus 5. Thus, the supervisor device 3 acts as a node in the can bus 5.

In Figure 3a an example of some operational elements of a node of a control system for a mining apparatus are depicted. This example comprises both machine control node and supervisor node operations. The supervisor device 3 is implemented with a communication interface 12 to communicate with the can bus 5, a process image 13 which contains information of signals of the mining vehicle 2, and applications 14 for different tasks. There may be a machine control application 15 which has access to the process image so that the machine control application 15 can read values of the signals stored in the process image and may also be able to write values to one or more of the signals in the process image. There may be an alarm processing application 18. There is also a graphical user interface (GUI) application 16 which may communicate with the machine control application 15 and/or may have direct access with the process image 13. The GUI application 16 may present information of values of different signals, alarms, events etc. The GUI application 16 may receive input from the user of the mining vehicle 2 such as new values to parameters, instructions to change the views which are shown on a display 17 etc. The applications may also include inter alia the user interface application 16, an alarm processing application 18, a diagnostics application 20, etc.

Fig. 3b depicts another example of some operational elements of a node of a control system for a mining apparatus; This example device is applicable to be used as the machine control node 8 and is implemented with a communication interface 12 to communicate with the can bus 5, a process image 13 which contains information of signals of the node of the mining vehicle 2, and applications 14 for different tasks. There may be a machine control application 15 which has access to the process image so that the machine control application 15 can read values of the signals stored in the process image and may also be able to write values to one or more of the signals in the process image. Fig. 3c depicts yet another example of some operational elements of a node of a control system for a mining apparatus; This example device is applicable to be used as the supervisor node 3 and is implemented with a communication interface 12 to communicate with the first control bus 5 or with the second control bus 1 1 , a process image 13 which contains information of signals of nodes of the mining vehicle 2, and applications 14 for different tasks. There may be a graphical user interface (GUI) application 16 which may communicate with the machine control application 15 and/or may have direct access with the process image 13. The GUI application 16 may present information of values of different signals, alarms, events etc. The GUI application 16 may receive input from the user of the mining vehicle 2 such as new values to parameters, instructions to change the views which are shown on a display 17 etc. The applications may also include inter alia the user interface application 16, the alarm processing application 18, the diagnostics application 20, etc.

At the machine control level the I/O devices may receive actual values from different kinds of sensors, switches etc. For example, there may be one or more temperature sensors which measure the temperature of the engine oil, the temperature of the hydraulic fluid, the pressure in the hydraulic system etc. There may be switches which indicate if a brake is on or off, if a cabin door is open or closed, if a boom is in an extreme position, etc. The I/O devices may also provide signals to actuators. For example, the revolution of the engine may be adjusted as well as the position of the boom, or a tool of the mining vehicle may be switched on or off, etc.

The above mentioned examples are non-limiting examples of the purpose of the I/O devices and other parts of the control system. A skilled person is aware that the mining vehicle 2 may further comprise other kinds of operations, tools, actuators, sensors, I/O devices etc. but it is not necessary to give more details on them in this context. When operating the mining vehicle the I/O devices read signals from the sensors and send information of the values of the signals either directly to the can bus 5, if the I/O device is designed to operate as a node, or to the PLC device with which the I/O device is connected. The PLC device then sends the information of the values of the signals to the can bus. The transmission of the information to the can bus may be performed by using a protocol such as CANopen. In such a case the information is packetized according to the CANopen definitions so that the receiving node is able to retrieve the information from the packet(s).

The use of CAN bus allows that a new device may be added to the bus on the fly i.e. without switching off the control bus. When a device is connected to the CAN bus and/or switched on it may perform a handshake operation with another device(s) or with a master device of the CAN bus to obtain a device address, if necessary. On the other hand, the device address may have been set by a configurator of the control system wherein the handshake operation may not be needed. When the device has been initialized it may enter a preoperational state and send a boot-up message to the master device wherein the master device is aware of the existence of the device and that it is in the preoperational state. The device may then be commanded e.g. by the master device that it should enter the operational state. The master device may be, for example, the supervisor device 3 wherein the supervisor device 3 is aware of the active nodes in the can bus 5.

Each device connected to the control bus 5 as a node 8 may have a process image 13. The process image contains information of the signals that exist in the device. For example, when the device is controlling an actuator, signals of the device may include a setting value for the actuator and the actual state of the actuator measured or otherwise determined e.g. by a sensor. For a device controlling the operation of the engine of the mining vehicle, the process image may contain signals relating to temperatures at different parts of the engine, for example, coolant temperature, oil temperature, fuel temperature etc. These temperatures may have been measured e.g. by temperature sensors connected to the device.

At the supervisor level the supervisor device 3 also contains a process image 19 which may contain information corresponding with process images from all nodes which are under the control of the supervisor device 3. To keep process images up to date, the supervisor device 3 may poll the nodes e.g. by sending a request message to the node(s). The nodes 8 may response to the request by sending one or more reply messages in which the information contained in the process image of the node 8 is included. Instead or in addition, the nodes 8 may send their process image or a part of their process image to the supervisor device 3 without requesting e.g. by intervals or when one or more values of signals of the process image has been changed. Also when a fault has been detected by a node 8 the node 8 may push an alarm message to the control bus 5 without the supervisor node 3 requesting it.

The process image of the supervisor device 3 is accessible to one or more applications running in the supervisor device 3 e.g. via an application programming interface of the process image.

Devices on the machine control level may also have the ability to run applications or they may have programmable logics for providing logical circuitry to perform certain tasks. These tasks may include detecting possible faults or malfunctioning in the operation of the mining vehicle. For example, a PLC device may be programmed to measure the oil temperature of the engine and compare it to a reference value. On the basis of the comparison a flag or other indication may be set or reset depending on whether the oil temperature exceeds the reference value or not. This flag may be provided in the process image of the machine control node 8 so that it is accessible by e.g. the alarm application running in the supervisor device 3.

In addition to the fault detection and indication, the device may also be programmed to initiate some protective actions and/or prevent some actions to be performed when a fault has been detected. For example, the device may stop a hydraulic pump if a severe failure in the hydraulic system has been detected. As another example, the device may prevent starting the tool if a fault has been detected in the control system of the tool.

Generally, when a fault or malfunction may cause human or material damages, the fault detection logic has a control system which may be used to try to prevent the damages. If it is not probable that the fault or malfunction could cause human or material damages, it may be sufficient to generate an alarm but not to lock any other operations. The machine control application of the device may monitor all relevant fault sources which may occur and which has been configured for monitoring in the subsystem the device is connected to. For example, an I/O pin short circuit in digital output, a cable cut in current input, a CANopen receive message timeout, incorrect CANopen module types or software versions may be monitored.

An alarm may have two states: alarm off and alarm on. The alarm off state indicates that the fault that causes this alarm is not on. The alarm off state may also be activated when the fault has previously been active (on) but it has been reset. The alarm on state indicates that the fault is active or that the alarm has not been reset after the fault has disappeared (or repaired).

In some embodiments the alarm on state of the alarm is further divided to two sub-states, which are active and passive. When the fault has been detected and the alarm is set to on, the alarm is set to the active state. Therefore, the active state indicates that the fault that caused the alarm is still on. When the fault that caused the alarm is not on any more, i.e. the fault has disappeared, but the alarm has not been reset yet, the state of the alarm is changed to passive. Figure 4 illustrates an example of an alarm state machine of this kind.

There can be many cases when a "fault off" event can not be distinguished. For example, it may occur that for some reason the alarm object is not updated at all. Therefore, the fault may still be on, or it may be off. In such cases the status of the alarm may be switched from active to passive after a timeout period has elapsed from the latest update or when the alarm has been set to the active state. The timeout period may be several hundreds of milliseconds or even several seconds in some embodiments.

In the following, an example of the alarm recognition and indication process and the alarm state machine according to an example embodiment in the example configuration of the mining vehicle 2 is explained in further detail. It is assumed that a boom control device 21 detects a fault in the operation of the boom 22. The boom control device 21 may, for example, have an input which monitors the operation of the valves 10a, 10b. The input may indicate what is the opening level of the valve. The boom control device 21 has a parameter which is indicative of the setting value for the valve. Therefore, the boom control device 21 can compare the input value and the parameter value to determine whether they correspond with each other closely enough. If not, the boom control device 21 set an alarm indication to indicate that the valve is not close enough to the setting value. The alarm indication is stored in the alarm log of the boom control device 21 . The alarm indication includes a state flag which is now set to on and an identification information of the faulty valve, e.g. a device id of the valve. The alarm indication may further include a time stamp of the moment when the fault was detected.

In some embodiments there is also provided an alarm counter which is set to a first value, e.g. to 1 when the fault has been detected the first time. The value of the alarm counter is incremented each time the fault reappears irrespective of whether the status of the alarm has been reset or not. Hence, the value of the alarm counter may be used as an indication of the number of occurrences of the alarm. However, the absolute value of the alarm counter may not directly correspond with the number of the fault has occurred because the memory location where the value of the alarm counter is stored has a limited length. Therefore, the alarm counter value may reach the maximum value, but the alarm counter value may then not change afterwards, before the system is reset or the alarm counters are reset. This may happen, for example, when the machine control node 8 is switched off for a while. In some embodiments the machine control nodes 8 may further comprise a state change counter intended to be used for counting changes in the alarm log. These changes may comprise an activation of an alarm, a change in the state of the alarm, or a reset of an alarm. The state change counter may be increased when such a state appears in a state of any alarm in the alarm log or when a particular type of change in the state of the alarm appears. Also the state change counter has a fixed length and it may wrap around to zero (or to another start value) after the value of the state change counter has reached the maximum value that fits into the memory location reserved for the state change counter.

One purpose of the state change counter is to enable detection of faults which may possibly have been occurred when the supervisor node 3 was initializing and was not yet able to receive messages from machine control nodes 8 of the control bus 5.

The value of the state change counter may be periodically transmitted from the machine control node 8 to the control bus 5. Hence, the supervisor node 3 may examine the value of the state change counter and when it detects a change in the value, the supervisor node 3 may request the machine control node 8 to send the alarm log or parts of it to the supervisor nod 3. The request may be implemented as a request message transmitted by the supervisor node 3 via the control bus 5 or by using another appropriate method. The machine control node 8 may send the alarm log by sending one or more messages to the supervisor node 3 via the control bus 5.

The supervisor node 3 can also read the value of the state change counter and compare it with a previous value which may have been stored into the process image 19 of the supervisor node 3. If the values match, it is probable that no faults have occurred which the supervisor node 3 is not aware of. On the other hand, if the values don't match, it is probable that the supervisor node 3 has missed an alarm for some reason. Hence, the supervisor node 3 can form a request message and send it to the machine control node 8 in question and request an update of the data of the machine control node 8. The updated data values can be stored to the process image and if some other actions are needed, e.g. to indicate the alarm to the user, the supervisor node 3 can initiate such tasks.

The boom control device 21 forms a message e.g. according to the CANopen protocol. The boom control device 21 includes in the message a fault id, a type of the alarm, a source (originating component) of the alarm, and possibly a time stamp. The message may also be included with the value of the alarm counter. The source of the alarm may be the device id possibly added with further information if the same mining vehicle may contain more than one device with the same device id. In such cases it may be necessary to complete the source information with information of the subsystem the device belongs to. Because the message length of the CANopen protocol is quite limited, it may not be sufficient to send all the alarm information in one message. In such situations the boom control device 21 may form and send a multiple of messages according to the CANopen protocol. The supervisor node 3 receives the message and processes it in the internal communication stack of the supervisor node 3. The message is interpreted by a communication component. A communication interface component determines that the message in question relates to alarms. Hence, the communication interface component provides the message to the alarm component for processing. The alarm component examines the message to find inter alia out the source of the fault and the status of the fault. The alarm component stores the alarm information into the alarm log of the supervisor node 3. The alarm information may also be stored to the alarm history of the supervisor node 3. The alarm information which is stored into the alarm log and to the alarm history include the time stamp and the source of the alarm.

The supervisor node 3 may also receive alarm messages from the second control bus 1 1 via the gateway 23. The gateway 23 may transform at least part of the alarm message into another form which corresponds with the form used in the first control bus 5. For example, the engine control unit 24 detects a fault in the engine and forms a message e.g. according to the J1939 protocol. The engine control unit 24 includes in the message e.g. a diagnostics trouble code and a fault mode indicator. This information or parts of it may also be regarded as an alarm code. The engine control unit 24 may possibly include a time stamp in the message. The message may also be included with the value of the alarm counter. The source of the alarm may be the device id possibly added with further information if the same mining vehicle may contain more than one device with the same device id. In such cases it may be necessary to complete the source information with information of the subsystem the device belongs to. Because the message length of the J1939 protocol is quite limited, it may not be sufficient to send all the alarm information in one message. In such situations the engine control unit 24 may form and send a multiple of messages according to the J1939 protocol.

The gateway 23, which may comprise an alarm gateway 51 illustrated in Figure 5, receives 70 the message and processes 72, 74 it in the internal communication stack of the gateway 23. This is illustrated as a flow diagram of Figure 7. The processing may include mapping the alarm code and possible some other parts of the alarm message received from the second control bus 1 1 to another form. In some example embodiments the processing includes removing a part of the alarm code so that it corresponds with alarm codes of the protocol of the first control bus 5. The transformed alarm message is transmitted 76 to the supervisor node 3 via the first control bus 5.

The supervisor node 3 receives the message and processes it in the internal communication stack of the supervisor node 3. The message is interpreted by a communication component. A communication interface component determines that the message in question relates to alarms. Hence, the communication interface component provides the message to the alarm component for processing. The alarm component examines the message to find inter alia out the source of the fault and the status of the fault. The alarm component stores 78 the alarm information into the alarm log of the supervisor node 3. The alarm information may also be stored to the alarm history of the supervisor node 3. The alarm information which is stored into the alarm log and to the alarm history include the time stamp and the source of the alarm. In some embodiments the alarm gateway 51 and possibly the gateway 23 are implemented in the supervisor node 3. Hence, it may not be necessary to transmit the transformed alarm message to the first control bus 5.

The alarm log of the supervisor node 3 is a collection of information in the alarm logs of the nodes of the system i.e. a union of alarm logs of the nodes. Also the process image of the supervisor node is a union of process images of the machine control nodes 8 or parts of them.

Figure 5 illustrates an example of storing alarm information to the alarm log and to the alarm history. The arrows indicate the logical paths which may be used when an alarm is stored and which elements may participate the processing of the alarm information. The sub-system 50 comprises the machine control level 6 and the control bus 5. An alarm message may be received by the alarm gateway 51 , which may comprise an alarm mapping table 52 so that the alarm gateway may map an alarm code to another value, if necessary, or another appropriate transform may be performed. For example, a part of the alarm code received from the subsystem can be excluded from the alarm code as mentioned above. The alarm indication is forwarded to the alarm service 53 which takes care of storing the alarm to the alarm log 54 and to the alarm history 55 in the supervisor node 3. There may also be an event log 56 which the alarm service may use to store information of detected events, which are not alarms.

In some embodiments the original alarm code of the second control bus 1 1 may be included as a part of the alarm code corresponding to alarm codes in use in the first control bus 5.

In some embodiments the alarm code length in the first control bus 1 1 is 32 bits and the alarm code length in the second control bus is 24 bits, but it is obvious that these are only non-limiting examples of alarm code lengths. In some embodiments the machine control node 8 does not include the time stamp with the alarm information. Hence, the alarm component of the supervisor node 3 may insert the time of the alarm into the alarm information.

In some example embodiments the message which can be used to send alarm information to the control bus has the following structure:

- a header; and

- one or more alarm objects.

The header may be e.g. 6 bytes long which includes information of the number of alarm objects in the message. The length of each alarm object may be, for example, ten bytes in which the alarm code, time stamp, and the counter value of the alarm may be included. It should be noted here that the above example of the message structure is only provided to illustrate the invention not to limit the invention to such message structures only.

Each time the state of the fault changes the machine control node 8 may generate and send a new message including information on the changed state. The alarm log may be updated so that when the fault disappears i.e. the alarm changes to the passive or in some situations to the off state, the alarm may be removed from the alarm log when it is set to the off state. However, the alarm may remain in the alarm history. In other words, one alarm can exist once in the alarm log but several times in the alarm history. Information of the alarms is also provided 80, 82 to the user interface so that the user can be presented inter alia the reason of the alarm, the status of the alarm and the time stamp. It is also possible to show the original alarm code or parts of it i.e. the untransformed alarm code. For example, there may be provided a window on the display which includes information of all alarms which are either active or passive. To better distinguish which alarms are active and which are passive active and passive alarms may be indicated with different colours, with different fonts, and/or by other appropriate means.

In embodiments where the alarm may be active or passive, the status of the alarm in the alarm log may be switched between these two stages when the corresponding fault disappears or reappears. When a fault has disappeared the status of the alarm is set to passive, if supported by the application, or to the off state, if the passive state is not used for the alarms. The status of the alarm can be changed from the passive state to the off state when the alarm has been reset. For example, an application may reset the alarm when the fault has disappeared. This kind of action may be applicable e.g. when the alarm relates to the temperature of oil of a lubrication system of the engine of the mining apparatus. The resetting may not or must not always be performed automatically but it may require some user action or a predetermined condition to occur. For example, when a fault has been detected and an alarm message has been delivered to the supervisor node 3, the user interface component of the supervisor node 3 indicates the alarm to the user e.g. by forming visual indication on the display and/or by forming an audible voice to the loudspeaker of the supervisor node 3. The user can then react to the alarm and reset the alarm, when the fault has disappeared. In some embodiments the user acknowledges the alarm which is informed to the application and the application performs the resetting of the alarm, if the fault has disappeared.

In some embodiments, when an application resets an alarm, the same alarm code may be used in the resetting than was used when the alarm was set on.

It may be required that the indication is maintained on the display until the user has reacted to it (e.g. acknowledged the alarm indication), or the indication may be removed after a certain time has lapsed from the initiation of the indication. In some embodiments the indication of the alarm may be two-phase: first a larger indication is provided, and then the indication is changed to smaller, e.g. to a text line on the display. The user interface may also include a lamp or lamps which may be switched on or off when a certain fault has been detected.

In some embodiments the displayed alarm information includes not only the alarm data but also a limit value relating to the alarm. For example, if the system has detected that the oil temperature is too high i.e. over a certain limit, the actual temperature value and the limit value may be shown with explanatory text such as "Oil temperature too high: currently 72 °C, maximum is 70 '. The alarm log and/or the alarm history may also be provided with the limit value together with other alarm information. The alarm configuration of the mining vehicle contains information whether the limit is minimum or maximum limit. Hence, the alarm message need not include this information.

The alarm message contains the code of the alarm which may not be informative as such. Hence, the user interface component or the alarm component may include a mapping table or some other appropriate means in which a correspondence between an alarm code and an explanatory text may be provided. For example:

<alarm code="abcd1234">

<signal name="OilTemperature7>

<ref name=" OilTemperatureMaxLimit" unit="°C" type="max"/>

</alarm>

This code reveals that when the alarm code is abcd1234, the user interface would know that it relates to oil temperature and that the limit value is the maximum value.

When the user has noticed the alarm, s/he may then provide some input by the keyboard, touch panel or other input means to inform that s/he has detected the alarm and, possibly, to initiate actions to repair the fault and/or to set the mining vehicle in a safe operation mode. There are also other options to uniquely identify the signal than the signal name. For example, the identifier may contain an index, which may be numerical or alphanumerical, an index - subindex pair, etc. The index or the index - subindex pair may be an address of the node or it may include the address of the node. In some embodiments the index is a 16 bit number and the subindex is an 8 bit number.

It should be noted here that in the embodiments utilizing the counter, the counter is usually incremented only when a fault appears. Thus, the counter value remains the same when the fault disappears or the alarm has been reset. However, it may also be possible to implement the counter in such a way that it is incremented each time the state of the alarm changes. In some embodiments the counter value is not incremented but decremented when a fault is detected.

In some embodiments the alarm message may be formed and transmitted repeatedly when the fault is on. The alarm message may then be included with the actual measurement value of the faulty device or component. For example, if the alarm relates to a temperature value, the alarm message may include the measured temperature value. In some other embodiments only one message or a set of messages is formed when the fault is detected and another message is formed when the fault has disappeared. Then, the latter message may contain a maximum or a minimum measurement value relating to the faulty device or component, e.g. the maximum or the minimum temperature, the maximum or the minimum pressure etc.

The alarm log may be stored in a volatile memory of the machine control node 8 or in a non-volatile memory. If the alarm log is only stored in volatile memory the alarm log may disappear when the machine control node 8 is switched off. The alarm history can be stored e.g. as a file to the non-volatile memory or in another appropriate form so that the alarm history can be updated and viewed by appropriate applications.

In the supervisor node 3 the alarm log may also be stored into a volatile memory of the supervisor node 3 or it may be stored into a non-volatile memory of the supervisor node 3. The alarm history is preferably stored into a non-volatile memory of the supervisor node 3 or into a non-volatile memory of another device. For example, the mining vehicle 2 may contain a multiple of computers operating as supervisor nodes 3 and which are able to communicate with each other. One of the computers operating as supervisor nodes may store the alarm history of each supervisor node into a non-volatile memory while the other supervisor nodes may store the alarm history to a volatile memory or to a non-volatile memory. In a yet another embodiment the mining vehicle 2 may contain a multiple of computers one or more of which operate as supervisor nodes 3 and one of the computers operates as a central computer which is able to communicate with the other computers. The central computer may store the alarm history of each supervisor node into a non-volatile memory.

The supervisor nodes 3 may be included with functions for setting, resetting and checking alarm states. For example, a user of the mining vehicle may inspect the alarm log and the alarm history when desired. The user may also reset alarms from the alarm log and check the state of the alarm(s).

In some embodiments the supervisor node 3 may also comprise an alarm log for storing information on alarms which may occur in the supervisor node 3.

In some embodiments different users may have different access rights to the system, wherein users having lower access rights may not be able to perform all operations which users having higher access rights are allowed to use. For example, certain users may reset alarms but some other users may not be able to reset alarms but only to view alarms and alarm history.

In some embodiments the alarm log and alarm history may be used to provide the user different kinds of statistical information of the alarms. For example, the alarm component may provide the user interface to be displayed to the user all alarms, only alarms which has occurred since the latest service of the mining apparatus, or only new alarms. To obtain this kinds of listings the alarm component may examine the time stamps of the alarms and information regarding the service of the mining apparatus. The present invention can be implemented in apparatuses comprising at least one or more processors 30 and one or more memory 31 as is depicted in the example of Figure 6. The memory 31 may include volatile memory such as random access memory (RAM) and non-volatile memory such as read only memory (ROM), electrically erasable read only memory (EEPROM) and/or another types of memory. In some example embodiments the memory may also comprise a flash memory or a fixed disk drive. The memory can be provided with software which when executed by the processor cause the apparatus to implement at least some of the machine control level operations, the supervisor level operations and/or communication operations with the control bus. The communication component, the alarm component, the user interface component and other operational elements which are implemented as software may be implemented as several programs, program libraries etc. The machine control level operations and the supervisor level operations may not necessarily be implemented in separate apparatuses but some of the machine control level operations and the supervisor level operations may be implemented in the same apparatus such as in the supervisor node 3. The apparatus may further comprise a bus interface 33 so that the apparatus can be connected to the control bus 5. The bus interface 33 may include a receiver for receiving data from the control bus and a transmitter for sending data to the control bus. The apparatus may also comprise input and/or output connections 34 (I/O interface) for receiving sensor data and/or for sending control signals to actuators, for example. The apparatus which is intended to be used as the supervisor node 3 may not need the I/O interface 34 but it includes the user interface 35. The user interface may contain a display, a keyboard, a pointing device and/or other means for providing data to the user and for inputting user's instructions.

In the following some example embodiments are disclosed. According to a first example embodiment there is provided a method for controlling a work machine comprising at least a first control bus and a second control bus, wherein operation of at least one element of the work machine is examined to detect if there is a fault in the at least one element, wherein if a fault has been detected, an alarm indication is set on, the alarm indication comprising an alarm code. The alarm code is transformed to another code, when the alarm indication is transmitted in the second control bus. According to a second example embodiment there is provided a system for controlling a work machine, the work machine comprising at least a first control bus and a second control bus, and at least one element, wherein the system comprises an examining element to detect if there is a fault in the at least one element, wherein if a fault has been detected, the examining element is adapted to set an alarm indication on, the alarm indication comprising an alarm code. The system comprises a transforming element adapted to transform the alarm code to another code when the alarm indication is transmitted in the second control bus.

In some embodiments the work machine is a drill rig, a loader, a dumper, a crushing and screening apparatus, a conveyor, a road header, or a continuous miner.

According to a third example embodiment there is provided an apparatus controlling a work machine comprising at least a first control bus and a second control bus, and, the apparatus comprising at least one processor and at least one memory, the memory embodying computer program instructions when executed by the at least one processor cause the apparatus to:

- detect if there is a fault in at least one element of the work machine;

- set an alarm indication on if a fault has been detected, and

- including an alarm code into the alarm indication.

The memory further embodies computer program instructions when executed by the at least one processor cause the apparatus to transform the alarm code to another code, when the alarm indication is transmitted in the second control bus.

According to a fourth example embodiment there is provided a computer program product embodying computer program instructions when executed by a processor cause an apparatus to:

- detect if there is a fault in at least one element of a work machine, the work machine comprising at least a first control bus and a second control bus;

- set an alarm indication on if a fault has been detected, and

- including an alarm code into the alarm indication.

The computer program product further embodies computer program instructions when executed by the processor causes the apparatus to transform the alarm code to another code, when the alarm indication is transmitted in the second control bus. The present invention is not solely limited to the above examples but it can be implemented within the scope of the appended claims.