The present description generally relates to the use of equipment in worksite operations. More specifically, the present description relates to controlling and protecting the equipment from self harm.
There is a wide variety of different types of equipment, such as forestry equipment, construction equipment, and agricultural equipment. These types of equipment are often operated by an operator and have sensors that generate information during an operation.
Many types of equipment are modular machines that can be equipped to use a variety of different attachments. For example, excavators and loaders have many options for attachments. Some of these include buckets, grapples, augers, trench diggers, etc.
The discussion above is merely provided for general background information and is not intended to be used as an aid in determining the scope of the claimed subject matter.
A work machine includes a controllable subsystem, the controllable subsystem having an actuator configured to actuate a movable element of the subsystem. The work machine also includes a control system configured to generate and send control signals to the controllable subsystem actuator, wherein the control signals cause an actuation of the actuator. The work machine also includes a self protection system configured to prevent the control system from sending a control signal to the actuator that would cause a collision between the controllable subsystem and a portion of the work machine.
This Summary is provided to introduce a selection of concepts in a simplified form that are further described below in the Detailed Description. This Summary is not intended to identify key features or essential features of the claimed subject matter, nor is it intended to be used as an aid in determining the scope of the claimed subject matter. The claimed subject matter is not limited to implementations that solve any or all disadvantages noted in the background.
Many types of machinery are becoming more modular, meaning that they are able to perform a variety of different functions by replacing a controllable attachment. For example, excavators traditionally have a bucket as an attachment. However, today there are many different kinds of buckets and many different attachments that can replace the bucket, such as a grapple, an auger, a compaction wheel, a backfill blade, a concrete crusher, a slope packer, a trench digger, etc. While this modularity increases the functionality of a work machine, it can provide some challenges when switching between attachments of different sizes. For instance, an excavator may be designed with one bucket in mind, such that any motion of the excavator attachment will not inflict self-harm (e.g., the attachment will not make contact with another part of the excavator and damage it). However, when an attachment of a different size is used on the excavator, movement of the attachment to a certain position can inflict self-harm, (e.g., the attachment can contact and harm, a portion of the excavator that is to be protected from contact). Some excavators can even inflict self-harm with a stock attachment that they were designed to work with. Accordingly, the present description describes a system that utilizes the geometry of a work machine and its attachments and automatically controls the machine to prevent self-harm.
Work machine 102 is operated by an operator located in cab 101. Work machine 102 can include a variety of different controllable subsystems 148 that each comprise a movable element 150 (shown in
In an example operation, an operator in cab 101 can raise boom 106 by rotating boom 106 counter clockwise about axis 116. At the same time, the operator can rotate stick 108 clockwise about axis 118 and attachment 110 clockwise about axis 120. Moving these components in the way described may bring attachment 110 into contact with, and potentially damage, house 104 or tracks 103. A system described in greater detail below can limit movement of the movable elements to inhibit one part of machine 102 from contacting a protected portion of mobile machine 102 (e.g., it inhibits this self harm).
Control system 122 is used to control controllable subsystems 148. Control system 122 includes control signal logic 124, limit logic 126 and it can include other items 128. Control signal logic 124 generates control signals that are sent to actuators 152 of controllable subsystems 148. When actuators 152 receive a control signal they perform a given function, such as to extend, retract, rotate, etc. In some instances, however, limit logic 126 (as will be described in greater detail below) generates a limit signal that inhibits control system 122 from sending a control signal when an actuator 152 is determined to be at risk of actuating a component so that it comes into contact with a portion of machine 102.
The operator can control, and interact with, excavator 102 through user interface mechanisms 146. User interface mechanisms 146 can include a variety of different mechanisms including displays, touch screens, levers, pedals, steering wheel, joysticks, etc. Actuation of user interface mechanisms 146 can activate control signal logic 124 to generate a control signal. For instance, moving a lever or joystick may cause control signal logic 124 to send a control signal to lift boom 106 by actuating a corresponding actuator 152 to move a hydraulic rod in the actuator 152.
Excavator 102 can include a variety of different sensors 132, including linear displacement transducers (LDTs) 134, potentiometers 136, inertial measurement units (IMUs) 138, cameras 140, laser/radar based sensors 142 and can include other sensors as well, as indicated by block 144. LDTs 134 can sense the linear displacement, such as hydraulic rod extension of hydraulic actuators, which are used on machine 102. Some examples of LDTs 134 include magnetostrictive transducers, Hall effect sensors, etc. When a hydraulic actuator is coupled to a moveable element 150, such as bucket 110, boom 106 or stick/arm 108, etc., the position of the moveable element relative to other parts of machine 102 is a function of the extension of the hydraulic rod. So, the sensor output can be used to identify a relative position of the moveable element.
Potentiometers 136 can sense an angle of rotation of moveable element 150 on work machine 102. For example, a potentiometer 136 coupled to a joint or linkage between house 104 and boom 106 can sense what angle boom 106 is at relative to house 104. Using trigonometry on the angle values from the potentiometer in combination with the physical dimensions of the elements, a position of the movable elements relative to other portions of machine 102 can be calculated.
IMU's 138 can sense an angle of rotation and an acceleration or force. For example, an IMU placed on the end of attachment 110 can be used to sense the movement and position of attachment 110. Camera 140 can be used to track or identify the position of various movable elements 150. Laser or radar-based sensors 142 can be used to track or identify the position of various controllable subsystems 148, as well.
It will be noted that, while machine 102 is shown with self protection system 158, self protection system 158 can be located remotely from machine 102 as well. Self protection system 158 illustratively includes calibration logic 160, limit generator logic 170, machine geometry logic 172, datastore interaction logic 174, datastore 176, attachment identifier (ID) logic 178 and can include other items as well, as indicated by block 182. These logic components are described in greater detail below with respect to
Briefly, calibration logic 160 receives or determines physical dimensions/measurements of controllable subsystems 148, for example, attachment 110. Limit generator logic 170 generates soft limits and corresponding limit signals and sends them to limit logic 126. Limit logic 126 implements the limits when control system 122 is controlling controllable subsystems 148. For instance, a limit can be set on an actuator 152 to prevent the corresponding movable element 150 from contacting another portion of machine 102. Machine geometry logic 172 receives sensor signals from sensors 132 and determines the positions of the movable elements 150 that are driven by actuators 152 in controllable subsystems 148. If so, limit generation logic 170 determines where the limit of movement is so as to avoid the collision and generates the limit signal. For example, trigonometry, kinematics, geometry, and one or more sensor signals and component measurements can be used to determine the position of a movable element 150. Collision logic 180 receives positions and movements of moveable elements 150 and determines if a collision hazard between the movable elements 150 and other portions of machine 102 is present. For example, this can be done using computational collision or intersection detection methods (described in more detail below). Datastore interaction logic 174 retrieves and stores information in datastore 176. This information can include component dimensions, ranges of motion, attachment identifiers, etc. Attachment ID logic 178 receives an indication of an attachment ID and uses data store interaction logic 174 to retrieve and load saved attachment dimensions.
Operation 200 proceeds to block 210 where control signal logic 124 generates a control command signal to control an actuator 152 of a controllable subsystem 148 to perform a commanded movement. However, before the signal is sent to actuator 152, self protection system 158 completes a self protection check, an example of which is represented by blocks 212-226.
At block 212, machine position logic 172 determines the positions of controllable subsystems 148. The positions may be sensed with sensors 132, as indicated by block 214. For example, optical sensor 140 can visually detect the positions of movable elements 150. Other sensors can sense the positions of actuators 152. The positions can be calculated using the known machine geometry of each connected subsystem, as indicated by block 216. For example, a position calculated, or sensed, for boom 106 can be used to calculate the position of stick 108 because they have a known geometric relationship relative to one another (e.g., movement of the boom also moves the stick). Further, sensing the position of stick 108 relative to boom 106, and using the known geometry of boom 106 and stick 108, the position of the end of stick 108, that is connected to attachment 110, can also be determined. Then, sensing the position of attachment 110 relative to stick 108, and using the known geometry of attachment 110, the location of the perimeter of attachment 110 relative to other portions of machine 102 can also be identified. The positions may also be determined in other ways as well, as indicated by block 218.
At block 220, once the positions of controllable subsystems 148 are known, collision logic 180 can determine if executing the commanded movement indicated by the command generated in block 202, to move a movable element relative to other components of machine 102, will cause a collision. A collision is indicated by the intersection between perimeters of two components. For instance, if the perimeter of bucket 110 will intersect with the perimeter of boom 106, then this means that bucket 110 will collide with the broom 106. To make this determination, collision logic 180 may determine that the commanded action will cause a movable element 150 to pass a stored limit that was previously identified as a limit generated by limit generator logic 170 to avoid a collision. This is indicated by block 222. For example, where stick 108 and attachment 110 are in a known fixed relationship, a limit may be set to only rotate attachment 110 a certain amount before it will hit stick 108 regardless of the position of stick 108 or any other component. Collision logic 180 can use the machine geometry to identify the perimeter of each of the movable elements 150, and can use the sensor signal to identify location of the perimeters, relative to the perimeter of other portions of machine 102 and determine whether carrying out the commanded movement will result in any intersections between the different parts of machine 102, as indicated by block 224. For example, using the dimensional data from machine geometry, a three-dimensional perimeter of each movable element 150 and other parts of machine 102 are calculated or known. In some cases, the perimeters can be virtually defined by a bounding box drawn around each of the movable elements 150 or by other virtual perimeter objects. Collision logic 180 can simulate the requested movement and then check to determine whether there is an intersection between any of the component perimeters, bounding boxes or other virtual perimeter objects.
It should also be noted that the commanded movement may be continuous. For instance, the operator may be holding a joystick in a position that continuously commands movement of a movable element 150. In that case, collision logic 180 continues to make the collision determination. This is indicated by block 225. In another example, a collision can also be determined in other ways as well, as indicated by block 226.
If it is determined at block 220 that there will not be a collision, then operation 200 proceeds to block 230. where control system 122 sends the control command signal to an actuator 152 of a controllable subsystem 148 and the command is executed. When the command is executed, actuator 152 will move its respective movable element 150, as commanded.
If collision logic 180 determines that there will be a collision, then operation 200 proceeds to block 240 where collision logic 180 sends an indication of collision to limit generator logic 170 which generates a limit signal indicative of a limit of movement to avoid the collision. It sends the signal to control system 122 and the control command signal is rejected and not sent or limit logic 126 imposes a limit on it, based on the limit signal from limit generator logic 170, so the commanded movement is only executed (e.g., it is limited) so as to avoid the collision. This causes the actuator 152 to control movement of movable element 150 so it stops short of the protected component it was going to collide with. At block 250, an alert or notification can be sent to an interested party that the control signal was rejected or limited. For example, a display in the cab can indicate to the operator that the command was rejected or limited to prevent a collision. Alternatively, the operator need not be notified and rejection of the command simply acts as a limit on the movement of the movable element 150, much the same as a mechanical limit acts.
The dimensions of attachment 110 can be sensed with an optical sensor, a laser-based, radar-based or similar sensor and its geometry can be determined by sensor logic 164, as indicated by block 404. The dimensions of attachment 110 can be sensed by an IMU sensor as attachment 110 is moving and its geometry can be calculated by sensor logic 164 using kinematics, as indicated by block 406. Dimensions of attachment 110 may be sensed or received in other ways as well, as indicated by block 410.
Geometry of attachment 110 can refer to the width of attachment 110 as indicated by block 412, the length of attachment 110 as indicated by block 414, a range of motion as indicated by block 415, and it can refer to other dimensions of attachment 110 as well, as indicated by block 416. The range of motion can be identified by moving attachment 110 between its extreme ranges of motion and providing an input indicating when it is at each extreme. The range of motion can be sensed or identified in other ways as well.
At block 418, the measured attachment 110 is given an identifier. This identifier can be used in storing/retrieving the geometry information for this particular attachment 110 in datastore 176, as indicated by block 419. This identifier can then be manually placed on the attachment, as indicated by block 420. For example, an operator may paint or otherwise mark an identifier on the attachment. An identifier can be given via an electronic identification tag, as indicated by block 422. For example, a unique identifying RFID tag can be attached to attachment 110 that is read by an RFID reader on work machine 102. The reader can then send an indication to attachment ID logic 178 to load the saved geometry of that attachment when it is attached to machine 102. Of course the attachment 110 can be identified in other ways as well, as indicated by block 424.
At block 420, the dimensions of the attachment 110 and its identifier are stored for later use by self protection system 158. This data can be stored at a local datastore 176 on the work machine, as indicated by block 432. This data can be stored at a remote system, as indicated by block 434. This data can be stored in other ways as well, as indicated by block 436.
Sensors 304-305 are LDT's coupled to the hydraulic actuators that drive different moveable elements. For example, sensor 304 is coupled to the hydraulic actuator that actuates stick 108 and generates a signal indicative of the extent of extension of the hydraulic actuator and thus the position of stick 108. Similarly, sensor 305 is coupled to the hydraulic actuator that controls attachment 110 and generates a signal indicative of the extent of extension of the actuator.
Sensors 306-307 are IMU sensors coupled to movable elements 108 and 110, respectively. Because an IMU tracks inertia, acceleration and rotation, then using kinematics, for example, the position or movement of the movable element can be mathematically calculated if the IMU is placed at a known position on the movable element.
Sensor 308 can be a camera, laser-based, radar-based or similar type of sensor along with its image processing logic or other sensor signal detection and processing logic. These types of sensors have a line of sight, an example of which is indicated by line of sight 310. Sensor 308 can generate a signal indicative of a position of a component within its line of sight 310. For example, a camera can visually sense that attachment 110 is a certain distance away from house 104. Instead of calculating the position of attachment 110 relative to house 104, sensor 308 can generate a signal indicating when attachment 110 crosses a threshold distance from house 104. The signal can be used to stop the actuators from moving bucket 110 any closer so as to avoid a collision. Similar sensors 308 can be placed at other locations on machine 102 as well, to protect against collisions between other parts of machine 102
The present discussion has mentioned processors and servers. In one example, the processors and servers include computer processors with associated memory and timing circuitry, not separately shown. They are functional parts of the systems or devices to which they belong and are activated by and facilitate the functionality of the other components or items in those systems.
Also, a number of user interface displays have been discussed. They can take a wide variety of different forms and can have a wide variety of different user actuatable input mechanisms disposed thereon. For instance, the user actuatable input mechanisms can be text boxes, check boxes, icons, links, drop-down menus, search boxes, etc. They can also be actuated in a wide variety of different ways. For instance, they can be actuated using a point and click device (such as a track ball or mouse). They can be actuated using hardware buttons, switches, a joystick or keyboard, thumb switches or thumb pads, etc. They can also be actuated using a virtual keyboard or other virtual actuators. In addition, where the screen on which they are displayed is a touch sensitive screen, they can be actuated using touch gestures. Also, where the device that displays them has speech recognition components, they can be actuated using speech commands.
A number of data stores have also been discussed. It will be noted they can each be broken into multiple data stores. All can be local to the systems accessing them, all can be remote, or some can be local while others are remote. All of these configurations are contemplated herein.
Also, the figures show a number of blocks with functionality ascribed to each block. It will be noted that fewer blocks can be used so the functionality is performed by fewer components. Also, more blocks can be used with the functionality distributed among more components.
In the examples shown in
It will also be noted that the elements of
Under other examples, applications can be received on a removable Secure Digital (SD) card that is connected to an interface 15. Interface 15 and communication links 13 communicate with a processor 17 (which can also embody processor 130 from
I/O components 23, in one example, are provided to facilitate input and output operations. I/O components 23 for various examples of the device 16 can include input components such as buttons, touch sensors, optical sensors, microphones, touch screens, proximity sensors, accelerometers, orientation sensors and output components such as a display device, a speaker, and or a printer port. Other I/O components 23 can be used as well.
Clock 25 illustratively comprises a real time clock component that outputs a time and date. It can also, illustratively, provide timing functions for processor 17.
Location system 27 illustratively includes a component that outputs a current geographical location of device 16. This can include, for instance, a global positioning system (GPS) receiver, a LORAN system, a dead reckoning system, a cellular triangulation system, or other positioning system. It can also include, for example, mapping software or navigation software that generates desired maps, navigation routes and other geographic functions.
Memory 21 stores operating system 29, network and applications 33, application configuration settings 35, contact or phonebook application 43, data store 37, communication drivers 39, and communication configuration settings 41. Memory 21 can include all types of tangible volatile and non-volatile computer-readable memory devices. It can also include computer storage media (described below). Memory 21 stores computer readable instructions that, when executed by processor 17, cause the processor to perform computer-implemented steps or functions according to the instructions. Processor 17 can be activated by other components to facilitate their functionality as well.
Note that other forms of the devices 16 are possible.
Computer 810 typically includes a variety of computer readable media. Computer readable media can be any available media that can be accessed by computer 810 and includes both volatile and nonvolatile media, removable and non-removable media. By way of example, and not limitation, computer readable media may comprise computer storage media and communication media. Computer storage media is different from, and does not include, a modulated data signal or carrier wave. It includes hardware storage media including both volatile and nonvolatile, removable and non-removable media implemented in any method or technology for storage of information such as computer readable instructions, data structures, program modules or other data. Computer storage media includes, but is not limited to, RAM, ROM, EEPROM, flash memory or other memory technology, CD-ROM, digital versatile disks (DVD) or other optical disk storage, magnetic cassettes, magnetic tape, magnetic disk storage or other magnetic storage devices, or any other medium which can be used to store the desired information and which can be accessed by computer 810. Communication media may embody computer readable instructions, data structures, program modules or other data in a transport mechanism and includes any information delivery media. The term “modulated data signal” means a signal that has one or more of its characteristics set or changed in such a manner as to encode information in the signal.
The system memory 830 includes computer storage media in the form of volatile and/or nonvolatile memory such as read only memory (ROM) 831 and random access memory (RAM) 832. A basic input/output system 833 (BIOS), containing the basic routines that help to transfer information between elements within computer 810, such as during start-up, is typically stored in ROM 831. RAM 832 typically contains data and/or program modules that are immediately accessible to and/or presently being operated on by processing unit 820. By way of example, and not limitation,
The computer 810 may also include other removable/non-removable volatile/nonvolatile computer storage media. By way of example only,
Alternatively, or in addition, the functionality described herein can be performed, at least in part, by one or more hardware logic components. For example, and without limitation, illustrative types of hardware logic components that can be used include Field-programmable Gate Arrays (FPGAs), Application-specific Integrated Circuits (e.g., ASICs), Application-specific Standard Products (e.g., ASSPs), System-on-a-chip systems (SOCs), Complex Programmable Logic Devices (CPLDs), etc.
The drives and their associated computer storage media discussed above and illustrated in
A user may enter commands and information into the computer 810 through input devices such as a keyboard 862, a microphone 863, and a pointing device 861, such as a mouse, trackball or touch pad. Other input devices (not shown) may include a joystick, game pad, satellite dish, scanner, or the like. These and other input devices are often connected to the processing unit 820 through a user input interface 860 that is coupled to the system bus, but may be connected by other interface and bus structures. A visual display 891 or other type of display device is also connected to the system bus 821 via an interface, such as a video interface 890. In addition to the monitor, computers may also include other peripheral output devices such as speakers 897 and printer 896, which may be connected through an output peripheral interface 895.
The computer 810 is operated in a networked environment using logical connections (such as a local area network—LAN, or wide area network WAN) to one or more remote computers, such as a remote computer 880.
When used in a LAN networking environment, the computer 810 is connected to the LAN 871 through a network interface or adapter 870. When used in a WAN networking environment, the computer 810 typically includes a modem 872 or other means for establishing communications over the WAN 873, such as the Internet. In a networked environment, program modules may be stored in a remote memory storage device.
It should also be noted that the different examples described herein can be combined in different ways. That is, parts of one or more examples can be combined with parts of one or more other examples. All of this is contemplated herein.
Example 1 is a mobile work machine, comprising:
a frame;
a set of ground engaging elements movably supported by the frame and driven by an engine to drive movement of the mobile work machine;
a movable element movably supported by the frame to move relative to the frame;
an actuator coupled to the movable element to controllably drive movement of the movable element;
a control system that generates an actuator control signal, indicative of a commanded movement of the actuator, and provides the actuator control signal to the actuator to control the actuator to perform the commanded movement; and
a self-protection system, coupled to the control system, that determines whether the commanded movement will result in contact between the movable element and a protected portion of the mobile work machine and, if so, generates a limit signal, limiting the commanded movement to avoid the contact.
Example 2 is the mobile work machine of any or all previous examples and further comprising:
a sensor that senses a position of the movable element and generates a position signal indicative of the sensed position.
Example 3 is the mobile work machine of any or all previous examples wherein the self-protection system comprises:
data store interaction logic configured to interact with a data store to obtain machine dimension data indicative of dimensions of the mobile work machine and movable element dimension data indicative of dimensions of the movable element.
Example 4 is the mobile work machine of any or all previous examples wherein the self-protection system comprises:
machine geometry logic configured to receive the machine dimension data and the movable element dimension data and to identify a relative position of the movable element relative to the protected portion of the mobile work machine.
Example 5 is the mobile work machine of any or all previous examples wherein the self-protection system comprises:
collision logic configured to receive the identified relative position and the commanded movement and determine whether the commanded movement will result in the contact based on the relative position.
Example 6 is the mobile work machine of any or all previous examples wherein the collision logic is configured to determine whether the commanded movement will result in the contact by identifying a movable element boundary, indicative of a boundary of the movable element, based on the movable element dimensional information and a protected portion boundary, indicative of a boundary of the protected portion of the mobile work machine, based on the machine dimension data.
Example 7 is the mobile work machine of any or all previous examples wherein the collision logic is configured to determine whether the commanded movement will result in the contact by determining whether the commanded movement will result in an intersection of a portion of the movable element boundary with a portion of the protected portion boundary.
Example 8 is the mobile work machine of any or all previous examples wherein the movable element comprises an attachment, and further comprising:
calibration logic configured to receive the movable element dimension data and an attachment identifier identifying the attachment corresponding to the movable element dimension data, and to store the movable element dimension data and corresponding attachment identifier in the data store.
Example 9 is the mobile work machine of any or all previous examples wherein the calibration logic comprises:
input logic configured to detect an operator input indicative of the attachment identifier and the movable element dimension data.
Example 10 is the mobile work machine of any or all previous examples wherein the calibration logic comprises:
sensor logic configured to receive a sensor signal indicative of the movable element dimension data and the attachment identifier.
Example 11 is a method of controlling a mobile work machine, comprising:
receiving an operator input indicative of a commanded movement of an actuator that drives movement of a movable element coupled to a frame of the mobile work machine;
determining whether the commanded movement will result in contact between the movable element and a protected portion of the mobile work machine;
if so, generating a limit signal, limiting the commanded movement to avoid the contact;
providing the limit signal to the actuator to control the actuator to drive limited movement of the movable element to avoid the contact.
Example 12 is the method of any or all previous examples further comprising:
sensing a position of the movable element; and
generating a position signal indicative of the sensed position.
Example 13 is the method of any or all previous examples wherein determining whether the commanded movement will result in contact between the movable element and a protected portion of the mobile work machine comprises:
interacting with a data store to obtain machine dimension data indicative of dimensions of the mobile work machine and movable element dimension data indicative of dimensions of the movable element; and
identifying a relative position of the movable element relative to the protected portion of the mobile work machine based on the position signal, the machine dimension data and the movable element dimension data.
Example 14 is the method of any or all previous examples wherein determining whether the commanded movement will result in contact between the movable element and a protected portion of the mobile work machine comprises:
determining whether the commanded movement will result in the contact based on the relative position.
Example 15 is the method of any or all previous examples wherein determining whether the commanded movement will result in contact between the movable element and a protected portion of the mobile work machine comprises:
identifying a movable element boundary, indicative of a boundary of the movable element, based on the movable element dimensional information;
identifying a protected portion boundary, indicative of a boundary of the protected portion of the mobile work machine, based on the machine dimension data; and
determining whether the commanded movement will result in an intersection of a portion of the movable element boundary with a portion of the protected portion boundary.
Example 16 is the method of any or all previous examples wherein the movable element comprises an attachment, and further comprising:
receiving an attachment identifier identifying the attachment corresponding to the movable element dimension data; and
storing the movable element dimension data and corresponding attachment identifier in the data store.
Example 17 is the method of any or all previous examples and further comprising:
detecting an operator input indicative of the attachment identifier identifying the attachment; and
detecting an operator input indicative of the movable element dimension data indicative of a dimension of the movable element.
Example 18 is the method of any or all previous examples and further comprising:
detecting a sensor signal indicative of the movable element dimension data and the attachment identifier.
Example 19 is a control system on a mobile work machine, comprising:
control logic that generates an actuator control signal, indicative of a commanded movement of an actuator coupled to a movable element to controllably drive movement of the movable element, and provides the actuator control signal to the actuator to control the actuator to perform the commanded movement;
collision logic that determines whether the commanded movement will result in contact between the movable element and a protected portion of the mobile work machine; and
limit logic that if the commanded movement will result in contact between the movable element and a protected portion of the mobile work machine, generates a limit signal, limiting the commanded movement to avoid the contact.
Example 20 is the control system of any or all previous examples and further comprising:
a sensor that senses a position of the movable element and generates a position signal indicative of the sensed position;
data store interaction logic configured to interact with a data store to obtain machine dimension data indicative of dimensions of the mobile work machine and movable element dimension data indicative of dimensions of the movable element;
machine geometry logic configured to receive the machine dimension data and the movable element dimension data and to identify a relative position of the movable element relative to the protected portion of the mobile work machine, wherein the collision logic is configured to receive the identified relative position and the commanded movement and determine whether the commanded movement will result in the contact based on the relative position and to determine whether the commanded movement will result in the contact by identifying a movable element boundary, indicative of a boundary of the movable element, based on the movable element dimensional information and a protected portion boundary, indicative of a boundary of the protected portion of the mobile work machine, based on the machine dimension data.
Although the subject matter has been described in language specific to structural features and/or methodological acts, it is to be understood that the subject matter defined in the appended claims is not necessarily limited to the specific features or acts described above. Rather, the specific features and acts described above are disclosed as example forms of implementing the claims.
Number | Name | Date | Kind |
---|---|---|---|
5748097 | Collins | May 1998 | A |
6032093 | Denbraber | Feb 2000 | A |
6098322 | Tozawa | Aug 2000 | A |
6131061 | DenBraber | Oct 2000 | A |
6230090 | Takahashi | May 2001 | B1 |
6522964 | Miki | Feb 2003 | B1 |
9580886 | Nakagaki | Feb 2017 | B2 |
20030147727 | Fujishima | Aug 2003 | A1 |
20080203949 | Shackelford | Aug 2008 | A1 |
20080263912 | Gharsalli et al. | Oct 2008 | A1 |
20090030580 | Doi | Jan 2009 | A1 |
20100052684 | Fling | Mar 2010 | A1 |
20120253512 | Sato | Oct 2012 | A1 |
20140110168 | Pursimo | Apr 2014 | A1 |
20140200863 | Kamat et al. | Jul 2014 | A1 |
20160010312 | Kurihara | Jan 2016 | A1 |
20160076228 | Nau | Mar 2016 | A1 |
20160091002 | Miura | Mar 2016 | A1 |
20160138240 | Ikegami | May 2016 | A1 |
20160251835 | Kitajima | Sep 2016 | A1 |
20160273194 | Ikegami | Sep 2016 | A1 |
20160281331 | Ikegami | Sep 2016 | A1 |
20160289928 | Kitajima | Oct 2016 | A1 |
20160348340 | Kaneta | Dec 2016 | A1 |
20170114519 | Hague | Apr 2017 | A1 |
20170114526 | Yasuda | Apr 2017 | A1 |
20170278425 | Kozumi | Sep 2017 | A1 |
20170342680 | Iwamura | Nov 2017 | A1 |
20170342687 | Iwamura | Nov 2017 | A1 |
20180051446 | Yoshinada | Feb 2018 | A1 |
20180179734 | Yamashita | Jun 2018 | A1 |
20180313063 | Elkins | Nov 2018 | A1 |
20190024348 | Hiekata | Jan 2019 | A1 |
20190211532 | Sakamoto | Jul 2019 | A1 |
Number | Date | Country |
---|---|---|
4110959 | Oct 1991 | DE |
4338056 | May 1994 | DE |
19507152 | Sep 1996 | DE |
69612271 | Jul 2001 | DE |
69831713 | May 2006 | DE |
112013000251 | Aug 2015 | DE |
H07158123 | Jun 1995 | JP |
2014119464 | Aug 2014 | WO |
Entry |
---|
German Search Report issued in Patent Application No. 10 2019 205 515.5 dated Dec. 12, 2019, 10 pages. (Translated). |
Number | Date | Country | |
---|---|---|---|
20190376260 A1 | Dec 2019 | US |