This invention concerns a bar code generation and processing system for associating a bar code with a particular bar code scanner and a data destination associated with a particular executable application and communicating data acquired using the particular bar code scanner to the data destination.
In known systems, a single barcode is typically directly associated with a barcode data receiving device to support an association between bar code and the device in a computer system, for example. Barcode readers are used with a medical device or other non-PC systems that incorporate embedded software. In industry and healthcare settings, barcode readers are used to capture information from a bar code label and insert it into a software system. This is usually done by using a barcode reader which is connected to a computer system or device. In this case, the data is read from a paper printed barcode label and inserted into an appropriate data field in storage in a system to which the barcode reader is attached.
In known systems a barcode reader typically needs to be physically connected to the system receiving the barcode data. If a wireless barcode reader is deployed, the barcode reader is still required to be matched with a specific device and the device is required to support a driver or connection option for a barcode reader (Serial, USB, or keyboard). In known systems that use a Bluetooth wireless barcode reader, for example, a user needs to use the barcode to scan a particular PC with which to setup a Bluetooth connection. The barcode reader is then associated to that PC. A system according to invention principles addresses these deficiencies and related problems.
A system enables wireless barcode readers to be used in a processing environment including different devices and different software applications by dynamic assignment of a barcode reader device to a software application using a barcode system server and “association” barcodes including both physical barcodes and dynamically created on-screen software generated barcodes. A bar code generation and processing system for medical and other use comprises at least one repository and a bar code processor. The at least one repository of information includes, identification data of multiple bar code scanners and also associates a bar code displayed in an image associated with an executable application and presented on a device with, the executable application and at least one of, (a) the device and (b) a data destination associated with the application. The bar code processor receives identification data of a bar code scanner and data representing the bar code displayed in the image and uses the information in associating the bar code with the data destination associated with the application and a particular bar code scanner of the multiple bar code scanners. The bar code processor communicates data acquired using the particular bar code scanner to the data destination in response to the association.
A system enables wireless barcode readers to be used throughout a software system and on different devices using different software applications by dynamic assignment of a barcode reader device to a software application and elements of the application as well as to associated tasks and processes. The system utilizes a barcode system server and “association” barcodes which might include both physical barcodes and dynamically created on-screen software generated barcodes.
The system enables multiple barcode readers to be deployed throughout an organization. The devices receiving the barcode data are not required to support barcode readers with particular types of driver or connection. This means existing devices may employ firmware modified according to invention principles to take advantage of the barcode system without requiring new hardware or hardware modifications. Also the system enables provision of a barcode reader association for a specific software application or image, not just an entire processing device or PC, for example. Specifically, the system advantageously enables association of a barcode reader with a specific software application, image, or text field allowing greater flexibility than associating the reader to a complete processing device.
At least one repository 17 includes identification data of multiple bar code scanners 26 and includes information associating a bar code displayed in an image with executable application 34 and with at least one of, (a) device 12 and (b) a data destination associated with Application 34. The image is associated with Application 34 and is presented on device 12. Bar code processor (server) 30, receives identification data of bar code scanner 41 and data representing the bar code displayed in the image and uses the information in associating the bar code with the data destination associated with application 34 and particular bar code scanner 41 of multiple bar code scanners 26. Bar code processor 30 communicates data acquired using the particular bar code scanner to the data destination in response to the association. Wireless barcode readers 26 operate over a standard wireless network in an enterprise such as a hospital. Processor 30 manages unique onscreen association barcodes and uses repository 17 in tracking mapping between currently associated barcode reader devices and active software sessions. Processor 30 enables addition of wireless barcode readers to the system and change of system configuration. Interface 19 provides an interface that operates over different types of network to send and receive information to software applications which use the barcode system.
Display 14 on device 12 presents an image associated with executable application 34 including a bar code. Communication processor 16 communicates a request for the bar code to a remote system (server 30). Communication processor 16 receives data representing the bar code for presentation in the image from the remote server system 30 in response to the request. The bar code is associated in at least one repository 17 of information, with a data destination associated with application 34 and particular bar code seamier 41 of multiple bar code scanners 26. Processor 16 receives data acquired using particular bar code scanner 41 for incorporation in the data destination in response to bar code scanning of an item with particular bar code scanner 41. Application 34 employs communication processor 16 in requesting from processor 30 unique bar codes associated with data destinations of application 34 and in receiving the barcode data.
System 10 uses barcode reader server 30 to send barcode data to a receiving system or device, such as device 12. An environment has n wireless barcode readers 26 which transmit their data to receiving server 30. Barcodes are generated and presented in an image provided by Application 34 (for example, on a patient header in a healthcare related system). The software generated onscreen barcodes are unique. When a user is ready to scan barcode data for a software application on a terminal or device, the user first scans the barcode on the screen of device 12. This unique barcode is recognized by barcode server 30 as representing a particular instance of a software application user interface image (by a specific session identifier of a webpage, by an identifier associated with the image or by another unique method of recognizing the specific image of images provided by multiple software applications). Data scanned by a barcode reader is transmitted to a software application 34 image to which the reader has been associated. Subsequently, if the image changes, the onscreen barcode is changed or is removed (and the association is discarded). In this case, system 10 requires a changed bar code to be rescanned to re-associate the barcode reader with application 34. A barcode which is scanned by the reader, while the reader is in an unassociated state, is ignored.
A healthcare or other hospital information system using Application 34 employing the barcode system uses a bidirectional interface with the barcode system for transmitting a unique one time barcode being used in an assigned location in an application image or workflow. In addition to transmitting the barcodes which are being displayed, Application 34 transmits to barcode server 30 a location ID (Session ID or other unique identifier) identifying where that unique barcode is being used. Application 34 has a receiving interface for receiving barcode data from the barcode server. This is data which starts with an association barcode and is followed by barcode data. When an association barcode is received by a receiving system, the subsequent associated barcode data is used in the context of the application workflow to which the association barcode belongs.
Application 34 in step 220 listens for data from server 30 that is tagged with the particular ULID and in response to receiving data representing a drug name, for example, populates data field 605 of image 603 with the drug name in step 223 and uses the drug name in an associated drug administration workflow. In step 225 Application 34 after a predetermined timeout period actively discards the particular ULID being used and disassociates the particular ULID from data field 605. In step 227 Application 34 sends a message to server 30 to initiate discarding the association of the particular ULID with data field 605. The text data field 605 association is used and inactivated substantially when the data barcode is scanned and populated in text data field 605 as shown in
In step 314, in response to scanner 41 scanning the unique bar code associated with the received ULID sent to Application 34 and displayed in text field 605 (
The information associates the bar code displayed in the image with elements including, at least one of, (a) a text field, (b) a workflow process, (c) a task identifier of a workflow process, (d) an image associated with the application, (e) a selectable button in the image associated with the application and (f) a value to be entered in an option list in the image associated with the application. Processor 30 uses the information in associating the bar code with at least one of the elements. In step 755, processor 30 receives identification data of a bar code scanner and data representing the bar code displayed in the image and uses the information in associating the bar code with the data destination associated with the application and a particular bar code scanner of the multiple bar code scanners. In one embodiment a bar code scanner is a phone, computer or watch, for example.
Processor 30 in step 758, communicates data acquired using the particular bar code scanner to the data destination in response to the association. Processor 30, receives identification data of a first bar code scanner and data representing the bar code displayed in the image and identification data of a second bar code scanner and data representing the second bar code displayed in the image (or a second image). Processor 30 uses the information in associating the first bar code with a first data destination associated with the application and the first bar code scanner of the multiple bar code scanners and in associating the second bar code with a second data destination associated with the application and the second bar code scanner. Also processor 30 communicates data acquired using the first and second bar code scanners to the respective first and second data destinations in response to the association. In one embodiment, processor 30 dynamically generates the bar code displayed in the image and the bar code is acquired by the application. In step 760, processor 30 discards the association with the dynamically generated bar code displayed in response to completion of use of the bar code. Alternatively, processor 30 discards the association in response detection of completion of a workflow task. The process of
An executable application, as used herein, comprises code or machine readable instructions for conditioning the processor to implement predetermined functions, such as those of an operating system, a context data acquisition system or other information processing system, for example, in response to user command or input. An executable procedure is a segment of code or machine readable instruction, sub-routine, or other distinct section of code or portion of an executable application for performing one or more particular processes. These processes may include receiving input data and/or parameters, performing operations on received input data and/or performing functions in response to received input parameters, and providing resulting output data and/or parameters. A user interface (UI), as used herein, comprises one or more display images, generated by a user interface processor and enabling user interaction with a processor or other device and associated data acquisition and processing functions.
The UI also includes an executable procedure or executable application. The executable procedure or executable application conditions the user interface processor to generate signals representing the UI display images. These signals are supplied to a display device which displays the image for viewing by the user. The executable procedure or executable application further receives signals from user input devices, such as a keyboard, mouth, light pen, touch screen or any other means allowing a user to provide data to a processor. The processor, under control of an executable procedure or executable application, manipulates the UI display images in response to signals received from the input devices. In this way, the user interacts with the display image using the input devices, enabling user interaction with the processor or other device. The functions and process steps herein may be performed automatically or wholly or partially in response to user command. An activity (including a step) performed automatically is performed in response to executable instruction or device operation without user direct initiation of the activity.
The system and processes of
This is a non-provisional Application of Provisional Application Ser. No. 61/548,787 filed Oct. 19, 2011, by R. A. Neff.
Number | Name | Date | Kind |
---|---|---|---|
5696365 | Ukai et al. | Dec 1997 | A |
6283647 | Konishi et al. | Sep 2001 | B1 |
7278579 | Loffredo et al. | Oct 2007 | B2 |
7703682 | Kenney | Apr 2010 | B2 |
7708198 | Gangi | May 2010 | B2 |
7712658 | Gangi | May 2010 | B2 |
7967190 | Hussey | Jun 2011 | B2 |
20020132585 | Palermo et al. | Sep 2002 | A1 |
20020161708 | Offer | Oct 2002 | A1 |
20030144035 | Weinblatt et al. | Jul 2003 | A1 |
20040172300 | Mihai et al. | Sep 2004 | A1 |
20050101844 | Duckert et al. | May 2005 | A1 |
20050277872 | Colby et al. | Dec 2005 | A1 |
20060106648 | Esham et al. | May 2006 | A1 |
20080011825 | Giordano et al. | Jan 2008 | A1 |
20080017722 | Snyder et al. | Jan 2008 | A1 |
20080028214 | Tafoya et al. | Jan 2008 | A1 |
20080189170 | Ramachandra | Aug 2008 | A1 |
20080198028 | Watanabe | Aug 2008 | A1 |
20080261526 | Suresh | Oct 2008 | A1 |
20090037515 | Zapata et al. | Feb 2009 | A1 |
20090112072 | Banet et al. | Apr 2009 | A1 |
20100001838 | Miodownik et al. | Jan 2010 | A1 |
20100012715 | Williams et al. | Jan 2010 | A1 |
20100038417 | Blankitny | Feb 2010 | A1 |
20100065634 | Nakamura | Mar 2010 | A1 |
20100169120 | Herbst et al. | Jul 2010 | A1 |
20100169121 | Herbst et al. | Jul 2010 | A1 |
20100219242 | Gangi | Sep 2010 | A1 |
20100230485 | Kenney | Sep 2010 | A1 |
20100271208 | Steinmetz et al. | Oct 2010 | A1 |
20110072263 | Bishop et al. | Mar 2011 | A1 |
20110081860 | Brown et al. | Apr 2011 | A1 |
20110101115 | Rampersad | May 2011 | A1 |
20110131061 | Shain | Jun 2011 | A1 |
20110210170 | Arguello | Sep 2011 | A1 |
20110297747 | Naumovsky | Dec 2011 | A1 |
20110302051 | Arbatti | Dec 2011 | A1 |
20110313870 | Eicher et al. | Dec 2011 | A1 |
20120029303 | Shaya | Feb 2012 | A1 |
20120041782 | Morris | Feb 2012 | A1 |
20120072536 | Xu et al. | Mar 2012 | A1 |
20120179908 | Duma | Jul 2012 | A1 |
20120205441 | Utech et al. | Aug 2012 | A1 |
20130013548 | Alexander et al. | Jan 2013 | A1 |
20130185092 | Dubbels et al. | Jul 2013 | A1 |
20140288947 | Simpson et al. | Sep 2014 | A1 |
Number | Date | Country | |
---|---|---|---|
20130098983 A1 | Apr 2013 | US |
Number | Date | Country | |
---|---|---|---|
61548787 | Oct 2011 | US |