[0001] This application claims benefit of priority under 35USC§119 to Japanese Patent Application No. 2003-32801, filed on Feb. 10, 2003, the entire contents of which are incorporated by reference herein.
[0002] 1. Field of the Invention
[0003] The present invention relates to an information providing apparatus which provides various information, an information receiver which receives various information, an information providing program, an information receiving program and a wireless communication apparatus.
[0004] 2. Related Art
[0005] Recently, short-range wireless communication systems having a transmission distance of approximately 10 m are attracting attention. Whereas the effective transmission distance range of the conventional wireless LAN is at least 100 m, the short-range wireless communication system is short in transmission distance and accordingly power consumption is low. Therefore, the short-range wireless communication system is suitable for information processing apparatuses limited in battery capacity, such as portable information processing apparatuses (hereafter referred to simply as portable terminal) like portable telephones or a PDAs.
[0006] One of such short-range wireless communication systems is called Bluetooth™ (see specifications available at a web site http://www.bluetooth.org/. In recent years, portable terminals having communication function according to Bluetooth specifications (hereafter simply referred to as Bluetooth communication function) and apparatuses that provide the portable terminals with various services begin to be spread.
[0007] Since the Bluetooth communication function can be implemented with an inexpensive chip and in a smaller size, apparatuses having the Bluetooth communication function are expected to be spread everywhere in the future. As the Bluetooth spreads, a plan is promoted in which it is realized to provide various services according to places in arbitrary places.
[0008] For example, in convenience stores, supermarkets, retail stores or the like, provision of service for purchasers, such as electronic coupon service, electronic point service, electronic settlement, electric receipt and voucher issuance, utilizing the Bluetooth is under study. Furthermore, application of the Bluetooth using electronic tickets to gate opening/closing control, settlement and discount service in automatic vending machines, and charge paying in parking lots, filling stations and drive-throughs is also being studied. Besides, access to the Internet, information delivery depending upon specific places, provision of user's position information, and route guide or the like are also possible. As for several services relating to the above-described application, experiments have already been conducted in actual systems.
[0009] Hereafter, a conventional technique will be described by taking as an example the case where connection using the Bluetooth is established between a portable terminal having a Bluetooth communication function (hereafter referred to simply as Bluetooth portable terminal) and an information processing apparatus having a Bluetooth communication function and providing various services (hereafter referred to simply as Bluetooth apparatus) and the Bluetooth apparatus provides service for a user having the Bluetooth portable terminal.
[0010] First, a procedure for the Bluetooth portable terminal to get service from an arbitrary opposite party in an arbitrary place will now be described.
[0011] The Bluetooth portable terminal starts a client application program to get service. Subsequently, the client application in the Bluetooth portable terminal orders a Bluetooth module to execute an inquiry for a predetermined period (for example, 10 s-conds) in order to find an apparatus with which communication can be conducted. The Bluetooth module used herein is a communication processing unit that conducts the Bluetooth communication function. The Bluetooth module may be formed of hardware such as a chip or may be formed of software.
[0012] If the inquiry is completed after a specified period has elapsed, the client application sends to the Bluetooth module a command for acquiring remote names which are identification names respectively of Bluetooth apparatuses found during that period, or identification names of services provided by the Bluetooth apparatuses.
[0013] Subsequently, the client application acquires remote names of all found Bluetooth apparatuses, then shows a list of the acquired remote names to the user, and urges the user to select a Bluetooth apparatus to be connected. Subsequently, the client application orders the Bluetooth module to transmit an ACL connection request command to the Bluetooth apparatus selected by the user.
[0014] According to setting, a terminal authentication procedure is conducted during the ACL connection operation in some cases. In some cases, both apparatuses are authenticated by inputting the same link key or the same PIN code in order to create a link key in both apparatuses. For using encryption communication, authentication processing is executed, and then a temporary encryption key for encryption communication is created on the basis of the link key.
[0015] After completion of the ACL connection, the client application orders a module called Bluetooth stack to transmit a service information acquisition command. The client application acquires service information from the opposite party apparatus, and thereby acquires information concerning a protocol to be used by the application.
[0016] Subsequently, the client application orders the module called Bluetooth stack to execute connection to a protocol to be used by the client application, by using information corresponding to the protocol. For example, if the client application uses OBEX FTP to get service, the client application calls a connection request function for OBEX. In this case, the stack executes connections of RFCOMM (RF+COMM) and L2CAP (Logical Link Protocol and Adaptation Layer Control) in order, and after the completion of connections of L2CAP and RFCOMM, the connection of an OBEX protocol is conducted.
[0017] After the completion of the connection of the protocol, the client application conducts server authentication by conducting challenge response or the like at an application level. In the case of OBEX, the OBEX protocol itself has an authentication function. Even if the authentication function in the OBEX protocol is used, therefore, authentication of the service providing apparatus is possible.
[0018] By the procedure heretofore described, it becomes possible for the user to get desired service by using the Bluetooth portable terminal.
[0019] If the above-described procedure is executed, however, processing time required until the user gets service is typically as long as 10 and several seconds, because the inquiry, which is processing of finding a terminal with which communication can be conducted, is performed for a fixed time even in the case where there is only one apparatus with which communication can be conducted. Furthermore, a remote name is acquired every apparatus. If there are a large number of apparatuses with which communication can be conducted, therefore, the processing time increases in proportion to the number of apparatuses with which communication can be conducted. Supposing that approximately 1 second is required to acquire a remote name and N apparatuses have been found, it takes N seconds to acquire remote names of all apparatuses.
[0020] For example, in the case where a plurality of registers are arranged at intervals of 1 m in a supermarket or the like and a shopper searches cash registers in order to make payment by using the Bluetooth portable terminal, connection cannot be conducted unless the shopper waits as long as the time corresponding to the number of cash registers. It thus takes a long time for executing the register work.
[0021] By using a COD (Class of Device), which describes information concerning the kind of the Bluetooth apparatus included in information that can be acquired by the inquiry, it is possible to narrow down apparatuses to only apparatuses that provide desired service. However, the COD identifies the kind of the device, and the COD does not identify the service itself. For example, also in the case where a category of settlement service exists in the CCD, in the above-described example all registers belong to that category, and the CCD is not helpful in shortening the user's selection time.
[0022] On the other hand, infrared ray, which is one of short-range communication means, has directivity as compared with wireless communication. By only directing the infrared ray to a specific apparatus, the user can conduct communication with that apparatus. At the present time, infrared ray is adopted in portable telephones, and a member management system using infrared ray is implemented. However, there is a problem that it is difficult to adjust the direction of an infrared ray device and communication is disconnected unless the same posture is maintained while communication is being conducted.
[0023] Contrary, wireless communication has a characteristics that once communication with a desired opposite party has been established, there is no directivity and also in the case where there are some obstacles between two apparatuses, communication is possible. However, it is difficult to establish a connection with a specific apparatus.
[0024] For example, in the case where there are one customer (one Bluetooth portable terminal) and one register (one Bluetooth apparatus), the relation between the Bluetooth portable terminal carried by a customer who makes payment and the cash register is determined uniquely and consequently there is no problem concerning the connection. In other words, if a person who operates the Bluetooth portable terminal has found a Bluetooth apparatus by using the above-described Bluetooth apparatus search function, the found apparatus can be regarded as a cash register to which payment should be made.
[0025] In the case of a store in which a plurality of cash registers are disposed in a range in which the Bluetooth portable can conduct communication, however, the other adjacent cash registers are also found. The user carrying the Bluetooth portable terminal needs to ascertain the kind and name of a cash register to which payment should be made, and select the cash register from among the found cash registers.
[0026] If extra time is needed to select the opposite party of communication, it takes time until the user gets service and the convenience for the user is worsened. Especially in the case of payment at a register in a store, the processing operations in the cash registers are hindered at the time of congestion when a large number of customers form lines. In addition, if a person who operates the Bluetooth portable terminal specifies a wrong cash register, such troubles occur that a discount from the amount due might be not conducted although a coupon is used, or points of another person might be added to those of the person operating the Bluetooth portable terminal. In the case where such troubles have occurred, cancellation work needs to be conducted in both the Bluetooth portable terminal and the cash register, and a great deal of labor is needed.
[0027] Therefore, an operator of a cash register needs to ascertain from the customer whether the connected Bluetooth portable terminal is right, by using some information accompanying the Bluetooth portable terminal. Such selection or ascertainment work is not a good interface for a customer who makes payment, and it hinders the work of the operator.
[0028] Such problems occur in the same way also in the case where data are exchanged or data is transmitted and received between information processing apparatuses. For the information processing apparatus, a remote name having its owner as an identification name is set. In the case of a portable information processing apparatus of an individual, a name provided by the individual cannot be arbitrated. Therefore, there is a possibility that there is a portable information processing apparatus having the same remote name around the user. In this case, there is not an easy method that assures the connection with a proper apparatus, and for reliable connection there is no way other than changing the remote name of the opposite party of the connection to the unique one.
[0029] The present invention has been achieved in order to solve the above-described problems. An object of the present invention is to provide an information providing apparatus, an information receiver, an information providing program, an information receiving program and a wireless communication apparatus whereby communication with a desired opposite party can be conducted reliably in a state in which security is maintained.
[0030] An information providing apparatus, comprising:
[0031] an identification information transmitter which transmits its own identification information to an information receiver when an existence confirmation request from said information receiver is received;
[0032] a connection request waiting unit configured to wait reception of a connection request from said information receiver after transmitting the identification information;
[0033] a connection processing unit configured to conduct connection processing for said information receiver when said connection request waiting unit receives the connection request from said information receiver;
[0034] an information providing unit configured to provide said information receiver with prescribed information after the connection processing is completed; and
[0035] a power controller which controls electric power for transmitting said prescribed information so that a possible range of wireless communication at the time when said information providing unit provides information is broader than the possible time until said connection processing unit completes the connection processing.
[0036] An information receiver, comprising:
[0037] an existence confirmation unit configured to conduct an existence confirmation request with respect to an information providing apparatus;
[0038] an identification information receiver which receives a response for the existence confirmation request and acquires identification information of said information providing apparatus;
[0039] a connection processing unit configured to conduct a connection request with respect to said information providing apparatus by using the received identification information, and to conduct the connection processing with respect to said information providing apparatus;
[0040] an information receiver which receives a prescribed information from said information providing apparatus after the connection processing is completed; and
[0041] a power controller which controls electric power during said connection processing unit is conducting the connection request so that a possible range of wireless communication at the time when said connection processing unit completes the connection processing is narrower than the possible range at the time when said information receiver receives information.
[0042] Furthermore, an information providing apparatus, comprising:
[0043] a first power controller which sets electric power for transmission so that a possible range of wireless communication becomes a first range;
[0044] a connection processing unit configured to conduct connection processing with respect to said information receiver when the possible range of wireless communication is set to said first range, and connection request from an information receiver is received; and
[0045] a second power controller which sets electric power for transmission so that the possible range of wireless communication becomes a second range broader than the first range when it is determined that the transmitted information did not reach said information receiver before the connection processing with said information receiver is completed.
[0046] Furthermore, an information providing program which controls operation of an information providing apparatus, making a computer operate, comprising:
[0047] giving a first command which instructs said wireless communication unit to change electric power for transmission so that a possible range of wireless communication in said information providing apparatus becomes a first range; and
[0048] giving a second command which instructs said wireless communication unit to change electric power for transmission so that the possible range of wireless communication in said wireless communication unit becomes a second range broader than said first range, after said wireless communication unit changes the electric power for transmission according to the first command, when said wireless communication unit notifies connection completion with said information receiver.
[0049] Furthermore, an information receiving program which controls operation of an information receiving apparatus, making a computer operate, comprising:
[0050] giving a first command which instructs said wireless communication unit to change electric power for transmission so that a possible range of wireless communication of a wireless communication unit in said information receiving apparatus becomes a first range;
[0051] instructing said information providing apparatus to transmit an existence confirmation request after said wireless communication unit changes electric power for transmission by said first command;
[0052] instructing said wireless communication unit to suspend transmission of the existence confirmation request when said wireless communication unit notifies that said information providing apparatus has received the identification information of said information providing apparatus;
[0053] giving a second command which instructs said wireless communication unit to change electric power for transmission so that the possible range of wireless communication in said wireless communication unit becomes a second range broader than the first range, after said wireless communication unit has suspended search; and
[0054] instructing said wireless communication unit to conduct connection processing with said information providing apparatus, after said wireless communication unit changes electric power for transmission.
[0055] Furthermore, a wireless communication apparatus which conducts wireless communication for an information providing apparatus or an information receiving apparatus, comprising:
[0056] a first power changing unit configured to change electric power for transmission so that a possible range of wireless communication becomes a first range when a first instruction is received from a control unit;
[0057] a second power changing unit configured to change electric power for transmission so that the possible range of wireless communication becomes a second range broader than the first range when a second instruction is received from said control unit;
[0058] a connection processing unit configured to conduct connection processing for said information providing apparatus or said information receiving apparatus based on instruction from said control unit after said first power changing unit changes electric power for trransmission; and
[0059] an information transferring unit configured to provide said information receiver with information or to receive information from said information providing apparatus based on instruction from said control unit, after the connection processing is completed and said second power changing unit changes electric power for transmission.
[0060]
[0061]
[0062]
[0063]
[0064]
[0065]
[0066]
[0067]
[0068]
[0069]
[0070]
[0071]
[0072]
[0073]
[0074]
[0075]
[0076]
[0077]
[0078] Hereafter, an information providing apparatus, an information receiver, an information providing program, an information receiving program and a wireless communication apparatus according to the present invention will be described more specifically with reference to the drawings.
[0079] Hereafter, an example in which a service providing apparatus and a service receiver conduct short-range wireless communication according to specifications of the Bluetooth will be mainly described. However, its communication form is not necessarily limited to the Bluetooth. The service providing apparatus is, for example, a cash register or an automatic ticket examining machine. The service receiver is, for example, a portable terminal. In an embodiment described hereafter, an example in which a cash register is used as the service providing apparatus and a portable terminal is used as the service receiver will be described.
[0080]
[0081] The cash register (hereafter also referred to as POS terminal)
[0082]
[0083] The cash register
[0084] By the way, the cash register
[0085]
[0086] The transmitter
[0087] The receiver
[0088] The baseband unit
[0089] In response to an order from the baseband unit
[0090] As for details of the internal configurations of the RF unit
[0091] The baseband unit
[0092] Here, the baseband processing is processing such as packet assembly and disassembly, data error detection and correction, data encryption and decryption, and timing detection. The link management includes connection and disconnection of an ACL link and an SCO link, exchange of information concerning device information, and execution of an authentication protocol. The HCI interface processing is processing of conducting communication with a host (the cash register
[0093] If a message LMP_incr_power_req is received from another apparatus during connection of an ACL link with the apparatus, a control signal is sent in the link management to the RF unit
[0094] At the present time, a two-chip configuration including the RF unit
[0095] By the way, it is also possible to store a program that conducts processing for upper layer protocols such as L2CAP and RFCOMM, in the ROM
[0096] If RS232C is used as the interface of the Bluetooth module
[0097] In the case where the Bluetooth module
[0098]
[0099] The Bluetooth module
[0100] A configuration concerning audio talk is similar to that in the conventional portable telephone. For example, the communication unit
[0101] If the connection unit
[0102] At the time of communication, the Bluetooth portable terminal
[0103] A function whereby the Bluetooth portable terminal
[0104] An API that controls the Bluetooth from a JAVA virtual machine is stipulated as JSR-82. The JAVA application transmits a command to the Bluetooth module
[0105] A program operating on the Bluetooth portable terminal
[0106] In describing effects of the present embodiment, it is supposed that an application to get service is previously preserved in the Bluetooth portable terminal
[0107] Hereafter, a procedure for the Bluetooth portable terminal
[0108] If the time of 10 seconds has elapsed, it is determined whether a terminal of the opposite party of communication exists (step S
[0109] Subsequently, it is determined whether another terminal exists (step S
[0110] If there is a connection request from the user (step S
[0111] The present embodiment has a feature that the transmission power of the cash register
[0112] The Bluetooth module
[0113] As for the HCI command for transmission power control, a dedicated code is assigned to an op code in the HCI command packet and used. As for the assignment of the dedicated code, a method of adding an instruction to an existing group, a method of defining a new group, a method of using a group for vendor debug, and so on can be considered. The argument in the power control command is managed in the baseband unit
[0114]
[0115] The difference of 30 dB between the maximum power and the minimum power is an example, and it may be another value. For example, in the case where the difference is less than 30 dB, for example, in the case where the difference is 20 dB, the minimum distance becomes 1 m. In the case where the interval from an adjacent apparatus is small as in the cash register (POS)
[0116] In the case where the difference between the maximum power and the minimum power is 30 dB, the argument “1” of the power control command indicates the minimum power of −30 dB and the argument “100” indicates the maximum power. In the case where the difference is 40 dB, the argument “1” indicates −40 dB, and “25” indicating −30 dB should be set in order to obtain the desired effects.
[0117] It is supposed that the directional antenna
[0118]
[0119] The Bluetooth conducts communication while hopping frequencies of 79 channels. As a matter of fact, therefore, the communication distance is not fixed because of the dispersion in transmitter performance among channels in use, the difference in antenna performance between frequencies, dispersion among individual Bluetooth modules
[0120] By the way, the communication distance of 30 cm is nothing but an example. According to the situation, the value is narrowed down to approximately 10 cm (−40 dB) or 5 cm (−46 dB).
[0121] The numerical values shown in the present embodiment are nothing but examples, and other numerical values can also be used. A feature of the present embodiment is that connection with a desired opposite party is implemented by conducting control of the transmission power before the ACL connection.
[0122] Processing operation in the cash register
[0123] Subsequently, an ACL connection request is waited for (step S
[0124]
[0125] If the POS operator orders the POS application to start communication using the Bluetooth, the application transmits a power change command to the Bluetooth module
[0126] Subsequently, the application orders the Bluetooth module
[0127] A user having the Bluetooth portable terminal
[0128] If the Bluetooth portable terminal
[0129] On the other hand, if the Bluetooth portable terminal
[0130] Subsequently, an ACL connection procedure is executed between the Bluetooth module
[0131] Upon receiving the ID packet, the baseband unit
[0132] Upon receiving the ID packet from the slave, the baseband unit
[0133] Upon receiving the LMP_host_connection_req packet, the baseband unit
[0134] If setting concerning the communication is completed, the Bluetooth portable terminal
[0135] If setting in both the baseband units
[0136] Upon receiving the Connection Complete event, the POS application sends a power change command to the Bluetooth module
[0137] In the above-described first embodiment, the cash register
[0138] Once the ACL link is connected, therefore, subsequent processing can be conducted continuously also in the case where the user has put the Bluetooth portable terminal
[0139] In the present embodiment, the user is restrained in posture only between the issuance of the connection order for the application in the Bluetooth portable terminal
[0140] As heretofore described, it is possible in the first embodiment to easily and reliably conduct communication with the cash register
[0141] If it becomes possible to provide the user with service, the POS application in the cash register
[0142] After the AC link connection has been completed, the POS application transmits the transmission power increase command to the Bluetooth module
[0143] Conventionally, so that the user can easily discriminate a desired apparatus among the found apparatuses, the processing of transmitting Remote_name_request to the found apparatus, acquiring a name for identification, and exhibiting the name to the user is necessary. In the present embodiment, however, the apparatus with which communication can be conducted is the desired one apparatus, and consequently the selection processing conducted by the user is not needed. Therefore, the identification name acquisition processing using Remote_name_request becomes unnecessary, and the processing time can be shortened as compared with the conventional technique.
[0144] (Second Embodiment)
[0145] In the first embodiment, the Bluetooth module
[0146] In the second embodiment, the Bluetooth module
[0147]
[0148] Typically, the user of the Bluetooth portable terminal
[0149] In the case where the antenna
[0150]
[0151] Subsequently, the Bluetooth portable terminal
[0152]
[0153] If the Bluetooth module
[0154] The baseband unit
[0155] Upon receiving an Inquiry Result event, which is a new terminal finding event (step S
[0156] After the power has been change, the baseband unit
[0157] Even if the transmission power is changed after the Connection Complete event, which indicates the completion of the ACL connection, has been received, instead of when the Inquiry Complete event has been received, equivalent effects are obtained.
[0158] In an alternate configuration, the virtual machine, which activates the JAVA application, does not send the power change command to the Bluetooth module
[0159] In steps S
[0160] Besides the application to get service, the Bluetooth portable terminal
[0161] As a reliable method, the current transmission power is acquired and its value is recorded at the time of initialization of the JAVA application, and the setting is returned to the original value in the destructor of the JAVA application. In such a case, not only the transmission power change command, but also a command to read the current transmission power from the Bluetooth module
[0162] By using the method as heretofore described, such a phenomenon that other Bluetooth applications cannot be connected because of a change in transmission power is prevented from occurring.
[0163] In the case where the return value in the order of the power change command has succeeded, the Bluetooth portable terminal
[0164] In the present embodiment, the directional antenna
[0165] Thus, in the second embodiment, the Bluetooth portable terminal
[0166] (Third Embodiment)
[0167] In the first embodiment, the configuration in which the power control command is explicitly given from the upper layer application as the HCI command has been described. On the other hand, in the third embodiment described hereafter, the transmission power is automatically changed to a predetermined value by the link management function in the Bluetooth module
[0168]
[0169] If the POS operator orders the application to start the communication using the Bluetooth, the POS application sends a Write_Scan_Enable command to the Bluetooth module
[0170] If the Bluetooth portable terminal
[0171] Thereafter, if the Bluetooth module
[0172] In the third embodiment, effects equivalent to those of the first embodiment can be obtained as heretofore described. Furthermore, in the third embodiment, the program operating in the cash register
[0173] In the above described example, the transmission power is changed when an ID packet has been received in the Page Scan state. Instead, the Bluetooth module
[0174] After the transmission power has been changed, the RF unit
[0175] After the RF unit
[0176] In
[0177] Even if the connection processing does not advance successfully because of insufficient transmission power, the transmission power is increased and the connection processing is advanced owing to the method heretofore described. As a result, it becomes possible to automatically conduct connection processing without the need for the user to give an order again.
[0178] Thus, in the third embodiment, upon receiving an execution order of a specific command in the program in the cash register
[0179] (Fourth Embodiment)
[0180] In the second embodiment, the configuration in which the power control command is explicitly given as the HCI command by the high-rank application has been described. On the other hand, in a fourth embodiment described hereafter, upon receiving an execution order of a specific command from the program in the Bluetooth portable terminal
[0181]
[0182] The Bluetooth module