This disclosure relates generally to robotic system and more particularly to a robotic system including a host platform and one or more modular components received on the host platform.
Worksite automation is becoming increasingly important in many industries, such as agricultural, automotive, medical, warehousing, and aerospace industries. In many instances autonomous or non-autonomous robots may be employed to perform a variety of task on an automated or semi-automated basis. As the deployment of robotic system increases, configuration and service of the systems deployed at a worksite becomes more challenging, since in many cases specialized skills are required for personnel servicing robotic systems. When there is a failure of a robotic system, the resulting downtime may lead to workflow disruption at the worksite. Furthermore, updating and upgrading the hardware of a robotic system often requires that the unit be taken out of service for some time to perform upgrades.
There remains a need for robotic systems configured to facilitate more effective and efficient service, configuration, and upgrading.
In accordance with one disclosed aspect there is provided a robotic system for providing robotic functions associated with performing an automated task. The system includes a host platform operably configured to provide at least some of the robotic functions for performing the automated task and having at least one interface operably configured to receive a modular component, the modular component being operable to provide additional robotic functions for performing the automated task. The system also includes a processor circuit disposed on at least one of the host platform and the modular component. The at least one interface includes a mechanical interface having mounting features that correspond to mounting features on the modular component for removably mounting the modular component to the mechanical interface of the host platform, a signal interface for transmitting signals between the modular component and the host platform, and a data interface implemented on the processor circuit and operable to provide functionality for exchanging at least one of commands for performing the additional functions or data associated with the additional functions between the modular component and the processor circuit.
The signal interface may include one or more connectors that facilitate connection of signal lines for communicating between the processor circuit and the robotic system.
The electrical connector may include a signal connector portion for connecting low level electrical signals and data lines between the host platform and the modular component, and a power/drive connector portion for connecting higher current lines between the host platform and the modular component, and the signal connector portion and the power/drive connector portion may be separated to reduce effects of electromagnetic interference on the low level electrical signals and data lines.
The processor circuit may include a primary processor circuit operably configured to control functions of the host platform and the modular component, and may further include a component processor circuit disposed on the modular component and operably configured to interface with the primary processor circuit via the data interface to perform the additional robotic functions.
The primary processor circuit may be configured as a modular component and may be received at a primary processor circuit interface on the host platform.
The mechanical interface may further include a mechanical coupler for transmitting power between the host platform and the modular component.
The mechanical coupler may include at least one of a fluid coupling for transmitting hydraulic power between the host platform and the modular component, a fluid coupling for transmitting pneumatic power between the host platform and the modular component, and a drive coupler for transmitting one of a torque or a force between the host platform and the modular component.
The signal interface may include a wireless signal interface.
The data interface between the processor circuit and the modular component may be via a wireless communications link with a remotely located cloud processor, the cloud processor being operably configured to initiate act as an intermediary between the processor and the modular component.
The robotic functions provided by the host platform may be provided by components mounted directly on the host platform, the components may include at least one of a primary processor circuit operably configured to control functioning of the host platform and the at least one modular component, a main drive operably operable to position the host platform within a worksite for performing robotic tasks, an auxiliary drive operable to act as a mechanical interface for mounting a moveable modular component, and an electrical chassis for routing electrical connections between the interface and the host platform.
The modular component may include one of a plurality of modular manipulator components, each modular manipulator component having a common component interface corresponding to the host platform interface, and one of a plurality of different manipulators operably configured to perform different manipulator functions for performing the automated task.
The modular component may include at least one of a power storage device operable to provide power for operating the robotic system, a communication device operably configured for at least one of receiving data or transmitting data between the robotic system and a host controller, and a structure for receiving and supporting articles for transport within a worksite.
The modular component may include a common coupler operably configured to facilitate handling of the modular component by a manipulator of a robotic system, the robotic system having an end effector operably configured to engage the common coupler for mounting the modular component at the interface on the host platform.
The common coupler may include standardized features added to each of a plurality of different modular components to facilitate handling by single standardized end effector of the robotic system.
The manipulator may be associated with one of another robotic system other than the robotic system having the modular component being mounted, the other robotic system being operably configured to handle and install the modular component, and a functioning manipulator of the robotic system having the modular component being mounted, the functioning manipulator being operable to handle and install the modular component.
The interface may include a standardized interface associated with a group of modular components operably configured to provide similar additional robotic functions.
The signal interface may include a connector standardized for connection to modular components that provide the similar additional robotic functions.
In accordance with another disclosed aspect there is provided a method of operating a robotic system for performing an automated task, the robotic system including a host platform operably configured to provide at least some of the robotic functions for performing the automated task and having at least one interface operably configured to receive a modular component, the modular component being operable to provide additional robotic functions for performing the automated task. The method involves providing a modular component having an interface compatible with the at least one interface. The method also involves, in response to a determination that the modular component requires installation on the host platform, causing the modular component to be installed at the at least one interface. The at least one interface including a mechanical interface having mounting features that correspond to mounting features on the modular component for removably mounting the modular component to the mechanical interface of the host platform and an signal interface for transmitting signals between the modular component and the host platform. The method further involves operating the robotic system within a worksite to perform the automated task.
The method may involve causing a processor circuit disposed on at least one of the host platform and the modular component to make the determination that the modular component requires installation on the host platform, and causing the processor circuit to communicate via a communications link with a remotely located cloud processor, the cloud processor being operably configured to initiate a fulfillment process resulting in the modular component being provided at the worksite.
The method may involve causing the processor circuit to communicate status information associated with operation of the robotic system at the worksite to the cloud processor, the cloud processor being operably configured to make the determination that the modular component requires installation on the host platform based on the status information.
Initiating the fulfillment process may involve causing cloud processor to initiate an order from a service provider to ship the modular component to the worksite.
Causing the modular component to be installed at the at least one interface may involve one of causing a cloud processor to communicate with a worker at the worksite via a communications device to direct the worker to install the modular component, and causing the cloud processor to communicate with a second robotic system at the worksite to direct the second robotic system to install the modular component.
In accordance with one disclosed aspect there is provided a robotic system for providing robotic functions associated with performing an automated task. The system includes a host platform operably configured to provide at least some of the robotic functions for performing the automated task and having at least one interface operably configured to receive a plurality of modular components, the modular components being operable to provide additional robotic functions for performing the automated task. Each modular component includes a component processor circuit disposed on the modular component and a wireless data interface operable to provide functionality for exchanging at least one of commands for performing the additional functions or data associated with the additional functions between the plurality of modular components.
The respective wireless data interfaces of the plurality of modular components may be operably configured to connect via a wireless communications link with a remotely located cloud processor, the cloud processor being operably configured to initiate act as an intermediary between the plurality of modular components. Other aspects and features will become apparent to those ordinarily skilled in the art upon review of the following description of specific disclosed embodiments in conjunction with the accompanying figures.
In drawings which illustrate disclosed embodiments,
Referring to
The host platform 102 also includes at least one interface configured to receive a modular component. The robotic system 100 further includes a plurality of modular components that are operable to provide additional robotic functions for performing the automated task. As an example, the host platform 102 includes a table interface 108 that receives a selected one of a pair of modular tables 110 and 112. In the embodiment shown, the tables 110 and 112 are differently configured to receive and transport articles and one of the tables may be more suitable for performing the automated task. As an example, the table 110 includes additional pin features for securely transporting articles in comparison with the table 112, which provides only a surface for receiving and securing the articles. The tables 110 or 112 are received on the table interface 108, which also includes a rotational actuator 114 for rotating the table, which is associated with the table interface 108 of the host platform 102. The rotational actuator 114 acts as an auxiliary drive on the host platform 102 for moving the table modular components 110 and 112. Other modular components may be similarly received on the host platform 102. Several other modular components are shown in
In this embodiment the manipulator module 128 also includes a sensor 134 mounted under a housing 136 of the manipulator. Similarly the manipulator 130 includes a sensor 138 mounted on the manipulator. The sensors 134 and 138 may include proximity sensors that provide an indication of obstacles in the path of the host platform 102. In some embodiments the proximity sensor may be implemented using an optical light detection and ranging (LIDAR) sensor as described in commonly owned PCT patent application publication WO/2018/045448 entitled “MOBILE WORK STATION FOR TRANSPORTING A PLURALITY OF ARTICLES” filed on Mar. 10, 2017 and incorporated herein by reference in its entirety. Other proximity sensors such as an infrared sensor or ultrasonic sensor may be alternatively or additionally used in implementing the sensors 134 and 138.
The host platform 102 would generally include an electrical chassis for connecting between components that are part of the host platform 102 and the various modular components.
The modular components 110-130 described above represent options for implementing different functionality on the host platform 102, depending on the automated task to be performed. For example, the battery 122 may provide a higher amp-hour capacity than the battery 120, which would extend the operating time of the robotic system 100 before requiring recharging of the battery. The manipulator module 130 is configured as a selective compliance articulated robot arm (SCARA) manipulator providing improved accuracy and range of motion in comparison to the manipulator module 128, which is configured to provide a more limited range and variety of motion.
In this embodiment the host platform 102 also includes a manipulator interface 132, which in this embodiment is mounted to the table interface 108. The manipulator interface 132 and the manipulator 128 are shown in greater detail in
Referring to
Referring to
In other embodiments the mechanical interface 200 may further include a mechanical coupler (not shown) for transmitting power between the host platform 102 and the modular component. As an example, the mechanical coupler may include a fluid coupling for transmitting hydraulic or pneumatic power between the host platform and the modular component. Alternatively the mechanical coupler may include a drive coupler for transmitting a torque or a force between the host platform and the modular component. As an example, a motor on the host platform 102 may be configured deliver a torque via a coupling and the modular component may have a corresponding mechanical coupling that connects to transmit the torque to the modular component.
In the embodiment shown in
A block diagram of a processor circuit for implementing the modular primary processors 116 or 118 is shown in
Program codes for directing the microprocessor 302 to carry out various functions are stored in a program code location of the memory 304, which may be implemented as a flash memory, for example. The program codes direct the microprocessor 302 to implement an operating system (such as Microsoft Windows for example) and to perform various other system functions associated with operation of the robotic system 100. The memory 304 also includes variable storage locations for storing variable and parameter data associated with operation of the robotic system 100.
In the embodiment shown, the primary processor circuit 300 is in communication with a component processor circuit 330 implemented on the manipulator module 128 or 130. The component processor circuit 330 includes a microprocessor 332, a memory 334, and an input output (I/O) 336, all of which are in communication with the microprocessor 332. The 1/O 336 may be configured to implement one or more interfaces compatible with the interface 308 for receiving commands from the primary processor circuit 300 for controlling operations of the manipulator 128,130 and respective sensors 134 and 138. The component processor circuit 330 is powered via lines 328 as described above in connection with the primary processor circuit 300. As an example, the interface 308 may include a wired Ethernet interface for interfacing with the sensors 134 and 138.
The component processor circuit 330 is operably configured to implement protocols for interfacing the modular components with the primary processor circuit 300 to perform additional robotic functions. For example, the component processor circuit 330 may receive inputs from the sensor 134, 138 and other sensors associated with the manipulation of articles by the manipulator, and also respond to commands received from the primary processor circuit 300. The interface 308 and the 1/O 336 thus provide a data interface that provides functionality for exchanging commands for performing additional functions performed by the manipulator 128, 130 and data associated with these additional functions. In one embodiment computer readable instructions in the form of an application programming interface (API) may be executed on the microprocessor 302 of the primary processor circuit 300 to define and implement the interface between the processor circuits for exchanging commands and data. The API exposes functionality for interfacing between modular components and the primary processor circuit 300. Details of the API, the mechanical interface 200, and the signal interface 202 may be provided to third party developers of modular components allowing others to design components for use with the host platform 102.
The primary processor circuit 300 is also in communication with a component processor circuit 340 implemented on the communications transceiver module 124, 126. The component processor circuit 340 includes a microprocessor 342, a memory 344, and an input output (I/O) 346, all of which are in communication with the microprocessor 342. The 1/O 346 may be configured to implement one or more interfaces compatible with the interface 310 for receiving commands from the primary processor circuit 300 for controlling operations of the communications transceiver module 124, 126. As an example, the interface 310 may be implemented as a universal serial bus (USB) interface for communicating via the communications transceiver modules 124 and 126.
The component processor circuit 340 is powered via lines 348 as described above in connection with the primary processor circuit 300. The 1/O 346 further includes a wireless interface (such as an IEEE 802.11 interface) for wirelessly receiving and transmitting data communication signals between the robotic system 100 and a network 350, such as the internet. In this embodiment the component processor circuit 340 manages communications between the primary processor circuit 300 and the network 350, and facilitates communications between a cloud processor 352 and the robotic system 100. The cloud processor 352 may be implemented as a cloud server located remotely from the worksite 106. In some embodiments may be a server hosted by an on-demand cloud computing platform such as Amazon Web Services (AWS), for example. In some embodiments, the communications transceiver module 124 may provide a greater working range for use in larger worksites than the communications transceiver module 126. As in the case of the component processor circuit 330, the component processor circuit 340 may implement or make use on an API implemented by the primary processor circuit 300 to define and implement the interface between the processor circuits for exchanging commands and data.
The robotic system 100 of
Other modular components such as the batteries 120 and 122 may not have a component processor circuit implemented and may be interfaced via the interface 312. In one embodiment the interface 312 may be configured as an analog to digital converter operable to receive analog signals from components such as the batteries 120 and 122 representing operating conditions such as a state of charge and/or temperature of the battery. The analog signals would then be converted into digital data representations by the interface 312 and may be monitored by the primary processor circuit 300. In the case of the table 110, as disclosed in commonly owned PCT patent application PCT/CA2019/000022, entitled “APPARATUS FOR SUPPORTING AN ARTICLE DURING TRANSPORT, filed on Feb. 14, 2019, and incorporated herein by reference in its entirety, the table may have include a processor circuit acting as a component processor circuit that provides information related to the positioning of articles on the table. Other table embodiments may not be configured to provide such information and the interface may thus only include the mechanical interface aspects described above.
The embodiment shown in
The host platform 102 and modular components 110-130 described above and configured as shown in
In the embodiment shown, the cloud processor 352 (shown in
A process implemented at the worksite 106 for servicing or reconfiguring the robotic system 100 is shown as a flowchart in
Referring back to
In one embodiment the cloud processor 352 is operable to receive status information from the worksite 106 and/or the external service provider 504. For example, the robotic systems 100 and 508 may have their respective primary processor circuits operably configured to monitor operations and provide status information to the cloud processor 352 on an ongoing basis. Such status information may include information defining currently installed modules, battery capacity, fault information, etc. Similarly, the worksite inventory 500 may keep an inventory list of currently available modular components and may update the cloud processor 352 when there is a change in inventory. The external service provider 504 may similarly share inventory information and may also accept requests to provide additional modules to the worksite 106 via the network 350. In some embodiments the cloud processor 352 may also receive information about the worker 510 via their communications device 516, for example by confirming availability and/or sharing their location within the worksite 106.
In some embodiments the cloud processor 352 may be configured to manage aspects of operations for the service provider 504 in performing predictive maintenance on the robotic systems 100 and 508. For example, the cloud processor 352 may record usage data for any of the modular components 110-130 (shown in
Still referring to
Referring to
Referring to
Referring to
Referring back to
Referring back to
In some embodiments, the cloud processor 352 may act as an intermediary for communications between the primary processor circuit 300 and the modular component or between different modular components. For example, a modular component may have a wireless communications capability, facilitating direct communication between the cloud processor 352 via the network 350. The cloud processor 352 may be configured to receive data signals from the modular component and to process and/or direct these signals back to the primary processor circuit 300 on the host platform 102. The communication between the primary processor circuit 300 on the host platform 102 and the modular component may thus be channeled through the cloud processor 352.
In some embodiments that modular component may share status information directly with the cloud processor 352 via the network 350 and the cloud processor may be operably configured to process this information. For example, the cloud processor 352 may initiate a fulfillment process to have the modular component replaced when a fault or imminent failure is detected by the cloud processor based on the received status data. Where different modular components on the host platform 102 are each equipped with a wireless interface, the components may communicate information without the involvement of the host platform 102 or the primary processor circuit 300. In cases where the implemented interfaces on the modular components are compatible the communication may be directly conducted between the modules. In other embodiment, the communications may be conducted using the cloud processor 352 as an intermediary.
While specific embodiments have been described and illustrated, such embodiments should be considered illustrative only and not as limiting the disclosed embodiments as construed in accordance with the accompanying claims.
This application claims the benefit of provisional patent application 62/642,202 entitled “CUSTOMER REPLACEABLE UNIT FOR ROBOTS”, filed on Mar. 13, 2018 and incorporated herein by reference in its entirety. This application also claims the benefit of provisional patent application 62/802,504 entitled “SYSTEM AND METHOD FOR REMOTE RESTORING, ALTERING, OR IMPROVING HARDWARE FUNCTIONALITY OF A MODULAR ROBOTIC PLATFORM”, filed on Feb. 7, 2019 and incorporated herein by reference in its entirety. This application also claims the benefit of provisional patent application 62/804,123 entitled “SYSTEM AND METHOD FOR COLLABORATION OF ROBOTIC SYSTEMS FOR AUTONOMOUS RESTORING, ALTERING, OR IMPROVING OF HARDWARE FUNCTIONALITY”, filed on Feb. 11, 2019 and incorporated herein by reference in its entirety.
Filing Document | Filing Date | Country | Kind |
---|---|---|---|
PCT/CA2019/050311 | 3/13/2019 | WO | 00 |
Number | Date | Country | |
---|---|---|---|
62642202 | Mar 2018 | US | |
62802504 | Feb 2019 | US | |
62804123 | Feb 2019 | US |