The present disclosure is related to a communication arrangement for a container handling equipment operating in a predetermined area and to a method of communicating between at least two container handling equipment operating within a predetermined area. The present disclosure is also related to a container handling equipment controller arrangement, short CHE controller arrangement.
Operators of port facilities strive in optimizing every aspect of transport of containers while minimizing costs and environmental impacts. One relative new proposal for optimization is to reduce the service speed of large containerships significantly whereby fuel consumption is reduced likewise significantly. In order to make up for some of the time lost during sailing, owners and operators now urge container handling facilities, or container terminals, to operate even faster.
The container handling capacity or the performance of container terminals using ship to shore cranes is often limited by the operation of container handling equipment—which is also called herein by the acronym CHE or CHEs in the plural form and which are for instance gantry cranes or other crane types. The efficient and effective distribution, stacking and movement of containers becomes increasingly important, while misplacements should be avoided. The increased need for speed results in a larger density of container handling equipment working in the same operational area, or in other words different CHEs are working in the same area. The increased complexity of container handling or unforeseeable events may lead to situations, in which the load of available CHEs is not evenly distributed such that some CHEs are idle, while others still have many tasks to perform.
EP 2 775 429 A1 discloses a method for scheduling work orders between at least two automated stacking cranes. A plurality of work orders for the cranes is received and the priority for those work orders is determined. Controllers in each crane can operate with each other to determine the priority of a work order. The determination regarding which work order is to be performed by which crane can also be made between the cranes themselves in a distributed control manner.
There is still a need to improve the efficiency and effectiveness of CHEs in an operational area.
The object is satisfied by a CHE controller arrangement in accordance with the features of claim 1. Further embodiments of the present invention are described in the dependent claims, the description and the drawings.
A communication arrangement or a communication system to enable a plurality of container handling equipment, or CHEs, to operate autonomously in a yard environment is disclosed. Such yard environment includes all environments in which large amounts of container-like structures have to be moved and logistic operations take place, including but not limited to port yard, rail yards or airports. The term CHE or CHEs in the plural form corresponds to container handling equipment, which comprises all sorts of cranes, like for instance gantry cranes or ship-to-shore cranes and also other types of equipment, like fork lifter, lift trucks and the like. For the sake of simplicity, at some instances the expression crane may be used for such equipment and it is understood that the present disclosure is suitable for all kinds of container handling equipment.
In this regard, the term autonomously refers to the actual execution of jobs by the plurality of CHEs without interference from an external control layer or the terminal operating system, except that the operating system provides a list of jobs to the CHEs. While in conventional solutions an operator controls specific movement of the CHEs manually to execute the job, the present disclosure proposes that the plurality of CHEs communicates with each other in order to avoid interference while executing their job. In addition, the plurality of CHEs is enabled to share jobs, that is simply spoken one CHE executes a job originally given to another CHE by the terminal operating system. Consequently, each CHE in a specific operational area may execute its respective own jobs and when possible shared jobs as well. The job sharing takes place on the layer of communication controller within the CHEs and without interference or triggering from external instances. The expression “external instance” may refer in this context to any logistics system. As a result, the CHEs achieve a more evenly workload distribution when operating in a certain area.
In this regard, the term “job” stands for an order to the CHE to move a container from a determined given container spot in the operational area, the so called source position to a destination spot, the destination position. The destination spot may be another container spot in the area, but also a track or train wagon and the like. This may require moving the CHE to the source position, lifting the container, moving to the destination position and releasing the container at said position again.
The communication between the CHEs is triggered without interference from a manual operator, the terminal operating system or any other external instance. Such autonomous behaviour enable the CHE not only to “know” the positions of each other CHE working in an operational area, but also to execute jobs and share jobs even when communication to a higher layer or to an external instance is temporarily offline. The collaborative logic and behaviour is independent on the number or type of the CHEs and only in case of failure of communication between the handling equipment within the operational area, a manual operator may take action.
The CHE controller arrangement, in particular for a CHE, comprises an execution controller in operative connection with one or more engines of the CHE and configured to control movement of the CHE and the CHE controller arrangement further comprises a communication controller having a memory to at least store a job to be executed by said CHE, the communication controller further comprises a first interface to retrieve instructions from an external instance, and in particular from a terminal operating system related to a plurality of jobs to be executed by said CHE and a second interface to communicate with at least a second CHE. The CHE controller arrangement can further comprise a control interface between the execution controller and the communication controller to provide instructions to the execution controller responsive to an execution of said job, and the second interface is adapted to forward at least one job of the plurality of jobs in response to a respective request by said at least one second CHE.
The first CHE can execute its own jobs and, if possible, share jobs with the at least one second CHE. The communication controllers of the CHEs are equal meaning that they operate at the same hierarchical level. The second interface can be adapted to forward a job in response to a respective request by the second CHE. Thus, the first CHE does not simply distribute a job to the second CHE, but only forwards a job upon a respective request from the second CHE. This job sharing can take place without interference from the external instance and as a result of the job sharing, the CHEs can achieve a more evenly workload distribution when operating in a certain area.
The first CHE can not force the second CHE to carry out the forwarded job. The second CHE may be adapted to decide on its own, for example based on a pregiven criteria, whether it accepts the job. The communication controller of the second CHE may be adapted to send a respective confirmation message. Upon reception of the confirmation message, the communication controller of the first CHE may delete the job from its memory and/or communicate to the external instance that the job has been forwarded to the second CHE.
The second CHE may be adapted to send a respective request for a job based on a certain pregiven criteria, for example when the number of jobs stored in the memory of the second CHE drops below a predetermined amount.
The execution controller can be arranged on or within the CHE. The same can be said for the communication controller which may also be incorporated into the same device/unit as the execution controller. However, the communication controller may also be locally separate from the execution controller and communicate with it through the control interface by use of a protocol. The communication controller may also be arranged at a distance to the CHE or at least at the outside of the CHE, for example in a separate unit. The communication controller can for example be located in between the CHE and the external instance. The communication controller can therefore be regarded as an add-on which is a separate part or device. This has the advantage that the CHE as it is provided by a manufacturer does not have to be changed or modified.
Various aspects and details as well as the benefits and advantages of the foregoing will be apparent from the following more particular description of the example embodiments, as illustrated in the accompanying drawings in which like reference characters refer to the same parts throughout the different views. The drawings are not necessarily to scale, emphasis instead being placed upon illustrating the example embodiments.
Aspects of the present disclosure will be described more fully hereinafter with reference to the accompanying drawings. The apparatus and method disclosed herein can, however, be realized in many different forms and should not be construed as being limited to the aspects set forth herein. Features in the embodiments can be combined in different ways without deviating from the spirit of the present disclosure. Like numbers in the drawings refer to like elements throughout.
The terminology used herein is for the purpose of describing particular aspects of the disclosure only, and is not intended to limit the invention. As used herein, the singular forms “a”, “an” and “the” are intended to include the plural forms as well, unless the context clearly indicates otherwise. In the following the expression “job” will be used in accordance with the meaning stated above.
In an aspect of the proposed principle a container handling equipment or CHE controller arrangement comprises an execution controller and a communication controller. The execution controller is in operative connection with one or more engines or other subsystems of the CHE and configured to control movement of the CHE. The execution controller is coupled to the communication controller via a control interface. The communication controller comprises a memory to store a job to be executed by the CHE and also comprises a first and a second interface. Via the first interface, the communication controller is configured to retrieve instructions from an external instance, and in particular from a terminal operating system related to a plurality of jobs to be executed by said CHE. The second interface is utilized by the communication controller to communicate with at least a second CHE to forward at least one job of the plurality of jobs in response to a respective request by said at least one second CHE. Via the controller interface the communication controller is adapted to provide instructions to the execution controller responsive to an execution of said job.
The job sharing functionality provides the controller to balance workload among different CHEs in an independent and autonomous way without interference from higher layers or instances an in particular without interference from the TOS. The separation between the execution controller and the communication controller provides a large flexibility with respect to handling jobs in a manual, semi-autonomous and fully autonomous way. Already existing CHEs can be improved by applying the communication controller into an already existing structure. The communication and instruction flow allows working in mixed environment, in which manually operated and autonomous CHE are operating in the same area.
To improve reliability and availability of the CHE, the first and second interface can be configured to utilize different communication protocols. The communication protocol used for communication with other CHEs may be particular robust against any kind of interference or communication disruptions. Communication formats and structure can be simple and robust.
The job sharing functionality enables the CHE to balance its work within a predetermined area. To ensure a more even work distribution, the communication controller may be configured to request a job to be executed via the second interface from the at least one second CHE. As a result, jobs are only shared when requested, or in other words the communication controller evaluates its current job status and requests a job only if idle. In this regard, jobs are handled and processed uniformously by the communication controller and the communication controller stores each job retrieved via the first or the second interface in its memory prior to execution.
When sharing a job, the communication controller may evaluate the available jobs and select a suitable job. In an aspect, the communication controller is configured to select the at least one job of the plurality of jobs in response to a position of the at least one second CHE. Such selection can also be based in response to a distance between the CHE and a position of the at least one job or a combination of the above. Various other parameters, like container type, CHE type and the like can be taken into account for the evaluation.
To avoid collisions between CHEs or other potential dangerous situations, but also improve speed and efficiency when performing jobs, the communication controller can be configured to forward to the at least one second CHE its position when entering or leaving a predetermined area. Such position information can also be transmitted on regular basis, at specific intervals or specific locations within the pre-determined area. The communication controller can comprise a memory to store position information provided by said at least one second CHE.
In this regard the memory to which the communication controller is coupled and which stores the information about the job to be executed is adapted to store further information such as yard map, both logical (TOS positions) and physical (actual coordinates or marker values). The communication controller and the execution controller are configured to have access thereupon to read the necessary information to perform the jobs and avoid potential collisions. The information can be updated from time to time by the communication controller via the first interface. In addition, the communication or execution controller may store information related to container locations in such memory. Synchronization with the terminal operating system or an externa logistics may detect possible handling errors and avoid accidentally loosing containers.
When executing a job, the communication controller may provide respective information to the execution controller. In view of the above situation, in which more than one CHE is operating in a predetermined area, the communication controller may be configured to provide instructions to the execution controller based on position information of said at least one second CHE. Instructions taking into account the positions of other CHEs operating in the same pre-determined area greatly reduce the risk of potentially dangerous situations, for instance two CHE getting to close to each other.
Another aspect is related to improvement of existing CHEs. In an aspect, the CHE comprises a third interface coupled to the communication controller, wherein the communication controller is configured to provide various information to a manual operator. Such information can for instance include one or more jobs to be executed or parts thereof. A position of the operator's CHE in a predetermined area and also a position of other CHEs in the predetermined area. In conventional manual systems the operator controls movement of the CHE. Hence, in an aspect, the communication controller is configured to retrieve an input from the manual operator related to a movement of the CHE input via a third interface. The input can be processed and forwarded to the execution controller via the control interface. In another aspect, the CHE comprises a plurality of sensors and other sub-systems configured to provide information about the absolute or relative position of the CHE or parts thereof. For example such parts can comprise hoist, trolley, twist lock position gantry position, speed of the previous parts and the like. The plurality of sensors and subsystems is coupled to the execution controller. The information provided by the sensor may be used by the execution controller to control movement, but also by the communication controller. For instance positon information provided by the sensors may be communicated by the communication controller to other CHEs operating in the same area.
The execution controller is in operative connection with programmable logic controllers, programmable logic relays or other devices configured to control the movement of the elements of the CHE, these may include a gantry of a CHE, a trolley of the CHE, a hoist of the CHE and/or lock element, in particular twist lock elements.
Preferably, a communication arrangement for a CHE or at least two CHEs is described, wherein said CHE or said at least two CHEs is/are configured to operate on an area comprising a plurality of container spots arranged in a plurality of rows and columns. Another organization of container spots is possible as well and depending on available space, yard or port structure and so on. In any case the container spots are organized in a defined pattern allowing the CHE/CHEs to locate and identify a specific spot in the plurality of spots.
The proposed communication arrangement can comprise a first communication module and a second communication module, in particular for each CHE. The first communication module is configured to retrieve from a terminal operating system a plurality of jobs to be performed by said CHE on said yard, said jobs comprising instructions to move a container and identifying a container spot of the plurality of container spots. The second communication module is configured to communicate with at least a second CHE operating in said operational area, said communication with said at least one second CHE being autonomous from receipts from the first communication module and/or manual triggering and including at least transmitting a message to said at least one second CHE indicating a position of said CHE in the area. In addition, the second communication module is configured to autonomously transmit a job sharing message to the at least one second CHE, said job sharing message indicating a job to be performed by the at least one second CHE, said job being a job of the plurality of jobs.
The two communication modules consequently serve different tasks. While the first one is adapted for communication with external instances, in particular the terminal operating system, the second module is responsible and adapted for communication between container handling equipment operating in the same defined area. The job sharing functionality enables the CHEs to balance workload among themselves in an independent and autonomous way without interference from higher layers or instances and in particular without interference from the TOS. Workload balancing results in a more even distribution of work among the CHEs, less idle time and a higher degree of capacity utilization. In an aspect the second communication module is configured to transmit the job sharing message indicating a specific type of CHE. Particular in an environment, wherein different types of CHEs are operating such approach will prevent that a CHE is taking a job that is not suitable for it.
As a result of the proposed work-split as described above, an external instance does not require any more knowledge about the current situation in a section of an operational area or in the whole area itself that is which rows, columns or spots are currently occupied. Collision prevention is handled autonomously between the CHEs. Due to the job sharing functionality, uneven distribution or delays in job execution can be dealt within the operational area between the CHEs. In other words, communication between the CHEs and communication to higher layers and external control instances are separated and independent from each other.
The proposed solution does not only reduce the amount of data to be sent from an external instance to each individual CHE, it also relieves the external instance from adjusting the job lists or controlling the execution of jobs to avoid potential conflicts or collisions. These aspects are handled by the CHEs autonomously utilizing the second communication module.
In a further aspect, the first and second communication modules are operating with different communication protocols, different communication standards, different frequencies or a combination thereof. For instance, communication by the first module can be achieved using wired communication, while communication between CHEs in a defined operational area is achieved using a wireless communication link or vice versa. Alternatively two different wireless communication standards on different frequencies can be used. Such separation between communication by the first and second modules allows CHEs to continue working in an off-line mode that is when communication to the external instances is temporarily off-line. On the other hand, the external instance can be informed in case communication between CHEs in certain area fails among other measures taken by a CHE itself or the CHEs. In this regard it is suitable to select a simple yet robust communication protocol or standard for the second communication module.
Depending on the communication protocol (but not only then), the second communication module is configured to request a token from any other CHE in the same operational area. The token is a request for subsequent communication prior to transmitting the actual message. The token request is broadcasted among all other CHEs in the operational area. Such token request can prevent colliding transmissions from two or more CHEs as only the communication module which has the token is allowed to send further transmissions. Token based communication can be implemented in the communication protocol, such as token-ring based communication. Alternatively, communication between CHEs can be time-duplexed, that is the second communication module of each CHE in the area is configured to transmit messages (and/or acknowledgement) only at specific periodic time slots. In such case synchronization as to the available and occupied time slots is required when a CHE enters or leaves the operational area.
The token may be transmitted prior to the actual message in any case or based on an evaluation of at least one position in the operational area, which will be occupied when performing a subsequent job of the plurality of jobs or when requests to other CHEs are to be made. Broadcasting a token request only in particular circumstances introduces some form of priority in the communication and indicates a higher level of importance for the upcoming transmission.
The position indicated in the message transmitted by the second module can comprise an indication that said CHE is about to or has entered the operational area at said positon. Such message resembles a hand-shake procedure, in which a CHE informs all other CHEs in a specific operational area. Alternatively or additionally, the second communication module is configured to transmit a message indicating the current position of said CHE while said CHE is passing through a row or indicating the position said CHE is currently working in. In addition, job execution may require blocking a specific container spot or area over a certain period of time in order to enable timely execution of a job. Consequently, the second communication module can be configured to transmit a message requesting a position not to be occupied for a certain period of time.
Some communications for which the second module is configured for are of indicative nature. Other communications may indicate a request. The second module may be configured to transmit a message to the at least one second CHE indicating a request to said at least one second CHE to perform a specific task specified in said message or to acknowledge a specific information provided by said CHE. Said task can include, but not limited to, releasing a specific area or container spot, moving out of the way, not blocking a certain container spot or yard area, keep away from a certain position and the like. It is suitable in some aspects, also to transmit an acknowledgment, particular as a response to a request message or important information, handshake message. Such acknowledgment enables the requesting second communication module to ensure the message has been retrieved.
Another aspect is as already indicated related to a job sharing functionality. As stated previously the term job is an order to the CHE to move a container from a determined position to another position given in the job. The job should therefore contain information at least about the source and the destination of the container as well as an identification of the container. The latter is suitable as the combination of source and destination could be used more than one in a job list. Further containers identification allows to track and identify containers within the operational area, even when a container has accidently been misplaced.
While an external instance provides a plurality of jobs to be performed and control modules within the CHE execute these jobs in a predetermined order (either autonomously or utilized by a manual operator), it may occur that a CHE in the operational area is empty of jobs and therefore idle. It is suggested in such cases that jobs can be shared autonomously among the CHE themselves utilizing the second communication module without being instructed by an external instance. In other words, the or each CHE and/or the second communication module of at least one CHE or of each CHE may be configured to share jobs to be performed with each other based on availability and need. In an aspect, the second communication module is configured to transmit a job sharing message to another CHE within the same operational area, said job sharing message indicating a job to be performed by the at least one second CHE, said job being a job of the plurality of jobs. The second communication module may be configured to transmit such job sharing message in response to a message requesting to share a job retrieved from the at least one second CHE. Hence, messages for job sharing will only be transmitted if requested, that is if a second communication module of a CHE indicates availability to take a job. To initiate job sharing when requested greatly increases the capacity utilization and reduces idle time of the CHE. The second communication module may alternatively instruct the first communication module to request a new list of jobs from the external instance, for example from the terminal operating system.
In this regard the expression job sharing message is not a request to perform a certain job in a strict sense, that is a CHE cannot force another CHE to perform a certain job by sending such job sharing message in the sense of the present disclosure. Rather, the decision whether to perform the job or not is made at the receiving side. From this perspective the job sharing message indicates an available job. Alternatively, the job sharing message can be send upon a request to share a job from another CHE. The message may in both cases comprise sufficient information about the job to be performed so the CHE can make a decision whether to accept the job offer or not.
The jobs to be shared can be selected based on various criteria. For instance it can be just the next job in the list of jobs to be performed. Alternatively, the second communication module is configured to select said job based on selection criteria mitigating the probability of moving through or occupying container spots to be used by one of said CHE and the at least one second CHE. For instance only jobs are shared which have source and destination outside the area the CHE is currently working in. In yet another alternative, the second communication module is configured to select said job based on the position of the at least one other CHE. Such selections criteria reduce the problem that CHEs are subsequently blocking each other and hence do not significantly increase the execution speed of the jobs. Upon successful receipt of a job sharing message an acknowledgement should be transmitted to the communication module sharing the job. The acknowledgment enables the second communication module to initiate removal of the shared job of its own job list. After successful completion of the shared job, the respective shared job is marked as completed in the job list. The list can be stored in the first and/or the second communication module and/or in a control module. The first communication module can also be configured to transmit successful completion of the shared job back to the external instance.
In case of communication failure between the CHEs or a temporary power drop, causing partial loss of power, the at least one of the configuration modules or a control module in the CHE is configured to initiate movement of said CHE to a predetermined position based in response to a failure in communication with said at least one second CHE. This avoids collision due of the CHEs.
The CHEs assigned to the same operational area can logically be combined in a work-group. In an aspect, the external instance may provide a plurality of jobs for the workgroup instead for each individual CHE. As a result, the decision which CHE shall execute a specific job in the plurality of job is made by the CHEs independent from an external instance.
Another aspect is related to a communication method between at least two CHEs operating in a determined area, wherein the area is preferably structured in rows and columns. The method comprises to retrieve a message from a terminal operating system, said message including a plurality of jobs to be performed by a first one of the at least two CHEs. The plurality of jobs can be structured in a list including their priority or order in which they have to be executed. The method according to the proposed principle comprises retrieving a job sharing request message from a second CHE of the at least two CHEs and acknowledging said job sharing request by transmitting a message to the second CHE including a job to be shared.
In another aspect, the method further comprises transmitting by the first CHE a message to a second CHE of the at least two CHEs including a position of the first CHE in the operational area. The transmission of said message is sent autonomous and independent from the retrieved messages from the terminal operating system and from any other external instance or from manual triggering. The method also comprises receiving an acknowledgment from the second CHE of the at least two CHEs in response to the transmitted message.
The communication between the CHEs enables an autonomous behaviour and job execution of the at least two CHEs within the area without external interference. The CHEs can operate in the same operational area, or in two sections thereof independent from any communication to the terminal operating system except for the reception of job lists. As a result, communication between the CHEs and communication to higher layers and external control instances are separated. Such separation can also be achieved by using different communication protocols, standards or systems for the reception and communication for job lists and the communication between the CHEs. For instance, the message from the terminal operating system is retrieved using a first communication protocol and the message and acknowledgment between the first and second CHE is utilized by a second communication protocol different from the first communication protocol.
In some protocols, communication between the CHEs is structured in such way, that each CHE gets a certain time slot, in which it can transmit a message. This approach is utilized by TDD or time division duplex based communication protocols. In such case, the at least two CHEs have to synchronize their time slots at some point to avoid communication collision or loss of messages. Alternatively or in addition, a request for subsequent transmission or a token can be broadcast prior to transmitting the message to said CHE requesting the job to be shared. Such broadcast goes to all CHEs in the same operational area. To request such token can be used in communications without fixed predetermined timeslots. The token request broadcast indicates all CHEs that a certain message is about to be transmitted and can be used to set them in some “listening” or reception mode. The token request can be broadcast in response to an evaluation about at least one position in the operational area, which will be occupied when performing a subsequent job of the plurality of jobs. As a result, the token request is broadcast, if subsequent uninterrupted execution of jobs is at stake. This indicates the other CHEs a certain importance of the subsequent message. It can be useful in some aspect to retrieve an acknowledgment for such token request from each CHE prior to transmitting the message. This ensures that all CHEs in the same area are in listening mode and have acknowledged the request.
The message transmitted to other CHEs in the area can have various contents. For instance some messages may be of an indication type, that is for instance indicating to the other CHEs the position the first CHE of the at least two CHEs is currently working on or the current container spot position the CHE is passing through. Some specific important indicative message is the position at which the first of the at least two CHEs is about to or has entered the operational area. As all CHEs in an operational area are able to work autonomously, a so called hand-shake procedure is required to ensure that all CHEs in the same area are aware of a new CHE entering the operational area or an existing CHE leaving. Consequently, such and- shake message should also be acknowledged by each CHE, thereby informing the transmitting CHE also about all other existing CHEs in the operational area.
Other messages are of a requesting nature, these include, but are not limited to transmitting a request to leave a certain position or not to occupy a certain position over a certain period of time. The job sharing request does also belong to such type of message. Generally said, the message transmitted can be a request message from the first CHE of the at least two CHEs to the second CHE of the at least two CHEs to perform a specific task. It is suitable to transmit an acknowledgment of said request to the first CHE of the at least two CHEs.
Other aspects are related to transmitting the job sharing message to the second CHE of the at least two CHEs, said job sharing message comprising a job to be performed by said second CHE, said job being a job of the plurality of jobs to be performed by the first CHE of the at least two CHEs. The CHEs in the operational area are enabled to share jobs among themselves independently from an external instance or a manual triggering. The job sharing message may be sent upon reception of a respective request to share a job. This approach gives high flexibility as only CHEs which are able to accept a job will send a job sharing request, overall resulting in a more uniform distribution of wok and less idle time for each individual CHE. The CHE receiving a job share request message can decide in an autonomous way based on its open job list and various other criteria which job (if any) should be offered for sharing. Such criteria for example can include the position of the CHE requesting to share a job. Selection of the job can also be based upon the probability of moving through or occupying container spots to be used by the one of the CHEs. The job may be selected in such way as to mitigate the impact on the current workflow of the other CHEs in the area.
After receiving a job sharing message, the message should be acknowledged to avoid that two CHEs operate on the same job. If the job sharing message is not acknowledged, the CHE sharing the job can assume that the job has not been accepted or the message was not retrieved properly. The benefit of the autonomous job handling also enables the terminal operating system or another external instance to simply wait for a successful completion of the job without requiring such message from a specific CHE. As a result, a message indicative of a successful execution of the job in the job sharing message can be transmitted to the external instance by the CHE actually executing the job.
In the following the various embodiments presented are using different types of CHEs examples for a container handling equipment. It is understood that the disclosed principle is applicable for all kinds of container handling equipment in an operational area, which can work in a semi- or fully autonomous way.
In any case all four landing pin contactors 14 have to indicate “close” that the spreader has “touched” upon the containers as indicated in step S4. If such detection is not provided, i.e. only 2 or 3 landing pin contactors remain at “close” indicating no touch, then the spreader is lifted again and another attempt performed. The lowering procedure is cancelled in step S7 after a predetermined number of attempts in step S6 without success.
In case the pin contactors indicated a successful lowering, the process continues with step S5 by activating motors 13 to rotate the twist locks 12 grabbing container 50. Within a predetermined amount of time after activation of the motors, the twist lock contactors within the motors should change to the locked position of the respective twist lock, indicating grab of the container by said twist lock. Step S6 detects if all 4 twist lock contactors detect such locked position after the predetermined time. If this is not the case, the process continues with S6 by opening the twist locks 12 and repeating the locking and grabbing process in step S5. After a predetermined number of unsuccessful attempts have been made, the process ends with step S7, or if successful in step S6 continues with S8.
During S8, the lifting and moving procedure, the status of the landing pin contactors change to “open” status as an indicator to ensure the container has been lifted. At the same time the status of the twist lock contactors remain locked and unchanged. The hoist and trolley move the container to the target location and lowering the container again. Upon lowering the container in step S9, the 4 landing pin connectors stay in the open position status to indicate and ensure the container continues being lowered. The twist locks stay in the locked position for the time being. Depending on some encoder information the lowering speed of the spreader with the container is reduced, while the container (or the spreader) closes in onto the landing area. Upon touchdown the four landing pin contactors will change in step S10 their status from open to close, indicating that the container is firmly on ground. If one or more of the landing pin contactors 14 do not match with the others, the container is being lifted again in step S11 and another attempt is made. Only when all four landing pin contactors indicate “close”, corresponding to the touchdown of the container, step S12 is performed, the twist locks 12 are unlocked and the container released. After confirmation of unlocking the twist locks, the hoist is moved up and away from the released container and the process ends with step S13.
In order to improve the detection of the landing pin contactors 14, a small space between the bottom of spreader 11 and the top surface of container 50 is maintained. Such space allows the twist locks to enter faster into the grabbing holes at the top of the container and to perform the lock and unlock operation faster. The space also enables the landing pin contactors to identify the beginning of the lift and the end of the lowering procedure.
The above procedure can be manually executed using a manual operator handling the various movements. The sensors on the twist lock, trolley and hoist present information to the operator to ensure proper handling. Alternatively various controller can be used which process positioning information from the sensors to operate the crane autonomously and are explained in greater detail below.
The operational area in the example is a single section and comprises of six rows 1) to 6) and five columns a) to e), wherein each container spot may comprise the size of a standard 20ft or 40 ft container. The dimension for a 20 ft container are appr. 20 ft×8 ft×8 ft 6 in corresponding to 1TEU.
Further in this example, the container spots are distanced from each other, enabling to place other size containers on these spots. In alternative embodiments, the operational area can have more rows and columns, for instance an operational area can comprise up to 90 rows and 20 columns. Such larger areas can be divided into smaller sections as explained in greater detail below. Container spots are often proximate to each other with nominal no space between. These kinds of areas are often used for standard containers, in which the size is predetermined and no air circulation is required. Space between containers require more space, but provide a higher flexibility when placing containers of different sizes, and may be suitable for reefer containers or other types of containers requiring ventilation.
Each crane is communicating with a terminal operating system TOS either via wired or wireless communication. The TOS provides a list of jobs to be performed based on several parameters to each crane. For this purpose, the operational area 3 in its section is divided into four, partly overlapping operating sections A1 to A4. Each crane is assigned to at least one of those operating areas. In the present example, crane 100A is assigned to section A1, crane 100C is assigned to operating section A4 and crane 100B is assigned to two sections, namely A2 and A3. The job list provided by the TOS to each of the crane contains preferably jobs located in the respective section to which the crane is assigned to. For instance, the job list of crane 100A contains jobs whose source and destination lies in operating area A1. Similar job lists are provided for cranes 100B and 100C by the TOS. While the TOS may assign the jobs to be performed to each crane in such a way that it reduces the risk of collisions, a situation may occur in which source or destination is locate in one of the overlapping parts of the operating sections. For instance a job for crane 100A contains a destination in section 32, but still on operational section 32. Depending on the job execution of crane 100B a situation may occur in which the destination position of the job for crane 100A is occupied by crane 100B. As a result, either the first crane 100A has to wait, for instance in area 35, until the second crane has finished (at least) its current job or second crane 100B has to move out of the way.
Despite the time consuming factor of such solutions, it requires an increased awareness and communication between the crane operators to avoid collisions in such rapid moving environment. In the proximate future, cranes operating on port or rail facilities may become more and more autonomous and perform jobs without the need of interference by a manual operator. As a consequence, logic and decision making processes are transferred either from the operator to the cranes logic or from the TOS into the cranes logic to enable the cranes to perform certain jobs independently.
The present disclosure proposes several aspects around the interaction and communication for autonomous or semi-autonomous cranes in a port facility environment. As each port facility environment is different, it is understood that the presented aspects can be combined or modified in different ways and are not restricted to the disclosed exemplary embodiments.
Referring back to
Each section comprises also a plurality of (depending on the implementation virtual) markers 37, which enable each gantry crane 100A to 100C to reconfirm its exact position among the operational area. The markers 37 as the special locations 311, 321, 331 and 341 alike can comprise simple colored lines on the ground, detectable by a camera or a visual sensor, but also other means, like for instance light barriers, inductive or magnetic barrier or the like. Passing or reaching one of the markers 37 or the special location indicates the gantry crane its exact position among the area. In suitable embodiments the container spots on each section 31 to 34 are aligned with those markers. In an alternative embodiment, the markers 37 are obtained by information about the distance the gantry crane moved from a well-known position. Such information can be obtained by velocity or speed sensors arranged at the gantry motors 60 illustrated in
The container spots defined by row and column together with the level indication represent a 3-dimensional coordinate system providing either source (where to retrieve a container) or destination position for the gantry crane. Occupation of each individual container spot in the area is maintained in a database. In addition to simple information related to occupation of containers spots, full container detail information, i.e. content, weight, delivery information etc is maintained as well. The database is at least coupled to the TOS or forms a part thereof. Some of these information, particularly all information relevant to handling the containers can also be stored locally on the CHE in a respective file or local database as well. Such file or local database is then updated by the TOS.
While the process of
For the purpose of avoiding collisions in a semi- or fully-autonomous environment, the cranes communicate with each other. Such communication can be a wired communication or a wireless communication. In an aspect, the communication between the cranes utilizes a communication link or communication protocol different from the one for communication with the TOS. Such approach enables the cranes to establish and maintain communication as well as continue to perform jobs even when the communication to the TOS fails or is unreliable. Communication between the cranes is robust, simple and error-insensitive to ensure communication even in changing and/or harsh conditions. To avoid communication collisions, the communication may be based on a TDD system, in which each crane has a dedicated timeslot to communicate. Alternatively, communication is token based, in which communication is structured more hierarchal and certain messages can only be sent if the crane requests and subsequently retrieves the token.
The communication between CHEs occurs without interference from other top layer systems, like for instance the TOS. As illustrated in
The master process is structured into several logical swim-lanes, wherein the steps and evaluations in lane L3 and L5 are implemented in different hardware in this example. The steps and evaluation in Lane L3 are performed by a communication controller, which includes the first and second communication module to communicate with the TOS on lane L5 or other CHEs in the operational area in Lane L2, the intelligent cell communication. In this regard the expression cell refers to a CHE in the operational area. The process itself is looped and can be stopped or triggered by other external processes, some of which are named herein as EP1 to EP3.
Explaining now the various steps and evaluation points in the lanes in greater detail. Starting from the top loop and the starting point, the communication controller waits a predetermined amount of time in D1 and then evaluates in D2 if it is working and executing jobs. If that is the case the loop begins anew. If not, the communication controller evaluates if the hand-shake procedure has been conducted in this particular section of the area or the area itself has been conducted. Depending on the evaluation result, the communication controller initiates to perform the cell Handshaking procedure P1 as described above by transmitting a respective message to all CHEs in the vicinity. The same procedure P1 is also initiated from external process EP1, when the CHE enters (or leaves) the respective operational area.
After the handshake procedure is done or if the evaluation of D3 indicate that a handshake already occurred, the master process continues with evaluation of steps P2 and D4, namely to monitor the communication connection. If the CHEs is online and has a connection to the external instance, the EC status check is transmitted in P3 by the communication controller to the external instance on the equipment control network logistic lane, denoted as Logistics. If the evaluation in step D4 is negative, the process continues after evaluation of a timeout in D5 to indicate the off-line mode in step P4. The offline mode initiates to process jobs offline P5, including either to continue working on their own job list or request to share a job.
For this purpose, the communication controller in the illustrated master process initiates to send a request token message in step P6 to all other CHEs in the area. The intelligent cell communication confirms (either instantly, after some time or after some repeated token requests) the request in P7, thereby enabling the communication controller in step P8 to first identify and reserve the spaces needed in P8 and subsequently update the reserve target position by sending a corresponding request message to reserve certain positions in P9. The request is confirmed and acknowledged in step P10 within intelligent cell communication lane. After confirmation of the reserved space the communication controller can start sending the respective job information to the execution controller. Until this point decision making and evaluation took place within the communication functionality of a CHE.
The job is retrieved by the execution controller, which in turn performs the job execution in step P13. During job execution the execution controller does not only control and monitor the various functions of the gantry CHE, e.g. gantry, hoist and trolley movement, but also secures that respective proper information is sent via the communication controller to the other CHEs in the operational area. Several external processes EP3 are supporting the job execution. In case communication with other CHEs cannot be maintained or established during execution of a job, the communication controller informs the execution controller about such incident and the execution controller interrupts execution until the incident is solved. The execution controller finally evaluates, whether the job has been successfully completed in D6. If this is not the case the execution controller reports R1 a fault report to the communication controller and subsequently to instances in the logistics lane. In case of a successful completion a respective positive status signal is sent to and retrieved by the communication controller in steps P14 and P15, respectively. The job completion is then forwarded as a report R2 by the communication controller to the logistics lane and the master process terminates after returning back to the job list in step P16
Referring now back to steps D4 and P3. After sending the equipment control status check, the higher instance within the logistics lane respond to the EC status and also sends data, P17. The message is retrieved by the communication controller and evaluated in step D7, whether the response ID is matched. If the evaluation returns a negative status, indicating no matching the communication controller submits a error report indicating wrong data and the whole loop is repeated. If the responseID is matched, the message size will be evaluated in D8. In case the message size does not exceed a certain buffer size, it is assumed that the message contains a job list, which is then stored to an internal non-volatile memory in step P18. The stored data is synchronized and a job to be processed is fetched in step P19. After fetching a job, the master process continues with step P6 as described above.
Referring back to D8 in the case the message size exceeds the buffer. The process then continues with processing the response equipment control state and evaluates in D9 if the response retrieved in D7 by the communication controller is a job list. If the response is not a job list, the process ends after advancing to the next stage. Otherwise the process continues with a subsequent evaluation in D10 to determine if the jobs in the list are executable at this time. If such is the case the jobs are stores in the non-volatile memory in step P18 The job list could also contain jobs which need to be executed in the future and are not yet available. Then the evaluation becomes negative.
If the evaluation in D10 is negative, the CHE is considered to be idle and the communication controller can initiate the job sharing request. For this purpose the master process continues with step P21, in which the communication module sends a job sharing request to all other CHEs operating in the same area. As discussed previously, such job sharing message can be preceded by a request token broadcast. The other CHEs receive the job sharing request and evaluate the possibility to share a job. Such evaluation does not only include to identify a potential job to be shared (e.g. the next available job in their respective job lists), but also calculate the best job available.
Such calculation made by one of the other CHEs takes into account the next coming jobs in its respective job list to determine whether there are any jobs outside its own working section and nearby the CHE requesting the job sharing. If there is a job available, the distance between its current position and the position stated in the job to be shared is calculated to determine the likelihood of clashing when the job is shared. In this regard, one can calculate the distance from its current position to the starting position or to the destination position. It is suitable for the calculation to evaluate both positions to determine a potential conflict. The calculation above can be made for each available job and then the job with the lowest impact is selected. Alternatively, a job is only selected if the distance or a value indicative thereof reaches a certain threshold. For instance only jobs with a source less than a certain distance away from the CHE requesting the job sharing are selected and then the distance is calculated for those jobs to identify to most suitable one. These calculations ensure that only those jobs are shared (or offered), which do not generate a position conflict when executing the respective jobs. Further, only jobs close to the proximity of the CHE requesting a job are selected for sharing reducing the risk that the CHEs gets in conflict with yet another CHE operating in the same area.
Once the evaluation is completed in step P22, the other CHE responds in step P23 and either indicates no job is available or transmits the respective job information. The message is acknowledged and evaluated. If there is no job confirmed by any CHE in step P23, the communication controller initiates movement of the CHE to a base positon or initial working area in P24 to prevent deadlock and avoid standing in another CHE's way or occupying a location. The expression base position may correspond to a specific location in the operating area, i.e. a transfer point and the like. Alternatively the base position may correspond to the position of the last job which was executed by the CHE. The CHE would then move to such position and wait until the path is free. In case the working range is unknown, as it may be available only to an external instance, return to base point is required. If a job has been transmitted, the job is extracted in step P25 and the communication controller continues with requesting a token as described in steps P6 onward.
The above approach enables the CHEs in the area to continue operation even when communication with the TOS or other systems in the higher levels of the facility architecture is only temporarily available. As a result, fault tolerance to logistical operations is significantly improved.
The communication controller is responsible for communication with all higher and external instances and for organizing and controlling the job lists. It contains non-volatile memory, not shown, in which the list/lists of jobs to be performed is/are stored as well as a list/lists of completed jobs. In addition to job information, the memory is also used to store a logical map of the operating area as well as location markers of the respective container blocks thereof. The communication controller as well as the execution controller, is able to retrieve such information form the memory in order to identify source or destination position of containers. Together with information about the current position (obtained by GPS or local markers), the controller may “know” where they are in relation to a specific location or position in the operating area. Further information in the memory can be related to container specific properties, like container contend, weight, delivery or source information time steps and the like. Obtaining such information, updating them when working in the operating area and synchronizing such information with the external logistics system/TOS may reduce handling errors, which can happen during manual operation of the CHE.
The communication controller is able to evaluate the communication link and quality. The controller is configured to communicate via a first interface to higher instances, for example to the terminal operating system. Such communication uses a predetermined protocol, for instance a wireless protocol, like WLAN. It is possible to use normal telecommunication protocols or the telecommunication network to establish communication between the TOS and the communication controller of the respective crane. The communication to the TOS is related to logistical operation in the working area that is in particular the job instructions, which need to be performed and their respective order. Successful executed jobs are reported back, when respective information is retrieved from the execution controller.
The communication controller also includes a second interface to the HMI that is a machine-human interface, for instance a monitor screen and operator terminal and the like. The communication controller provides different and/or selectable information via the second interface to an operator of the crane. This information includes for instance the job description and the status of the crane, gantry, hoist, trolley and twist lock. The HMI may also present to an operator a virtual map of the operating area including the container spot or other landmarks to support him in tis orientation. In addition, the HMI is configured to accept operator input and forwards that input to the communication controller.
The communication controller is further coupled to a radio link interface to communicate with other gantry cranes or container handling equipment in the same operational area. Communication via this interface is different from communication with the TOS. For instance a different communication protocol and/or hardware are used for communication with the other cranes in the same operational area. The container handling equipment will cease operation, if the communication between them fails too frequently or for a too long time in order to avoid collisions and damages to the equipment. Hence, the communication via the radio link interval is chosen to be particularly prone against all kinds of equipment or environment caused interference to ensure that the communication with other container handling equipment is robust.
The communication controller in the illustrated figures is preferably implemented in hardware using two different wireless communication links to establish communication with the TOS and the other handling equipment in the operational area. Although not shown herein the communication controller can comprise two or more different separate communication modules, which are coupled to the respective interfaces. The interface to the HMI is wired, as operator terminal and screen may be installed on the crane. The HMI can also be installed outside the crane, enabling the operator to control movement of the crane from a different station close to the area. A central processor, ASIC or other dedicated hardware controls the different modules and structures communication between the interfaces and the execution controller.
Different modes of operation will now be explained in greater detail. In a manual operation of the crane an operator controls the movement of the crane via respective inputs, e.g. switches, joystick and the like. The communication controller provides the information of the job to be performed to the operator via the HMI as well as the location of the crane and other container handling equipment in the area. The information enables the operator to decide how he should perform the job. Any input by the operator is transmitted via the HMI to the communication controller. The communication controller forwards the input to the execution controller, which in turn controls the PLC units and the movement of the crane.
The execution controller calculates the necessary movement steps of the crane to perform the job and defines it as benchmark. During the manual execution of the job by operator the execution controller records all operator movements in comparison with the defined benchmark. Such functionality provides valuable information which can be used for operator training or for machine learning process. Successful execution of the job is transmitted to the TOS either automatically by the communication controller or again triggered by the operator.
In a semiautomatic operational mode, the communication controller processes the job provided by the TOS and guides the manual operator to the execution process. For this purpose, the communication controller presents the job to be performed in separated steps onto the operator taking into account the specific situation on the working area. These separated steps for instance include instructions or guidance to the operator to “move” the gantry of the crane to a specific location, then to move the trolley and so on. The order of the instructions may change depending on the position of other cranes working in the same operational area, the container situation of the respective area and the like. Still it is presented to the operator subsequently guiding him to perform the task in a determined order given by the communication controller. Compared to the manual mode, in which the operator has full control of the movement of the individual parts of the crane, access or movement options can be handled more restrictive in this semi-autonomous mode and controlled by the communication controller.
As the execution controller provides feedback as to the location and position of the crane parts in the area back to the communication controller, the communication controller is aware of the location and can adjust the guidance presented to the operator accordingly. Communication with other handling equipment in the area avoids collisions or potential dangerous situations.
In an autonomous mode, the communication controller fully controls the execution of jobs without interference from a manual operator. In such case, the HMI can be removed or simply be reused for control information. No input as to the movement of the crane is required. For safety and security reason the HMI can still accept emergency stops, shutting off movement of the crane instantly. The job to be performed is processed by the communication controller and source as well as destination is extracted. Any required movement is evaluated by the communication controller and aligned with information about the location of other container handling equipment to identify the most efficient path. The communication controller as discussed previously seeks permission from other cranes and container handling equipment in the operational area and reserves the necessary space in the area. When the path is cleared and at least parts of the job can be performed, the communication controller transmits the necessary high level information to the execution controller autonomously. The information transmitted does not contain specific instructions which part of the crane is to be moved, but rather high level information, such as instruction to move the crane to a specific location in the area. The execution controller translates these high level instructions into specific PLC commands to the individual parts of the cranes. During movement sensor information is relayed back to the execution controller. Such sensors information includes speed or current location and the like. The execution controller feeds back to the communication controller the processed position and/or speed information in order to enable the communication controller to update the position to the other container handling equipment. When the high level instruction is successfully performed, the execution controller reports back.
In the above example the communication controller provides position instructions to the execution controller, and leaves its execution to the controller. The execution controller is aware of the current position and calculates the distance to the instructed position accordingly. Acceleration, movement and deceleration are performed by the execution controller without interference from the communication controller. In an alternative version, the communication controller performs the calculation between the current position of the crane and the target position and instructs the execution controller to perform a specific task, like moving in a certain direction for a certain period of time. It may be suitable, if the communication controller in the autonomous mode instructs the execution controller in the same format as the instruction signal generated by the HMI in the manual operation mode.
In conventional operated container equipment the execution controller may be coupled via an interface directly to the HMI to retrieve corresponding movement instructions from the operator. The separation between execution controller and communication controller in terms of functionality provides now a greater flexibility in terms of operation. Implementing a communication controller generating the same kind of signals allows re-using existing container handling equipment for all three modes of operation and consequently a slow transition from manually operated container equipment to autonomously operated equipment. As the communication controller is in contact with other CHE in the same operational area, a mix of manually, semi-autonomous and fully autonomous cranes is possible.
In all three modes of operation, the communication controller is configured to request job sharing from another CHE in the same working area as described above. From the perspective of a manual operator or the execution controller no difference is made between a job from the TOS or from another crane irrespectively of the mode of operation.
Further examples of embodiments and variants are set out in the following items.
1. CHE controller arrangement, comprising:
2. The CHE controller arrangement according to item 1, wherein the first interface is configured to utilize a communication protocol different from a communication protocol utilized by the second interface.
3. The CHE controller arrangement according to any of the preceding items, wherein the communication controller is configured to request a job to be executed via the second interface from the at least one second CHE.
4. The CHE controller arrangement according to any of the preceding items, wherein the communication controller is configured to store at least one job retrieved via the first and/or the second interface.
5. The CHE controller arrangement according to any of the preceding items, wherein the communication controller is configured to select the at least one job of the plurality of jobs in response to a position of the at least one second CHE.
6. The CHE controller arrangement according to any of the preceding items, wherein the communication controller is configured to select the at least one job of the plurality of jobs in response to a distance between the CHE and a position of the at least one job.
7. The CHE controller arrangement according to any of the preceding items, wherein the communication controller is configured to forward to the at least one second crane its position when entering or leaving a predetermined area.
8. The CHE controller arrangement according to any of the preceding items, wherein the communication controller comprises a memory to store position information provided by said at least one second CHE.
9. The CHE controller arrangement according to any of the preceding items, wherein the communication controller is configured to provide instructions to the execution controller based on position information of said at least one second CHE.
10. The CHE controller arrangement according to any of the preceding items, wherein the communication controller is configured to transmit via the first interface to the external instance and particular to the terminal operating system information related to a completion of a job to be executed.
11. The CHE controller arrangement according to any of the preceding items, further comprising a third interface coupled to the communication controller, wherein the communication controller is configured to provide information to a manual operator related to at least one of:
12. The CHE controller arrangement according to any of the preceding items, wherein the communication controller is configured to retrieve manual operator related to movement of the CHE input via a third interface and to forward such input to the execution controller via the control interface.
13. The CHE controller arrangement according to any of the preceding items, comprising a plurality of sensors coupled to the execution controller, the plurality of sensors configured to provide information about the absolute or relative position of the CHE or parts thereof.
14. The CHE controller arrangement according to any of the preceding items, wherein the execution controller is in operative connection with programmable logic controllers configured to control the movement of at least one of:
15. The CHE controller arrangement according to any of the preceding items, wherein the execution controller is configured to provide location or position information to the communication controller.
In the drawings and specification, there have been disclosed exemplary embodiments. However, many variations and modifications can be made to these embodiments. Accordingly, although specific terms are employed, they are used in a generic and descriptive sense only and not for purposes of limitation, the scope of the embodiments being defined by the following claims.
Number | Date | Country | Kind |
---|---|---|---|
PA201600171 | Mar 2016 | DK | national |
Filing Document | Filing Date | Country | Kind |
---|---|---|---|
PCT/EP2017/056593 | 3/20/2017 | WO | 00 |