A multitude of businesses, especially manufacturers, distributors, retailers, and other entities, often maintain a warehouse, shipping department, shop floor, or other area in which goods or items are received, manufactured, assembled, boxed, and/or shipped. Such a building, or area within a building, may be termed a “work area.” Further, a work area may house a number of separately identifiable, functional groups, departments, or “workcenters,” each of which may occupy a specific portion of the overall work area. Such workcenters may include, for example, receiving, initial assembly, final assembly, unit test, packaging, shipping, and the like.
The operational status of each workcenter of a work area typically affects the operation of one or more other workcenters, as well as the operation of the entire work area. In some environments, some information associated with a workcenter may be entered and/or stored, either manually or automatically without human intervention, in an enterprise resource planning (ERP) system. However, such information is not normally available in a “real-time” manner to managers and employees associated with the work area. Additionally, access to such information is typically only possible by way of a desktop or laptop computing system, neither of which is convenient for use on a shop floor or similar environment. To combat this lack of information, time-critical information regarding a workcenter is often communicated directly from one employee to another in the work area via word-of-mouth, phone call, SMS (Short Message Service) messages, email, and the like. As a result, the likelihood of that information being passed to all interested parties in the work area is typically less than desirable.
The present disclosure is illustrated by way of example and not limitation in the figures of the accompanying drawings, in which like references indicate similar elements and in which:
The description that follows includes illustrative systems, methods, techniques, instruction sequences, and computing machine program products that embody illustrative embodiments. In the following description, for purposes of explanation, numerous specific details are set forth in order to provide an understanding of various embodiments of the inventive subject matter. It will be evident, however, to those skilled in the art that embodiments of the inventive subject matter may be practiced without these specific details. In general, well-known instruction instances, protocols, structures, and techniques have not been shown in detail.
A work area may be any definable geographic area or location in which multiple workcenters of an enterprise or entity are located. Such work areas may include, for example, a building, a particular floor or area of a building, or other contiguous area at which activities of the enterprise or entity may occur. Example work areas include, but are not limited to, warehouses, shop floors, productions floors, and so on.
Further, within a particular work area may be located a number of workcenters, wherein each workcenter is an operational unit or group associated with a particular function or group of operations associated with an enterprise or entity. Examples of workcenters may include, but are not limited to, a receiving department, a manufacturing department, an initial or final assembly department, a testing department, a packaging and/or shipping department, and so on.
Examples of the mobile communication device 104 of
As shown in
As depicted in
As discussed more fully below, the workcenter information 108 may include an overall operational status of each workcenter of the work area 101, more detailed operational status information or metrics regarding one or more aspects or characteristics of each workcenter, data regarding items (e.g., manufactured items, items to be shipped, and so on) associated with one or more of the workcenters, data related to customer or production orders involving one or more of the workcenters, and so on. Such data may be retrieved from the workcenter databases 124 mentioned above via the workcenter data access system 122 based on specific requests from the mobile communication device 104. Alternatively, such data may be “pushed” to the mobile communication device 104 by the workcenter data access system 122, such as when data associated with a workcenter changes. Such data may be supplied to the ERP system 120 automatically via other systems associated with the workcenters, or manually via personnel associated with the workcenters.
Thus, in at least some examples of the system 100, the user 103 of the mobile communication device 104 may retrieve data pertinent to one or more of the workcenters located at the work area 101 essentially on a real-time basis, thus keeping the user 103, such as an employee or manager located at the work area 101, apprised of the operational status of each workcenter without relying on one-to-one communication with another employee, which tends to occur in an ad hoc manner. Other aspects of the embodiments discussed herein may be ascertained from the following detailed description.
The user interface 202, via its user input interface 205, may receive commands from a user, such as commands for the mobile communication device 200 to present operational status and/or related information for a particular workcenter, task, order, and the like. Examples of the user input interface 205 may include a keyboard, touchscreen, keypad, or touchpad. The user interface 202, via its visual display component 204, may also present to the user information regarding the workcenter, tasks, or orders related thereto, and other work area information (e.g., the workcenter information 108 of
Also in the mobile communication device 200, the image capture component 206 may be a camera, scanning element, or other component capable of capturing an image, such as a still photo image or a video clip. The audio capture component 207 may include a microphone and associated audio circuitry for capturing voices, sounds emitted by equipment located in one or more workcenters, and other audio signals. As is described in greater detail below, the captured images and/or audio may be stored in a memory of the mobile communication device 200 and related to a particular workcenter, or to a task, order, or other logical construct associated with a workcenter.
The network interface 208 may allow the mobile communication device 200 to communicate with other systems or devices, such as another mobile communication device and the ERP system 120 of
The configuration module 212 of the mobile application 210 may receive user input via the user interface 202 to configure one or more aspects of the mobile application 210. In one implementation, the configuration module 212 may receive a selection of a particular work area 101, such as a specific building, floor of a building, or other definable geographical area, at which the mobile communication device 200 is located. By providing this selection, the user may limit or focus the scope of workcenter information 108 received at the mobile communication device 200 to information regarding workcenters located at the specified work area 101. In another embodiment, the location of the work area 101 may be set based on a geographical location determined by a Global Positioning System (GPS) circuit or similar means located in the mobile communication device 200. In yet other examples, the scope of the work area 101 is not restricted in such a fashion, thus allowing the user to access workcenter information 108 for any work area 101 of interest relating to the enterprise or entity. The user may select other preferences for the mobile application 210 in other examples, such as display formatting preferences, data entry preferences, image capture preferences, and so on.
The workcenter display design module 214 may allow a user to generate and/or configure a display of a floor plan of the work area 101 populated with graphical representations of one or more workcenters of interest that are located at the work area 101. An example of this process is described below in conjunction with
The workcenter data access library 220 may provide utilities by which the mobile communications device 200 may receive workcenter information 108 or data associated with one or more workcenters of the work area 101 of interest. For example, the workcenter data access library 220 interacts with the workcenter data access system 122 of
The workcenter task data module 218 may receive user input, still images, video clips, audio clips, and the like at the mobile communication device 200 and store the information as data related to one or more tasks associated with one or more of the workcenters. In one implementation, the user indicates via the user interface 202 the workcenter with which the task data is to be associated. This task data may be stored in a memory of the mobile communication device 200 and/or the ERP system 120 of
The relay server 302 may direct incoming requests or messages from the mobile communication device 104 to the mobile access platform 304 described below. The relay server 302 may also direct other incoming communication traffic, such as traffic not sourced by a mobile communication device, to other servers or platforms provided by the ERP system 120. In some environments, the relay server 302 may be considered as a type of reverse proxy server capable of directing different types of communication traffic to the particular system or group of systems capable of handling and processing the traffic.
The mobile access platform 304 may provide or facilitate functionality associated with mobile communications. One example of this functionality is user “onboarding,” in which the mobile access platform 304 facilitates initial uses of the system 100 (
The enterprise data access gateway 306 may convert or reformat incoming communications into communications understandable by the underlying backend data access system 308. As a result, multiple ERP systems 120 may be accessed by a mobile communication device 104 presuming the presence of an enterprise data access gateway 306 associated with each ERP system 120 to be accessed. More specifically, each enterprise data access gateway 306 may translate the incoming communications associated with the protocol associated with the mobile access platform 304 to a particular data protocol employed in the backend data access system 308.
The backend data access system 308 may perform a search of one or more workcenter databases 124 based on an identification of work area 101 or the workcenters included therein, or a geographical location (e.g., a location identified by GPS data, or a location entered manually by the user) of the mobile communication device 104. In other examples, the backend data access system 308 may perform the search using any workcenter database 124 associated with the user employing the mobile communication device 104, such as any work area 101 of the enterprise employing the user, or any such work area 101 associated with the user (or for which the user maintains some level of responsibility), thus facilitating access to status information for work areas 101 remotely located from the mobile communication device 104. In one example, the functionality of the search may be controlled by other information, such as the identity of the mobile application 210 being executed in the mobile communication device 104, and by other information or factors accessible by the backend data access system 308. The workcenter databases 124 being accessed by the backend data access system 308 may include databases associated primarily with design engineering, production engineering, test engineering, marketing, sales, and other organizations serviced by the ERP system 120. The resulting workcenter information 108 may take many forms, depending on the ERP system 120, including, but not limited to, database entries, text or word processing documents, spreadsheets, and so on.
The backend data access system 308 may then return the workcenter information 108 to the mobile communication device 104 via the enterprise data access gateway 306, the mobile access platform 304, the relay server 302, and the communication network 114. Such information may be provided in response to an explicit request from the mobile communication device 104 indicating a particular work area 101 or workcenter located therein. The request may be periodic or intermittent in nature. In another example, the workcenter information 108 may be provided via a push mechanism that updates the workcenter data for a work area 101 for each change in the information as detected by the ERP system 120 in response to a single request for such data from the mobile communication device 104.
Information describing an operational status (e.g., the workcenter information 108 of
While the operations 402 through 408 of the method 400 of
While much of the description of work areas and workcenters provided herein involves typical enterprise manufacturing or distribution environments, other types of work areas not specifically discussed herein may also benefit from the various techniques presented. Examples of such work areas may include retail environments involving sales areas (e.g., different departments of a grocery or department store), equipment repair or refurbishing centers including a number of repair and testing stations, and the like.
Presuming a shop floor environment,
While the presence of a touchscreen for the mobile communication device 600, as what may be supplied on a tablet computer, is presumed in the examples described herein, the mobile communication device 600 is not limited to a tablet computer, but may be any mobile communication device capable of performing various operations described herein.
In the example of
As exhibited in
Presuming the user activates the “Add Workcenters” button 605, the mobile application 210 may display an initial add workcenters screen 601B of
While
After the user has selected, located, and sized each of the workcenters 606 WCTR_1 through WCTR_5 to be placed on the floor plan 602, the user may activate the Floor Plan button 609. In response to the activation, the mobile communication device 600 may present an updated floor plan screen 601E, as depicted in
In some examples, either the configuration module 212 or the workcenter display design module 214 of the mobile application 210 may allow the user to adjust the brightness, contrast, and other characteristics of the floor plan 602, the workcenters 606, or both to present an easily viewable display from the standpoint of the user. Other aspects of the display, such as the amount of data to be presented for each of the workcenters 606, may also be user-configurable.
If the user has completed the population of the floor plan 602 with all desired workcenters 606, the user may then activate the Live button 603, causing the mobile communication device 600 to operate the mobile application 210 in Live Mode. An example Live Mode screen 601F displaying operational information 610 for each workcenter 606 is illustrated in
In the example of
In one implementation, the displayed operational information 610 for each of the workcenters 606 may be updated repeatedly. To maintain up-to-date operational information 610, the workcenter presentation module 216 may request or query the information periodically from the ERP system 120 via the network 114 and the workcenter data access system 122. Each query may include an indication of the KPIs to be displayed for each of the workcenters 606. In response to such requests, the workcenter data access system 122 may retrieve the requested information from one or more workcenter databases 124 and return the accessed information to the mobile communication device 600 via the network 114.
In another example, the workcenter presentation module 216 may transmit a message via the network 114 to the ERP system 120 to initiate “push” data transfers from the ERP system 120, with each data transfer including up-to-date operational information 610 for display on the mobile communication device 600. In some examples, the data transfers may occur on a periodic basis, such as once a minute, once every 10 minutes, and the like. In other implementations, the data transfers may occur when a change in the data being presented is detected in the workcenter databases 124.
As in Design Mode, the Live Mode screen 601F displaying the KPIs for each workcenter 606 may include a label for the work area 101 (e.g., Building 1) along with directional buttons 607 for navigating to other floor plans populated with graphical representations of workcenters 606 and associated operational information 610. In another example, instead of using directional buttons 607, the user may instead swipe the screen in a horizontal motion to navigate to other floor plans. The Live Mode screen 601F also provides a “Design” button 611 to allow the user to transition the mobile application 210 back to Design Mode.
Also displayed in the Live Mode screen 601F are a “Tasks” button 612 and a “Buildings” button 614 that allow access to a Tasks sub-mode and a Buildings sub-mode, respectively. By highlighting the Buildings button 614, the workcenter presentation module 216 indicates to the user that the mobile application 210 is currently in the Buildings sub-mode, thus allowing the user to view the current values of the KPIs of each workcenter 606 of a work area 101 (e.g., Building 1). Activation of the Tasks sub-mode enables the user to store text, still images, video clips, audio segments, and/or the like for each of a number of tasks to be addressed by the user. A more detailed description of the Tasks sub-mode is provided below in conjunction with
In response to the user activating (e.g., touching) one of the graphical representations of the workcenters 606 (in this case WCTR_1), the workcenter presentation module 216 may display a Live Mode building tasks screen 6010, an example of which is depicted in
Also included may be an indicator as to where the task 618 may be accomplished or addressed (e.g., “In the Building” or “In the Office”). In one example, each of the tasks 618 listed in the Live Mode building tasks screen 601G are building-related. Each of the tasks 618 may be generated by the user of the mobile communication device 600, by another employee or manager, or automatically by another system, such as the ERP system 120.
Also included with each task 618 may be a text field 624 providing data or status regarding the task 618 to be completed. The user may generate or update the text in the text field 624 via a keyboard, the touchscreen, or other means provided by the mobile communication device 600. Also presented for each task 618 may be one or more capture photo buttons 626 and one or more capture audio clip buttons 628 to allow the user to capture still images or video clips (e.g., using the image capture component 206) and audio clips (e.g., using the audio capture component 207) and associate them with the task 618. The user may also play back previously captured audio clips using a play audio button 632, and view video and/or still images using a view image button 630. In one example, the user may also activate the view image button 630 and the play audio button 632 to capture additional audio, video, and still image data associated with the corresponding task 618. For example, the user may capture a photo of an item of faulty equipment or a produced item that does not conform to specifications. Similarly, the user may capture audio of the voice of the user to take verbal notes concerning the task, or to capture sound associated with a particular piece of equipment of the workcenter 606 associated with the task 618 (e.g., WCTR_1).
In the example of
If, instead, the user activates the Orders button 636, the workcenter presentation module 216 may present an orders screen 601H, an example of which is illustrated in
Upon activation of the Key Figures button 638, either the workcenter presentation module 216 or the configuration module 212 may provide a Key Figures screen 601I, an example of which is presented in
User selection of the Maintenance/Quality button 640 may result in display of a timeline screen 601J, an example of which is provided in
In response to a user activating the Tasks button 612 while viewing any of the screens 601F through 601J of Live Mode, as shown in FIGS. 6F through 6J, the workcenter task data module 218 may present a tasks screen 601K, an example of which is depicted in
Instead of limiting the display of tasks 682 to those associated with a particular workcenter 606, as was the case with the Live Mode building tasks screen 601G of
As a result of at least some of the embodiments described above, a user may employ a mobile communication device (e.g., the mobile communication device 104 of
The machine is capable of executing a set of instructions (sequential or otherwise) that specify actions to be taken by that machine. Further, while only a single machine is illustrated, the term “machine” shall also be taken to include any collection of machines that individually or jointly execute a set (or multiple sets) of instructions to perform any one or more of the methodologies discussed herein.
The example of the processing system 700 includes a processor 702 (e.g., a central processing unit (CPU), a graphics processing unit (GPU), or both), a main memory 704 (e.g., random access memory), and static memory 706 (e.g., static random-access memory), which communicate with each other via bus 708. The processing system 700 may further include video display unit 710 (e.g., a plasma display, a liquid crystal display (LCD), or a cathode ray tube (CRT)). The processing system 700 also includes an alphanumeric input device 712 (e.g., a keyboard), a user interface (UI) navigation device 714 (e.g., a mouse), a disk drive unit 716, a signal generation device 718 (e.g., a speaker), and a network interface device 720.
The disk drive unit 716 (a type of non-volatile memory storage) includes a machine-readable medium 722 on which is stored one or more sets of data structures and instructions 724 (e.g., software) embodying or utilized by any one or more of the methodologies or functions described herein. The data structures and instructions 724 may also reside, completely or at least partially, within the main memory 704, the static memory 706, and/or within the processor 702 during execution thereof by processing system 700, with the main memory 704 and processor 702 also constituting machine-readable, tangible media.
The data structures and instructions 724 may further be transmitted or received over a computer network 750 via network interface device 720 utilizing any one of a number of well-known transfer protocols (e.g., HyperText Transfer Protocol (HTTP)).
Certain embodiments are described herein as including logic or a number of components, modules, or mechanisms. Modules may constitute either software modules (e.g., code embodied on a machine-readable medium or in a transmission signal) or hardware modules. A hardware module is a tangible unit capable of performing certain operations and may be configured or arranged in a certain manner. In example embodiments, one or more computer systems (e.g., the processing system 700) or one or more hardware modules of a computer system (e.g., a processor 702 or a group of processors) may be configured by software (e.g., an application or application portion) as a hardware module that operates to perform certain operations as described herein.
In various embodiments, a hardware module may be implemented mechanically or electronically. For example, a hardware module may include dedicated circuitry or logic that is permanently configured (for example, as a special-purpose processor, such as a field-programmable gate array (FPGA) or an application-specific integrated circuit (ASIC)) to perform certain operations. A hardware module may also include programmable logic or circuitry (for example, as encompassed within a general-purpose processor 702 or other programmable processor) that is temporarily configured by software to perform certain operations. It will be appreciated that the decision to implement a hardware module mechanically, in dedicated and permanently configured circuitry, or in temporarily configured circuitry (for example, configured by software) may be driven by cost and time considerations.
Accordingly, the term “hardware module” should be understood to encompass a tangible entity, be that an entity that is physically constructed, permanently configured (e.g., hardwired) or temporarily configured (e.g., programmed) to operate in a certain manner and/or to perform certain operations described herein. Considering embodiments in which hardware modules are temporarily configured (e.g., programmed), each of the hardware modules need not be configured or instantiated at any one instance in time. For example, where the hardware modules include a general-purpose processor 702 that is configured using software, the general-purpose processor 702 may be configured as respective different hardware modules at different times. Software may accordingly configure a processor 702, for example, to constitute a particular hardware module at one instance of time and to constitute a different hardware module at a different instance of time.
Modules can provide information to, and receive information from, other modules. For example, the described modules may be regarded as being communicatively coupled. Where multiples of such hardware modules exist contemporaneously, communications may be achieved through signal transmissions (such as, for example, over appropriate circuits and buses) that connect the modules. In embodiments in which multiple modules are configured or instantiated at different times, communications between such modules may be achieved, for example, through the storage and retrieval of information in memory structures to which the multiple modules have access. For example, one module may perform an operation and store the output of that operation in a memory device to which it is communicatively coupled. A further module may then, at a later time, access the memory device to retrieve and process the stored output. Modules may also initiate communications with input or output devices, and can operate on a resource (for example, a collection of information).
The various operations of example methods described herein may be performed, at least partially, by one or more processors 702 that are temporarily configured (e.g., by software) or permanently configured to perform the relevant operations. Whether temporarily or permanently configured, such processors 702 may constitute processor-implemented modules that operate to perform one or more operations or functions. The modules referred to herein may, in some example embodiments, include processor-implemented modules.
Similarly, the methods described herein may be at least partially processor-implemented. For example, at least some of the operations of a method may be performed by one or more processors 702 or processor-implemented modules. The performance of certain of the operations may be distributed among the one or more processors 702, not only residing within a single machine but deployed across a number of machines. In some example embodiments, the processors 702 may be located in a single location (e.g., within a home environment, within an office environment, or as a server farm), while in other embodiments, the processors 702 may be distributed across a number of locations.
While the embodiments are described with reference to various implementations and exploitations, it will be understood that these embodiments are illustrative and that the scope of claims provided below is not limited to the embodiments described herein. In general, the techniques described herein may be implemented with facilities consistent with any hardware system or hardware systems defined herein. Many variations, modifications, additions, and improvements are possible.
Plural instances may be provided for components, operations, or structures described herein as a single instance. Finally, boundaries between various components, operations, and data stores are somewhat arbitrary, and particular operations are illustrated in the context of specific illustrative configurations. Other allocations of functionality are envisioned and may fall within the scope of the claims. In general, structures and functionality presented as separate components in the exemplary configurations may be implemented as a combined structure or component. Similarly, structures and functionality presented as a single component may be implemented as separate components. These and other variations, modifications, additions, and improvements fall within the scope of the claims and their equivalents.