WO2014119290A1 - 制御システム、制御システムの制御方法、及び、制御装置 - Google Patents
制御システム、制御システムの制御方法、及び、制御装置 Download PDFInfo
- Publication number
- WO2014119290A1 WO2014119290A1 PCT/JP2014/000433 JP2014000433W WO2014119290A1 WO 2014119290 A1 WO2014119290 A1 WO 2014119290A1 JP 2014000433 W JP2014000433 W JP 2014000433W WO 2014119290 A1 WO2014119290 A1 WO 2014119290A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- control
- terminal
- data
- identification information
- communication
- Prior art date
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/06—Management of faults, events, alarms or notifications
- H04L41/0654—Management of faults, events, alarms or notifications using network fault recovery
- H04L41/0659—Management of faults, events, alarms or notifications using network fault recovery by isolating or reconfiguring faulty entities
- H04L41/0661—Management of faults, events, alarms or notifications using network fault recovery by isolating or reconfiguring faulty entities by reconfiguring faulty entities
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q20/00—Payment architectures, schemes or protocols
- G06Q20/08—Payment architectures
- G06Q20/20—Point-of-sale [POS] network systems
- G06Q20/202—Interconnection or interaction of plural electronic cash registers [ECR] or to host computer, e.g. network details, transfer of information from host to ECR or from ECR to ECR
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L43/00—Arrangements for monitoring or testing data switching networks
- H04L43/08—Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters
- H04L43/0823—Errors, e.g. transmission errors
- H04L43/0847—Transmission error
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/14—Session management
- H04L67/143—Termination or inactivation of sessions, e.g. event-controlled end of session
- H04L67/145—Termination or inactivation of sessions, e.g. event-controlled end of session avoiding end of session, e.g. keep-alive, heartbeats, resumption message or wake-up for inactive or interrupted session
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/14—Session management
- H04L67/146—Markers for unambiguous identification of a particular session, e.g. session cookie or URL-encoding
-
- G—PHYSICS
- G07—CHECKING-DEVICES
- G07G—REGISTERING THE RECEIPT OF CASH, VALUABLES, OR TOKENS
- G07G1/00—Cash registers
- G07G1/12—Cash registers electronically operated
- G07G1/14—Systems including one or more distant stations co-operating with a central processing unit
Definitions
- the present invention relates to a control system including a control device and a terminal, a control method for the control system, and a control device.
- POS system a control system
- POS controller a terminal connected to the POS terminal and that performs various processing such as printing
- POS terminal a control device
- POS controller a terminal connected to the POS terminal and that performs various processing such as printing
- POS terminal a control device
- POS controller terminal
- POS terminal a terminal connected to the POS terminal and that performs various processing such as printing
- Patent Document 1 a control device and a terminal communicate via a network.
- terminals such as personal computers, tablet terminals, and notebook computers, browsers installed are widely used.
- the system and the control device When constructing a system including a terminal in which a browser is installed and a control device, the system and the control device need to correspond to a configuration in which the terminal and the control device communicate via a network.
- the present invention has been made in view of the circumstances described above, and relates to a control system in which a terminal having a browser and a control device communicate with each other via a network. The system and the control device communicate with each other via the network. It aims at making it correspond to the structure to do.
- the present invention establishes a communication connection between a terminal on which a browser operates and a control device that transmits and receives data to the terminal, generates identification information related to the established communication connection, and generates the generated identification information.
- Identification related to the communication connection stored in the terminal and the control device when the communication connection is made again after the communication connection between the terminal and the control device is disconnected and the communication connection between the terminal and the control device is disconnected.
- a communication connection is performed based on the information.
- the identification information corresponding to the connection is stored in the terminal and the control device according to the establishment of the connection between the terminal and the control device, and at the time of reconnection after the connection is disconnected Then, reconnection is performed based on the identification information. For this reason, at the time of reconnection, it becomes possible to perform reconnection in a mode corresponding to the connection before disconnection using the identification information.
- the communication connection based on the identification information related to the communication connection is executed when the communication connection is performed again within a predetermined period after the communication connection between the terminal and the control device is disconnected. According to the configuration of the present invention, even if there is a temporary disconnection of communication such as a momentary disconnection, reconnection can be executed in a mode using identification information.
- the control system of the present invention includes a device that transmits data, a first communication unit that communicates with the device and receives the data transmitted by the device, and the first communication.
- a control unit having a device control unit that assigns identification information to the data received by a unit, a storage unit that stores data to which the identification information is added, and a second communication unit that transmits the data to which the identification information is given
- a terminal storage unit for storing the identification information of the device and the data to which the identification information transmitted from the control unit is received, the data to which the identification information received by the connection unit is received, And a terminal control unit that operates an application that processes the data to which the identification information is attached, and a terminal on which a browser operates.
- the identification information is given to the data transmitted from the control device to the terminal, the control device stores the transmitted data, and the terminal stores the identification information related to the received data. For this reason, when there is a disconnection, it is possible to specify data not received by the terminal due to the disconnection using the identification information as a key, and it is possible to retransmit the specified data. That is, for a control system in which a terminal having a browser and a control device communicate via a network, the system can be made to correspond to a configuration in which each device communicates via the network.
- the terminal transmits the stored identification information to the control device, and the device control unit of the control device
- the identification information not stored in the terminal is assigned based on the identification information transmitted from the terminal and the identification information of the data to which the identification information stored in the storage unit is assigned.
- the data is determined, and the second communication unit of the control device transmits data to which the identification information that is not stored in the terminal is added.
- the identification information given by the device control unit of the control device is information having regularity, and the device control unit is not stored in the terminal based on the regularity of the identification information Data with the identification information is determined.
- the terminal transmits identification information about the data received in a certain period to the control device, and the control device receives the identification information and the identification information in the stored data with the identification information.
- the control device can identify the data that the terminal has not received by a simple means that uses the regularity of the identification information without performing processing such as identifying data that has not been received by the terminal. It is.
- the control device assigns identification information to data transmitted from a connected device, stores the data to which the identification information is given, and stores the data to which the identification information is given as a terminal.
- the terminal that has received the data to which the identification information has been sent stores the identification information of the data to which the identification information has been given.
- the identification information is given to the data output from the control device to the terminal, the control device stores the output data, and the terminal stores the identification information related to the input data. For this reason, when there is a disconnection, it is possible to specify data that has not been input to the terminal due to the disconnection using the identification information as a key, and it is possible to re-output the specified data.
- the terminal transmits the stored identification information to the control device, and the control device transmits Based on the identification information that has been stored and the identification information of the data to which the stored identification information has been added, data to which the identification information that has not been stored in the terminal is added is transmitted to the terminal.
- the configuration of the present invention it is possible to specify data that has not been input to the terminal using the identification information when reconnecting after disconnection.
- a control apparatus includes a first communication unit that is connected to a device and communicates with the device, and a second communication unit that is connected to a terminal on which a browser operates and receives a request from the terminal. Operate a control object for controlling the device based on a request from the communication unit and the terminal, and delete the control object after holding the control object for a predetermined period when the communication connection with the terminal is disconnected And a device control unit.
- the control object in response to the disconnection of communication, the control object is not deleted immediately, but is deleted after being held for a predetermined period. For this reason, even if there is an unintended temporary communication disconnection, the control object is not deleted, and when the temporary communication disconnection is recovered, Control can be started. Further, since the control object is erased after being held for a predetermined period, it is prevented that the control object is not erased unnecessarily for a long time and the control of the device is not released. That is, for a control system in which a terminal having a browser and a control device communicate with each other via a network, the control device can correspond to a configuration in which each device communicates via a network.
- the device control unit performs the control based on a request from the terminal. Create and run an object. According to the configuration of the present invention, after the communication is disconnected, even if the reconnection is not performed within a predetermined period and the control object is deleted, the control object is generated based on the request from the terminal, and the device is quickly Can be controlled.
- the control object operated by the device control unit converts the transmitted request from the terminal into data transmitted to the device via the first communication unit. According to the configuration of the present invention, it is possible to control a device by issuing a request to the device from the terminal using the function of the control object.
- FIG. 1 is a schematic configuration block diagram of a POS (Point of Sales) system 1 (control system) according to the present embodiment.
- FIG. 2 is a block diagram showing a functional configuration of the tablet terminal 10 (terminal), the control device 11, and the POS server 17 constituting the POS system 1.
- the POS system 1 is a system applied to a shopping center, a retail store such as a department store or a convenience store, a restaurant, a restaurant such as a coffee shop or a pub, and other stores and facilities.
- the POS system 1 has a function for managing the sales status of products at a store, the status of product inventory, the status of sales, and the like, and a function for performing accounting according to products purchased by customers at a cashier counter L provided in the store. , A function of issuing a receipt in response to payment of a price by the customer, a function of providing information relating to accounting to the customer, and the like.
- a store to which the POS system 1 according to the present embodiment is applied is provided with a cashier counter L that performs accounting processing.
- One cashier counter L is provided with a control device 11 and a tablet terminal 10 connected to the control device 11 so as to be capable of wireless communication.
- the tablet terminal 10 is a tablet (plate-shaped) computer.
- the tablet terminal 10 according to the present embodiment is a computer of a type in which a touch panel 30 is provided in a display area formed on the front surface and various inputs can be performed by a touch operation.
- the tablet terminal 10 is a terminal used by a cashier in charge of accounting at the cashier counter L. As will be described later, the tablet terminal 10 provides a user interface (I / F) to the cashier in charge at the cashier counter L.
- the control device 11 is a device having a function as a device control device. As shown in FIG. 2, the control device 11 accommodates and manages a barcode scanner 12 (device) that reads a product or a barcode attached to the product as a device, bills, money, cash vouchers, and the like. At least one of a cash changer 13 (device) and a display 14 (device) for displaying information related to accounting to a customer is connected.
- the control device 11 includes a control unit 20, a printing unit 21 (device), a storage unit 22, and a communication module 23.
- the control unit 20 includes a CPU, a ROM, a RAM, other peripheral circuits, and the like, and controls the control device 11.
- the control unit 20 includes a device control unit 20a, which will be described later.
- the printing unit 21 includes a conveyance mechanism that conveys roll paper, a printing mechanism that prints characters and images on the roll paper using a thermal head, a cutting mechanism that cuts the roll paper, and the like. After that, it is possible to issue a receipt by cutting the roll paper at a predetermined position.
- the storage unit 22 includes a nonvolatile memory such as an EEPROM, and stores various data in a rewritable manner.
- the communication module 23 includes a module that wirelessly communicates with the tablet terminal 10 such as a network card according to a predetermined communication standard, a communication control circuit, and the like, and between the tablet terminal 10 according to the control of the control unit 20. Wireless communication is performed according to a predetermined communication standard.
- the tablet terminal 10 includes a display unit 24, a terminal storage unit 25, a terminal control unit 26, a communication module 27, and an input detection unit 29.
- the terminal control unit 26 includes a display control unit 28.
- the terminal storage unit 25 includes a nonvolatile memory such as an EEPROM and stores various data in a rewritable manner.
- the display unit 24 includes a touch panel 30.
- the touch panel 30 includes a display panel 30a disposed on the front surface of the tablet terminal 10 and a touch sensor 30b disposed so as to overlap the display panel 30a.
- the display panel 30 a is a display such as a liquid crystal display panel, an organic EL panel, or electronic paper, and is driven by the display control unit 28.
- the touch sensor 30b is a capacitance-type or pressure-sensitive sensor that is placed on the display panel 30a, and indicates a position where the touch operation is detected by detecting a touch operation by a user's finger or a pen-type operation device.
- the signal is transmitted to the input detection unit 29.
- the display control unit 28 drives the display panel 30a based on display data received from a browser execution unit 26a described later, and displays a screen including characters, images, and the like on the display panel 30a.
- the input detection unit 29 detects a touch operation on the touch panel 30 based on a signal transmitted by the touch sensor 30b. When this touch operation is detected, the input detection unit 29 generates coordinate data indicating the operation position by coordinates corresponding to the display position of the display panel 30 a and transmits the coordinate data to the terminal control unit 26.
- the communication module 27 includes a control device 11 such as a network card according to a predetermined communication standard, and a module, a circuit, and the like that wirelessly communicate with the POS server 17. The control device 11 is controlled by the terminal control unit 26. And wireless communication with the POS server 17 in accordance with a predetermined communication standard.
- the terminal control unit 26 includes a CPU, ROM, RAM, other peripheral circuits, and the like, and controls the tablet terminal 10.
- the terminal control unit 26 includes a browser execution unit 26a that realizes a browser function by executing a browser program.
- the browser execution unit 26 a downloads a web page (HTML file or the like) described in a markup language such as HTML or a script language from the POS server 17 by the function of the web browser.
- the downloaded web page data is stored in a RAM (not shown), for example.
- the browser execution unit 26 a reads the downloaded web page data, generates display data for displaying the web page, and transmits the display data to the display control unit 28.
- the display control unit 28 displays a web page on the display panel 30a based on the received display data.
- the browser execution unit 26a sends the coordinate data received from the input detection unit 29 in response to the touch operation and the display control unit 28.
- the input content is specified based on the transmitted display data.
- the browser execution unit 26a executes a corresponding process using a script function, for example.
- the POS server 17 includes a server storage unit 36 that stores a database that stores information about products, a database that manages sales, a database that manages inventory, and the like, and manages the POS system 1 using these databases.
- the POS server 17 includes a server control unit 37, a server storage unit 36, and a communication module 38.
- the server control unit 37 includes a CPU, ROM, RAM, and other peripheral circuits, and controls each unit of the POS server 17.
- the server storage unit 31 includes a hard disk, a nonvolatile memory such as an EEPROM, and stores various data in a rewritable manner.
- the communication module 38 includes a module, a circuit, and the like that wirelessly communicate with the tablet terminal 10 such as a network card in accordance with a predetermined communication standard, and a predetermined communication with the tablet terminal 10 according to the control of the server control unit 37. Wireless communication is performed according to the communication standard.
- a POS application 35 is installed in the POS server 17.
- the browser execution unit 26 a of the tablet terminal 10 executes various processes using the function of the POS application 35 on the POS server 17. More specifically, the browser execution unit 26a appropriately requests the POS server 17 for calculation processing, causes the POS application 35 to execute calculation processing, receives the processing result, and responds based on the processing result. Execute the process. For example, the browser execution unit 26a transmits the reading result of the barcode scanner 12 to the POS server 17, causes the POS application 35 to execute a product search, receives the search result, and controls the control device 11 based on the search result. To display product information on the display 14. Further, it requests the calculation of the total amount of accounting, causes the POS application 35 to calculate the total amount, receives the calculation result, controls the control device 11 based on the calculation result, and prints information including the total amount. Issue a receipt.
- the “application that operates in the browser” includes an application installed in another device with which the browser execution unit 26 a can communicate, such as the POS application 35. That is, the “application that operates in the browser” includes an application that is installed in a device different from the tablet terminal 10 and that can be used by the browser execution unit 26a. In this case, the application may be activated and executed by another device capable of communication, and the application is downloaded from the other device to the tablet terminal 10 and activated by the tablet terminal 10. It may be executed and operated.
- the “application that operates in the browser” includes programs and software that can be used by the browser execution unit 26a, such as scripts implemented in web pages (HTML files and the like) read by the browser execution unit 26a.
- FIG. 3 is a diagram illustrating in more detail functional block diagrams of the browser execution unit 26a of the tablet terminal 10 and the device control unit 20a of the control device 11.
- programs, software objects, blocks representing functions realized by the programs, physical devices such as devices, and the like are represented at the same level.
- an “object” is an instance generated by object-oriented programming, that is, a functional block defined as a set of data and methods.
- the “object” is not limited to an instance generated by object-oriented programming, and may be a functional block that can execute processing based on the corresponding function.
- the “object” may be a functional block that realizes its function when an application is read and executed by a hardware resource such as a CPU.
- a configuration in which the function of one functional block is realized by one application a configuration in which the functions of a plurality of functional blocks are realized by one application, or a plurality of functions may be realized.
- a configuration in which the function of one functional block is realized by an application may be employed.
- an application AP operates in the browser execution unit 26a of the tablet terminal 10.
- the application AP includes an application that operates on another device such as the POS application 35, an application downloaded from another device, a script implemented in an HTML file read by the browser execution unit 26a, and the like.
- the browser execution unit 26a is a concept including an application that can use the function.
- a cache changer I / F object 40 (interface object), a barcode scanner I / F object 41 (interface object), a display I / F object 42 (interface object), and a printer I / F object 43 (Interface object) is operable.
- the overall control object 44 and the connection unit 45 can operate.
- the second communication unit 50 In the device control unit 20a, the second communication unit 50, the relay object 51, the cache changer control object 53 (control object), the barcode scanner control object 54 (control object), the display control object 55 (control object), and the printer control.
- the object 56 (control object) and the first communication unit 71 can operate.
- FIG. 4 is a flowchart showing a procedure when objects are generated in the browser execution unit 26a and the device control unit 20a.
- the barcode scanner I / F object 41 is generated as an interface object
- the barcode scanner control object 54 is used as a control object. Represents.
- the application AP executes the overall control object generation process (step SA1).
- the overall control object generation process is a process for generating the overall control object 44.
- the overall control object 44 is implemented with various methods related to control of the POS system 1, such as methods related to communication path establishment and disconnection processing, and control object and interface object generation and deletion processing. Object.
- step SA1 The overall control object generation process in step SA1 is executed when, for example, a dedicated API (Application Program Interface) is provided by the manufacturer of the control device 11, and the application AP uses the function of the API.
- the application AP executes a communication path establishment request (communication request) (step SA2).
- a communication path establishment request is a state in which a logical communication path K1 related to WebSocket is established between the tablet terminal 10 and the control device 11, and data can be transmitted and received between these devices according to WebSocket.
- a request to establish This communication path establishment request (communication request) is made when the application AP calls and executes a dedicated method implemented in the overall control object 44.
- WebSocket is one of the communication standards that enables asynchronous two-way communication between a server and a client connected via a network. In WebSocket, after a server and a client establish a WebSocket connection CT, data transmission / reception is performed using a dedicated protocol by the connection. For this reason, it is not necessary to establish a connection every time data transmission occurs.
- the communication path K1 is a logical communication path for transmitting and receiving data between the tablet terminal 10 connected by the communication path K1 and the control device 11 according to the WebSocket protocol and procedure. Therefore, after a predetermined handshake is performed between the tablet terminal 10 and the control device 11 and the communication path K1 is established, these apparatuses can transmit and receive data asynchronously through the communication path K1.
- connection unit 45 and the second communication unit 50 are WebSocket interfaces that transmit and receive data in accordance with WebSocket standards and procedures. These functional blocks are generated using, for example, a Socket library related to WebSocket.
- the second communication unit 50 has a function of processing the data received from the relay object 51 according to the WebSocket and transmitting the data through the communication path K1 according to the procedure according to the WebSocket. Further, the second communication unit 50 has a function of performing processing according to WebSocket for data received through the communication path K ⁇ b> 1 and transmitting the data to the relay object 51. The same applies to the connecting portion 45.
- the relay object 51 is an object that operates in the device control unit 20a. In the relay object 51, in addition to the above-described method for establishing the communication path K1, methods for performing various processes described later are mounted.
- a communication path ID that is identification information of the communication path K1 is given to the communication path K1 by the function of the overall control object 44 or the relay object 51.
- the assigned communication path ID is stored in a predetermined storage area in the terminal storage unit 25 in a state where the application AP can refer to the tablet terminal 10.
- the communication path ID is stored in a predetermined storage area in the storage unit 22 in a state where the relay object 51 can be referred to in the control device 11. Note that, by establishing the communication path K1, a communicable state is established between the tablet terminal 10 (terminal) and the control device 11.
- the application AP executes a barcode scanner control object generation request (device control request) (step SA4).
- the barcode scanner control object generation request is a process for requesting generation of the barcode scanner control object 54 operating on the device control unit 20a.
- the generation of the device control object establishes a state in which the corresponding device can be controlled (device control is established). Therefore, the processing in step SA4 is performed by “application (or terminal). Corresponds to the process of “requesting device control”.
- identification information (hereinafter referred to as “device ID”) is assigned to each device connected to the control apparatus 11 for each type of device.
- “scanner” is assigned to the barcode scanner 12 as a device ID.
- the application AP designates the device ID of the barcode scanner 12, which is a corresponding device.
- the relay object 51 generates a control object corresponding to the device to be generated, using the designated device ID as a key.
- a control object is an object in which various methods related to device control are implemented, and controls the corresponding device by using the function of the corresponding handler.
- the cache changer control object 53 has methods for executing various processes related to the control of the cache changer 13.
- the object controls the cache changer 13 using the function of the cache changer handler 61.
- a handler is a function or a subroutine that executes processing related to a corresponding device in response to a request. For example, when the barcode scanner 12 executes barcode reading, the barcode scanner handler 60 receives an input of the reading result, performs an interruption process, and reads the reading result (for example, a numeric character string). Data) to the barcode scanner control object 54.
- the other handlers cache changer handler 61, display handler 62, and printer handler 63).
- the first communication unit 71 is a device interface connected to various devices, transmits data transmitted from the control object to the device, and transmits data transmitted from the device to the control object. As described above, the control device 11 establishes control of the corresponding device by generating the control object.
- the overall control object 44 issues a barcode scanner control object generation request to the relay object 51 through the communication path K1 (step SA5).
- the relay object 51 uses a control object (in this example, a barcode scanner) corresponding to a device ID (in this example, the device ID “scanner” of the barcode scanner 12) specified by a new statement, for example.
- a control object 54 is generated (step SA6). That is, the device control unit 20a generates a control object, and the generated control object operates in the device control unit 20a.
- step SA6 the relay object 51 manages the generated barcode scanner control object 54 in association with the communication path ID assigned in step SA3. This is the same when other control objects are generated. In this way, since the association between the control object and the communication path ID is performed by the relay object 51, the relay object 51 can grasp which application AP is under the management of each control object.
- each of the tablet terminals establishes a WebSocket communication path with the control device 11.
- a different communication path ID is assigned to each communication path.
- the first tablet terminal generates the barcode scanner control object 54 in order to place the barcode scanner 12 under the control of the application AP that operates by itself.
- the relay object 51 manages the barcode scanner control object 54 in association with the communication path ID of the communication path related to the first tablet terminal. Further, it is assumed that the second tablet terminal has generated the cash changer control object 53 in order to place the cash changer 13 under the control of the application AP that operates by itself. In this case, the relay object 51 manages the cash changer control object 53 in association with the communication path ID of the communication path related to the second tablet terminal. Accordingly, the relay object 51 uses the communication path ID corresponding to the data transmitted from the barcode scanner control object 54 to the first tablet terminal based on the reading result of the barcode scanner 12, that is, the first It transmits to a 1st tablet terminal by the communication path which concerns on 1 tablet terminal.
- the application AP that operates on the second tablet terminal controls the cash changer 13
- the application AP that operates on the second tablet terminal controls the cash changer 13
- the communication path ID of the communication path if there is communication through the communication path related to the second tablet terminal, it is associated with the communication path ID of the communication path.
- Data or the like is transmitted to the cache changer control object 53.
- the relay object 51 manages each control object in association with the communication path ID, so that even when a plurality of tablet terminals are connected and a plurality of communication paths are established, The control object does not communicate on the wrong communication path.
- the relay object 51 When the generation of the barcode scanner control object 54 is completed, the relay object 51 notifies the overall control object 44 through the communication path K1 that the generation of the object has been completed (step SA7).
- the overall control object 44 sends the notification to the application AP (step SA8). Note that, during the barcode scanner control object generation processing in step SA4, a callback for receiving the processing result of the processing related to the generation of the control object is specified, and the callback function is executed, so that the application AP is Thus, notification that the generation of the barcode scanner control object 54 has been successful is performed. Further, the overall control object 44 generates the barcode scanner I / F object 41 in correspondence with the barcode scanner control object 54 that has been generated (step SA9).
- the interface object has a function as an interface that allows the application AP to use a method implemented in the control object related to the corresponding device when the device is controlled by the application AP. That is, when an application AP controls a certain device and transmits information to an interface object corresponding to the one device, the interface object communicates with a control object corresponding to the one device. Then, the method implemented in the control object is executed, and the control of the one device can be realized.
- the application AP transmits information related to the control of the printing unit 21 to the printer I / F object 43.
- the printer I / F object 43 communicates with the printer control object using the communication path K ⁇ b> 1 and transmits information related to the control of the printing unit 21 received from the application AP to the printer control object 56.
- the printer control object 56 controls the printing unit 21 based on the received information related to the control of the printing unit 21.
- the application AP can control the device using the method of the control object via the interface object. That is, “establishing device control via the control device 11 by the application AP” is performed by generating the interface object accompanying the generation of the control object.
- the generation of the barcode scanner control object 54 and the barcode scanner I / F object 41 is completed.
- control objects and interface objects are generated in the same procedure.
- the corresponding interface object is generated. Due to such a configuration, a pair of control objects and an interface object are always generated for one device, and a state in which the device can be controlled by the application AP is established for each device.
- a pair of interface objects and control objects are generated for each device connected to the control apparatus 11. Due to such a configuration, the application AP can reliably control the one device by using the function of the interface object corresponding to the one device when controlling the certain device. The data can be transmitted / received to / from the one device. Further, when developing (programming) the application AP, a program related to a software interface related to device control can be developed easily by considering the relationship with the interface object of each device. For example, a program related to the control of the cache changer 13 in the application AP may be developed in consideration of transmission / reception of information (data) in relation to the cache changer I / F object 40, and the development becomes easy.
- the application AP executes an erase request (device control release request) for the barcode scanner control object 54 (step SB1). At that time, the application AP designates the device ID of the barcode scanner 12. The request for deleting the control object is executed when the application AP executes a method implemented in the overall control object 44. In response to the erasure request for the barcode scanner control object 54 by the application AP, the overall control object 44 issues an erasure request for the barcode scanner control object 54 to the relay object 51 through the communication path K1 (step SB2).
- the relay object 51 uses a control object (in this example, a barcode) corresponding to a device ID (in this example, the device ID “scanner” of the barcode scanner 12) specified by the delete operator.
- the scanner control object 54 is deleted (step SB3). By erasing the control object, establishment of control of the barcode scanner 12 in the control device 11 is released.
- the relay object 51 When the erasure of the barcode scanner control object 54 is completed, the relay object 51 notifies the overall control object 44 that the erasure has been completed via the communication path K1 (step SB4). Sends the notification to the application AP (step SB5).
- step SB1 a callback for receiving the processing result of the process related to the deletion of the control object is specified, and the barcode scanner control is performed on the application AP by executing the callback function. A notification that the erasure of the object 54 is successful is performed. Further, the overall control object 44 deletes the barcode scanner I / F object 41 in correspondence with the barcode scanner control object 54 that has been deleted (step SB6).
- the application AP requests disconnection (communication release request) of the communication path K1 established with the control device 11 (step SB7).
- the request is executed by the application AP executing a dedicated method implemented in the overall control object 44.
- the overall control object 44 and the relay object 51 disconnect the communication path K1 established between the connection unit 45 and the second communication unit 50 in accordance with the WebSocket standard (step SB8).
- the generated control object and interface object are deleted and the established communication is released.
- the generated control object can be deleted at an arbitrary timing according to the request of the application AP. That is, when it is no longer necessary for the application AP to be under the control of a certain device, the application AP can immediately delete the control object related to the one device and release the control of the one device. Is possible. For this reason, it is possible to effectively prevent a control object from remaining unnecessarily and an application AP of another tablet terminal from unnecessarily continuing a state in which the device cannot be controlled.
- the tablet terminal 10 executes the following processing. That is, the person in charge of the cash register or another person who engages in other work starts up the browser of the tablet terminal 10 and instructs the touch panel 30 to display the user interface UI (see FIG. 6A).
- the browser execution unit 26a of the terminal control unit 26 accesses a predetermined address on the POS server 17, acquires web page data such as an HTML file, and sets the user interface UI based on the data. Display on the touch panel 30.
- FIG. 6A is a diagram illustrating an example of a user interface UI displayed on the touch panel 30.
- a list display area 65 in which the name of the product purchased by the customer, the unit price of the product, and the quantity of the product are displayed in a list is displayed on the upper left.
- an amount display area 66 is displayed in which the total amount of products purchased by the customer, the amount of money deposited from the customer at the time of accounting, and the amount of change to be given to the customer are displayed.
- a bar code information input field which is an input field where information (hereinafter referred to as “bar code information”) represented by the bar code read by the bar code scanner 12 is input and displayed.
- Bar code information is basically identification information uniquely assigned to each type of product.
- a software numeric keypad 68 is displayed on the right side of the barcode information input field 67. Information can be input to each of the input fields formed on the user interface UI via the software numeric keypad 68.
- the software numeric keypad 68 has a key for inputting information.
- an address input field 69 for displaying an access destination address is displayed at the upper end portion of the user interface UI.
- FIG. 7 is a flowchart for explaining the procedure of the above process.
- a callback name is registered in advance for the barcode scanner I / F object 41 by the application AP (step SC1).
- the callback name is an identification name assigned to each event (for example, an event of reading a barcode by the barcode scanner 12).
- the cashier person reads the bar code attached to one product purchased by the customer by the bar code scanner 12 (step SX1).
- the reading result is input to the barcode scanner handler 60 (step SC2).
- the barcode scanner handler 60 performs interrupt processing and transmits barcode information as a reading result to the barcode scanner control object 54 (step SC3).
- the barcode scanner control object 54 includes at least a device ID of the barcode scanner 12 (in this example, “scanner”), a callback name (in this example, “ondata”), and barcode information (data). Data is transmitted to the relay object 51 in a predetermined data format (step SC4).
- the relay object 51 generates a data ID (identification information) and assigns it to the barcode information included in the received data in a predetermined manner (step SC5).
- the data ID is identification information uniquely assigned to identify data (barcode information in this example) to be transferred to the application AP.
- the data ID is a number, and the relay object 51 generates and assigns the data ID such that the value increases as the transmission of data to the overall control object 44 becomes slower in time. . For example, when the data ID of the value “1” is generated and assigned to the received barcode information and transmitted to the overall control object 44, the value “2” (from “1”) If it is a large value, a data ID other than “2” may be generated, assigned, and transmitted to the overall control object 44. A method of using the assigned data ID will be described in detail later.
- the relay object 51 stores the barcode information (data) to which the data ID is assigned in a predetermined storage area in the storage unit 22 (step SC6).
- data (device-related information) related to the device with the data ID transmitted to the application AP is cumulatively stored in the storage unit 22.
- the relay object 51 receives the barcode ID (data) with the device ID of the barcode scanner 12 (in this example, “scanner”), the callback name (in this example, “ondata”), and the data ID.
- the included data is transmitted to the overall control object 44 in a predetermined data format (step SC7).
- the relay object 51 transmits data through the communication path K1 related to the communication path ID associated with the barcode scanner control object 54.
- the overall control object 44 transmits data to a predetermined interface object (in this example, the barcode scanner I / F object 41) using the device ID included in the received data as a key (step SC8).
- the barcode scanner I / F object 41 executes a predetermined callback function based on the callback name (in this example, “ondata”), and transmits barcode information with a data ID to the application AP ( Step SC9).
- the application AP executes display processing based on the received barcode information, and displays the barcode information in the barcode information input field 67 (step SC10). As a result, the barcode information is displayed in the barcode information input field 67 as shown in FIG.
- the application AP extracts the data ID from the received barcode information with the data ID, and stores the data ID in a predetermined storage area of the terminal storage unit 25 (step SC11).
- the terminal storage unit 25 cumulatively stores the data ID of the data transmitted to the application AP among the transmission data of the device (in this example, barcode information). It becomes. A method of using the data ID stored in the terminal storage unit 25 will be described later.
- FIG. 8 is a flowchart for explaining the procedure of the above process.
- the application AP generates an image to be printed on a receipt using the implemented function, and generates an XML file (information on a device) including information on a receipt to be issued by the printing unit 21 based on the generated image.
- the XML file includes information for issuing a receipt, such as information on characters and images to be printed on a receipt, in a predetermined format in accordance with the XML format.
- the printer control unit 80 The XML file can be converted into a control command of the command system of the printing unit 21.
- the application AP transmits, to the printer I / F object 43, data including at least the device ID of the printing unit 21, information specifying a function to be executed by the printer control object 56, and the generated XML file.
- the function executed by the printer control object 56 is a function that performs processing for transmitting the XML file to the printer control unit 80 via the printer display I / F 81.
- the printer I / F object 43 sends a request for transmission of data transmitted from the application AP to the printer control object 56 to the overall control object 44.
- the overall control object 44 transmits the data to the relay object 51 through the communication path K1 (Step SD4), and the relay object 51 transmits the data to the printer control object 56 (Step SD5).
- the printer control object 56 executes the function specified in the received data, thereby transmitting the XML file included in the received data to the printer control unit 80 via the printer display I / F 81 (step SD6). At that time, the printer control object 56 performs data shaping and data conversion so that the printer control unit 80 can process the XML file, and then transmits the XML file to the printer control unit 80.
- the printer control unit 80 is a functional block realized by a function of a so-called printer driver.
- the printer control unit 80 generates a control command according to the command system of the printing unit 21 based on the received XML file. It transmits to the printing part 21 (step SD7). Based on the received control command, the printing unit 21 operates various mechanisms to issue a receipt (step SD8).
- the application AP transmits display data to the display control object 55 via the display I / F object 42.
- the display control object 55 transmits display data to the display control unit 82 via the printer / display I / F 81.
- the display control unit 82 converts the received display data into a control command system of the command system of the display 14 and transmits it to the display 14 using the function of the display handler 62.
- the display 14 displays display data based on the control command.
- control of the device by the application AP and transmission / reception of data between the application AP and the device are appropriately performed by communication between the interface object corresponding to the device and the control object.
- the tablet terminal 10 and the control device 11 perform communication according to WebSocket. That is, any device can transmit data to the other device without issuing a data transmission request from the browser related to the tablet terminal 10 to the control device 11 functioning as a server.
- the interface object and the corresponding control object can communicate bidirectionally. Therefore, as described with reference to the flowchart of FIG. 7, it is possible to smoothly transmit data from the device to the application AP via the control object and the interface object, triggered by the event on the device side.
- the application AP can control the device via the interface object and the control object using an event on the application AP side as a trigger.
- the control of the corresponding device is established by generating the control object of each device.
- the generation of the control object establishes a state in which data can be transmitted / received to / from the corresponding control object, thereby enabling the corresponding device to execute various processes by the application AP.
- Data can be transmitted from the corresponding device to the application AP.
- the control object may cause the device to perform specific processing by transmitting the data transmitted by the application AP to the device (or the control unit of the device).
- a control command may be sent to the device to cause the device to perform a specific process.
- the barcode scanner control object 54 acquires the reading result by interrupt processing when the barcode scanning is executed by the corresponding barcode scanner 12 as its function (method). Then, it has a function (method) of transmitting the acquired reading result to the application AP via the barcode scanner I / F object 41. That is, the barcode scanner control object 54 enables transmission of the read result to the tablet terminal 10 in accordance with the reading of the barcode by the corresponding barcode scanner 12. Therefore, establishment of device control here represents establishment of a state in which the reading result of the corresponding barcode scanner 12 can be transmitted to the tablet terminal 10. These functions can be executed by generating the barcode control object 54.
- the printer control object 56 performs data shaping and data conversion on the XML file generated by the application AP so that the printer control unit 80 can process it, and then transmits the XML file to the printer control unit 80.
- the printer control unit 80 generates and transmits a control command based on the data transmitted in a processable manner, and causes the printing unit 21 to issue a receipt (execute printing).
- the printer control object 56 acquires data transmitted by the printing unit 21 (for example, data representing the status (out of paper, error, etc.) of the printing unit 21) via the printer control unit 80. Then, the printer control object 56 transmits the acquired data to the application AP via the printer I / F object 43.
- the establishment of device control is a state in which data can be transmitted from the tablet terminal 10 (application AP) to the corresponding printing unit 21, and printing is performed on the printing unit 21 by the tablet terminal 10 (application AP). It represents the establishment of a state in which various processes can be executed. In addition, it represents establishment of a state in which data can be transmitted from the corresponding printing unit 21 to the tablet terminal 10 (application AP) at an appropriate timing. These functions are realized by generating the printer control object 56.
- the device control is established in the same manner as the printer control object 56. That is, by generating the display control object 55, it is possible to transmit data from the tablet terminal 10 (application AP) to the corresponding display, and to display various information on the display 14 by the tablet terminal 10 (application AP). A possible state is established. Further, the generation of the display control object 55 establishes a state in which data can be transmitted from the display 14 to the tablet terminal 10 (application AP) at an appropriate timing.
- the cash changer control object 53 generates a control command corresponding to the process to be executed based on a request from the application AP, and transmits the control command to the cash changer 13.
- Various processes are executed. Generation and transmission of this control command are performed by executing a method instructed by the application AP.
- the tablet terminal 10 (application AP) causes the cash changer 13 to execute an arbitrary process by designating a method implemented in the cash changer control object 53 via the cash changer I / F object 40. be able to.
- the cache changer control object 53 acquires the processing result by interruption processing when the cash changer 13 performs counting or when the cash changer 13 is deposited / withdrawn, and the acquired processing result is cached.
- the data is transmitted to the application AP via the changer I / F object 40.
- the device control here is established in a state in which data can be transmitted from the tablet terminal 10 (application AP) to the corresponding cash changer 13, and the cash changer 13 is charged by the tablet terminal 10 (application AP).
- This represents establishment of a state in which various processes such as can be executed.
- it represents establishment of a state in which data can be transmitted from the corresponding cash changer 13 to the tablet terminal 10 (application AP) at an appropriate timing.
- the tablet terminal 10 and the control device 11 are connected so as to be able to perform wireless communication in accordance with a predetermined standard such as Ethernet (registered trademark), but temporarily and unintentionally due to radio wave interference and other causes, Communication may be disconnected (so-called instantaneous interruption). Even when the communication is not wireless communication, the communication may be temporarily disconnected due to, for example, disconnection of the communication cable or contact failure. In such a case, the tablet terminal 10 and the control device 11 perform processing based on the presence of the control object as described below.
- a predetermined standard such as Ethernet (registered trademark)
- Ethernet registered trademark
- Communication may be disconnected (so-called instantaneous interruption). Even when the communication is not wireless communication, the communication may be temporarily disconnected due to, for example, disconnection of the communication cable or contact failure.
- the tablet terminal 10 and the control device 11 perform processing based on the presence of the control object as described below.
- FIG. 9 is a flowchart illustrating operations of the tablet terminal 10 and the control device 11 when communication is disconnected.
- FIG. 9A shows the processing procedure of the application AP that operates on the tablet terminal 10
- FIG. 9B shows the processing procedure of the relay object 51 that operates on the control device 11.
- a communication path K1 is established between the tablet terminal 10 and the control device 11, and the control device 11 includes a cash changer 13, a barcode scanner 12, a display 14, It is assumed that the control objects of the printing unit 21 are generated.
- the application AP monitors whether or not the communication is disconnected (step SE1).
- the connection unit 45 is configured to monitor the presence or absence of communication disconnection by means according to the WebSocket standard, and when the communication disconnection occurs, the connection unit 45 transmits the fact to the application AP.
- step SE1 YES
- the application AP attempts reconnection by the function of the overall control object 44, and determines whether or not the reconnection is successful (step SE2). This reconnection attempt is made for a predetermined period.
- the relay object 51 monitors whether or not the communication has been disconnected (step SF1).
- the second communication unit 50 monitors the presence or absence of communication disconnection by means according to the WebSocket standard, and when the communication disconnection occurs, the second communication unit 50 transmits that fact to the application AP. It is a configuration.
- the relay object 51 When the communication is disconnected (step SF1: YES), the relay object 51 starts measuring the elapsed time after the communication is disconnected (step SF2). As will be apparent later, the relay object 51 is configured to delete the control object associated with the communication path ID related to the disconnected communication when the elapsed time after the disconnection of the communication exceeds the period T1. It is. In this period T1, the value is determined so as to be a reference value for determining whether the communication disconnection is an intended disconnection or an unintentional instantaneous disconnection.
- the relay object 51 After starting the measurement of the elapsed time, the relay object 51 monitors whether or not the elapsed time has reached the period T1 (step SF4), and has the communication reconnection been performed before the elapsed time reaches the period T1? It is determined whether or not (step SF3).
- the communication disconnection can be regarded as an intentional disconnection, not an instantaneous disconnection.
- the relay object 51 deletes the control objects (in this example, the cache changer 13, the barcode scanner 12, the display 14, and the control unit 21 of the printing unit 21) associated with the communication path ID related to the disconnected communication. (Step SF5). As described above, by erasing the control object, each device is released to an application AP that operates on another tablet terminal, and the other application AP newly generates a control object and is in a controllable state. Become.
- control device 11 communication is again performed between the control device 11 and the tablet terminal 10 (which may be the same terminal as before the disconnection of communication or a different terminal).
- the device control unit 20a When established, the device control unit 20a generates and operates a control object based on a request from the tablet terminal 10 according to the procedure described in FIG.
- the communication is disconnected, reconnection is not performed within a predetermined period, and accordingly, even when the control object is deleted, the device can be quickly controlled.
- the disconnection of communication is regarded as intentional disconnection, and the control object is deleted (control object). Open). Due to such a configuration, it is possible to prevent a time during which the device cannot be controlled by another application AP from being continued unnecessarily for a long time.
- step SE2 when the reconnection is successful as a result of the reconnection attempt in step SE2 (step SE2: YES), the application AP transmits the communication path K1 related to the disconnected communication.
- the ID is transmitted to the relay object 51 (step SE3).
- the communication path ID is given along with the establishment of the communication path K1, and is stored in a predetermined storage area in the terminal storage unit 25 in a manner that the application AP can refer to.
- step SF6 the relay object 51 determines whether or not there is a control object associated with the received communication path ID. If it does not exist (step SF7: NO), the relay object 51 ends the process.
- step SF7 when there is a control object associated with the communication path ID that has communicated (step SF7: YES), the relay object 51 cancels the deletion after the period T1 for these control objects and deletes the control objects. If not, continue (control the generation of the control object) (step SF8).
- the disconnection of the communication when reconnection of communication is successful within the period T1 after the disconnection of communication, the disconnection of the communication is considered to have a high probability of being an unintentional instantaneous interruption, and thus the disconnected communication is performed.
- the control object associated with the communication path ID of the communication path K1 is continued. Due to such a configuration, the application AP can control the device quickly and efficiently without generating a new control object when controlling the device. Further, when one application AP controls a device, control of the device is released to another application AP due to an instantaneous interruption (a corresponding control object is deleted), and control is performed by the other application AP. There is no such thing as being acquired.
- step SF8 control of the generation of the control object
- step SE4 data retransmission processing
- FIG. 10 is a flowchart showing the processing of the application AP and the relay object 51 in the data reprocessing.
- (A) shows the processing of the application AP
- (B) shows the processing of the relay object 51.
- the application AP transmits the data ID of the most recently received data among the data IDs stored in the terminal storage unit 25 to the relay object 51 (step SG1).
- the data (device-related information) related to the device received by the application AP is given a data ID.
- the application AP has the received data ID.
- the data ID is extracted from the bar code information, and the data ID is stored in a predetermined storage area of the terminal storage unit 25.
- the relay object 51 When receiving the data ID from the application AP, the relay object 51 matches the data ID in the data with the data ID stored cumulatively in the storage unit 22 with the data ID received from the application AP. Then, the data to be transmitted to the application AP but not transmitted to the application AP is specified (determined) (step SH1). More specifically, the relay object 51 generates the data ID with the regularity that when the data ID is generated, the value is increased as the data transmission to the application AP is slower in time. . Based on this, the relay object 51 has successfully completed transmission of data to which the data ID received from the application AP and the data ID having the same value are assigned.
- step SH1 the relay object 51 determines that the data ID that is not stored in the tablet terminal 10 among the data IDs assigned to the data transmitted to the tablet terminal 10 to the tablet terminal 10 normally.
- the data ID of data that has not been transmitted is specified.
- the relay object 51 transmits data (information on the device) that has not been transmitted to the application AP (step SH2).
- the application AP acquires the data transmitted by the relay object 51 and executes processing as appropriate (step SG2).
- the POS system 1 controls the tablet terminal 10 (terminal) on which the browser operates and the tablet terminal 10 to communicate with each other and transmit / receive data to / from the tablet terminal 10.
- the tablet terminal 10 and the control apparatus 11 memorize
- the communication connection is performed based on the identification information related to the communication connection stored in the.
- these devices store identification information corresponding to the connection, and at the time of reconnection after disconnection, Reconnection is performed based on the identification information.
- the system can correspond to the configuration in which each device communicates via the network. it can.
- the identification information related to communication connection is identification information given to the communication path between the tablet terminal 10 and the control device 11. According to this configuration, reconnection can be performed using the identification information of the communication path using the establishment of the communication path between the tablet terminal 10 and the control device 11.
- the POS system 1 includes a device connected to the control device 11. Then, the control device 11 generates a control object that controls the device, and a storage unit 22 that stores the control object generated by the device control unit 20a and the identification information related to the communication connection in association with each other. Have According to this configuration, each device can be managed in association with the identification information.
- the device control unit 20a deletes the control object when the communication connection between the tablet terminal 10 and the control device 11 is disconnected and the communication connection is not made again within a predetermined period. To do. According to this configuration, when there is a temporary disconnection such that reconnection is performed within a predetermined period after disconnection, the control object used at the time of connection before disconnection is prevented from being deleted. However, after reconnection, the control object can be used without generating a control object again. Further, it is possible to prevent the control object from being erased unnecessarily for a long time, and accompanying this, the device from being released from control.
- the device control unit 20a reconnects the communication when the communication connection between the tablet terminal 10 and the control device 11 is disconnected and then the communication connection is made again within a predetermined period.
- the generation of the control object is controlled based on the identification information at that time and the identification information associated with the control object stored in the storage unit 22. According to this configuration, after reconnection by temporary disconnection, the control object used at the time of connection before disconnection can be determined and used using the identification information as a key.
- the POS system 1 receives a device that transmits data, the first communication unit 71 that communicates with the device, and receives the data transmitted by the device, and the first communication unit 71 receives the data.
- a control unit 11 having a device control unit 20a for giving identification information to the data, a storage unit 22 for storing the data to which the identification information is given, and a second communication unit 50 for transmitting the data to which the identification information is given.
- a connection unit 45 that receives data provided with identification information transmitted from the control device 11, a terminal storage unit 25 that stores identification information of data provided with identification information received by the connection unit 45, and an identification A tablet terminal 10 that includes a terminal control unit 26 that operates an application that processes data to which information is attached, and that operates a browser;
- the identification information is given to the data transmitted from the control device 11 to the terminal, the control device 11 stores the data to be transmitted, and the terminal stores the identification information related to the received data. .
- the system can correspond to a configuration in which each device communicates via the network.
- the tablet terminal 10 when the connection between the tablet terminal 10 and the control device 11 is disconnected and then reconnected, the tablet terminal 10 transmits the stored identification information to the control device 11, and the control device 11.
- the device control unit 20a is based on the identification information transmitted from the tablet terminal 10 and the identification information of the data to which the identification information stored in the storage unit 22 is added, and is not stored in the tablet terminal 10. Is determined, and the second communication unit 50 of the control device 11 transmits data to which identification information that is not stored in the tablet terminal 10 is added. According to this configuration, at the time of reconnection after disconnection, identification information can be used to specify data that is not received by the tablet terminal 10.
- the identification information provided by the device control unit 20a of the control device 11 is information having regularity, and the device control unit 20a is connected to the tablet terminal 10 based on the regularity of the identification information. Data with identification information that is not stored is determined.
- the tablet terminal 10 transmits the identification information for all of the data received in a certain period to the control device 11, and the control device 11 includes the received identification information and the stored identification information.
- the control device 11 is a simple means using the regularity of the identification information without performing processing such as specifying the data not received by the tablet terminal 10 by comparison with the identification information in the data. Can identify data that has not been received.
- control device 11 is connected to the first communication unit 71 connected to the device and communicates with the device and the tablet terminal 10 on which the browser operates, and receives a request from the tablet terminal 10. 2 After operating the control object for controlling the device based on the request from the communication unit 50 and the tablet terminal 10 and holding the control object for a predetermined period when the communication connection with the tablet terminal 10 is disconnected A device control unit 20a to be erased.
- the control object in response to the disconnection of communication, the control object is not deleted immediately, but is deleted after being held for a predetermined period. For this reason, even if there is an unintended temporary communication disconnection, the control object is not immediately deleted, and when the temporary communication disconnection is recovered, It is possible to start control of the device.
- control object since the control object is deleted after being held for a predetermined period, the control object is not deleted unnecessarily for a long period of time, and accordingly, it is prevented that the control of the device is not released. That is, according to the configuration of the present invention, for the POS system 1 in which the tablet terminal 10 having the browser and the control device 11 communicate via the network, the control device 11 communicates via the network with each device. Can be matched.
- the device control unit 20a is configured such that when the communication connection with the tablet terminal 10 is disconnected and the communication connection with the tablet terminal 10 is performed after a predetermined period or more has elapsed, the tablet terminal 10 A control object is generated and operated based on the request from 10. According to this configuration, after the communication is disconnected, reconnection is not performed within a predetermined period, and accordingly, even when the control object is deleted, the control object is generated based on the request of the tablet terminal 10. Thus, the device can be quickly controlled.
- the control object operated by the device control unit 20 a converts the transmitted request from the tablet terminal 10 into data transmitted to the device via the first communication unit 71. According to the configuration of the present invention, it is possible to control a device by issuing a request to the device from the terminal using the function of the control object.
- the above-described embodiment is merely an aspect of the present invention, and can be arbitrarily modified and applied within the scope of the present invention.
- the present invention has been described by taking the case where the POS system 1 is applied to a store having a cashier counter L as an example.
- the usage mode of the POS system is not limited to this example, It can also be applied to restaurants such as coffee shops and restaurants.
- the control device 11 and the POS server 17 are separate devices, but the control device 11 may have the function of the POS server 17.
- the control device 11 is a thermal printer, but any recording format may be used.
- each functional block shown in FIGS. 2 and 3 can be arbitrarily realized by cooperation of hardware and software, and does not suggest a specific hardware configuration. Each device may execute various operations by executing a program stored in an externally connected storage medium.
- the present invention is useful for a POS terminal to which a terminal such as a tablet terminal is connected and a POS system using the POS terminal, and is applicable to an information processing apparatus and an information processing system such as a POS system. .
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Business, Economics & Management (AREA)
- Signal Processing (AREA)
- Accounting & Taxation (AREA)
- Theoretical Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Physics & Mathematics (AREA)
- General Business, Economics & Management (AREA)
- Strategic Management (AREA)
- Finance (AREA)
- Health & Medical Sciences (AREA)
- Cardiology (AREA)
- General Health & Medical Sciences (AREA)
- Environmental & Geological Engineering (AREA)
- Computer And Data Communications (AREA)
- Cash Registers Or Receiving Machines (AREA)
- General Engineering & Computer Science (AREA)
- Information Transfer Between Computers (AREA)
Abstract
Description
また、パーソナルコンピューターや、タブレット端末、ノート型パソコン等の端末では、ブラウザーがインストールされたものが広く普及している。
本発明は、上述した事情に鑑みてなされたものであり、ブラウザーを有する端末と、制御装置とがネットワークを介して通信する制御システムについて、システム及び制御装置を、各装置がネットワークを介して通信する構成に対応させることを目的とする。
本発明の構成によれば、端末と、制御装置との間での接続の確立に応じて、接続に対応する識別情報を端末と制御装置とが記憶し、接続の切断後における再接続の際に、識別情報に基づいて、再接続が行なわれる。このため、再接続に際し、識別情報を利用して、切断前の接続に対応する態様で、再接続を行なうことが可能となる。
本発明の構成によれば、瞬断等の一時的な通信の切断があった場合であっても、識別情報を利用した態様で再接続を実行できる。
本発明の構成によれば、接続の切断後における再接続に際し、識別情報を利用して、端末が受信していないデータの特定が可能である。
本発明の構成によれば、例えば、端末が制御装置に対して、一定期間に受信したデータについて識別情報を送信し、制御装置は受信した識別情報と、記憶した識別情報付きのデータにおける識別情報との比較により、端末が受信していないデータを特定する、といった処理をすることなく、識別情報の規則性を利用した簡易な手段で、制御装置は、端末が受信していないデータを特定可能である。
本発明の構成によれば、制御装置から端末に出力されるデータに識別情報が付与され、制御装置は、出力データを記憶し、端末は、入力データに係る識別情報を記憶する。このため、接続の切断があった場合、識別情報をキーとして、接続の切断に起因して端末に入力されていないデータを特定でき、特定したデータを再出力することが可能となる。
本発明の構成によれば、接続の切断後における再接続に際し、識別情報を利用して端末に入力されていないデータの特定が可能である。
本発明の構成によれば、通信の切断後、所定期間内に再接続が行なわれず、制御オブジェクトが消去された場合であっても、端末の要求に基づいて制御オブジェクトが生成され、迅速にデバイスの制御を可能な状態とすることができる。
本発明の構成によれば、制御オブジェクトの機能を利用して、端末からデバイスに要求を出し、デバイスを制御することが可能となる。
図1は、本実施形態に係るPOS(Point of Sales)システム1(制御システム)の概略構成ブロック図である。また、図2は、POSシステム1を構成するタブレット端末10(端末)、制御装置11、及び、POSサーバー17の機能的構成を示すブロック図である。
POSシステム1は、ショッピングセンターや、百貨店、コンビニエンスストア等の小売店、レストランや、喫茶店、居酒屋等の飲食店、その他の店舗、施設に適用されるシステムである。POSシステム1は、店舗における商品の販売状況、商品の在庫の状況、売上の状況等を管理する機能や、店舗に設けられたレジカウンターLにおいて、顧客が購入した商品に応じた会計を行う機能、顧客による代金の支払いに応じてレシートを発行する機能、顧客に対し会計に関する情報を提供する機能等を有する。
タブレット端末10は、タブレット型(板状)のコンピューターである。特に、本実施形態に係るタブレット端末10は、図6を用いて後述するように、前面に形成された表示領域にタッチパネル30が設けられ、タッチ操作によって各種入力が可能なタイプのコンピューターである。
制御装置11は、デバイス制御装置としての機能を有する装置である。図2に示すように、制御装置11には、デバイスとして、商品又は商品の包装に付されたバーコードを読み取るバーコードスキャナー12(デバイス)、紙幣や、貨幣、金券等を収容し、管理するキャッシュチェンジャー13(デバイス)、会計に関する情報を顧客に対して表示するディスプレー14(デバイス)の少なくとも1つが接続される。
制御部20は、CPUや、ROM、RAM、その他の周辺回路等を備え、制御装置11を制御する。制御部20は、デバイス制御部20aを備えるが、この機能ブロックについては後述する。
印刷部21は、ロール紙を搬送する搬送機構、サーマルヘッドによってロール紙に文字や画像を印刷する印刷機構、ロール紙を切断する切断機構等を備えており、レシートに係る画像をロール紙に印刷した後、所定の位置でロール紙を切断することによりレシートを発行することが可能である。
記憶部22は、EEPROM等の不揮発性メモリーを備え、各種データを書き換え可能に、不揮発的に記憶する。
通信モジュール23は、所定の通信規格に従ったネットワークカード等のタブレット端末10との間で無線通信するモジュール、通信制御の回路等を備え、制御部20の制御に従って、タブレット端末10との間で所定の通信規格に従って無線通信する。
端末記憶部25は、EEPROM等の不揮発性メモリーを備え、各種データを書き換え可能に不揮発的に記憶する。
表示制御部28は、後述するブラウザー実行部26aから受信した表示データに基づいて、表示パネル30aを駆動し、表示パネル30aに文字や画像等を含む画面を表示する。
通信モジュール27は、所定の通信規格に従ったネットワークカード等の制御装置11、及び、POSサーバー17との間で無線通信するモジュール、回路等を備え、端末制御部26の制御に従って、制御装置11、及び、POSサーバー17との間で所定の通信規格に従って無線通信する。
ブラウザー実行部26aは、ウェブブラウザーの機能により、HTML等のマークアップ言語やスクリプト言語で記述されたウェブページ(HTMLファイル等)を、POSサーバー17からダウンロードする。ダウンロードされたウェブページのデータは、例えば図示しないRAMに記憶される。ブラウザー実行部26aは、ダウンロードされたウェブページのデータを読み込み、このウェブページを表示させる表示データを生成して、表示制御部28に送信する。表示制御部28は、受信した表示データに基づいて、表示パネル30aにウェブページを表示する。
また、ブラウザー実行部26aは、入力検出部29によってタッチセンサー30bへのタッチ操作が検出された場合、このタッチ操作に対応して入力検出部29から受信する座標データ、及び、表示制御部28に送信した表示データに基づいて、入力内容を特定する。ブラウザー実行部26aは、特定した入力内容に基づいて、例えばスクリプトの機能により、対応する処理を実行する。
POSサーバー17は、サーバー制御部37と、サーバー記憶部36と、通信モジュール38と、を備える。
サーバー制御部37は、CPUや、ROM、RAM、その他の周辺回路等を備え、POSサーバー17の各部を制御する。サーバー記憶部31は、ハードディスクや、EEPROM等の不揮発性メモリーを備え、各種データを書き換え可能に不揮発に記憶する。
通信モジュール38は、所定の通信規格に従ったネットワークカード等のタブレット端末10との間で無線通信するモジュール、回路等を備え、サーバー制御部37の制御に従って、タブレット端末10との間で所定の通信規格に従って無線通信する。
タブレット端末10のブラウザー実行部26aは、このPOSサーバー17上のPOSアプリケーション35の機能を利用して、各種処理を実行する。
具体例を挙げて詳述すると、ブラウザー実行部26aは、適宜、POSサーバー17に演算処理の要求を行なって、POSアプリケーション35に演算処理を実行させ、処理結果を受け取り、処理結果に基づく対応する処理を実行する。例えば、ブラウザー実行部26aは、バーコードスキャナー12の読み取り結果をPOSサーバー17に送信して、POSアプリケーション35の機能により商品検索を実行させて、検索結果を受け取り、検索結果に基づいて制御装置11を制御し、商品情報をディスプレー14に表示させる。また、会計の合計金額の算出を要求して、POSアプリケーション35に合計金額の算出を行なわせ、算出結果を受け取り、算出結果に基づいて制御装置11を制御して合計金額を含む情報が印刷されたレシートを発行させる。
また、「ブラウザーで動作するアプリケーション」には、ブラウザー実行部26aが読み出すウェブページ(HTMLファイル等)に実装されたスクリプト等、ブラウザー実行部26aがその機能を利用可能なプログラム、ソフトウェアが含まれる。
図3では、プログラムや、ソフトウェア的なオブジェクト、プログラムによって実現される機能を表わすブロック、デバイス等の物理的な装置等を、同一のレベルで表現している。
以下、図4のフローチャートを用いて、これらオブジェクトや、インターフェースの生成手順や、機能について説明する。
ステップSA1の処理により統括制御オブジェクト44が生成されると、アプリケーションAPは、通信経路確立要求(通信要求)を実行する(ステップSA2)。
なお、WebSocketとは、ネットワークを介して接続されたサーバーと、クライアントとの間で、非同期な双方向通信を可能とする通信規格の1つである。WebSocketでは、サーバーとクライアントがWebSocketコネクションCTを確立した後は、データの送受信を、当該コネクションにより専用のプロトコルを用いて行う。このため、データの送信が発生する度に、コネクションを確立する必要がない。
なお、接続部45と、第2通信部50は、WebSocketの規格、手続きに従ってデータの送受信を行うWebSocketインターフェースである。これら機能ブロックは、例えば、WebSocketに係るSocketライブラリーを利用して生成される。
また、中継オブジェクト51は、デバイス制御部20aで動作するオブジェクトである。中継オブジェクト51には、上述した通信経路K1の確立処理を行うメソッドのほか、後述する各種処理を行うメソッドが実装される。
なお、通信経路K1の確立により、タブレット端末10(端末)と、制御装置11との間で、通信可能な状態が確立する。
そして、アプリケーションAPは、バーコードスキャナー制御オブジェクト54の生成に際し、対応するデバイスであるバーコードスキャナー12のデバイスIDを指定する。後に明らかとなるとおり、中継オブジェクト51は、指定されたデバイスIDをキーとして、生成すべきデバイスに対応する制御オブジェクトを生成する。
制御オブジェクトとは、デバイスの制御に係る各種メソッドが実装されたオブジェクトであり、対応するハンドラーの機能を利用して、対応するデバイスの制御を行なう。例えば、キャッシュチェンジャー制御オブジェクト53には、キャッシュチェンジャー13の制御に係る各種処理を実行するメソッドが実装されており、当該オブジェクトは、キャッシュチェンジャーハンドラー61の機能を利用して、キャッシュチェンジャー13の制御を行なう。なお、ハンドラーとは、要求に応じて、対応するデバイスに係る処理を実行する関数、サブルーチンである。例えば、バーコードスキャナーハンドラー60は、バーコードスキャナー12によるバーコードの読み取りが実行された場合に、読み取り結果の入力を受けると共に、割り込み処理を行なって、読み取り結果(例えば、数字の文字列からなるデータ)をバーコードスキャナー制御オブジェクト54に受け渡す。他のハンドラー(キャッシュチェンジャーハンドラー61、ディスプレーハンドラー62、及び、プリンターハンドラー63)についても同様である。
上述したとおり、制御オブジェクトの生成により、制御装置11による対応するデバイスの制御が確立する。
当該要求に応じて、中継オブジェクト51は、例えばnewステートメントにより、指定されたデバイスID(本例では、バーコードスキャナー12のデバイスID「scanner」)に対応する制御オブジェクト(本例では、バーコードスキャナー制御オブジェクト54)を生成する(ステップSA6)。すなわち、デバイス制御部20aは、制御オブジェクトを生成し、生成された制御オブジェクトは、デバイス制御部20aで動作する。
これにより、中継オブジェクト51は、バーコードスキャナー12の読み取り結果に基づいて、バーコードスキャナー制御オブジェクト54が第1タブレット端末に対して送信するデータについて、対応する通信経路IDの通信経路、すなわち、第1タブレット端末に係る通信経路により、第1タブレット端末に送信する。
なお、ステップSA4のバーコードスキャナー制御オブジェクト生成処理の際に、制御オブジェクトの生成に係る処理の処理結果を受け取るコールバックが指定されており、コールバック関数が実行されることにより、アプリケーションAPに対して、バーコードスキャナー制御オブジェクト54の生成が成功した旨の通知が行なわれる。
また、統括制御オブジェクト44は、生成が完了したバーコードスキャナー制御オブジェクト54に対応させて、バーコードスキャナーI/Fオブジェクト41を生成する(ステップSA9)。
インターフェースオブジェクトとは、アプリケーションAPによるデバイスの制御に際して、アプリケーションAPに対して、対応するデバイスに係る制御オブジェクトに実装されたメソッドを利用させるインターフェースとなる機能を有する。すなわち、アプリケーションAPは、ある1のデバイスを制御する際に、当該1のデバイスに対応するインターフェースオブジェクトに対して情報を送信すれば、当該インターフェースオブジェクトが、当該1のデバイスに対応する制御オブジェクトと通信し、制御オブジェクトに実装されたメソッドを実行させ、当該1のデバイスの制御を実現できる。
このように、本実施形態では、制御装置11に制御オブジェクトの生成が完了した後、対応するインターフェースオブジェクトが生成される。このような構成のため、必ず、1つのデバイスについて、一対の制御オブジェクトと、インターフェースオブジェクトとが生成され、各デバイスについて、アプリケーションAPによるデバイスの制御が可能な状態が確立する。
また、アプリケーションAPの開発(プログラミング)に際し、デバイスの制御に関するソフトウェア的なインターフェースに係るプログラムについては、各デバイスのインターフェースオブジェクトとの関係を考慮すればよく、開発が容易になる。例えば、アプリケーションAPにおけるキャッシュチェンジャー13の制御に係るプログラムに関しては、キャッシュチェンジャーI/Fオブジェクト40との関係で、情報(データ)の送受信を考慮して開発すればよく、開発が容易になる。
アプリケーションAPによるバーコードスキャナー制御オブジェクト54の消去要求に応じて、統括制御オブジェクト44は、通信経路K1により、中継オブジェクト51に対して、バーコードスキャナー制御オブジェクト54の消去要求を行なう(ステップSB2)。
消去要求に応じて、中継オブジェクト51は、例えばdelete演算子により、指定されたデバイスID(本例では、バーコードスキャナー12のデバイスID「scanner」)に対応する制御オブジェクト(本例では、バーコードスキャナー制御オブジェクト54)を消去する(ステップSB3)。当該制御オブジェクトの消去により、制御装置11におけるバーコードスキャナー12の制御の確立が解除される。
なお、ステップSB1の処理の際に、制御オブジェクトの消去に係る処理の処理結果を受け取るコールバックが指定されており、コールバック関数の実行されることにより、アプリケーションAPに対して、バーコードスキャナー制御オブジェクト54の消去が成功した旨の通知が行なわれる。
また、統括制御オブジェクト44は、消去が完了したバーコードスキャナー制御オブジェクト54に対応させて、バーコードスキャナーI/Fオブジェクト41を消去する(ステップSB6)。
ステップSA7の要求に応じて、統括制御オブジェクト44、及び、中継オブジェクト51は、接続部45と、第2通信部50との間に確立された通信経路K1を、WebSocketの規格に従って切断する(ステップSB8)。
以上のようにして、生成した制御オブジェクト、及び、インターフェースオブジェクトの消去、確立した通信の解除が行なわれる。
ここで、会計に係る処理が行われる前に、タブレット端末10は、それぞれ、以下の処理を実行する。
すなわち、レジの担当者、その他の作業に従事する者は、タブレット端末10のブラウザーを立ち上げ、タッチパネル30へのユーザーインターフェースUI(図6(A)参照)の表示を指示する。当該指示に応じて、端末制御部26のブラウザー実行部26aは、POSサーバー17上の所定のアドレスにアクセスし、HTMLファイル等のウェブページのデータを取得し、当該データに基づいてユーザーインターフェースUIをタッチパネル30に表示する。
図6(A)のユーザーインターフェースUIにおいて、左上部には、顧客が購入した商品の名称、商品の単価、及び、商品の数量が一覧表示される一覧表示エリア65が表示される。この一覧表示エリア65の右方には、顧客が購入した商品の合計金額、会計に際して顧客から預かった金銭の金額、及び、顧客に渡すべきお釣りの金額が表示される金額表示エリア66が表示される。
また、ユーザーインターフェースUIの上端部には、アクセス先のアドレスが表示されるアドレス入力フィールド69が表示される。
図7は、上記処理の手順を説明するためのフローチャートである。
まず、バーコードの読み取り結果をアプリケーションAPが取得できるようにするために、事前に、アプリケーションAPにより、バーコードスキャナーI/Fオブジェクト41に対してコールバック名の登録が行なわれる(ステップSC1)。コールバック名とは、イベント(例えば、バーコードスキャナー12によるバーコードの読み取り、というイベント)ごとに付与された識別名称である。インターフェースオブジェクトに対して、当該コールバック名と対応づけてデータが送信された場合、所定のコールバック関数が実行されて、アプリケーションAPへの当該データの送信が実行される。本例では、「バーコードスキャナー12によるバーコードの読み取り」のコールバック名は、「ondata」であるものとする。
次に、バーコードスキャナーハンドラー60に読み取り結果が入力される(ステップSC2)。バーコードスキャナーハンドラー60は、割り込み処理を行なって、読み取り結果であるバーコード情報を、バーコードスキャナー制御オブジェクト54に送信する(ステップSC3)。
次いで、バーコードスキャナー制御オブジェクト54は、少なくとも、バーコードスキャナー12のデバイスID(本例では、「scanner」)、コールバック名(本例では、「ondata」)、バーコード情報(データ)を含むデータを、所定のデータ形式で中継オブジェクト51に送信する(ステップSC4)。
次いで、中継オブジェクト51は、バーコードスキャナー12のデバイスID(本例では、「scanner」)、コールバック名(本例では、「ondata」)、及び、データID付きのバーコード情報(データ)を含むデータを所定のデータ形式で、統括制御オブジェクト44に送信する(ステップSC7)。その際、中継オブジェクト51は、バーコードスキャナー制御オブジェクト54と対応付けられた通信経路IDに係る通信経路K1で、データの送信を行なう。
バーコードスキャナーI/Fオブジェクト41は、コールバック名(本例では、「ondata」)に基づいて、所定のコールバック関数を実行して、データID付きのバーコード情報をアプリケーションAPに送信する(ステップSC9)。
アプリケーションAPは、受信したバーコード情報に基づいて、表示処理を実行し、バーコード情報を、バーコード情報入力フィールド67に表示する(ステップSC10)。これにより、図6(B)に示すように、バーコード情報入力フィールド67に、バーコード情報が表示された状態となる。
図8は、上記処理の手順を説明するためのフローチャートである。
まず、アプリケーションAPは、実装された機能により、レシートに印刷する画像を生成し、生成した画像に基づいて、印刷部21によって発行させるレシートに関する情報が含まれたXMLファイル(デバイスに関する情報)を生成する(ステップSD1)。当該XMLファイルには、XMLに係るフォーマットに従って、レシートに印刷する文字や画像の情報等、レシートを発行する情報が所定の形式で含まれており、後述するように、プリンター制御部80は、当該XMLファイルを印刷部21のコマンド体系の制御コマンドに変換可能である。
すなわち、アプリケーションAPは、ディスプレーI/Fオブジェクト42を介して、ディスプレー制御オブジェクト55に、表示データを送信する。ディスプレー制御オブジェクト55は、プリンター・ディスプレーI/F81を介して、ディスプレー制御部82に表示データを送信する。ディスプレー制御部82は、受信した表示データをディスプレー14のコマンド体系の制御コマンド体系に変換して、ディスプレーハンドラー62の機能を利用して、ディスプレー14に送信する。ディスプレー14は、制御コマンドに基づいて表示データの表示を行なう。
特に、本実施形態では、タブレット端末10と、制御装置11とは、WebSocketに従った通信を行なう。すなわち、タブレット端末10に係るブラウザーからサーバーとして機能する制御装置11に対してデータの送信要求を出すことなく、いずれの装置も、他方の装置に対してデータを送信することができる。換言すれば、インターフェースオブジェクトと、対応する制御オブジェクトとは、双方向通信可能である。このため、図7のフローチャートを用いて説明したように、デバイス側のイベントをトリガーとして、デバイスからアプリケーションAPへ、制御オブジェクト及びインターフェースオブジェクトを介したスムーズなデータの送信が可能である。かつ、図8のフローチャートを用いて説明したように、アプリケーションAP側のイベントをトリガーとして、アプリケーションAPは、インターフェースオブジェクト及び制御オブジェクトを介して、デバイスを制御可能である。
このような場合に、タブレット端末10、及び、制御装置11は、以下説明するように、制御オブジェクトの存在を踏まえた処理を行なう。
図9(A)は、タブレット端末10で動作するアプリケーションAPの処理手順を示し、図9(B)は、制御装置11で動作する中継オブジェクト51の処理手順を示す。
図9のフローチャートの前提として、タブレット端末10と、制御装置11との間には通信経路K1が確立されており、かつ、制御装置11には、キャッシュチェンジャー13、バーコードスキャナー12、ディスプレー14、及び、印刷部21のそれぞれの制御オブジェクトが生成されている状態であるものとする。
通信の切断があった場合(ステップSE1:YES)、アプリケーションAPは、統括制御オブジェクト44の機能により、再接続を試み、再接続が成功したか否かを判別する(ステップSE2)。この再接続の試行は、予め定められた期間の間、行なわれる。
通信経路IDを受信すると、中継オブジェクト51は、受信した通信経路IDに対応付けられた制御オブジェクトが存在するか否かを判別する(ステップSF7)。存在しない場合は(ステップSF7:NO)、中継オブジェクト51は、処理を終了する。
この構成によれば、タブレット端末10と、制御装置11との間での接続の確立に応じて、接続に対応する識別情報をこれら装置が記憶し、接続の切断後における再接続の際に、識別情報に基づいて、再接続が行なわれる。このため、再接続に際し、必要に応じて、識別情報を利用して、切断前の接続に対応する態様で、再接続を行なうことが可能となる。つまり、上記構成によれば、ブラウザーを有するタブレット端末10と、制御装置11とがネットワークを介して通信するPOSシステム1について、システムを、各装置がネットワークを介して通信する構成に対応させることができる。
この構成によれば、タブレット端末10と、制御装置11との間で通信経路を確立することを利用して、通信経路の識別情報を利用して、再接続を行なうことができる。
この構成によれば、各デバイスを、識別情報と対応付けて管理可能である。
この構成によれば、接続の切断後、所定期間内に再接続が行なわれるような一時的な切断があった場合に、切断前の接続時に使用していた制御オブジェクトが消去されることを防止しつつ、再接続後に、改めて制御オブジェクトを生成することなく、制御オブジェクトを利用可能である。また、不必要に長時間、制御オブジェクトが消去されず、これに伴って、デバイスの制御が開放されないといったことを防止できる。
この構成によれば、一時的な切断による再接続後、識別情報をキーとして、切断前の接続時に使用していた制御オブジェクトを判別でき、かつ、利用可能である。
この構成によれば、制御装置11から端末に送信されるデータに識別情報が付与されると共に、制御装置11は、送信するデータを記憶し、端末は、受信するデータに係る識別情報を記憶する。このため、接続の切断があった場合、識別情報をキーとして、接続の切断に起因して端末が受信していないデータを特定でき、かつ、特定したデータを再送信することが可能となる。つまり、本発明の構成によれば、ブラウザーを有する端末と、制御装置とがネットワークを介して通信する制御システムについて、システムを、各装置がネットワークを介して通信する構成に対応させることができる。
この構成によれば、接続の切断後における再接続に際し、識別情報を利用して、タブレット端末10が受信していないデータの特定が可能である。
この構成によれば、例えば、タブレット端末10が制御装置11に対して、一定期間に受信したデータの全てについて識別情報を送信し、制御装置11は受信した識別情報と、記憶した識別情報付きのデータにおける識別情報との比較により、タブレット端末10が受信していないデータを特定する、といった処理をすることなく、識別情報の規則性を利用した簡易な手段で、制御装置11は、タブレット端末10が受信していないデータを特定可能である。
この構成によれば、通信の切断に応じて、すぐに制御オブジェクトが消去されるのではなく、所定期間保持された後、消去される。このため、意図しない一時的な通信の切断があった場合であっても、すぐに制御オブジェクトが消去されず、一時的な通信の切断が回復したときに、消去されずに残存した制御オブジェクトによってデバイスの制御を開始することが可能である。また、制御オブジェクトが所定期間保持された後は、消去されるため、不必要に長期間制御オブジェクトが消去されず、これに伴って、デバイスの制御が開放されないといったことが防止される。つまり、本発明の構成によれば、ブラウザーを有するタブレット端末10と、制御装置11とがネットワークを介して通信するPOSシステム1について、制御装置11を、各装置がネットワークを介して通信する構成に対応させることができる。
この構成によれば、通信の切断後、所定期間内に再接続が行なわれず、これに伴って、制御オブジェクトが消去された場合であっても、タブレット端末10の要求に基づいて制御オブジェクトが生成され、迅速にデバイスの制御を可能な状態とすることができる。
本発明の構成によれば、制御オブジェクトの機能を利用して、端末からデバイスに要求を出し、デバイスを制御することが可能となる。
例えば、上述した実施形態では、レジカウンターLを有する店舗に、POSシステム1が適用された場合を例にして、本発明を説明したが、POSシステムの使用の態様はこの例に限らず、例えば、喫茶店や、レストラン等の飲食店に対して適用することも可能である。また例えば、制御装置11と、POSサーバー17とは、別個の装置であったが、制御装置11にPOSサーバー17の機能を持たせてもよい。また例えば、制御装置11はサーマルプリンターであったが、記録形式は何であってもよい。
また例えば、図2、3に示す各機能ブロックはハードウェアとソフトウェアの協働により任意に実現可能であり、特定のハードウェア構成を示唆するものではない。また、各機器は、外部接続される記憶媒体に記憶させたプログラムを実行することにより、各種動作を実行してもよい。
Claims (10)
- ブラウザーが動作する端末と前記端末にデータの送受信を行う制御装置との通信接続を確立し、
確立された通信接続に係わる識別情報を生成し、
生成された前記識別情報を前記端末及び前記制御装置に記憶し、
前記端末と前記制御装置との通信接続が切断されたのち、再度通信接続がなされるとき、前記前記端末及び前記制御装置が記憶する前記通信接続に係わる識別情報に基づいて通信接続を行うことを特徴とする制御システムの制御方法。 - 前記通信接続に係わる識別情報に基づく通信接続は、前記端末と前記制御装置との通信接続が切断された後、予め定められた期間内で再度通信接続を行うときに実行する請求項1に記載の制御システムの制御方法。
- データを送信するデバイスと、
前記デバイスと通信して、前記デバイスが送信した前記データを受信する第1通信部、前記第1通信部で受信した前記データに識別情報を付与するデバイス制御部、前記識別情報が付与されたデータを記憶する記憶部、及び、前記識別情報が付与されたデータを送信する第2通信部を有する制御装置と、
前記制御装置から送信された前記識別情報が付与されたデータを受信する接続部、前記接続部で受信された前記識別情報が付与されたデータの前記識別情報を記憶する端末記憶部、及び、前記識別情報が付与されたデータを処理するアプリケーションを動作させる端末制御部を有し、ブラウザーが動作する端末と、
を備えることを特徴とする制御システム。 - 前記端末と前記制御装置との通信の接続が切断された後に再接続されたとき、
前記端末は、
記憶した前記識別情報を前記制御装置に送信し、
前記制御装置の前記デバイス制御部は、前記端末から送信された前記識別情報と、前記記憶部に記憶された前記識別情報が付与されたデータの前記識別情報とに基づいて、前記端末に記憶されていない前記識別情報が付与されたデータを判別し、
前記制御装置の前記第2通信部は、前記端末に記憶されていない前記識別情報が付与されたデータを送信する請求項3に記載の制御システム。 - 前記制御装置の前記デバイス制御部で付与される前記識別情報は、規則性を有する情報であり、
前記デバイス制御部は、前記識別情報の規則性に基づいて、前記端末に記憶されていない前記識別情報が付与されたデータを判別する請求項4に記載の制御システム。 - 制御装置で、接続されたデバイスから送信されたデータに、識別情報を付与して、前記識別情報が付与されたデータを記憶し、
前記識別情報が付与されたデータを端末に送信し、
前記識別情報が付与されたデータを送信された前記端末で、前記識別情報が付与されたデータの前記識別情報を記憶することを特徴とする制御システムの制御方法。 - 前記制御装置と前記端末との通信中に通信が切断された後、通信が再接続された時、
前記端末は記憶した前記識別情報を前記制御装置に送信し、
前記制御装置は、送信された前記識別情報と、記憶した前記識別情報が付与されたデータの前記識別情報とに基づいて、前記端末に記憶されていない前記識別情報が付与されたデータを前記端末に送信する請求項6に記載の制御システムの制御方法。 - デバイスと接続されて前記デバイスと通信する第1通信部と、
ブラウザーが動作する端末と接続されて前記端末からの要求を受信する第2通信部と、
前記端末からの要求に基づいて前記デバイスを制御する制御オブジェクトを動作させ、前記端末と通信接続が切断されたときに前記制御オブジェクトを予め定められた所定期間保持した後に消去するデバイス制御部と、
を備えることを特徴とする制御装置。 - 前記デバイス制御部は、前記端末との通信接続が切断されて、前記所定期間以上の時間が経過した後に前記端末と通信接続が行なわれたとき、前記端末からの要求に基づいて前記制御オブジェクトを生成して動作させる請求項8に記載の制御装置。
- 前記デバイス制御部で動作される前記制御オブジェクトは、送信された前記端末からの要求を、前記第1通信部を介して前記デバイスに送信されるデータに変換する請求項13または9に記載の制御装置。
Priority Applications (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
EP14745737.8A EP2953033B1 (en) | 2013-01-30 | 2014-01-28 | Control system and control method for the control system |
CN201480004391.2A CN104919435B (zh) | 2013-01-30 | 2014-01-28 | 控制系统、控制系统的控制方法以及控制装置 |
US14/763,041 US10491457B2 (en) | 2013-01-30 | 2014-01-28 | Control system, control method of a control system, and control device |
KR1020157023299A KR101772781B1 (ko) | 2013-01-30 | 2014-01-28 | Pos 제어 시스템, pos 제어 시스템의 제어 방법, 및, 제어 장치 |
Applications Claiming Priority (6)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2013-016054 | 2013-01-30 | ||
JP2013-016053 | 2013-01-30 | ||
JP2013-016058 | 2013-01-30 | ||
JP2013016054A JP6229269B2 (ja) | 2013-01-30 | 2013-01-30 | 制御装置、及び、制御装置の制御方法 |
JP2013016053A JP6229268B2 (ja) | 2013-01-30 | 2013-01-30 | 制御装置、及び、制御装置の制御方法 |
JP2013016058A JP6229270B2 (ja) | 2013-01-30 | 2013-01-30 | 制御システム、及び、制御システムの制御方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
WO2014119290A1 true WO2014119290A1 (ja) | 2014-08-07 |
Family
ID=51262008
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
PCT/JP2014/000433 WO2014119290A1 (ja) | 2013-01-30 | 2014-01-28 | 制御システム、制御システムの制御方法、及び、制御装置 |
Country Status (5)
Country | Link |
---|---|
US (1) | US10491457B2 (ja) |
EP (1) | EP2953033B1 (ja) |
KR (1) | KR101772781B1 (ja) |
CN (1) | CN104919435B (ja) |
WO (1) | WO2014119290A1 (ja) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2016128962A (ja) * | 2015-01-09 | 2016-07-14 | セイコーエプソン株式会社 | 制御装置、及び、制御装置の制御方法 |
CN110879552A (zh) * | 2019-11-29 | 2020-03-13 | 联想(北京)有限公司 | 一种控制方法及控制系统 |
Families Citing this family (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP3040870A4 (en) * | 2013-08-29 | 2017-03-15 | Seiko Epson Corporation | Transmission system, transmission device, and data transmission method |
JP6705971B2 (ja) * | 2017-03-16 | 2020-06-03 | 株式会社安川電機 | コントロールシステム、コントローラ及び制御方法 |
US20190227955A1 (en) * | 2017-07-10 | 2019-07-25 | Trusted Solutions Corporation | System for connecting web pos system with peripheral device |
CN108762189B (zh) * | 2018-06-12 | 2021-10-01 | 浙江精功科技股份有限公司 | 一种基于plc控制的pc构件模台控制系统 |
JP7047673B2 (ja) * | 2018-08-30 | 2022-04-05 | セイコーエプソン株式会社 | 印刷装置、印刷装置の制御方法、及び、制御システム |
KR20210084923A (ko) | 2019-12-30 | 2021-07-08 | 주식회사 에스엔유비텍 | Pos 단말기 명령 전달 시스템 및 방법 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH0267671A (ja) * | 1988-09-01 | 1990-03-07 | Tohoku Nippon Denki Software Kk | オンライン処理の実行再開方式 |
JPH0573769A (ja) | 1991-09-11 | 1993-03-26 | Nec Eng Ltd | Posシステム |
JP2005108121A (ja) * | 2003-10-01 | 2005-04-21 | Canon Sales Co Inc | 情報処理装置、情報処理システム、情報処理方法およびそのプログラム |
JP2007508617A (ja) * | 2003-10-10 | 2007-04-05 | サイトリックス システムズ, インコーポレイテッド | 持続的なアプリケーションセッションにアクセスを提供する方法および装置 |
JP2010273045A (ja) * | 2009-05-20 | 2010-12-02 | Hitachi Software Eng Co Ltd | サーバ装置 |
Family Cites Families (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE69822283T2 (de) | 1997-12-24 | 2004-07-29 | Nortel Networks Ltd., St. Laurent | Verteilte dauerhafte Speicher für Benutzer- Anbieter- Systeme mit manchmal unterbrochenen Verbindungen |
US8117328B2 (en) * | 2002-06-25 | 2012-02-14 | Microsoft Corporation | System and method for automatically recovering from failed network connections in streaming media scenarios |
US7650432B2 (en) | 2004-05-20 | 2010-01-19 | Bea Systems, Inc. | Occasionally-connected application server |
KR100694155B1 (ko) | 2005-10-12 | 2007-03-12 | 삼성전자주식회사 | 웹서비스를 통해 홈 네트워크 기기의 서비스를 홈 네트워크외부에 제공하는 방법 및 장치 |
JP5176301B2 (ja) | 2006-09-25 | 2013-04-03 | 大日本印刷株式会社 | Webアプリケーション接続管理システム、Webサーバ、Webアプリケーション接続管理方法、プログラム、及び記録媒体 |
JP4956255B2 (ja) * | 2007-03-28 | 2012-06-20 | 富士通フロンテック株式会社 | Posシステムおよびposシステムの制御方法 |
JP4929192B2 (ja) * | 2008-01-21 | 2012-05-09 | 株式会社日立製作所 | 無線通信システムおよび無線通信システムにおけるソフトハンドオフ制御方法 |
US8331545B2 (en) * | 2008-12-11 | 2012-12-11 | International Business Machines Corporation | Handling communication session disconnection and reconnection |
CN101800639A (zh) * | 2009-02-09 | 2010-08-11 | 华为终端有限公司 | 一种实现网银业务的方法、系统和设备 |
US8527774B2 (en) * | 2009-05-28 | 2013-09-03 | Kaazing Corporation | System and methods for providing stateless security management for web applications using non-HTTP communications protocols |
JP2013051571A (ja) * | 2011-08-31 | 2013-03-14 | Seiko Epson Corp | 処理端末および処理方法 |
-
2014
- 2014-01-28 CN CN201480004391.2A patent/CN104919435B/zh not_active Expired - Fee Related
- 2014-01-28 KR KR1020157023299A patent/KR101772781B1/ko active IP Right Grant
- 2014-01-28 EP EP14745737.8A patent/EP2953033B1/en not_active Not-in-force
- 2014-01-28 US US14/763,041 patent/US10491457B2/en not_active Expired - Fee Related
- 2014-01-28 WO PCT/JP2014/000433 patent/WO2014119290A1/ja active Application Filing
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH0267671A (ja) * | 1988-09-01 | 1990-03-07 | Tohoku Nippon Denki Software Kk | オンライン処理の実行再開方式 |
JPH0573769A (ja) | 1991-09-11 | 1993-03-26 | Nec Eng Ltd | Posシステム |
JP2005108121A (ja) * | 2003-10-01 | 2005-04-21 | Canon Sales Co Inc | 情報処理装置、情報処理システム、情報処理方法およびそのプログラム |
JP2007508617A (ja) * | 2003-10-10 | 2007-04-05 | サイトリックス システムズ, インコーポレイテッド | 持続的なアプリケーションセッションにアクセスを提供する方法および装置 |
JP2010273045A (ja) * | 2009-05-20 | 2010-12-02 | Hitachi Software Eng Co Ltd | サーバ装置 |
Non-Patent Citations (1)
Title |
---|
See also references of EP2953033A4 |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2016128962A (ja) * | 2015-01-09 | 2016-07-14 | セイコーエプソン株式会社 | 制御装置、及び、制御装置の制御方法 |
CN110879552A (zh) * | 2019-11-29 | 2020-03-13 | 联想(北京)有限公司 | 一种控制方法及控制系统 |
CN110879552B (zh) * | 2019-11-29 | 2021-08-17 | 联想(北京)有限公司 | 一种控制方法及控制系统 |
Also Published As
Publication number | Publication date |
---|---|
CN104919435A (zh) | 2015-09-16 |
EP2953033A1 (en) | 2015-12-09 |
EP2953033B1 (en) | 2018-11-21 |
KR101772781B1 (ko) | 2017-08-29 |
US10491457B2 (en) | 2019-11-26 |
US20150365272A1 (en) | 2015-12-17 |
KR20150112004A (ko) | 2015-10-06 |
EP2953033A4 (en) | 2017-02-15 |
CN104919435B (zh) | 2018-08-24 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
WO2014119290A1 (ja) | 制御システム、制御システムの制御方法、及び、制御装置 | |
JP6060708B2 (ja) | 制御システムの制御方法、及び、制御装置の制御方法 | |
JP6182880B2 (ja) | 制御システム、及び、制御システムの制御方法 | |
JP6365648B2 (ja) | 端末、及び端末の制御方法 | |
JP6277959B2 (ja) | レシート発行システム、プリンター、及びレシート発行方法 | |
US20140211255A1 (en) | Control system and control method of a control system | |
JP2015035153A (ja) | 商品販売データ処理装置、情報端末、及び制御プログラム | |
JP2014147045A (ja) | 制御システム、及び、制御システムの制御方法 | |
JP6229269B2 (ja) | 制御装置、及び、制御装置の制御方法 | |
JP6229268B2 (ja) | 制御装置、及び、制御装置の制御方法 | |
JP6229270B2 (ja) | 制御システム、及び、制御システムの制御方法 | |
JP6446812B2 (ja) | Posシステム及びposシステムの制御方法 | |
JP2017156855A (ja) | レシート発行装置、制御方法、及びプログラム | |
RU2575420C2 (ru) | Способ управления системы управления и сама система управления | |
JP2015135635A (ja) | Posシステム、及び、posシステムの制御方法 | |
JP2016049723A (ja) | 記録装置、記録装置の制御方法、及び、記録システム | |
JP6326924B2 (ja) | Posシステムおよびposシステムの制御方法 | |
JP6160437B2 (ja) | Posシステム、ホスト装置、及び、ホスト装置の制御方法 | |
JP6171837B2 (ja) | 送信システム、送信装置、及び、データ送信方法 | |
JP2016051273A (ja) | 記録装置、及び、記録装置の制御方法 | |
JP2015148873A (ja) | 制御システム、及び制御システムの制御方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
121 | Ep: the epo has been informed by wipo that ep was designated in this application |
Ref document number: 14745737 Country of ref document: EP Kind code of ref document: A1 |
|
WWE | Wipo information: entry into national phase |
Ref document number: 14763041 Country of ref document: US |
|
NENP | Non-entry into the national phase |
Ref country code: DE |
|
ENP | Entry into the national phase |
Ref document number: 20157023299 Country of ref document: KR Kind code of ref document: A |
|
WWE | Wipo information: entry into national phase |
Ref document number: 2014745737 Country of ref document: EP |