EP1379976A1 - Radio communication interface module, and its use in a device reading, processing, transmitting and operating on a bar code - Google Patents

Radio communication interface module, and its use in a device reading, processing, transmitting and operating on a bar code

Info

Publication number
EP1379976A1
EP1379976A1 EP02722393A EP02722393A EP1379976A1 EP 1379976 A1 EP1379976 A1 EP 1379976A1 EP 02722393 A EP02722393 A EP 02722393A EP 02722393 A EP02722393 A EP 02722393A EP 1379976 A1 EP1379976 A1 EP 1379976A1
Authority
EP
European Patent Office
Prior art keywords
data
protocol
equipment
reader
module
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Withdrawn
Application number
EP02722393A
Other languages
German (de)
French (fr)
Inventor
Thomas Serval
Olivier Giroud
Sylvain Gommier
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Baracoda SA
Original Assignee
Baracoda SA
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Baracoda SA filed Critical Baracoda SA
Publication of EP1379976A1 publication Critical patent/EP1379976A1/en
Withdrawn legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/95Retrieval from the web
    • G06F16/955Retrieval from the web using information identifiers, e.g. uniform resource locators [URL]
    • G06F16/9554Retrieval from the web using information identifiers, e.g. uniform resource locators [URL] by using bar codes
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W80/00Wireless network protocols or protocol adaptations to wireless operation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W84/00Network topologies
    • H04W84/18Self-organising networks, e.g. ad-hoc networks or sensor networks

Definitions

  • the present invention relates to a radio communication interface module, a device, applications including a method for reading, processing, transmission and exploitation of a bar code such that the method implements the module in a code reader to autonomous radio link bars.
  • the invention can be implemented in a generic way
  • 35 devices of the first type including the pencil which is one of the the simplest devices to realize since it only has a static optical sensor and whose scanning of the bar code for reading is carried out by the user.
  • the reader pens known from the prior art are generally connected by an electrical cable to an external electronic unit itself connected to the keyboard of a computer.
  • Such an optical pencil is therefore not autonomous and is not easy to handle since a cable attaches it to computer equipment.
  • this type of pencil is relatively high cost because the optical sensor also includes an optical element of very high hardness, sapphire for example, which can withstand repeated friction on the support comprising the bar code while ensuring an optical adaptation.
  • the bar codes which are read are essentially processed locally. For example in applications of the cash register type, the data corresponding to the bar codes are processed either at the cash register level to retrieve the price and, possibly, a description of the item, or in a local server of the commercial site linked to all the cash desks to also ensure inventory management.
  • the object of the invention is to propose a hardware and software means of radio communication in the form of a module which can be easily adapted to any user application and, in a particular case, to a method in which a computer network connecting equipment.
  • IT capable of running hypermedia applications implements data from barcode reading in order to produce visual, auditory and / or other actions, possibly interactive, on client computer equipment in relation to a barcode reader.
  • the term computer equipment in the context of the invention corresponds to any electronic device which can process hypermedia data and which can be connected to the network computer and, for example, computer, microcomputer, personal assistant, telephone with WAP, GPRS, UMTS functionalities ...
  • the user can read a bar code with a reader and can receive almost instantaneously an information page concerning the object carrying the barcode, on any type of computer support connected to the Internet (microcomputer, digital assistant, mobile phone or others).
  • the object can be any consumer object (then carrying an EAN or UPC type barcode) or any other type of object and, for example: business cards, newspaper article, invoice, statement bank account.
  • the term barcode concerns as well a numerical value or a character as several according to a standardized coding or a proprietary coding (proprietary barcode).
  • the invention therefore relates to a bidirectional radiocommunication interface module according to a predefined protocol for at least one user application having data and instructions to be communicated to an external device, the module comprising at least one radio electronic transmission and reception circuit. digital signals and at least one programmable electronic circuit with a radio microcontroller for managing the radio electronic circuit.
  • the radio microcontroller comprises hardware means cooperating with software in the form of a software stack formed by a first part called the protocol stack topped by a second part called the application abstraction stack, the software stack allowing the adaptation according to the protocol between, on the one hand, the digital signals and, on the other hand, the data and instructions of the user application, the application abstraction stack allowing at least the translation of the data and instructions of the user application in a proprietary format in data and instructions according to the protocol for processing in the protocol stack, the module being a hardware component unique also storing the user application in the form of a program and ensuring its execution in the radio microcontroller.
  • the module consists of a radio printed circuit grouping an antenna, the radio electronic transmission and reception circuit in the form of a radio and an integrated baseband circuit and the programmable electronic management circuit in the form of a '' a microcontroller with storage means,
  • the software operation of the module is divided into tasks executed according to priorities, the tasks linked to the management of the radio circuit having a higher priority than the execution tasks, of the user application,
  • the module also comprises a second printed circuit interconnected to the radio printed circuit with at least one peripheral at least chosen from: - a digital input with possibly a comparator for level or transition detection,
  • the application abstraction stack may also include proprietary software means for processing instructions for retrieving data from the device and / or sending data to the device, - the module includes a reprogrammable memory as well as means allowing the reprogramming of said memory to from data received by radiocommunication,
  • Bluetooth® or IEEE802.15.1
  • the application abstraction stack also ensures and conversely the translation of information from the protocol stack to the application;
  • the single component is an integrated circuit .
  • the module also comprises at least one bidirectional infrared communication means and the application abstraction stack also comprises software means for processing instructions and data for and from said infrared means;
  • the module includes a voltage regulator making it possible to supply it from a 220V / 1 10V electrical outlet, from a battery or from any other current source and the application abstraction battery also comprises software means for process instructions and data for and from said regulator;
  • the module further comprises memory intended to store data;
  • the microcontroller is of a type between 8 and 16 bits, terminals included, with a clock of frequency less than 200 KHz;
  • the microcontroller includes memory allowing the execution of a user application program, the application program comprising a sequence of instructions and data according to the proprietary format;
  • the memory is a preprogrammed read only memory
  • the memory is a loadable memory (reprogrammable); - the loadable memory is loaded by the application program each time the application is started in the module;
  • the loadable memory is loaded by the application program once and for all at the manufacturing of the module in said application;
  • the loadable memory is loaded by the application program once and for all when the application is first started in the module;
  • the application program for loading is in a ROM external to the module
  • the application program for loading is in a computer means external to the module
  • the invention also relates to a particular application of the module according to one or more of the preceding characteristics in the form of a bidirectional radiocommunication interface device according to a predefined protocol for at least one user software application and comprising a module according to one any of the preceding characteristics, and according to which the device further comprises within a single housing, an electrochemical power source, and at least one connector, the pins of which are connected to at least one interface of the module.
  • the invention also relates to a particular application of the module as such or in the device according to one or more of the preceding characteristics, possibly combined for the production of an electronic device comprising a user software application. communicating by bidirectional radiocommunication according to a predefined protocol and comprising a module according to any one of the preceding characteristics.
  • the apparatus is: an apparatus which is a barcode reader pencil for a support, the pencil comprising at one end in an optical sensor a light source producing a light beam focused on the support and an optical detector intended to receive and convert the light reflected by the support into electrical signals, the pencil being autonomous and comprising an internal electrical power source and the radio communication interface module, with a software stack according to the "Bluetooth" protocol ®, the user application in the form of an operating program comprising means for processing the electrical signals from the optical detector, and interfacing means via the radiocommunication module ensuring at least the transmission of said bar codes according to said protocol to computer equipment, (the transmission of bar codes corresponds to the cara that the user application has read)
  • the bar codes correspond to a successive temporal sequence of dark and light surface on a display screen
  • - an apparatus which is a reader pen for recognizing alphanumeric characters of a medium
  • the pencil comprising one end in an optical sensor a light source producing a light beam focused on the support and an optical detector intended to receive and convert the light reflected by the support into electrical signals
  • the pencil being autonomous and comprising an internal power supply source and the radiocommunication interface module, with a software stack according to the “Bluetooth®” protocol
  • the user application in the form of an operating program comprising means for processing the electrical signals from the optical detector and recognizing said characters, and means for interfacing via the radiocommunication module ensuring at least the transmission of said characters according to said protocol to computer equipment
  • - an apparatus which is a pencil handwriting recognition reader, the pencil comprising at least two accelerometers along two axes X and Y corresponding to the writing plane and producing electrical signals, the pencil being autonomous and comprising an internal power supply and the module d radio interface, with a software
  • the writing recognition recognition pen includes a means of detecting along a Z axis the support of the pencil during writing on a support, - the means of detecting the support is a contactor or an accelerometer,
  • T an apparatus which is one of the preceding pencils and which does not include a focusing point in hard material
  • the socket includes a voltage step-down for supplying the module, a controlled electronic switch,
  • the step-down is chosen from a switching power supply, with static transformer, with step-down capacitor, - the switch is chosen from an electromagnetic relay, a triac, an electronic switch at zero crossing.
  • the invention also relates to a particular application of the module as such or in the device according to one or more of the preceding characteristics possibly combined in the form of a method of reading, processing, transmission and exploitation of a bar code in which :
  • the bar code is read with a reader comprising a radio communication interface module according to one or more of the preceding characteristics and optical reading means of the optical bar code reading head type producing electrical signals according to the bars, - said electrical signals are processed in the interface module to produce digital and / or alphanumeric data,
  • the proprietary data chain is transmitted in real time to at least one client device comprising at least one client software for execution of an order understandable by said client device,
  • client device comprising at least one client software for execution of an order understandable by said client device
  • the proprietary data string is stored in a memory of the reader, - in the client device, at least one type of data item d is associated with the proprietary data string customer equipment in order to form an IT address then dependent on the barcode, the reader identifier and the type of equipment data, - a correspondence table is used to associate a computer address with the proprietary data chain, possibly associated with at least one piece of data of client equipment type, the correspondence table being located in a computer server distinct from the equipment customer,
  • a correspondence table is used to associate a computer address with the proprietary data chain, possibly associated with at least one datum of the type of client equipment, the correspondence table being stored in the client equipment,
  • the correspondence table is stored in the client equipment by selection according to a: criterion in a global correspondence table located in a computer server separate from the client equipment, the criterion comprising at least the reader identifier,
  • a means of transmission by electromagnetic waves in free space between the reader and the client equipment is implemented with a communication protocol making it possible at least to determine which client devices can communicate and, in the case where several devices are operational , said protocol making it possible to select at least one of said operational equipment,
  • the digital and / or alphanumeric data are coded according to an encoding algorithm before associating them with the reader identifier
  • the computer address associated with the proprietary data chain is that of a computer server relaying a request for information to another computer server, - the bar code is a proprietary bar code; - the identifier of the reader is a unique 48-bit number of “Bluetooth®” address;
  • the reader identifier is a reader number preprogrammed during manufacture or programmed later;
  • the internal electrical power source is of the rechargeable battery and / or electrochemical cell type
  • the reader includes a means of establishing its electrical supply by the user gripping member
  • the reader includes a means of cutting its electrical supply by the user gripping member
  • the means for establishing the supply is an electromechanical switch of the push button type, the supply is cut off when the user stops pressing said push button;
  • the push button is arranged so that the user necessarily positions the reader (or pencil) in a given orientation relative to the bar code; - the orientation given is such that the reader (or pencil) is substantially vertical during reading;
  • the reader also includes a sound generator
  • the program allows the decoding of the usual bar codes among which those of type EAN and UPC; - the program also allows the decoding of bar codes according to a proprietary coding.
  • the invention relates to a symbol reader pen as well as to a method with their variations possibly combined according to all the technically possible possibilities and corresponding to:
  • the pencil comprising at one end in an optical sensor a light source producing a light beam focused on the support and an optical detector intended to receive and convert the light reflected by the support into electrical signals, the pencil being autonomous and comprising an internal electrical power source, a bidirectional radiocommunication interface according to a predefined protocol for at least one user application having data and instructions to communicate to an external device as well as optical reading means of the head type reading device producing electrical signals according to the symbols, the user application in the form of an operating program comprising a means of recognizing the symbols and means for processing the electrical signals of the optical detector, means of interfacing by the intermediary of the ra interface diocommunication ensuring at least the transmission of said symbols according to said protocol to equipment, data processing,
  • the symbols are bar codes corresponding to a successive time sequence of dark and light surface on a display screen
  • the light source is omitted
  • said electrical signals are processed in the interface module to produce digital and / or alphanumeric data
  • the proprietary data string is transmitted in real time to at least one client device comprising at least one client software for execution of '' an order understandable by said customer equipment,
  • a method according to the preceding characteristics such as in client equipment, in addition, is associated with the owner data chain at least one datum of type of client equipment in order to form an IT address then dependent on the symbol, the identifier of equipment type data,
  • a correspondence table is used to associate a computer address with the proprietary data chain, possibly associated with at least one piece of data of type of client equipment, the correspondence table being located in a computer server separate from the client equipment, - a method according to the preceding characteristics such that a correspondence table is implemented to associate a computer address with the proprietary data chain, possibly associated with at least one data item type of customer equipment, the correspondence table being stored in the customer equipment, a method according to the preceding characteristics such that the correspondence table is stored in the client equipment by selection according to a criterion in a global correspondence table located in a computer server distinct from the client equipment, the criterion comprising at least the reader identifier,
  • a method such as one implements a means of transmission by electromagnetic waves in free space between the reader and the client equipment with a communication protocol allowing at least to determine which client equipment can communicate and, in the case where several pieces of equipment are operational, said protocol making it possible to select at least one of said operational pieces of equipment,
  • - a method according to the preceding characteristics such that the digital and / or alphanumeric data are coded according to an algorithm for coding before associating them with the reader identifier
  • - a method according to the preceding characteristics such as the associated computer address to the proprietary data chain is that of a computer server relaying a request for information to another computer server
  • FIG. 1 representing the general architecture (hardware and software) of a Smart Module
  • FIG. 2 and 3 showing a reader pen according to two viewing planes
  • FIGS. 6 and 7a, 7b, 7c representing the stages of operation of the pencil
  • FIG. 8 schematically representing means for implementing the method.
  • the software stack of the radiocommunication interface module comprises a part corresponding to the communication protocol (protocol stack) and a part corresponding to the application abstraction stack (“protocol abstraction API”), the latter allowing the simplified implementation of applications.
  • the application abstraction stack can correspond to one or more software levels.
  • the radio communication interface module also known as “SmartModule” “Baracoda®” is a generic radio module in the form of a single hardware component which allows software to be embedded for specific user applications.
  • a “Smart Module”, shown schematically in Figure 1, consists of radio means of the radio component type, integrated baseband circuit, as well as software means on board a radio microcontroller, and according to the case, an antenna and / or peripherals including, for example, analog or digital inputs / outputs, a battery ensuring the autonomy of the module.
  • the "SmartModule” or radiocommunication module is a generic radio module that allows you to embed application software.
  • the “SmartModule” is suitable for all types of radio protocol, proprietary or not and, for example, “Bluetooth®”, GPRS, CDMA2000, WCDMA, “Home RF”, 802.1 1 b, “WLAN”, “Wi- Fi ”, 802.11. a, "Hyperlan”, “Zigbee” or solutions at 433MHz.
  • the microcontroller of the interface module integrates all the software layers of the protocol in the protocol stack, the application abstraction stack, the profiles as well as an embedded software (user application).
  • the application abstraction stack which can also process proprietary instructions and data, allows, for example, fine management of power and low-consumption modes specified in the “Bluetooth®” standard. In general, it allows the creation of an abstraction layer above the protocol stack corresponding to the protocol in question in order to create a software interface between the software specific to the protocol in question (the Bluetooth protocol stack, for example) and the user software. , on board. This interface allows, vis-à-vis the user application, to simplify the use of the protocol and greatly facilitate the development of on-board applications using a complex and very specific radio interface. This therefore allows customers to speed up development without knowing the subtleties of the protocol used.
  • peripherals hardware
  • software management pilot
  • peripherals are offered in a library of components: for example, voltage regulators (3.3V - 5V), analog to digital converters
  • the module includes a voltage regulator allowing it to be powered from a 220V / 1 10V electrical outlet, a battery or any other current source.
  • peripherals do not modify the electronic functionalities of the product in which the “SmartModule” is integrated: the applications introduced do not require modification of the electronic card of the existing product, hence a saving in cost and duration of integration.
  • the choice of different peripherals is made very fast by the use of a “SmartModule” development kit in the form of an electronic card on which all possible peripherals are soldered.
  • the peripherals are not connected but it is possible to position electrical wires or jumpers between the inputs / outputs of each peripheral and the microcontroller. From the position of the electrical wires in the development board, we deduce the electrical diagram of the module. A specific work of routing and wiring of the printed circuit is then necessary.
  • peripherals are specifically addressable through programmable logic or analog gates and.
  • the functional configuration of the module is programmable instead of (or in addition to) the wiring phase.
  • the microcontroller can, for example, include a CAN and a counter. It is understood that the implementation of a particular peripheral relates as well to the electronic hardware circuit as to the associated software means in order to make it function and to recognize and execute proprietary instructions which are specific to it. As we As seen, the module's software resources can be pre-programmed or loaded for use.
  • Bluetooth ® corresponds to a standard short-range radio communication technology between two devices.
  • customer equipment means computer equipment (electronic assistant, computer or mobile phone) known to the reader. These are devices whose "Bluetooth ®” address (48 bits) is stored in a memory of the reader.
  • SmartModule is to facilitate the integration of “Bluetooth®” technology into all types of electronic products, wired or not.
  • the radiocommunication module greatly facilitates the integration of said technology into electronic products because conventional “Bluetooth®” devices do not integrate embedded software and are controlled from a computer or processor external to the module (“host”) , which requires the implementation between the device and the “host” of complex instructions and data specific to said technology.
  • the processor of said product does not contain the code which makes it possible to control the “Bluetooth®” device and, moreover, it is very difficult to modify the existing code in an on-board processor for reasons of size. memory and no operating system in most rustic electronics.
  • the Smart Module therefore consists of a hardware module and a software module.
  • Figure 1 shows the diagram of the Smart Module architecture.
  • the example of “SmartModule” represented consists of 2 printed circuits, soldered one on the other.
  • the first printed circuit is the radio circuit proper, it consists of an antenna, a radio, an integrated band circuit base, a microprocessor or microcontroller ("radio MCU"), a program memory of the FLASH, ROM type and a memory of the RAM type. It is called here radio module (RM).
  • the second printed circuit integrates at least all the peripherals necessary for the proper hardware operation of the radio module in its environment. It is called here hardware connection (Hardware Patch or HWP) said second printed circuit can also include other peripherals as explained previously and which depend on the envisaged application.
  • one or more interfaces not used in a particular application may be present by default, if only because they are included by default in the electronic circuits used.
  • several types of modules are provided, comprising more or less interfaces and / or according to potential applications.
  • a generic module intended for the study and development of applications can comprise a large number of interfaces while the modules intended for mass production will comprise a minimum number or just the interfaces necessary for the application.
  • the radiocommunication module is on a single printed circuit and in a highly integrated version, the radiocommunication module is a single hybrid or, preferably, monolithic integrated circuit.
  • SOFTWARE ARCHITECTURE The software corresponding to the stack with the protocol stack and the application abstraction stack and to any user applications, is embedded on the microcontroller (s) of the "SmartModule".
  • microcontroller microcontroller
  • FLASH or ROM memory, RAM memory By default and in the minimum version of the module, there is a microcontroller (microprocessor, FLASH or ROM memory, RAM memory) on the radio circuit and this microcontroller is called the "radio MCU”.
  • a second microcontroller (8-bit, 16-bit, 32-bit or DSP) on the HWP, ie the second printed circuit in the example shown.
  • the “SmartModule®” facilitates the integration of “Btuetooth®” technology into all types of wired and non-wired electronic products and accelerates the development cycle of a new product.
  • the radio circuit is generic and there are 2 versions for the “Bluetooth®” protocol, a first short distance version with a maximum transmit power of 4dBm (2.5mW) and a second long distance version with a transmit power. maximum 20dBm (100mW).
  • the "radio MCU” is a microcontroller using the ARM7 TDMI processor. Other 32-bit RISC architectures can however be used.
  • the "radio MCU” has a ROM or FLASH type program memory. This program memory can be integrated on the processor chip or on an external integrated circuit and, in the latter case, the memory is in the radio module (RM). Hybrid architecture can also be implemented. The order of size of the size of this ROM / FLASH memory is from 1 Mbit to 32 Mbit, this parameter being able to be brought to change according to the technological evolutions and / or the needs in memory resource of the application.
  • a RAM memory is also on board the radio module (RM).
  • Bluetooth protocol Stack The part of the software stack corresponding to the management of the Bluetooth protocol, protocol stack, is in this example, the “Bluetooth protocol Stack” (protocol stack “Bluetooth®”), includes the lower layers of the software (below the HCI interface), the upper layers (L2CAP, SDP, RFCOMM) as well as the “profiles", above the upper layers of Bluetooth.
  • the “Bluetooth® profiles” are just below the application translation unit (application abstraction layer), itself below any user applications.
  • This application abstraction stack (“protocol abstraction- API”) is arranged functionally above the layers or levels of the protocol stack, allowing a user application to use your services from all your layers of the “Bluetooth®” protocol and to take advantage of the richness of this standard and, as we have seen, of any additional local functionalities (local interface management, specific instructions ).
  • This part of the software stack is partly common to all “Smart Modules” used in data acquisition tools (bar code reading, magnetic or contactless badge reading, smart card reading, mouse, keyboard , temperature, pressure sensor, motion sensor, handwriting recognition, CCD or CMOS camera, etc.).
  • another type of application abstraction stack is provided. In all cases, said stack makes it possible to develop applications as simply as possible and independently of the instructions and formats of the communication protocol considered.
  • This application abstraction stack allows access to the radio interface without knowing the “Bluetooth®” protocol.
  • the user has three main commands: - A command to send data which specifies the size of the data to be sent (2 bytes), the “Bluetooth®” address (48-bit MAC address) of the recipient ( 6 bytes), the profit used (1 byte), a quality of service parameter (1 byte) and the data ("payload”).
  • - A request command (“inquiry”) allowing the “Smart Module Manager” application, which is located above the application abstraction stack, to find all the “Bluetooth®” products available in the vicinity and to recognize the services they offer.
  • the first primitive send command is a real abstraction which masks the complexity of the “Bluetooth®” protocol and which saves development time.
  • - BDADR Bluetooth® address of the recipient of the shipment
  • Different addresses are stored in the non-volatile memory of the “Smart Module”, they come either from a configuration phase, or from a request phase (“inquiry”).
  • the origin of “Bluetooth®” addresses is not managed by the application abstraction stack, but at an even higher level by the “Smart Module Manager”.
  • one of the specificities of the “Smart Module” is to be able to manage intelligent multi-terminal and multi-profile operation. This aspect will be detailed in the particular case of the use of the “Smart Module” inside the barcode reader pen.
  • this parameter defines if there is a need for authentication, if there is a need for your data to be encrypted, what type of use of low consumption modes (level of arbitration between consumption and delay sending data).
  • This layer is truly the control layer of the “Smart Module”. It is a high level software layer which allows you to get away from the complexity of the radio protocol but also the interconnection difficulties between the “Smart Module” and the product in which it is integrated.
  • Part of the “Smart Module Manager” manages the sending of data to one or more terminals paired with the module in the configuration phase. It therefore makes it possible to manage a multi-terminal connection and to adapt the connection mode and the type of "profile” used depending on the terminal.
  • the “Smart Module Manager” uses the services of the HMI software, “Power Manager” (energy management), “10 Manager” (input-output management) or any other specific type of application (barcode decoding, encryption, shape recognition algorithm, encoding / decoding of video, speech, image). This specific application can also be a protocol stack (TCP / IP for example). These vertical applications can operate either on the radio microcontroller or on a specific external microcontroller if necessary.
  • the “Smart Module Manager” uses a certain number of software which are now described:
  • - HMI Human Machine Interface
  • This software is specific to the environment in which the "Smart Module” is used. It allows software modification of the man-machine interface induced by the addition of a radio and a battery. The user must in particular be informed during a successful or unsuccessful sending of data and / or when the battery is insufficiently charged and / or when it is in charging mode.
  • the man-machine interface is managed at the HMI layer of the "Smart Module".
  • the hardware implementation of this software can be carried out either by using conventional peripherals of the LED type, "Buzzer", LCD screen or others, or, possibly associated, with new peripherals integrated on the HWP (battery charge circuit) for this purpose or at the terminal (s) with which the product is configured. For example, the battery level of the product in which the “Smart Module” is integrated may appear at the terminal and not at the product level.
  • - energy management Power Manager
  • This software allows you to use the Smart Module as a power controller. More specifically, this application makes it possible to control several feeding zones within the same product. This involves software control of several regulators or transistors which make it possible to supply or not power certain electrical zones of the “Smart Module” itself and also of the product in which it is used. These regulators and transistors are positioned on the "Hardware Patch” hardware part. Note that the battery charge management is not taken into account at the level of the “Power Manager” software, but at the level of the HWP (battery charge circuit).
  • HWP battery charge circuit
  • 10 Manager This is a layer which manages all the inputs / outputs between the product and the “Smart module”. They are for example of the serial link type (synchronous or asynchronous) or parallel, analog or digital.
  • a pencil 1 is seen in transparency. Inside a plastic housing 10, an optical sensor 2 is disposed towards one end in relation to an optical channel 11 of hard material at the front of said pencil 1.
  • a communication module of the Smart Module type is placed implemented in the form of a printed circuit 8 comprising an on and off means 3, push button, a radioelectric component 4 according to the "Bluetooth" ® protocol, a microcontroller 5 comprising read-only memory and random access memory, the memory being able to be of the ROM, EPROM, EEPROM, RAM, Flash, SRAM type and a power supply source 6 in the form of two rechargeable cells or batteries.
  • the optical pickup 2, the printed circuit 8, the power supply 6 are held in place by the housing 10.
  • the fastening means claimed pencil is an application interface module claimed.
  • the Smart Module used, integrates a two-way radio component and an integrated circuit baseband, according to the “Bluetooth®” standard, as well as a microcontroller allowing all or part of the “Bluetooth®” protocol stack to be loaded, as well as dedicated applications.
  • An additional microcontroller can be used to carry out the reading phase, corresponding to the measurement of the successive lengths of a bar code. Decoding is carried out either on the external microcontroller or on the microcontroller on board the “Bluetooth®” chip.
  • the previous pencil is seen in a plane perpendicular to the previous allowing to observe on the printed circuit 8 a light emitting diode (LED) 9 and an antenna 7 for the radio module 4.
  • the antenna 7 is here an antenna of the “wire” type printed on the printed circuit, but it could also be a “patch” type antenna or any other type of radiating element placed inside the pencil.
  • the two-color LED 9 makes it possible to inform the user about the operating state of the pencil. This LED 9 can be replaced by any other type of alarm (sound generator, vibrator for example).
  • the optical sensor disposed at one end of the reader implements reflection optics with light-emitting diode, for example of wavelength 700 nm, and a photodiode.
  • a bifurcated aspherical lens or, in another embodiment not shown, a fiber optic system is arranged in front of the light-emitting diode and of the photodiode in order to obtain a single focal point in front of the pencil .
  • the output signal from the optical sensor is a current generated in the photodiode and which is amplified by a transistor or an operational amplifier and which is converted into a binary voltage which can be processed by the microcontroller 5.
  • a black surface absorbs the light emitted by the sensor and, in this case, the output current is low, the output is at a logic level 1. On the other hand, outside a black surface, the light is reflected and the output voltage is at a logic level 0.
  • the reader comprises a housing 10 and the optical sensor is maintained in the housing at a constant distance from the end of the pencil, an optical channel 1 1 being formed between said end and the sensor.
  • the optical channel is a light guide (optical fiber for example) or a lens (spherical tip) made of “hard” material.
  • the pencil type reader of the invention is simple to produce and preferably comprises a molded plastic casing and uses a reduced number of parts.
  • the electronic circuit of the reader includes a program in a read only memory intended to decode bar codes of the type EAN, U PC, codes 128, code 39 and possibly specific bar codes.
  • the specific bar codes include error correction means.
  • the specific bar codes are coded so as to include redundancies making it possible, on decoding, to correct errors made on reading said bar code.
  • These proprietary bar codes are coded according to the principle of error correcting codes conventionally used in the telecommunications field.
  • the claimed pencil can read new types of bar codes on display screens, for example of television sets, computers or electronic assistants as well as mobile phone screens or any other type of screen using plasma, TFT, liquid crystal (LCD) or scanning (VGA, XVGA ...) technologies.
  • the bar codes used in this case are very different from those of the state of the art: they are not codes having a "spatial extension” but rather a "temporal extension”. More specifically, the bar codes claimed in the invention correspond to a successive sequence of dark and light surface on the display screen. Like a traditional bar code, the information is coded in the successive durations of the bars and spaces of the code. The user sees this code as a rapid flashing of the screen.
  • This example of a reader in the form of a simplified and autonomous reader pen at a reduced cost allows implementation of the method in everyday life and more particularly in relation to computer means of the hypertext type (hypermedia) on a microcomputer, personal assistant. , mobile phone, access point or others.
  • hypertext type hypermedia
  • any type of reader comprising the indicated functionalities can be implemented with the method of the invention.
  • the element common to the different reading technologies implemented is the interface module or Smart Module.
  • FIG 4 is shown a block diagram of the pencil.
  • This allows among other things to integrate embedded software and therefore allows the use of the Bluetooth component, on the one hand to send and receive data by radio and on the other hand, to perform the decoding of the barcode, the management of the man / machine interface as well as consumption and battery management.
  • This reduces the complexity (memory size, computing power) of the external microcontroller and therefore reduce the material cost of the product.
  • the original architecture (software and hardware) of the Smart Module, claimed in the invention therefore makes it possible to very significantly reduce the cost of a wireless pencil reader and can therefore accelerate the implementation of the process in everyday life and more particularly in relation to computer resources of the hypertext type (hypermedia)
  • the push button is arranged so that the user necessarily positions the reader in a given orientation relative to the bar code.
  • the push button is thus arranged so that the user gripping member keeps the reader in a given position so that he can press the button and that reading can be done.
  • This given orientation is such that the reader is substantially vertical, that is to say substantially perpendicular to the support of the bar code, during reading.
  • the push button is also arranged to facilitate said scanning and, for example, so that the user's gripping member works according to the scanning habits used during manual writing.
  • FIG 5 there is shown a pencil 1 in the process of reading a bar code 14 on an object 13.
  • a pencil 1 In the nearby environment which can be reached by the radio waves 18 of the module 4 are arranged several computer equipments which can potentially communicate by electromagnetic waves according to the “Bluetooth” ® protocol with said pencil 1.
  • These devices are a microcomputer 15, a mobile telephone 16, with hypertext functionalities, a personal assistant 17 and one or more access points to a network local.
  • a first initialization phase is planned for the configuration of the pen. The purpose of this phase is to specify which peripherals are “paired” with the reader.
  • This initialization process is managed at the level of the processor embedded in the Smart Module, at the level of the Smart Module Manager software. It includes 4 stages:
  • Bluetooth 48-bit MAC address
  • the client software then prompts the user to put the pen in listening mode.
  • the client software attempts to connect to the pen and sends it configuration-specific information: list of addresses of paired devices or terminals, description of the “Profile” to be used for each terminal, as well as an order of priority associated with each device.
  • the NULL or BATCH terminal can be part of the list of paired terminals. This involves configuring the reader in asynchronous mode: instead of sending, by radio, a decoded barcode to a remote terminal, the pen stores said barcode in its non-volatile memory.
  • the configuration data are then stored in the non-volatile memory of the pen and can be modified at any time by performing a configuration phase again.
  • the user is informed of the success of the initialization phase via the man-machine interface of the pencil and / or of the user terminal.
  • the pencil can be used as follows:
  • the “Bluetooth®” protocol has a great intrinsic advantage in terms of consumption compared to other radio standards such as 802.1 1 b. However, the “Bluetooth®” protocol needs to be used in all its complexity, particularly in terms of managing low-consumption modes.
  • the “Bluetooth®” abstraction stack integrates this efficient management of the “Bluetooth®” connection modes. The first time the barcode is read, the connection is created. When the barcode is sent, the radio connection goes into “sniff” mode (search) with an interval of “Sniff” . short. This allows to keep a limited latency time.
  • the "sniff" period is increased in order to further decrease consumption.
  • the downside in this case is an increase in the time it takes to send a barcode. This is not a problem, however, because in such a case, the time between 2 successive readings is long and the delivery time is not essential.
  • T2 the reader switches to parked mode after having performed a master / slave role exchange.
  • T3 the radio connection is cut and the power supply to the Smart Module is switched off.
  • the durations T1, T2, T3 are variable parameters which are adapted to the mode of use of the user. A statistic of the durations between successive readings. For a user
  • the durations T1, T2, T3 are variable parameters which are adapted to the mode of use of the user. A statistic of the durations between successive readings. For a user reading bar codes at a high average rate, the values of T1, T2 and T3 will be chosen shorter.
  • a pencil is represented in its environment.
  • the pencil can be configured with different and very varied equipment. This is one of the important elements of the “Bluetooth®” standard: interoperability and multi-terminal connectivity. However, even if these services are offered by the "Bluetooth®” standard, it is still necessary to manage this connectivity intelligently, given that the man-machine interface at the pencil level is very small and therefore does not allow choose to equipment the pencil should connect. This intelligent management is a specific feature of the pen and is integrated into the application layer of the Smart Module.
  • the devices with which the pen can be connected are saved in the pen's non-volatile memory.
  • each decoded barcode will be automatically stored in the pen's non-volatile memory ( Figure 7a).
  • This phase is executed by putting the pencil in listening mode (by reading a proprietary code for example) ( Figure 7b) while activating the loading function on the client software (microcomputer for example). All the bar codes in memory are then transferred by radio waves to the user terminal ( Figure 7c).
  • the heterogeneity of the terminals paired with a pencil is very important.
  • the connection establishment modes, specified in the “profiles” of the “Bluetooth®” standard, are very different from one type of terminal to another.
  • the software embedded in the Smart Module of the pen is capable of managing several "profiles". More precisely, the application abstraction layer automatically chooses the relevant connection establishment mode according to the equipment with which the pen wants to connect. For example, in the case of an access point, the appropriate “profile” is the “Lan Access Point Profile”, for a computer or digital assistant, it is the “Sériai Port Profile” or “HID profile "And for a phone it will either be the" DialUp Networking Profile ", by sending AT commands to the phone.
  • the client software is reduced to zero on the terminal: the phone's hypermedia browser is controlled remotely by the pencil using AT commands.
  • Other solutions can be implemented, in particular, it is possible to download client software on the SIM card of the mobile or in the memory of the phone's processor.
  • the pen battery is rechargeable via an electronic circuit, integrated in the Smart Module.
  • Several voltage regulators, voltage-controlled, are used on the Smart Module to control the supply of different independent zones in the pen in software. For example, when the user releases the action button, the zone corresponding to the read head is no longer supplied.
  • the power supply of the radio module remains as long as the on-board software requests it. This allows a finer management of the pencil consumption by separating by functionality the different electronic circuits constituting the pencil.
  • This interface is managed by software in the Smart Module of the pen. These are light-emitting diodes or a sound generator on the pencil. This interface allows to warn the user of a good reading or a bad reading, of a sending, radio successful or not. It also informs the user when the battery level is too low. Part of this man-machine interface can be relocated to the terminal when that is provided with a richer interface (microcomputer or mobile phone for example)
  • the invention is structured around four components: • the barcode reader,
  • the client equipment processes (the identifiers received to determine the address of an appropriate document server.
  • This server makes available hypermedia documents presenting the information and services relating to the designated resource with the reader.
  • the equipment. Client can , to facilitate its address search, obtain additional information from the routing server
  • the identifiers from the reader are then relayed through a remote connection to the document server, whose address has just been determined by client equipment Additional information which the user has authorized may be transmitted at this stage by the same channel.
  • the remote connection to the document server goes through one .
  • relay or proxy server which may store the request and / or process it for statistical or other purposes, before transmitting it in full to the document server.
  • the document server processes the data sent to it to send the hypermedia document back to the client equipment, which will allow the user to access the information and services he has requested. All of these steps take advantage of the latest technological innovations in the telecommunications field to offer a service in real or near real time: only a few seconds separate the scanning of the barcode from the presentation of the associated hypermedia document.
  • the barcode reader is a piece of hardware capable of decoding a barcode into electrical signals and then into digital and / or alphanumeric data. This data constitutes an identifier of the resource referenced by the bar code. This resource identifier and another both reader-specific identifiers are sent to the client equipment through a local connection.
  • the local connection is a short-range communication link between two devices.
  • the distance between the equipment does not exceed a few tens of meters.
  • the local connection designates a short-range transmitter / receiver controlled via a communication protocol.
  • Customer equipment is the central element of the system.
  • the client equipment is a user equipment implementing the client software.
  • User equipment is hardware equipment owned by the user. it can be of various characteristics, mobile or not, provided that the following elements are available: • a local connection,
  • a mobile device can be a computer or a digital assistant connected to the Internet, a WAP mobile phone offering programming possibilities, a GPRS, UMTS terminal or any other device satisfying the conditions previously stated.
  • the remote connection is a worldwide communication link between two devices. It almost always implements global networks, of which the Internet is the best representative. In this context, it can be envisaged to pass all the requests through a determined relay server (proxy), so that the latter keeps up to date with global information concerning all the requests. In all cases, the requests are transmitted at least in full.
  • the remote connection designates a network transmitter / receiver, possibly controlled via communication protocols.
  • the client software is software running on all types of user equipment to fulfill the following functions: • receive the identifiers sent by the barcode reader through the local connection, • present the hypermedia document to the user giving access to information and services relating to the resource designated by the reader.
  • This software is called client because it behaves like a client for the routing server on the one hand and for the document server whose address it must determine the other hand.
  • It is produced as an application program, for example using an object-oriented programming language such as C ++ or Java. It controls the user equipment via the programming interface specific to this equipment.
  • object-oriented programming language such as C ++ or Java.
  • Installing this software on user equipment may require downloading the program, inserting an electronic card on which it is installed (smart card for mobile phone, expansion card for laptop or PDA) or any other electronic or computer method.
  • the client software can be broken down into three modules: • a local receiver, • a router,
  • the local receiver is a program whose role is to listen to the local connection. It reacts to any message from the barcode reader by activating the router and transmitting the identifiers received from the reader.
  • This program runs all the time the system is activated. On the other hand, when no message from the reader is being processed, it is the only part of the client software in operation, this. which reduces the consumption of user equipment resources.
  • the router is a program receiving the identifier of the resource and the identifier of the reader from the local receiver. Its role is to apply the address resolution algorithm to these identifiers in an attempt to determine the WEB address of a document server suitable for the referenced resource.
  • the router appends to it according to a syntax defined the two previous identifiers, as well as certain information that the user could choose to make available on his equipment (for example certain preferences or restrictions).
  • the address thus completed unambiguously locates a hypermedia document presenting information and services relating to the resource identified through the reader.
  • the router then activates the browser manager and transmits the address of the document to it.
  • the address resolution algorithm is applied to the identifiers of the resource and of the reader. This algorithm first processes the identifier of the reader. If the identifier is known, that is to say if it appears in a routing table (correspondence) stored on the user equipment and managed by the router, then the program extracts from this same table the routing information concerning the reader.
  • the routing table can be produced with various data structures; it constitutes a very simplified database management system.
  • Routing information can contain: • a history of previous requests with their results, from which we can possibly extract the address of a document server;
  • the address resolution algorithm processes the resource identifier and the routing information extracted during the first step. In some cases, this data is sufficient: to produce the address of the document server associated with the referenced resource. For example, it may be agreed that an identifier having certain similarities with another identifier processed during a previous request must be associated with the address which was the result of this request.
  • the router transmits to the routing server the identifier of the reader and that of the resource, through the remote connection.
  • This server returns to the router the address of the document server it expects, as well as the address of an associated relay server (proxy), and these addresses are stored in the routing table.
  • the address resolution algorithm therefore made it possible to determine the address of the document server with at most remote access to the routing server. Note however that it may be necessary to periodically refresh the routing information, through requests additional data transmitted to the routing server when it is accessed remotely.
  • the behavior of the latter depends on the operating mode in which the user has placed his client equipment. In current mode, the resolution procedure is abandoned and the message from the reader is therefore ignored. This normal situation can for example arise if a message sent by radio by the reader of a user is received by the client equipment of another user, who has nothing to do with the intentions of his neighbor.
  • the new reader identifier is transmitted to the routing server through the remote connection, so that this server returns routing information specific to the new drive to the router.
  • the reception mode therefore allows the registration of a new reader. This information is placed in a new entry in the routing table, and processing of the request by the client software is complete.
  • the browser manager is a program whose role is to command the hypermedia browser present on the user equipment to present the hypermedia document located by the address received from the router. The user is then free to navigate at will from the document presented to him.
  • the browser manager only orders the display of a document to the user's usual browser, which remains perfectly free to configure it as it sees fit.
  • Another example consists in the restitution on a mobile telephone connected to the Internet of an audio document, located by an address conforming to the WAP protocol.
  • the routing server is the auxiliary information source for the “Baracoda®” system (name used for all of the components, processes and services linked to the invention).
  • the routing server is software running on one or more computers equipped with a remote connection to perform the following functions:
  • the clients can be very numerous. It responds to various requests from the router, but also to installation requests from user equipment not yet equipped with client software.
  • Routing server software can be single software running on a single computer, or distributed over multiple computers.
  • the network organization of these machines can itself implement various architectures: • a hierarchical architecture, according to which the machines located at the lowest nodes hold local information and refer to machines of higher rank to obtain more general information; • a neighborhood architecture, each machine being on the same level as its neighbors and working in cooperation with the latter to access widely distributed information;
  • Communication between the routing server and a client device can use a proprietary protocol specifically designed for this purpose or a public protocol (HTTP or WAP for example). Different protocols can be chosen depending on the nature of the client equipment
  • the document server is the last element of the “Baracoda®” system.
  • the document server is software running on one or more computers equipped with a remote connection to perform the following functions:
  • the routing tables stored on the client equipment or on the routing server include not only the addresses of document servers but also the addresses of relay servers associated with the document servers.
  • the "router" software component of the "client software” is therefore capable of providing the "browser manager” component with an address composed from that of the server. relay, so that the latter filters all requests to a given document server.
  • the relay server only retransmits the request to the document server which is the final recipient. But it can in passing memorize that a request has taken place and make a statistical processing of all the requests thus relayed.
  • This additional service offered to certain document servers can be an added value for those who want to know the frequency of consultation from bar codes, the total volume of requests, their hourly distribution, etc.
  • the document server is the property of a third party wishing to make documents relating to certain resources available. It is implemented and administered at the discretion of the owner. For example it can be the server of an industrial company publishing its catalog of products on the Internet. However, in order to integrate into the “Baracoda®” system, it must be able to interpret the address transmitted to it by the browser manager via the browser.
  • the address considered is in most cases compliant with a public protocol. It can be for example an HTTP or WAP URL.
  • a public protocol can be for example an HTTP or WAP URL.
  • the upgrade of an existing WEB server requires only a minor adaptation, for example the design of a single dynamic redirection page.
  • the application of the radiocommunication module is not limited to the method of reading bar codes and it is possible to implement the module in other applications.
  • the “Bluetooth®” -GPRS router is an electronic device consisting of a “SmartModule” and a GSM, GPRS, EDGE or UMTS modem.
  • the said device performs the protocol conversion between the “Bluetooth®” communication protocol and the GPRS, EDGE or UMTS.
  • it allows “Bluetooth®” products to access a remote network (Internet network for example).
  • the applications of this device are numerous in the field of home automation and the field of Internet access (ISP) for the individual or small business.
  • the device consists of a radiocommunication module and a GSM / GPRS / EDGE / UMTS radio with management of the physical layer of the GSM / GPRS / EDGE / UMTS protocol and the stack of the protocol considered as well as a specific software managing quality of service and sharing of bandwidth between different users.
  • Up to 7 products equipped with the device can use GPRS / UMTS services simultaneously, using the same “Bluetooth®” router -GPRS. More than 7 devices (up to 255) can access these services through the same router, but not simultaneously.
  • These devices can use a token protocol (developed on the router processor) to be able to regularly send or receive data using the GPRS / UMTS connection.
  • the user does not need to manage the complexity of the routing software stemming from the need to share the bandwidth in the uplink direction (from the access point "Bluetooth®" -GPRS to GPRS base station).
  • the “Bluetooth®” -GPRS router is also used as a “Hub” when building a “Bluetooth®” local network. We can also implement this router in Home Automation. Refrigerators, alarms, radiators, lights, switches, thermometers and other sensors (water, gas, electricity meters), television, video recorders can be connected to a remote network via a "Bluetooth®” access point - GPRS which is this "Bluetooth®” -GPRS router. In such an application of the router it is for example possible to start the heating of its country house thanks to its remote cell phone. The router can also be applied for Internet access at home with PCs or PDAs (portable electronic assistant) or inside a car.
  • PCs or PDAs portable electronic assistant

Abstract

The invention concerns a two-way radio communication interface module based on a predefined protocol for at least a user application, the module comprising at least a radio circuit for transmitting and receiving digital signals and at least a programmable circuit with a radio microcontroller for managing the radio circuit. The invention is characterised in that the radio microcontroller comprises a software stack consisting of a first part called protocol stack topped by a second part called applicative abstraction stack, the software stack enabling adaptation based on the protocol between the digital signals and the data and instructions of the application, the applicative abstraction stack enabling at least the translation of the data and instructions of the application into data and instructions based on the protocol for processing in the protocol stack, the module being a single hardware component also storing the user application and ensuring its execution in the radio microcontroller. The invention also concerns a use method with a bar-code scanner.

Description

MODULE D ' INTERFACE DE RADIOCOMMUNICATION , ET SON APPLICATION A UN DISPOSITIF DE LECTURE , TRAITEMENT , TRANSMISSION ET EXPLOITATION D ' UN CODE A BARRESRADIOCOMMUNICATION INTERFACE MODULE, AND ITS APPLICATION TO A BAR CODE READING, PROCESSING, TRANSMITTING AND OPERATING DEVICE
La présente invention concerne un module d'interface de 5 radiocommunication, un dispositif, des applications dont un procédé de lecture, traitement, transmission et exploitation d'un code à barres tel que le procédé met en œuvre le module dans un lecteur de codes à barres autonome à liaison radio. L'invention peut être mise en œuvre d'une manière génériqueThe present invention relates to a radio communication interface module, a device, applications including a method for reading, processing, transmission and exploitation of a bar code such that the method implements the module in a code reader to autonomous radio link bars. The invention can be implemented in a generic way
10 dans toutes les applications matérielles et logicielles comportant une liaison radio et, également, mise en oeuvre plus spécifiquement dans une application particulière du domaine de la promotion commerciale, du commerce et plus généralement d'échange de données sur un réseau10 in all hardware and software applications comprising a radio link and, also, implemented more specifically in a particular application in the field of trade promotion, trade and more generally data exchange on a network
15 informatique avec des équipements pouvant traiter des données hypermédia du type texte, image, son et/ou vidéo.15 computer with equipment capable of processing hypermedia data of the text, image, sound and / or video type.
Les codes graphiques d'identification du type codes à barres sont connus et largement utilisés du fait de la robustesse de leur lecture et décodage. Plusieurs normes deGraphic identification codes of the barcode type are known and widely used due to the robustness of their reading and decoding. Several standards
20 codage ont été définies aussi bien en ce qui concerne les codes à barres à une dimension qu'à deux dimensions.20 coding have been defined for both one-dimensional and two-dimensional bar codes.
Ces codes sont lus par des appareils électroniques comportant une tête de lecture optique. Suivant la méthode de balayage des codes à barres et le type de tête de lectureThese codes are read by electronic devices comprising an optical reading head. Depending on the barcode scanning method and the type of read head
25 optique mis en oeuvre, on dispose de deux grands types d'appareils: les appareils de lecture à contact qui nécessitent un déplacement physique entre la tête de lecture optique et le support sur lequel est disposé le code à barres et les appareils pouvant fonctionner sans déplacement relatif, le balayage25 optical implemented, there are two main types of devices: contact reading devices that require physical movement between the optical scanning head and the support on which is placed the bar code and devices that can operate without relative displacement, scanning
30 étant obtenu par des procédés mécaniques (miroir tournant par exemple), et/ou électroniques (détecteur matriciel par exemple). Pour ces derniers appareils, diverses technologies peuvent être mises en oeuvre mais dans tous les cas, ce sont des appareils plus complexes et coûteux à réaliser que les30 being obtained by mechanical methods (rotating mirror for example), and / or electronic (matrix detector for example). For these latter devices, various technologies can be implemented but in all cases, they are more complex and costly to produce than the
35 appareils du premier type dont le crayon lecteur qui est un des appareils les plus simples à réaliser puisqu'il ne comporte qu'un capteur optique statique et dont le balayage du code à barres pour lecture est réalisé par l'utilisateur.35 devices of the first type including the pencil which is one of the the simplest devices to realize since it only has a static optical sensor and whose scanning of the bar code for reading is carried out by the user.
Les crayons lecteurs connus de l'état de la technique sont en général reliés par un câble électrique à un boîtier électronique externe lui-même relié au clavier d'un ordinateur. Un tel crayon optique n'est donc pas autonome et n'est pas d'un maniement aisé puisqu'un câble le rattache à un équipement informatique. De plus, ce type de crayon est d'un coût relativement élevé car le capteur optique comporte en outre un élément optique de dureté très élevée, saphir par exemple, qui peut résister aux frottements répétés sur le support comportant le code à barres tout en assurant une adaptation optique. Par ailleurs dans les applications connues, les codes à barres qui sont lus sont essentiellement traités localement. Par exemple dans les applications du type caisse de paiement, les données correspondant aux codes à barres sont traitées soit au niveau de la caisse elle-même pour récupérer le prix et, éventuellement, un descriptif de l'article, soit dans un serveur local du site commercial relié à l'ensemble des caisses afin d'assurer également la gestion des stocks.The reader pens known from the prior art are generally connected by an electrical cable to an external electronic unit itself connected to the keyboard of a computer. Such an optical pencil is therefore not autonomous and is not easy to handle since a cable attaches it to computer equipment. In addition, this type of pencil is relatively high cost because the optical sensor also includes an optical element of very high hardness, sapphire for example, which can withstand repeated friction on the support comprising the bar code while ensuring an optical adaptation. Furthermore, in known applications, the bar codes which are read are essentially processed locally. For example in applications of the cash register type, the data corresponding to the bar codes are processed either at the cash register level to retrieve the price and, possibly, a description of the item, or in a local server of the commercial site linked to all the cash desks to also ensure inventory management.
Le but de l'invention est de proposer un moyen matériel et logiciel de radiocommunication sous forme d'un module qui puisse s'adapter simplement à toute application utilisateur et, dans un cas particulier, à un procédé dans lequel un réseau informatique reliant des équipements informatiques pouvant exécuter des applications hypermédia met en œuvre des données provenant de la lecture de codes à barres afin de produire des actions visuelles, auditives et/ou autres, éventuellement interactives, sur un équipement informatique client en relation avec un lecteur de codes à barres. Le terme équipement informatique dans le contexte de l'invention correspond à tout dispositif électronique pouvant traiter des données hypermédia et pouvant être relié au réseau informatique et, par exemple, ordinateur, micro-^ordinateur, assistant personnel, téléphone à fonctionnalités WAP, GPRS, UMTS... Grâce à l'application particulière de l'invention, l'utilisateur peut lire un code à barres avec un lecteur et peut recevoir quasi instantanément une page d'information concernant l'objet portant le code à barres, sur tout type de support informatique connecté à Internet (micro-ordinateur, assistant numérique, téléphone portable ou autres). L'objet peut être n'importe quel objet de grande consommation (portant alors un code à barres de type EAN ou UPC) ou tout autre type d'objet quelconque et, par exemple: cartes de visite, article de journal, facture, relevé de compte bancaire. Le terme code à barres concerne aussi bien une valeur numérique ou un caractère que plusieurs selon un codage standardisé ou un codage propriétaire (code à barres propriétaire).The object of the invention is to propose a hardware and software means of radio communication in the form of a module which can be easily adapted to any user application and, in a particular case, to a method in which a computer network connecting equipment. IT capable of running hypermedia applications implements data from barcode reading in order to produce visual, auditory and / or other actions, possibly interactive, on client computer equipment in relation to a barcode reader. The term computer equipment in the context of the invention corresponds to any electronic device which can process hypermedia data and which can be connected to the network computer and, for example, computer, microcomputer, personal assistant, telephone with WAP, GPRS, UMTS functionalities ... Thanks to the particular application of the invention, the user can read a bar code with a reader and can receive almost instantaneously an information page concerning the object carrying the barcode, on any type of computer support connected to the Internet (microcomputer, digital assistant, mobile phone or others). The object can be any consumer object (then carrying an EAN or UPC type barcode) or any other type of object and, for example: business cards, newspaper article, invoice, statement bank account. The term barcode concerns as well a numerical value or a character as several according to a standardized coding or a proprietary coding (proprietary barcode).
L'invention concerne donc un module d'interface de radiocommunication bidirectionnelle selon un protocole prédéfini pour au moins une application utilisateur ayant des données et instructions à communiquer à un dispositif externe, le module comportant au moins un circuit électronique radio d'émission et de réception de signaux numériques et au moins un circuit électronique programmable avec un microcontrôleur radio pour gestion du circuit électronique radio.The invention therefore relates to a bidirectional radiocommunication interface module according to a predefined protocol for at least one user application having data and instructions to be communicated to an external device, the module comprising at least one radio electronic transmission and reception circuit. digital signals and at least one programmable electronic circuit with a radio microcontroller for managing the radio electronic circuit.
Selon l'invention, le microcontrôleur radio comporte des moyens matériels coopérant avec des logiciels sous la forme d'une pile logicielle formée d'une première partie dite pile protocole surmontée d'une seconde partie dite pile d'abstraction applicative, la pile logicielle permettant l'adaptation selon le protocole entre, d'une part, les signaux numériques et, d'autre part, les données et instructions de l'application utilisateur, la pile d'abstraction applicative permettant au moins la traduction des données et instructions de l'application utilisateur dans un format propriétaire en des données et instructions selon le protocole pour traitement dans la pile protocole, le module étant un composant matériel unique stockant également l'application utilisateur sous forme d'un programme et assurant son exécution dans le microcontrôleur radio.According to the invention, the radio microcontroller comprises hardware means cooperating with software in the form of a software stack formed by a first part called the protocol stack topped by a second part called the application abstraction stack, the software stack allowing the adaptation according to the protocol between, on the one hand, the digital signals and, on the other hand, the data and instructions of the user application, the application abstraction stack allowing at least the translation of the data and instructions of the user application in a proprietary format in data and instructions according to the protocol for processing in the protocol stack, the module being a hardware component unique also storing the user application in the form of a program and ensuring its execution in the radio microcontroller.
Dans divers modes de mise en oeuvre de l'invention, les moyens suivants pouvant être combinés selon toutes les possibilités techniquement envisageables sont employés :In various embodiments of the invention, the following means can be combined according to all the technically possible possibilities are used:
- le module est constitué d'un circuit imprimé radio regroupant une antenne, le circuit électronique radio d'émission et de réception sous forme d'une radio et d'un circuit intégré bande de base et le circuit électronique programmable de gestion sous forme d'un microcontrôleur avec moyens de mémorisation,- the module consists of a radio printed circuit grouping an antenna, the radio electronic transmission and reception circuit in the form of a radio and an integrated baseband circuit and the programmable electronic management circuit in the form of a '' a microcontroller with storage means,
- le fonctionnement logiciel du module est divisé en taches exécutées selon des priorités, les taches liées à la gestion du circuit radio ayant une priorité supérieure aux taches d'exécution , de l'application utilisateur,the software operation of the module is divided into tasks executed according to priorities, the tasks linked to the management of the radio circuit having a higher priority than the execution tasks, of the user application,
- le module comporte en outre un second circuit imprimé interconnecté au circuit imprimé radio avec au moins un périphérique au moins choisi parmi: - une entrée numérique avec éventuellement un comparateur pour détection de niveau ou de transition,the module also comprises a second printed circuit interconnected to the radio printed circuit with at least one peripheral at least chosen from: - a digital input with possibly a comparator for level or transition detection,
- une entrée analogique avec convertisseur analogique- numérique avec éventuellement un amplificateur analogique à gain programmable ou non, - une sortie numérique,- an analog input with analog-digital converter with possibly an analog amplifier with programmable gain or not, - a digital output,
- une sortie analogique avec convertisseur numérique- analogique,- an analog output with digital-to-analog converter,
- un régulateur ou convertisseur de tension commandable,- a controllable voltage regulator or converter,
- un compteur/décompteur, - une horloge temps réel,- an up / down counter, - a real time clock,
- un circuit de charge pour batterie,- a battery charging circuit,
- un circuit logique,- a logic circuit,
- une mémoire,- a memory,
- un circuit logique programmable spécialisé notamment choisi parmi un microprocesseur, un microcontrôleur, un processeur de signal numérique ou un circuit dédié, une partie au moins de l'application utilisateur sous forme d'un programme étant alors stockée dans ledit circuit logique programmable spécialisé et ledit circuit logique programmable spécialisé assurant alors son exécution, la pile d'abstraction applicative pouvant en outre comporter des moyens logiciels propriétaire pour traiter des instructions pour récupération de données en provenance du périphérique et/ou l'envoi de données vers le périphérique, - le module comporte une mémoire reprogrammable ainsi que des moyens permettant la reprogrammation de ladite mémoire à partir de données reçues par radiocommunication,- a specialized programmable logic circuit chosen in particular from a microprocessor, a microcontroller, a digital signal processor or a dedicated circuit, at least part of the user application in the form of a program then being stored in said specialized programmable logic circuit and said specialized programmable logic circuit then ensuring its execution, the application abstraction stack may also include proprietary software means for processing instructions for retrieving data from the device and / or sending data to the device, - the module includes a reprogrammable memory as well as means allowing the reprogramming of said memory to from data received by radiocommunication,
- le protocole est « Bluetooth® » ou IEEE802.15.1 ,- the protocol is “Bluetooth®” or IEEE802.15.1,
- la pile d'abstraction applicative assure en outre et inversement la traduction d'informations de la pile protocole vers l'application ;- the application abstraction stack also ensures and conversely the translation of information from the protocol stack to the application;
- le composant unique est un circuit intégré. ;- the single component is an integrated circuit . ;
- le module comporte en outre au moins un moyen de communication bidirectionnel infrarouge et la pile d'abstraction applicative comporte en outre des moyens logiciels pour traiter des instructions et données pour et dudit moyen infrarouge ;- The module also comprises at least one bidirectional infrared communication means and the application abstraction stack also comprises software means for processing instructions and data for and from said infrared means;
- le module comporte un régulateur de tension permettant de l'alimenter à partir d'une prise électrique 220V / 1 10V, d'une batterie ou de toute autre source de courant et la pile d'abstraction applicative comporte en outre des moyens logiciels pour traiter des instructions et données pour et dudit régulateur ;- the module includes a voltage regulator making it possible to supply it from a 220V / 1 10V electrical outlet, from a battery or from any other current source and the application abstraction battery also comprises software means for process instructions and data for and from said regulator;
- le module comporte en outre de la mémoire destinée à stocker des données; - le microcontrôleur est d'un type compris entre 8 et 16 bits, bornes comprises, avec une horloge de fréquence inférieure à 200 KHz;- The module further comprises memory intended to store data; - The microcontroller is of a type between 8 and 16 bits, terminals included, with a clock of frequency less than 200 KHz;
- le microcontrôleur comporte de la mémoire permettant l'exécution d'un programme d'application de l'utilisateur, le programme d'application comportant une suite d'instructions et de données selon le format propriétaire ;the microcontroller includes memory allowing the execution of a user application program, the application program comprising a sequence of instructions and data according to the proprietary format;
- la mémoire est une mémoire morte préprogrammée ;- the memory is a preprogrammed read only memory;
- la mémoire est une mémoire chargeable (reprogrammable) ; - la mémoire chargeable est chargée par le programme d'application à chaque mise en marche de ladite application dans le module ;- the memory is a loadable memory (reprogrammable); - the loadable memory is loaded by the application program each time the application is started in the module;
- la mémoire chargeable est chargée par le programme d'application une fois pour toutes à la fabrication du module dans ladite application;- the loadable memory is loaded by the application program once and for all at the manufacturing of the module in said application;
- la mémoire chargeable est chargée par le programme d'application une fois pour toutes à la première mise en marche de ladite application dans le module ;- the loadable memory is loaded by the application program once and for all when the application is first started in the module;
- le programme d'application pour chargement est dans une mémoire morte externe au module ;- the application program for loading is in a ROM external to the module;
- le chargement a lieu par liaison filaire, de préférence série ;- the loading takes place by wire connection, preferably series;
- je programme d'application pour chargement est dans un moyen informatique externe au module ;- the application program for loading is in a computer means external to the module;
- le chargement a lieu par la liaison radio du module . L'invention concerne également une application particulière du module selon l'une ou plusieurs des caractéristiques précédentes sous forme d'un dispositif d'interfaçage de radiocommunication bidirectionnelle selon un protocole prédéfini pour au moins une application logicielle utilisateur et comportant un module selon l'une quelconque des caractéristiques précédentes, et selon laquelle le dispositif comporte en outre au sein d'un unique boîtier, une source d'alimentation électrochimique, et au moins un connecteur dont les broches sont reliées à au moins une interface du module.- the loading takes place by the radio link of the module. The invention also relates to a particular application of the module according to one or more of the preceding characteristics in the form of a bidirectional radiocommunication interface device according to a predefined protocol for at least one user software application and comprising a module according to one any of the preceding characteristics, and according to which the device further comprises within a single housing, an electrochemical power source, and at least one connector, the pins of which are connected to at least one interface of the module.
L'invention concerne également une application particulière du module en tant que tel ou dans le dispositif selon l'une ou plusieurs des caractéristiques précédentes éventuellement combinées pour la réalisation d'un appareil électronique comportant une application logicielle utilisateur communiquant par radiocommunication bidirectionnelle selon un protocole prédéfini et comportant un module selon l'une quelconque des caractéristiques précédentes.The invention also relates to a particular application of the module as such or in the device according to one or more of the preceding characteristics, possibly combined for the production of an electronic device comprising a user software application. communicating by bidirectional radiocommunication according to a predefined protocol and comprising a module according to any one of the preceding characteristics.
Dans des modes particuliers de réalisation l'appareil est : - un appareil qui est un crayon lecteur de codes à barres d'un support, le crayon comportant à une extrémité dans un capteur optique une source lumineuse produisant un faisceau lumineux focalisé sur le support et un détecteur optique destiné à recevoir et convertir la lumière réfléchie par le support en signaux électriques, le crayon étant autonome et comportant une source d'alimentation électrique interne et le module d'interface de radiocommunication, avec une pile logicielle selon le protocole « Bluetooth »® , l'application utilisateur sous forme d'un programme de fonctionnement comportant des moyens pour traiter les signaux électriques du détecteur optique, et des moyens d'interfaçage par l'intermédiaire du module de radiocommunication assurant au moins la transmission desdits codes à barres selon ledit protocole à un équipement informatique, (la transmission des codes à barres correspond aux caractères que l'application utilisateur à lu)In particular embodiments, the apparatus is: an apparatus which is a barcode reader pencil for a support, the pencil comprising at one end in an optical sensor a light source producing a light beam focused on the support and an optical detector intended to receive and convert the light reflected by the support into electrical signals, the pencil being autonomous and comprising an internal electrical power source and the radio communication interface module, with a software stack according to the "Bluetooth" protocol ®, the user application in the form of an operating program comprising means for processing the electrical signals from the optical detector, and interfacing means via the radiocommunication module ensuring at least the transmission of said bar codes according to said protocol to computer equipment, (the transmission of bar codes corresponds to the cara that the user application has read)
- en alternative du support, les codes à barres correspondent à un enchaînement temporel successif de surface sombre et claire sur un écran d'affichage, - un appareil qui est un crayon lecteur à reconnaissance de caractères alphanumériques d'un support, le crayon comportant à une extrémité dans un capteur optique une source lumineuse produisant un faisceau lumineux focalisé sur le support et un détecteur optique destiné à recevoir et convertir la lumière réfléchie par le support en signaux électriques, le crayon étant autonome et comportant une source d'alimentation électrique interne et le module d'interface de radiocommunication, avec une pile logicielle selon le protocole « Bluetooth® » , l'application utilisateur sous forme d'un programme de fonctionnement comportant des moyens pour traiter les signaux électriques du détecteur optique et reconnaître lesdits caractères, et des moyens d'interfaçage par l'intermédiaire du module de radiocommunication assurant au moins la transmission desdits caractères selon ledit protocole à un équipement informatique, - un appareil qui est un crayon lecteur à reconnaissance de l'écriture, le crayon comportant au moins deux accéléromètres selon deux axes X et Y correspondant au plan d'écriture et produisant des signaux électriques, le crayon étant autonome et comportant une source d'alimentation électrique interne et le module d'interface de radiocommunication , avec une pile logicielle selon le protocole « Bluetooth® » , l'application utilisateur sous forme d'un programme de fonctionnement comportant des moyens pour traiter les signaux électriques du détecteur optique et reconnaître l'écriture, et des moyens d'interfaçage par l'intermédiaire du module de radiocommunication assurant au moins la transmission de ladite écriture selon ledit protocole à un équipement informatique, (la transmission de l'écriture correspond aux caractères que l'application utilisateur à lu)- as an alternative to the medium, the bar codes correspond to a successive temporal sequence of dark and light surface on a display screen, - an apparatus which is a reader pen for recognizing alphanumeric characters of a medium, the pencil comprising one end in an optical sensor a light source producing a light beam focused on the support and an optical detector intended to receive and convert the light reflected by the support into electrical signals, the pencil being autonomous and comprising an internal power supply source and the radiocommunication interface module, with a software stack according to the “Bluetooth®” protocol, the user application in the form of an operating program comprising means for processing the electrical signals from the optical detector and recognizing said characters, and means for interfacing via the radiocommunication module ensuring at least the transmission of said characters according to said protocol to computer equipment, - an apparatus which is a pencil handwriting recognition reader, the pencil comprising at least two accelerometers along two axes X and Y corresponding to the writing plane and producing electrical signals, the pencil being autonomous and comprising an internal power supply and the module d radio interface, with a software stack according to the “Bluetooth®” protocol, the user application in the form of an operating program comprising means for processing the electrical signals of the optical detector and recognizing writing, and means for interfacing via the radio communication module ensuring at least the transmission of said writing according to said protocol to a computer equipment, (the transmission of writing corresponds to the characters that the user application has read)
- le crayon lecteur à reconnaissance de l'écriture comporte un moyen de détecter selon un axe Z l'appui du crayon lors de l'écriture sur un support, - le moyen de détecter l'appui est un contacteur ou un accéléromètre,- the writing recognition recognition pen includes a means of detecting along a Z axis the support of the pencil during writing on a support, - the means of detecting the support is a contactor or an accelerometer,
T un appareil qui est un des crayons précédents et qui ne comporte pas de pointe de focalisation en matière dure,T an apparatus which is one of the preceding pencils and which does not include a focusing point in hard material,
- un appareil qui est une prise d'alimentation électrique secteur commandée par radiocommunication,- a device which is a mains power socket controlled by radio communication,
- la prise comporte un abaisseur de tension pour alimentation du module, un interrupteur électronique commandé,- the socket includes a voltage step-down for supplying the module, a controlled electronic switch,
- l'abaisseur est choisi parmi une alimentation à découpage, à transformateur statique, à condensateur abaisseur, - l'interrupteur est choisi parmi un relais électromagnétique, un triac, un interrupteur électronique au passage à zéro.- the step-down is chosen from a switching power supply, with static transformer, with step-down capacitor, - the switch is chosen from an electromagnetic relay, a triac, an electronic switch at zero crossing.
L'invention concerne également une application particulière du module en tant que tel ou dans le dispositif selon l'une ou plusieurs des caractéristiques précédentes éventuellement combinées sous forme d'un procédé de lecture, traitement, transmission et exploitation d'un code à barres dans lequel :The invention also relates to a particular application of the module as such or in the device according to one or more of the preceding characteristics possibly combined in the form of a method of reading, processing, transmission and exploitation of a bar code in which :
- on lit le code à barres avec un lecteur comportant un module d'interface de radiocommunication selon l'une ou plusieurs des caractéristiques précédentes et des moyens de lecture optiques du type tête de lecture optique de code à barres produisant des signaux électriques en fonction des barres, - on traite lesdits signaux électriques dans le module d'interface pour produire des données numériques et/ou alphanumériques,- The bar code is read with a reader comprising a radio communication interface module according to one or more of the preceding characteristics and optical reading means of the optical bar code reading head type producing electrical signals according to the bars, - said electrical signals are processed in the interface module to produce digital and / or alphanumeric data,
- on associe aux dites données numériques et/ou alphanumériques un identifiant de lecteur afin de produire une chaîne de données propriétaire,- said digital and / or alphanumeric data are associated with a reader identifier in order to produce a proprietary data string,
- on transmet en temps réel la chaîne de données propriétaire à au moins un équipement client comportant au moins un logiciel client pour exécution d'une commande compréhensible par ledit équipement client, Dans divers modes de déclinaison du procédé les moyens suivants éventuellement combinés sont employés :- the proprietary data chain is transmitted in real time to at least one client device comprising at least one client software for execution of an order understandable by said client device, In various modes of declination of the process the following means, possibly combined, are used:
- lorsqu'un équipement client n'est pas disponible pour réception, on stocke la chaîne de données propriétaire dans une mémoire du lecteur, - dans l'équipement client on associe en outre à la chaîne de données propriétaire au moins une donnée de type d'équipement client afin de former une adresse informatique dépendant alors du code à barres, de l'identifiant de lecteur et de la donnée de type d'équipement, - on met en œuvre une table de correspondance pour associer une adresse informatique à la chaîne de données propriétaire, éventuellement associée à au moins une donnée de type d'équipement client, la table de correspondance étant située dans un serveur informatique distinct de l'équipement client,- when a client device is not available for reception, the proprietary data string is stored in a memory of the reader, - in the client device, at least one type of data item d is associated with the proprietary data string customer equipment in order to form an IT address then dependent on the barcode, the reader identifier and the type of equipment data, - a correspondence table is used to associate a computer address with the proprietary data chain, possibly associated with at least one piece of data of client equipment type, the correspondence table being located in a computer server distinct from the equipment customer,
- on met en œuvre une table de correspondance pour associer une adresse informatique à la chaîne de données propriétaire, éventuellement associée à au moins une donnée de type d'équipement client, la table de correspondance étant stockée dans l'équipement client,a correspondence table is used to associate a computer address with the proprietary data chain, possibly associated with at least one datum of the type of client equipment, the correspondence table being stored in the client equipment,
(on considère également le cas où la table de correspondance est partagée entre l'équipement client et au moins un serveur de routage, et, par exemple au cas où aucune correspondance n'est trouvée dans la table de l'équipement client, un serveur de routage distinct est alors utilisé)(we also consider the case where the correspondence table is shared between the client equipment and at least one routing server, and, for example in the case where no correspondence is found in the client equipment table, a server separate routing is used)
- on stocke la table de correspondance dans l'équipement client par sélection selon un: critère dans une table de correspondance globale située dans un serveur informatique distinct de l'équipement client, le critère comportant au moins l'identifiant de lecteur,the correspondence table is stored in the client equipment by selection according to a: criterion in a global correspondence table located in a computer server separate from the client equipment, the criterion comprising at least the reader identifier,
- on met en œuvre un moyen de transmission par ondes électromagnétiques en espace libre entre le lecteur et l'équipement client avec un protocole de communication permettant au moins de déterminer quels sont les équipements clients pouvant communiquer et, dans le cas où plusieurs équipements seraient opérationnels, ledit protocole permettant de sélectionner au moins un desdits équipements opérationnels,- a means of transmission by electromagnetic waves in free space between the reader and the client equipment is implemented with a communication protocol making it possible at least to determine which client devices can communicate and, in the case where several devices are operational , said protocol making it possible to select at least one of said operational equipment,
- on code selon un algorithme de codage les données numériques et/ou alphanumériques avant de les associer à l'identifiant de lecteur,- the digital and / or alphanumeric data are coded according to an encoding algorithm before associating them with the reader identifier,
- l'adresse informatique associée à la chaîne de données propriétaire est celle d'un serveur informatique relayant une demande d'informations à un autre serveur informatique, - le code à barres est un code à barres propriétaire ; - l'identifiant du lecteur est un numéro unique sur 48 bits d'adresse « Bluetooth® »;- the computer address associated with the proprietary data chain is that of a computer server relaying a request for information to another computer server, - the bar code is a proprietary bar code; - the identifier of the reader is a unique 48-bit number of “Bluetooth®” address;
- l'identifiant du lecteur est un numéro de lecteur préprogrammé lors de la fabrication ou programmé ultérieurement ;- the reader identifier is a reader number preprogrammed during manufacture or programmed later;
- la source d'alimentation électrique interne est du type batterie rechargeable et/ou pile électrochimique;- the internal electrical power source is of the rechargeable battery and / or electrochemical cell type;
- le lecteur comporte un moyen d'établissement de son alimentation électrique par l'organe de préhension de l'utilisateur;- The reader includes a means of establishing its electrical supply by the user gripping member;
- le lecteur comporte un moyen de coupure de son alimentation électrique par l'organe de préhension de l'utilisateur;- The reader includes a means of cutting its electrical supply by the user gripping member;
- le moyen d'établissement de l'alimentation est un interrupteur électromécanique du type bouton-poussoir, la coupure de l'alimentation s'effectue lorsque l'utilisateur cesse d'appuyer sur ledit bouton-poussoir;the means for establishing the supply is an electromechanical switch of the push button type, the supply is cut off when the user stops pressing said push button;
- le bouton poussoir est disposé pour que l'utilisateur positionne nécessairement le lecteur (ou crayon) dans une orientation donnée par rapport au code à barres ; - l'orientation donnée est telle que le lecteur (ou crayon) est sensiblement vertical lors de la lecture ;- The push button is arranged so that the user necessarily positions the reader (or pencil) in a given orientation relative to the bar code; - the orientation given is such that the reader (or pencil) is substantially vertical during reading;
- lorsque le code à barres est lu sans erreur, l'alimentation du capteur optique se coupe mais le module de radiocommunication reste alimenté ; - lorsque le code à barres est lu sans erreur, l'alimentation du capteur optique se coupe mais le module de radiocommunication reste alimenté , en mode faible consommation jusqu'à ce que toutes les données numériques et/ou alphanumériques et/ou binaires stockées dans la mémoire du crayon soient envoyées aux équipements informatiques clients;- when the bar code is read without error, the power to the optical sensor is cut off but the radio communication module remains powered; - when the barcode is read without error, the power to the optical sensor shuts off but the radio communication module remains powered, in low consumption mode until all the digital and / or alphanumeric and / or binary data stored in the pen memory is sent to the client IT equipment;
- le lecteur comporte en outre un générateur sonore ;- The reader also includes a sound generator;
- le programme permet le décodage des codes à barres usuels parmi lesquels ceux de type EAN et UPC ; - le programme permet en outre le décodage des codes à barres selon un codage propriétaire.- the program allows the decoding of the usual bar codes among which those of type EAN and UPC; - the program also allows the decoding of bar codes according to a proprietary coding.
L'invention concerne enfin un crayon lecteur de symboles ainsi qu'un procédé avec leurs déclinaisons éventuellement combinées selon toutes les possibilités techniquement envisageables et correspondant à:Finally, the invention relates to a symbol reader pen as well as to a method with their variations possibly combined according to all the technically possible possibilities and corresponding to:
- un crayon lecteur de symboles sur un support, le crayon comportant à une extrémité dans un capteur optique une source lumineuse produisant un faisceau lumineux focalisé sur le support et un détecteur optique destiné à recevoir et convertir la lumière réfléchie par le support en signaux électriques, le crayon étant autonome et comportant une source d'alimentation électrique interne, une interface de radiocommunication bidirectionnelle selon un protocole prédéfini pour au moins une application utilisateur ayant des données et instructions à communiquer à un dispositif externe ainsi que des moyens de lecture optiques du type tête de lecture optique produisant des signaux électriques en fonction des symboles, l'application utilisateur sous forme d'un programme de fonctionnement comportant un moyen de reconnaissance des symboles et des moyens pour traiter les signaux électriques du détecteur optique, des moyens d'interfaçage par l'intermédiaire de l'interface de radiocommunication assurant au moins la transmission desdits symboles selon ledit protocole à un équipement, informatique,- a symbol reader pen on a support, the pencil comprising at one end in an optical sensor a light source producing a light beam focused on the support and an optical detector intended to receive and convert the light reflected by the support into electrical signals, the pencil being autonomous and comprising an internal electrical power source, a bidirectional radiocommunication interface according to a predefined protocol for at least one user application having data and instructions to communicate to an external device as well as optical reading means of the head type reading device producing electrical signals according to the symbols, the user application in the form of an operating program comprising a means of recognizing the symbols and means for processing the electrical signals of the optical detector, means of interfacing by the intermediary of the ra interface diocommunication ensuring at least the transmission of said symbols according to said protocol to equipment, data processing,
- les symboles sont des codes à barres sur un support,- the symbols are bar codes on a support,
- les symboles sont des caractères sur un support,- the symbols are characters on a support,
- les symboles correspondent à une écriture,- the symbols correspond to a writing,
- en alternative du support, les symboles sont des codes à barres correspondant à un enchaînement temporel successif de surface sombre et claire sur un écran d'affichage,- as an alternative to the medium, the symbols are bar codes corresponding to a successive time sequence of dark and light surface on a display screen,
- dans le cas d'un écran d'affichage, la source lumineuse est omise,- in the case of a display screen, the light source is omitted,
- un procédé de lecture, traitement, transmission et exploitation d'un symbole dans lequel : - on lit le symboles avec un lecteur qui est un crayon lecteur de symboles selon l'une ou plusieurs des caractéristiques précédentes,- a method of reading, processing, transmitting and exploiting a symbol in which: - the symbols are read with a reader which is a symbol reader pencil according to one or more of the preceding characteristics,
- on traite lesdits signaux électriques dans le module d'interface pour produire des données numériques et/ou alphanumériques,said electrical signals are processed in the interface module to produce digital and / or alphanumeric data,
- on associe aux dites données numériques et/ou alphanumériques un identifiant de lecteur afin de produire une chaîne de données propriétaire, - on transmet en temps réel la chaîne de données propriétaire à au moins un équipement client comportant au moins un logiciel client pour exécution d'une commande compréhensible par ledit équipement client,- we associate with said digital and / or alphanumeric data a reader identifier in order to produce a proprietary data string, - the proprietary data string is transmitted in real time to at least one client device comprising at least one client software for execution of '' an order understandable by said customer equipment,
- un Procédé selon la caractéristique précédente tel que lorsqu'un équipement client n'est pas disponible pour réception, on stocke la chaîne de données propriétaire dans une mémoire du lecteur,a method according to the preceding characteristic such that when a client equipment is not available for reception, the proprietary data string is stored in a memory of the reader,
- un procédé selon les caractéristiques précédentes tel que dans l'équipement client on associe en outre à la chaîne de données propriétaire au moins une donnée de type d'équipement client afin de former une adresse informatique dépendant alors du symbole, de l'identifiant de lecteur et de la donnée de type d'équipement,a method according to the preceding characteristics such as in client equipment, in addition, is associated with the owner data chain at least one datum of type of client equipment in order to form an IT address then dependent on the symbol, the identifier of equipment type data,
- un procédé selon les caractéristiques précédentes tel que l'on met en œuvre une table de correspondance pour associer une adresse informatique à la chaîne de données propriétaire, éventuellement associée à au moins une donnée dé type d'équipement client, la table de correspondance étant située dans un serveur informatique distinct de l'équipement client, - un procédé selon les caractéristiques précédentes tel que l'on met en œuvre une table de correspondance pour associer une adresse informatique à la chaîne de données propriétaire, éventuellement associée à au moins une donnée de type d'équipement client, la table de correspondance étant stockée dans l'équipement client, - un procédé selon les caractéristiques précédentes tel que l'on stocke la table de correspondance dans l'équipement client par sélection selon un critère dans une table de correspondance globale située dans un serveur informatique distinct de l'équipement client, le critère comportant au moins l'identifiant de lecteur,a method according to the preceding characteristics such that a correspondence table is used to associate a computer address with the proprietary data chain, possibly associated with at least one piece of data of type of client equipment, the correspondence table being located in a computer server separate from the client equipment, - a method according to the preceding characteristics such that a correspondence table is implemented to associate a computer address with the proprietary data chain, possibly associated with at least one data item type of customer equipment, the correspondence table being stored in the customer equipment, a method according to the preceding characteristics such that the correspondence table is stored in the client equipment by selection according to a criterion in a global correspondence table located in a computer server distinct from the client equipment, the criterion comprising at least the reader identifier,
- un procédé selon les caractéristiques précédentes tel que l'on met en œuvre un moyen de transmission par ondes électromagnétiques en espace libre entre le lecteur et l'équipement client avec un protocole de communication permettant au moins de déterminer quels sont les équipements clients pouvant communiquer et, dans le cas où plusieurs équipements seraient opérationnels, ledit protocole permettant de sélectionner au moins un desdits équipements opérationnels,- A method according to the preceding characteristics such as one implements a means of transmission by electromagnetic waves in free space between the reader and the client equipment with a communication protocol allowing at least to determine which client equipment can communicate and, in the case where several pieces of equipment are operational, said protocol making it possible to select at least one of said operational pieces of equipment,
- un procédé selon les caractéristiques précédentes tel que l'on code selon un algorithme de codage les données numériques et/ou alphanumériques avant de les associer à l'identifiant de lecteur, - un procédé selon les caractéristiques précédentes tel que l'adresse informatique associée à la chaîne de données propriétaire est celle d'un serveur informatique relayant une demande d'informations à un autre serveur informatique,- a method according to the preceding characteristics such that the digital and / or alphanumeric data are coded according to an algorithm for coding before associating them with the reader identifier, - a method according to the preceding characteristics such as the associated computer address to the proprietary data chain is that of a computer server relaying a request for information to another computer server,
- un procédé selon les caractéristiques précédentes tel que les symboles sont des codes à barres sur un support,- a method according to the preceding characteristics such that the symbols are bar codes on a support,
- un procédé selon les caractéristiques précédentes tel que les symboles sont des caractères sur un support,- a method according to the preceding characteristics such that the symbols are characters on a support,
- un procédé selon les caractéristiques précédentes tel que les symboles sont des codes à barres correspondant à un enchaînement temporel successif de surface sombre et claire sur un écran d'affichage.- A method according to the preceding characteristics such that the symbols are bar codes corresponding to a successive time sequence of dark and light surface on a display screen.
La présente invention sera mieux comprise à la lecture d'exemples de réalisation non limitatifs en relation avec :The present invention will be better understood on reading nonlimiting exemplary embodiments in relation to:
- La figure 1 représentant l'architecture générale (matérielle et logicielle) d'un Smart Module, - les Figures 2 et 3 représentant un crayon lecteur selon deux plans de visualisation,- Figure 1 representing the general architecture (hardware and software) of a Smart Module, - Figures 2 and 3 showing a reader pen according to two viewing planes,
- La Figure 4 représentant le schéma fonctionnel du crayon, - La figure 5 représente le crayon lecteur dans son environnement,- Figure 4 representing the functional diagram of the pencil, - Figure 5 represents the reader pen in its environment,
- Les figures 6 et 7a, 7b, 7c représentant les étapes de fonctionnement du crayon,FIGS. 6 and 7a, 7b, 7c representing the stages of operation of the pencil,
La figure 8, représentant schématiquement des moyens de mise en œuvre du procédé.FIG. 8, schematically representing means for implementing the method.
On rappelle que d'une manière générale, la pile logicielle du module d'interface de radiocommunication comporte une partie correspondant au protocole (pile protocole) de communication et une partie correspondant à la pile d'abstraction applicative (« protocol abstraction API »), cette dernière permettant la mise en oeuvre simplifiée d'applications. La pile d'abstraction applicative peut correspondre à un ou plusieurs niveaux logiciels. Le module d'interface de radiocommunication, également dénommé « SmartModule » « Baracoda® » est un module radio générique sous forme d'un composant matériel unique qui permet d'embarquer du logiciel pour des applications spécifiques des utilisateurs.It will be recalled that, in general, the software stack of the radiocommunication interface module comprises a part corresponding to the communication protocol (protocol stack) and a part corresponding to the application abstraction stack (“protocol abstraction API”), the latter allowing the simplified implementation of applications. The application abstraction stack can correspond to one or more software levels. The radio communication interface module, also known as "SmartModule" "Baracoda®" is a generic radio module in the form of a single hardware component which allows software to be embedded for specific user applications.
Dans sa généralité, un « Smart Module », représenté schématiquement à la Figure 1 , est constitué d'un moyen radio type composant radio, circuit intégré bande de base, ainsi que d'un moyen logiciel embarqué sur un microcontrôleur radio, et selon le cas, d'une antenne et/ou de périphériques dont, par exemple, des entrées/sorties analogiques ou numériques, une batterie assurant l'autonomie du module. Le « SmartModule » ou module de radiocommunication est un module radio générique qui permet d'embarquer du logiciel applicatif. Le « SmartModule » est adaptée à tous types de protocole radio, propriétaire ou non et, par exemple, « Bluetooth® », GPRS, CDMA2000, WCDMA, « Home RF », 802.1 1 b, « WLAN », « Wi- Fi », 802.11. a, « Hyperlan », « Zigbee » ou solutions à 433MHz.In general, a “Smart Module”, shown schematically in Figure 1, consists of radio means of the radio component type, integrated baseband circuit, as well as software means on board a radio microcontroller, and according to the case, an antenna and / or peripherals including, for example, analog or digital inputs / outputs, a battery ensuring the autonomy of the module. The "SmartModule" or radiocommunication module is a generic radio module that allows you to embed application software. The “SmartModule” is suitable for all types of radio protocol, proprietary or not and, for example, “Bluetooth®”, GPRS, CDMA2000, WCDMA, “Home RF”, 802.1 1 b, “WLAN”, “Wi- Fi ”, 802.11. a, "Hyperlan", "Zigbee" or solutions at 433MHz.
Le microcontrôleur du module d'interface intègre toutes les couches logicielles du protocole dans la pile protocole, la pile d'abstraction applicative, les profiles ainsi qu'un logiciel embarqué (application utilisateur). La pile d'abstraction applicative qui peut également traiter des instructions et données propriétaires, permet, par exemple, une gestion fine de l'alimentation et des modes de basse consommation spécifiés dans la norme « Bluetooth® ». Elle permet dans sa généralité de créer une couche d'abstraction au-dessus de la pile protocole correspondant au protocole considéré afin de réaliser une interface logicielle entre le logiciel spécifique au protocole considéré (la pile de protocole Bluetooth, par exemple) et le logiciel utilisateur, embarqué. Cette interface permet, vis-à-vis de l'application utilisateur, de simplifier l'utilisation du protocole et de faciliter grandement le développement d'applications embarquées utilisant une interface radio complexe et très spécifique. Ceci permet donc à des clients d'accélérer le développement sans qu'ils connaissent les subtilités du protocole utilisé.The microcontroller of the interface module integrates all the software layers of the protocol in the protocol stack, the application abstraction stack, the profiles as well as an embedded software (user application). The application abstraction stack, which can also process proprietary instructions and data, allows, for example, fine management of power and low-consumption modes specified in the “Bluetooth®” standard. In general, it allows the creation of an abstraction layer above the protocol stack corresponding to the protocol in question in order to create a software interface between the software specific to the protocol in question (the Bluetooth protocol stack, for example) and the user software. , on board. This interface allows, vis-à-vis the user application, to simplify the use of the protocol and greatly facilitate the development of on-board applications using a complex and very specific radio interface. This therefore allows customers to speed up development without knowing the subtleties of the protocol used.
Les périphériques associés (matériel), ainsi que leur gestion logicielle (pilote) permettent, tout comme le logiciel embarqué, de faciliter le développement des applications et l'intégration du module dans tout type de produit électronique.The associated peripherals (hardware), as well as their software management (pilot) allow, just like the embedded software, to facilitate the development of the applications and the integration of the module in any type of electronic product.
Plusieurs périphériques sont proposés dans une librairie de composants : il s'agit par exemple de régulateurs de tension (3,3V - 5V), de convertisseurs analogique numériqueSeveral peripherals are offered in a library of components: for example, voltage regulators (3.3V - 5V), analog to digital converters
(CAN), de convertisseurs numérique analogique (CNA), de compteurs, de comparateurs (en entrée), de convertisseurs de tension, du circuit de charge d'une batterie, d'un microcontrôleur 8-bits additionnel, de fonctions logiques de base ainsi que d'entrées/sorties pour, par exemple, commande de "LED" (diode électroluminescente) ou "buzzer" (vibreur) et lecture d'état d'interrupteur ou de lecteur optique. Ces périphériques peuvent être rajoutés ou enlevés lors de la phase d'intégration électronique de l'application. En fonction des périphériques retenus ou non, des moyens de traitement de données et instructions de ces périphériques seront ou non insérés dans la pile d'abstraction applicative . Dans une version particulière, le module comporte un régulateur de tension permettant de l'alimenter à partir d'une prise électrique 220V / 1 10V, d'une batterie ou de toute autre source de courant. L'intérêt de ces périphériques est de ne pas modifier les fonctionnalités électroniques du produit dans lequel on intègre le « SmartModule »: les applications introduites ne nécessitent pas de modifier la carte électronique du produit existant d'où un gain en coût et durée d'intégration. Le choix des différents périphériques est rendu très rapide par l'utilisation d'un kit de développement « SmartModule » sous forme d'une carte électronique sur laquelle sont soudés tous les périphériques envisageables. Dans une version de base, les périphériques ne sont pas connectés mais il est possible de positionner des fils électriques ou cavaliers entre les entrées/sorties de chaque périphérique et le microcontrôleur. A partir de la position des fils électriques dans la carte de développement, on en déduit le schéma électrique du module. Un travail spécifique de routage et câblage du circuit imprimé est alors nécessaire. Dans une version plus évoluée, des périphériques sont adressables spécifiquement à travers des portes logiques ou analogiques programmables et . la configuration fonctionnelle du module est programmable au lieu (ou en complément) de la phase de câblage. En particulier, le microcontrôleur peut, par exemple, comporter un CAN et un compteur. On comprend que la mise en œuvre d'un périphérique particulier se rapporte aussi bien au circuit électronique matériel qu'aux moyens logiciels associés afin de le faire fonctionner et de reconnaître et exécuter des instructions propriétaires qui lui sont spécifiques. Comme on l'a vu, les moyens logiciels du module peuvent être préprogrammés ou chargés à l'utilisation.(ADC), digital analog converters (DAC), counters, comparators (input), voltage converters, battery charging circuit, additional 8-bit microcontroller, basic logic functions as well as inputs / outputs for, for example, control of "LED" (light-emitting diode) or "buzzer" (buzzer) and reading of state of switch or optical reader. These peripherals can be added or removed during the electronic integration phase of the application. Depending on the peripherals retained or not, data processing means and instructions of these peripherals will or may not be inserted into the application abstraction stack. In a particular version, the module includes a voltage regulator allowing it to be powered from a 220V / 1 10V electrical outlet, a battery or any other current source. The advantage of these peripherals is that they do not modify the electronic functionalities of the product in which the “SmartModule” is integrated: the applications introduced do not require modification of the electronic card of the existing product, hence a saving in cost and duration of integration. The choice of different peripherals is made very fast by the use of a “SmartModule” development kit in the form of an electronic card on which all possible peripherals are soldered. In a basic version, the peripherals are not connected but it is possible to position electrical wires or jumpers between the inputs / outputs of each peripheral and the microcontroller. From the position of the electrical wires in the development board, we deduce the electrical diagram of the module. A specific work of routing and wiring of the printed circuit is then necessary. In a more advanced version, peripherals are specifically addressable through programmable logic or analog gates and. the functional configuration of the module is programmable instead of (or in addition to) the wiring phase. In particular, the microcontroller can, for example, include a CAN and a counter. It is understood that the implementation of a particular peripheral relates as well to the electronic hardware circuit as to the associated software means in order to make it function and to recognize and execute proprietary instructions which are specific to it. As we As seen, the module's software resources can be pre-programmed or loaded for use.
Dans un cas particulier de protocole, « Bluetooth »® correspond à une technologie standard de communication radio à courte portée entre deux équipements. Le terme équipement client signifie équipement informatique (assistant électronique, ordinateur ou téléphone portable) connu du lecteur. Il s'agit des équipements dont l'adresse « Bluetooth ®» (48 bits) est enregistrée dans une mémoire du lecteur. Le but du « SmartModule » est de faciliter l'intégration de la technologie « Bluetooth® » dans tous types de produits électroniques filaires ou non.In a particular protocol case, "Bluetooth" ® corresponds to a standard short-range radio communication technology between two devices. The term customer equipment means computer equipment (electronic assistant, computer or mobile phone) known to the reader. These are devices whose "Bluetooth ®" address (48 bits) is stored in a memory of the reader. The purpose of the “SmartModule” is to facilitate the integration of “Bluetooth®” technology into all types of electronic products, wired or not.
Le module de radiocommunication facilite grandement l'intégration de ladite technologie dans des produits électroniques car les dispositifs « Bluetooth® » classiques n'intègrent pas de logiciel embarqué et sont commandés à partir d'un ordinateur ou processeur externe au module (« host »), ce qui nécessite de mettre en œuvre entre le dispositif et le « host » des instructions et données complexes et spécifiques à ladite technologie. Or, dans un produit électronique classique, le processeur dudit produit ne contient pas le code qui permet de commander le dispositif « Bluetooth® » et, de plus, il est très difficile de modifier le code existant dans un processeur embarqué pour des raisons de taille de mémoire et d'absence de système d'exploitation dans la plupart des produits électroniques rustiques.The radiocommunication module greatly facilitates the integration of said technology into electronic products because conventional “Bluetooth®” devices do not integrate embedded software and are controlled from a computer or processor external to the module (“host”) , which requires the implementation between the device and the “host” of complex instructions and data specific to said technology. However, in a conventional electronic product, the processor of said product does not contain the code which makes it possible to control the “Bluetooth®” device and, moreover, it is very difficult to modify the existing code in an on-board processor for reasons of size. memory and no operating system in most rustic electronics.
Le Smart Module est donc constitué d'un module matériel et d'un module logiciel. La Figure 1 représente le schéma de l'architecture du Smart Module.The Smart Module therefore consists of a hardware module and a software module. Figure 1 shows the diagram of the Smart Module architecture.
ARCHITECTURE MATERIELLE :MATERIAL ARCHITECTURE:
L'exemple de « SmartModule » représenté est constitué de 2 circuits imprimés, soudés l'un sur l'autre. Le premier circuit imprimé est le circuit radio proprement dit, il est constitué d'une antenne, d'une radio, d'un circuit intégré bande base, d'un microprocesseur ou microcontrôleur (« radio MCU »), d'une mémoire programme de type FLASH, ROM et d'une mémoire de type RAM. On l'appelle ici module radio (RM). Le second circuit imprimé intègre au moins tous les périphériques nécessaires au bon fonctionnement matériel du module radio dans son environnement. On l'appelle ici connexion matérielle (Hardware Patch ou HWP) ledit second circuit imprimé peut également comporter d'autres périphériques comme expliqué précédemment et qui dépendent de l'application envisagée. Toutefois, comme expliqué précédemment, une ou des interfaces non utilisées dans une application particulière peuvent être présentes par défaut, ne serait-ce parce qu'elles sont comprises par défaut dans les circuits électroniques mis en œuvre. En pratique, pour des raisons de coût, on prévoit plusieurs types de modules comportant plus ou moins d'interfaces et/ou en fonction d'applications potentielles. Par exemple, un module générique destiné à l'étude et au développement d'applications peut comporter un grand nombre d'interfaces tandis que les modules destinés à la production en grande série comporteront un nombre minimal ou juste les interfaces nécessaires à l'application.The example of “SmartModule” represented consists of 2 printed circuits, soldered one on the other. The first printed circuit is the radio circuit proper, it consists of an antenna, a radio, an integrated band circuit base, a microprocessor or microcontroller ("radio MCU"), a program memory of the FLASH, ROM type and a memory of the RAM type. It is called here radio module (RM). The second printed circuit integrates at least all the peripherals necessary for the proper hardware operation of the radio module in its environment. It is called here hardware connection (Hardware Patch or HWP) said second printed circuit can also include other peripherals as explained previously and which depend on the envisaged application. However, as explained above, one or more interfaces not used in a particular application may be present by default, if only because they are included by default in the electronic circuits used. In practice, for cost reasons, several types of modules are provided, comprising more or less interfaces and / or according to potential applications. For example, a generic module intended for the study and development of applications can comprise a large number of interfaces while the modules intended for mass production will comprise a minimum number or just the interfaces necessary for the application.
Dans d'autres versions, le module de radiocommunication est sur un seul circuit imprimé et dans une version à haute intégration, le module de radiocommunication est un seul circuit intégré hybride ou, de préférence, monolithique.In other versions, the radiocommunication module is on a single printed circuit and in a highly integrated version, the radiocommunication module is a single hybrid or, preferably, monolithic integrated circuit.
ARCHITECTURE LOGICIELLE : Le logiciel correspondant à la pile avec la pile protocole et la pile d'abstraction applicative et aux éventuelles applications de l'utilisateur, est embarqué sur le(s) microcontrôleur(s) du «SmartModule». Par défaut et dans la version minimale du module, il y a un microcontrôleur (microprocesseur, mémoire FLASH ou ROM, mémoire RAM) sur le circuit radio et ce microcontrôleur est dénommé le « radio MCU ». Dans des versions plus élaborées du module, Il est possible de rajouter un second microcontrôleur (8-bits, 16- bits, 32-bits ou DSP) sur le HWP, c'est à dire le second circuit imprimé dans l'exemple représenté.SOFTWARE ARCHITECTURE: The software corresponding to the stack with the protocol stack and the application abstraction stack and to any user applications, is embedded on the microcontroller (s) of the "SmartModule". By default and in the minimum version of the module, there is a microcontroller (microprocessor, FLASH or ROM memory, RAM memory) on the radio circuit and this microcontroller is called the "radio MCU". In more elaborate versions of the module, it is possible to add a second microcontroller (8-bit, 16-bit, 32-bit or DSP) on the HWP, ie the second printed circuit in the example shown.
L'intérêt d'un second microcontrôleur (external MCU) est de pouvoir effectuer des traitements spécifiques qui ne seraient pas envisageables sur le microcontrôleur du circuit radio pour des raisons de contraintes temps réelles, de limitation de la puissance de calcul du contrôleur du circuit radio, de la nécessité d'avoir des entrées/sorties additionnelles et/ou spécifiques (non disponibles sur le microcontrôleur du circuit radio).The interest of a second microcontroller (external MCU) is to be able to carry out specific processing which would not be possible on the microcontroller of the radio circuit for reasons of real time constraints, of limitation of the computing power of the radio circuit controller. , the need to have additional and / or specific inputs / outputs (not available on the radio circuit microcontroller).
La description qui suit donne un exemple particulier de mise en œuvre du module de radiocommunication dans le cadre du protocole « Bluetooth® ».The description which follows gives a particular example of implementation of the radiocommunication module within the framework of the "Bluetooth®" protocol.
Le « SmartModule® » facilite l'intégration de la technologie « Btuetooth® » dans tous types de produits électroniques filaires ou non et d'accélérer le cycle de développement d'un nouveau produit. Le circuit radio est générique et il en existe 2 versions pour le protocole « Bluetooth® », une première version courte distance avec une puissance d'émission maximum de 4dBm (2,5mW) et une seconde version longue distance avec une puissance d'émission maximum de 20dBm (100 mW).The “SmartModule®” facilitates the integration of “Btuetooth®” technology into all types of wired and non-wired electronic products and accelerates the development cycle of a new product. The radio circuit is generic and there are 2 versions for the “Bluetooth®” protocol, a first short distance version with a maximum transmit power of 4dBm (2.5mW) and a second long distance version with a transmit power. maximum 20dBm (100mW).
LE « RADIO MCU »THE "RADIO MCU"
Le « radio MCU » est un microcontrôleur utilisant le processeur ARM7 TDMI. D'autres architectures RISC 32-bits sont toutefois utilisables. Le « radio MCU » dispose d'une mémoire programme de type ROM ou FLASH. Cette mémoire programme pourra être intégrée sur la puce du processeur ou sur un circuit intégré extérieur et, dans ce dernier cas, la mémoire est dans le module radio (RM). Une architecture hybride peut également être mise en oeuvre. L'ordre de grandeur de la taille dé cette mémoire ROM / FLASH est de 1 Mbit à 32Mbit, ce paramètre pouvant être amené à changer en fonction des évolutions technologiques et/ou des besoins en ressource mémoire de l'application. Une mémoire RAM est aussi embarquée sur le module radio (RM). Elle a une taille de l'ordre de 16KBytes à 128Kbytes, paramètre dépendant dépendre des évolutions technologiques et/ou des besoins en ressource mémoire de l'application. Une mémoire interne au microcontrôleur et une mémoire extérieure peuvent être associées dans le module radio (RM) au cas où les besoins en ressource mémoire sont importants, aussi bien pour la ROM/FLASH que pour la RAM. Des compteurs (« timer ») sont également intégrés dans le « radio MCU ».The "radio MCU" is a microcontroller using the ARM7 TDMI processor. Other 32-bit RISC architectures can however be used. The "radio MCU" has a ROM or FLASH type program memory. This program memory can be integrated on the processor chip or on an external integrated circuit and, in the latter case, the memory is in the radio module (RM). Hybrid architecture can also be implemented. The order of size of the size of this ROM / FLASH memory is from 1 Mbit to 32 Mbit, this parameter being able to be brought to change according to the technological evolutions and / or the needs in memory resource of the application. A RAM memory is also on board the radio module (RM). It has a size of the order of 16KBytes to 128Kbytes, a dependent parameter depending on technological developments and / or the memory resource requirements of the application. An internal memory in the microcontroller and an external memory can be associated in the radio module (RM) in case the memory resource requirements are important, as well for ROM / FLASH as for RAM. Counters ("timer") are also integrated in the "radio MCU".
LA PILE PROTOCOLETHE PROTOCOL BATTERY
La partie de la pile logicielle correspondant à la gestion du protocole Bluetooth, pile protocole, est dans cet exemple, le « Bluetooth protocol Stack » (pile de protocole « Bluetooth® »), comprend les couches basses du logiciel (en dessous de l'interface HCI), les couches hautes (L2CAP, SDP, RFCOMM) ainsi que les « profiles », au dessus des couches hautes de Bluetooth. Les « profiles Bluetooth® » sont juste en dessous de l'unité de translation applicative (couche d'abstraction applicative), elle-même dessous des éventuelles applications de l'utilisateur.The part of the software stack corresponding to the management of the Bluetooth protocol, protocol stack, is in this example, the “Bluetooth protocol Stack” (protocol stack “Bluetooth®”), includes the lower layers of the software (below the HCI interface), the upper layers (L2CAP, SDP, RFCOMM) as well as the "profiles", above the upper layers of Bluetooth. The “Bluetooth® profiles” are just below the application translation unit (application abstraction layer), itself below any user applications.
LA PILE D'ABSTRACTION APPLICATIVETHE APPLICATIVE ABSTRACTION PILE
Cette pile d'abstraction applicative (« protocol abstraction- API ») est disposée fonctionnellement au-dessus des couches ou niveaux de la pile protocole, permettant à une application utilisateur d'utiliser tes services de toutes tes couches du protocole « Bluetooth® » et de profiter de la richesse de cette norme et, comme on l'a vu, d'éventuelles fonctionnalités locales additionnelles (gestion d'interface locale, instructions spécifiques...). Cette partie de la pile logicielle est en partie commune à tous les « Smart Modules » utilisés dans des outils d'acquisition de données (lecture de code à barres, lecture de badge magnétique ou sans contact, lecture de carte à puce, souris, clavier, senseur de température, de pression, senseur de mouvement, reconnaissance d'écriture, caméra CCD ou CMOS, etc....). Pour d'autres types d'usage, il est prévu un autre type de pile d'abstraction applicative. Dans tous les cas, ladite pile permet de développer des applications le plus simplement possible et indépendamment des instructions et formats du protocole de communication considéré. Cette pile d'abstraction applicative permet d'accéder à l'interface radio sans connaître le protocole « Bluetooth® ».This application abstraction stack (“protocol abstraction- API”) is arranged functionally above the layers or levels of the protocol stack, allowing a user application to use your services from all your layers of the “Bluetooth®” protocol and to take advantage of the richness of this standard and, as we have seen, of any additional local functionalities (local interface management, specific instructions ...). This part of the software stack is partly common to all “Smart Modules” used in data acquisition tools (bar code reading, magnetic or contactless badge reading, smart card reading, mouse, keyboard , temperature, pressure sensor, motion sensor, handwriting recognition, CCD or CMOS camera, etc.). For other types of use, another type of application abstraction stack is provided. In all cases, said stack makes it possible to develop applications as simply as possible and independently of the instructions and formats of the communication protocol considered. This application abstraction stack allows access to the radio interface without knowing the “Bluetooth®” protocol.
L'utilisateur dispose de trois principales commandes : - Une commande d'envoi de données qui précise ta taille de la donnée à envoyer (2 octets), l'adresse « Bluetooth® » (48-bits d'adresse MAC) du destinataire (6 octets), le profite utilisé (1 octet), un paramètre de qualité de service (1 octet) et la donnée (« payload »). - Une commande de requête («inquiry ») permettant à l'application « Smart Module Manager » qui se trouve au- dessus de la pile d'abstraction applicative de trouver tous les produits « Bluetooth® » accessibles aux alentours et de reconnaître les services qu'ils proposent. - Une mise en écoute du « Smart Module » avec un paramètre (1 octet) caractérisant le mode d'écoute.The user has three main commands: - A command to send data which specifies the size of the data to be sent (2 bytes), the “Bluetooth®” address (48-bit MAC address) of the recipient ( 6 bytes), the profit used (1 byte), a quality of service parameter (1 byte) and the data ("payload"). - A request command (“inquiry”) allowing the “Smart Module Manager” application, which is located above the application abstraction stack, to find all the “Bluetooth®” products available in the vicinity and to recognize the services they offer. - Listening of the “Smart Module” with a parameter (1 byte) characterizing the listening mode.
Ces commandes de requête (« inquiry ») et de mise en mode d'écoute, sont proches de celles proposées par le GAP (« General Access Profile »). En revanche, la première commande primitive d'envoi est une vraie abstraction qui masque la complexité du protocole « Bluetooth® » et qui permet un gain en temps de développement. On va maintenant détailler les différents paramètres utilisés dans la commande d'envoi : - BDADR (Adresse « Bluetooth® » du destinataire de l'envoi) : Cette adresse est fournie par le « Smart Module Manager ». Différentes adresses sont stockées dans la mémoire non volatile du « Smart Module », elles proviennent soit d'une phase de configuration, soit d'une phase de requête (« inquiry »). L'origine des adresses « Bluetooth® » n'est pas gérée par la pile d'abstraction applicative, mais à un niveau encore supérieur par le « Smart Module Manager ».These request (inquiry) and listening mode commands are close to those proposed by the GAP (“General Access Profile”). On the other hand, the first primitive send command is a real abstraction which masks the complexity of the “Bluetooth®” protocol and which saves development time. We will now detail the different parameters used in the send command: - BDADR (“Bluetooth®” address of the recipient of the shipment): This address is provided by the “Smart Module Manager”. Different addresses are stored in the non-volatile memory of the “Smart Module”, they come either from a configuration phase, or from a request phase (“inquiry”). The origin of “Bluetooth®” addresses is not managed by the application abstraction stack, but at an even higher level by the “Smart Module Manager”.
- Le profile : une des spécificités du « Smart Module » est de pouvoir gérer un fonctionnement intelligent multi-terminal et multi-profile. Cet aspect sera détaillé dans te cas particulier de l'utilisation du « Smart Module » à l'intérieur du crayon lecteur de code à barres.- Profile: one of the specificities of the “Smart Module” is to be able to manage intelligent multi-terminal and multi-profile operation. This aspect will be detailed in the particular case of the use of the “Smart Module” inside the barcode reader pen.
- La qualité de service : ce paramètre définit s'il y a besoin d'authentification, s'il y a besoin que tes données soient cryptées, quel type d'utilisation des modes de basse consommation (niveau d'arbitrage entre consommation et délai d'envoi des données).- Quality of service: this parameter defines if there is a need for authentication, if there is a need for your data to be encrypted, what type of use of low consumption modes (level of arbitration between consumption and delay sending data).
« SMART MODULE MANAGER »"SMART MODULE MANAGER"
Il s'agit d'un logiciel spécifique au produit dans lequel le Smart module de radiocommunication est intégré. Cette couche est véritablement la couche de contrôle du « Smart Module ». C'est une couche logicielle de haut niveau qui permet de s'abstraire à ta fois de la complexité du protocole radio mais aussi des difficultés d'interconnexion entre le « Smart Module » et le produit dans lequel on l'intègre.This is product-specific software in which the Smart radio module is integrated. This layer is truly the control layer of the “Smart Module”. It is a high level software layer which allows you to get away from the complexity of the radio protocol but also the interconnection difficulties between the “Smart Module” and the product in which it is integrated.
Une partie du « Smart Module Manager » gère l'envoi de données à un ou plusieurs terminaux jumelés avec le module dans la phase de configuration. Elle permet donc de gérer une connexion multi terminal et d'adapter le mode de connexion et le type de « profile » utilisé en fonction du terminal.Part of the “Smart Module Manager” manages the sending of data to one or more terminals paired with the module in the configuration phase. It therefore makes it possible to manage a multi-terminal connection and to adapt the connection mode and the type of "profile" used depending on the terminal.
Lors de la phase de configuration, plusieurs adresses Bluetooth de terminaux jumelés sont enregistrées dans une mémoire non-volatile du Smart Module. Cette couche est une surcouche propriétaire développée par Baracoda. Elle pourra être utilisée dans les Smart Modules intégrés dans touts types d'outils d'acquisition de données, tels que les lecteurs de code à barres; entre autre. Le « Smart Module Manager » utilise les services du logiciel HMI, « Power Manager » (gestion de l'énergie), « 10 Manager » (gestion des entrées sorties) ou tout autre type d'application spécifique (décodage de codes à barres, cryptage, algorithme de reconnaissance de forme, codage/décodage de la vidéo, parole, image). Cet applicatif spécifique peut également être une pile de protocole (TCP/IP par exempte). Ces applicatifs verticaux peuvent fonctionner ou bien sur le microcontrôleur radio ou bien sur un microcontrôleur externe spécifique si nécessaire. Le « Smart Module Manager » utilise un certain nombre de logiciels qui sont maintenant décrits :During the configuration phase, several Bluetooth addresses of paired terminals are saved in a non-volatile memory of the Smart Module. This layer is a proprietary overlay developed by Baracoda. It can be used in Smart Modules integrated into all types of data acquisition tools, such as barcode readers; among others. The “Smart Module Manager” uses the services of the HMI software, “Power Manager” (energy management), “10 Manager” (input-output management) or any other specific type of application (barcode decoding, encryption, shape recognition algorithm, encoding / decoding of video, speech, image). This specific application can also be a protocol stack (TCP / IP for example). These vertical applications can operate either on the radio microcontroller or on a specific external microcontroller if necessary. The “Smart Module Manager” uses a certain number of software which are now described:
- HMI (« Human Machine Interface » poμr interface homme machine) : Ce logiciel est spécifique à l'environnement dans lequel est utilisé le « Smart Module ». Il permet de gérer de manière logicielle la modification de l'interface homme machine induite par le rajout d'une radio et d'une batterie. L'utilisateur doit notamment être informé lors d'un envoi réussi ou non d'une donnée et/ou lorsque la batterie est insuffisamment chargée et/ou lorsqu'elle est en mode de charge. L'interface homme machine est gérée au niveau de la couche HMI du « Smart Module ». La mise en œuvre matérielle de ce logiciel peut être effectuée soit en utilisant des périphériques classiques du type DEL, « Buzzer », écran LCD ou autres, soit, éventuellement associé, avec des nouveaux périphériques intégrés sur le HWP (circuit de charge de batterie) à cet effet ou bien au niveau du (des) terminal(aux) avec !e(s)quel(s) le produit est configuré. Par exemple, le niveau de batterie du produit dans lequel le « Smart Module » est intégré peut apparaître au niveau du terminal et non au niveau du produit. - gestion de l'énergie (« Power Manager ») :- HMI ("Human Machine Interface" for human machine interface): This software is specific to the environment in which the "Smart Module" is used. It allows software modification of the man-machine interface induced by the addition of a radio and a battery. The user must in particular be informed during a successful or unsuccessful sending of data and / or when the battery is insufficiently charged and / or when it is in charging mode. The man-machine interface is managed at the HMI layer of the "Smart Module". The hardware implementation of this software can be carried out either by using conventional peripherals of the LED type, "Buzzer", LCD screen or others, or, possibly associated, with new peripherals integrated on the HWP (battery charge circuit) for this purpose or at the terminal (s) with which the product is configured. For example, the battery level of the product in which the “Smart Module” is integrated may appear at the terminal and not at the product level. - energy management ("Power Manager"):
Ce logiciel permet d'utiliser le Smart Module comme un contrôleur d'alimentation. Plus précisément, cet applicatif permet de contrôler plusieurs zones d'alimentation au sein d'un même produit. Il s'agit de commander de manière logicielle plusieurs régulateurs ou transistors qui permettent d'alimenter ou non certaines zones électriques du « Smart Module » lui-même et aussi du produit dans lequel il est mis en oeuvre. Ces régulateurs et transistors sont positionnés sur la pièce matérielle « Hardware Patch ». On peut noter que la gestion de charge de batterie n'est pas prise en compte au niveau du logiciel « Power Manager », mais au niveau du HWP (circuit de charge de batterie).This software allows you to use the Smart Module as a power controller. More specifically, this application makes it possible to control several feeding zones within the same product. This involves software control of several regulators or transistors which make it possible to supply or not power certain electrical zones of the “Smart Module” itself and also of the product in which it is used. These regulators and transistors are positioned on the "Hardware Patch" hardware part. Note that the battery charge management is not taken into account at the level of the “Power Manager” software, but at the level of the HWP (battery charge circuit).
- gestion des entrées sorties (« 10 Manager ») : II s'agit d'une couche qui gère toutes les entrées / sorties entre le produit et le « Smart module ». Elles sont par exemple du type liaison série (synchrone où asynchrone) ou parallèle, analogique ou numérique.- input / output management (“10 Manager”): This is a layer which manages all the inputs / outputs between the product and the “Smart module”. They are for example of the serial link type (synchronous or asynchronous) or parallel, analog or digital.
Sur les Figures 2 et 3, un crayon 1 est vu en transparence. A l'intérieur d'un boîtier 10 en matière plastique, un capteur optique 2 est disposé vers une extrémité en relation avec un canal optique 11 en matière dure à l'avant dudit crayon 1. Un module de communication de type Smart Module est mis en œuvre sous forme d'un circuit imprimé 8 comportant un moyen de mise en marche et d'arrêt 3, bouton-poussoir, un composant 4 radioélectrique selon le protocole « Bluetooth »®, un microcontrôleur 5 comportant de la mémoire morte et de la mémoire vive, la mémoire pouvant être du type ROM, EPROM, EEPROM, RAM, Flash, SRAM et une source d'alimentation électrique 6 sous forme de deux piles ou batteries rechargeables. Le capteur optique 2, le circuit imprimé 8, l'alimentation 6 sont, maintenus en place par des moyens de fixation du boîtier 10. Le crayon revendiqué est une application du module d'interface revendiqué. Le Smart Module utilisé, intègre un composant radio bidirectionnel et un circuit intégré bande de base, selon la norme « Bluetooth® », ainsi qu'un microcontrôleur permettant d'embarquer tout ou partie de la pile de protocole « Bluetooth® » ainsi que des applicatifs dédiés. Un microcontrôleur supplémentaire peut être utilisé pour effectuer la phase de lecture, correspondant à la mesure des longueurs successives d'un code à barres. Le décodage est effectué soit sur le microcontrôleur externe, soit sur le microcontrôleur embarqué sur la puce « Bluetooth® ».In Figures 2 and 3, a pencil 1 is seen in transparency. Inside a plastic housing 10, an optical sensor 2 is disposed towards one end in relation to an optical channel 11 of hard material at the front of said pencil 1. A communication module of the Smart Module type is placed implemented in the form of a printed circuit 8 comprising an on and off means 3, push button, a radioelectric component 4 according to the "Bluetooth" ® protocol, a microcontroller 5 comprising read-only memory and random access memory, the memory being able to be of the ROM, EPROM, EEPROM, RAM, Flash, SRAM type and a power supply source 6 in the form of two rechargeable cells or batteries. The optical pickup 2, the printed circuit 8, the power supply 6 are held in place by the housing 10. The fastening means claimed pencil is an application interface module claimed. The Smart Module used, integrates a two-way radio component and an integrated circuit baseband, according to the “Bluetooth®” standard, as well as a microcontroller allowing all or part of the “Bluetooth®” protocol stack to be loaded, as well as dedicated applications. An additional microcontroller can be used to carry out the reading phase, corresponding to the measurement of the successive lengths of a bar code. Decoding is carried out either on the external microcontroller or on the microcontroller on board the “Bluetooth®” chip.
Sur la Figure 4, le crayon précédent est vu selon un plan perpendiculaire au précédent permettant d'observer sur le circuit imprimé 8 une diode électroluminescente (DEL) 9 et une antenne 7 pour le module radioélectrique 4. L'antenne 7 est ici une antenne de type « filaire » imprimée sur le circuit imprimé, mais elle pourrait aussi être une antenne de type « patch » ou tout autre type d'élément rayonnant placée à l'intérieur du crayon. La DEL bicolore 9 permet d'informer l'utilisateur sur l'état de fonctionnement du crayon. Cette LED 9 peut être remplacée par tout autre type d'avertisseur (générateur de son, vibreur par exemple). Le capteur optique disposé à une extrémité du lecteur met en œuvre une optique à réflexion avec diode électroluminescente, par exemple de longueur d'onde 700 nm, et une photodiode. Une lentille asphérique bifurquée ou, dans une autre forme de réalisation non représentée, un système de fibres optiques, est disposé à l'avant de la diode électroluminescente et de la photodiode afin d'obtenir un point de focalisation unique à l'avant du crayon. Le signal de sortie du capteur optique est un courant généré dans la photodiode et qui est amplifié par un transistor ou un amplificateur opérationnel et qui est converti en une tension binaire pouvant être traitée par le microcontrôleur 5. Une surface noire absorbe la lumière émise par le capteur et, dans ce cas, le courant de sortie est faible, la sortie est à un niveau logique 1. Par contre, en dehors d'une surface noire, la lumière est réfléchie et la tension de sortie est à un niveau logique 0. Le lecteur comporte un boîtier 10 et le capteur optique est maintenu dans le boîtier à distance constante de l'extrémité du crayon, un canal optique 1 1 étant réalisé entre ladite extrémité et le capteur. De préférence, le canal optique est une guide de lumière (fibre optique par exemple) ou une lentille (pointe sphérique) réalisée en matière « dure ».In Figure 4, the previous pencil is seen in a plane perpendicular to the previous allowing to observe on the printed circuit 8 a light emitting diode (LED) 9 and an antenna 7 for the radio module 4. The antenna 7 is here an antenna of the “wire” type printed on the printed circuit, but it could also be a “patch” type antenna or any other type of radiating element placed inside the pencil. The two-color LED 9 makes it possible to inform the user about the operating state of the pencil. This LED 9 can be replaced by any other type of alarm (sound generator, vibrator for example). The optical sensor disposed at one end of the reader implements reflection optics with light-emitting diode, for example of wavelength 700 nm, and a photodiode. A bifurcated aspherical lens or, in another embodiment not shown, a fiber optic system, is arranged in front of the light-emitting diode and of the photodiode in order to obtain a single focal point in front of the pencil . The output signal from the optical sensor is a current generated in the photodiode and which is amplified by a transistor or an operational amplifier and which is converted into a binary voltage which can be processed by the microcontroller 5. A black surface absorbs the light emitted by the sensor and, in this case, the output current is low, the output is at a logic level 1. On the other hand, outside a black surface, the light is reflected and the output voltage is at a logic level 0. The reader comprises a housing 10 and the optical sensor is maintained in the housing at a constant distance from the end of the pencil, an optical channel 1 1 being formed between said end and the sensor. Preferably, the optical channel is a light guide (optical fiber for example) or a lens (spherical tip) made of “hard” material.
Le lecteur à type de crayon de l'invention est simple à réaliser et comporte de préférence un boîtier en matière plastique moulée et met en oeuvre un nombre réduit de pièces. Le circuit électronique du lecteur comporte un programme dans une mémoire morte destiné à décoder des codes à barres du type EAN, U PC, codes 128, code 39 et éventuellement des codes à barres spécifiques. De préférence, les codes à barres spécifiques comportent des moyens de correction d'erreur(s). De préférence, les codes à barres spécifiques sont codés de manière à comporter des redondances permettant, au décodage, de corriger des erreurs faites à la lecture dudit code à barres. Ces codes à barres propriétaires sont codés selon le principe des codes correcteur d'erreur classiquement utilisés dans le domaine des télécommunications.The pencil type reader of the invention is simple to produce and preferably comprises a molded plastic casing and uses a reduced number of parts. The electronic circuit of the reader includes a program in a read only memory intended to decode bar codes of the type EAN, U PC, codes 128, code 39 and possibly specific bar codes. Preferably, the specific bar codes include error correction means. Preferably, the specific bar codes are coded so as to include redundancies making it possible, on decoding, to correct errors made on reading said bar code. These proprietary bar codes are coded according to the principle of error correcting codes conventionally used in the telecommunications field.
Contrairement à l'état de la technique, le crayon revendiqué, peut lire des nouveaux types de codes à barres sur des écrans d'affichage, par exemple de téléviseur, d'ordinateurs ou assistants électroniques ainsi que des écrans de téléphones portables ou tout autre type d'écran utilisant les technologies plasma, TFT, à cristaux liquides (LCD) ou par balayage (VGA, XVGA... ). Les codes à barres utilisés dans ce cas sont très différents de ceux de l'état de l'art : il ne s'agit pas de codes ayant une « extension spatiale » mais plutôt une « extension temporelle ». Plus précisément, les codes à barres revendiqués dans l'invention correspondent à un enchaînement successif de surface sombre et claire sur l'écran d'affichage. Comme un code à barre traditionnel, l'information est codée dans les durées successives des barres et espaces du code. L'utilisateur voit ce code comme un clignotement rapide de l'écran. Dans le cas, du décodage de ce code par le crayon revendiqué, l'utilisateur maintient ledit crayon en contact sur l'écran ; aucun déplacement n'étant effectué sur l'écran. Cette caractéristique du crayon est une propriété du décodeur (module logiciel embarqué dans le crayon) et du circuit analogique effectuant la conversion du signal analogique sortant de la photodiode, en signal numérique. La difficulté principale de ce type décodage provient d'une part du faible contraste entre un écran « blanc » et un écran « noir ». D'autre part, dans les systèmes de type balayage, une fréquence de rafraîchissement est utilisée et complique beaucoup le décodage. Cette caractéristique étant propre au décodeur logiciel principalement, elle est indépendante de la technologie de lecture utilisée (CCD, lecture par contact, capteur CMOS).Contrary to the state of the art, the claimed pencil can read new types of bar codes on display screens, for example of television sets, computers or electronic assistants as well as mobile phone screens or any other type of screen using plasma, TFT, liquid crystal (LCD) or scanning (VGA, XVGA ...) technologies. The bar codes used in this case are very different from those of the state of the art: they are not codes having a "spatial extension" but rather a "temporal extension". More specifically, the bar codes claimed in the invention correspond to a successive sequence of dark and light surface on the display screen. Like a traditional bar code, the information is coded in the successive durations of the bars and spaces of the code. The user sees this code as a rapid flashing of the screen. In the case of decoding of this code by the claimed pencil, the user keeps said pencil in contact on the screen; no movement is made on the screen. This characteristic of the pencil is a property of the decoder (software module embedded in the pencil) and of the analog circuit carrying out the conversion of the analog signal leaving the photodiode, into digital signal. The main difficulty of this type of decoding stems on the one hand from the low contrast between a “white” screen and a “black” screen. On the other hand, in scanning type systems, a refresh frequency is used and greatly complicates decoding. This characteristic being specific to the software decoder mainly, it is independent of the reading technology used (CCD, contact reading, CMOS sensor).
Cet exemple de lecteur sous forme de crayon lecteur simplifié et autonome d'un coût réduit permet une mise en oeuvre du procédé dans la vie courante et plus particulièrement en relation avec des moyens informatiques du type hypertexte (hypermédia) sur micro-ordinateur, assistant personnel, téléphone portable, point d'accès ou autres. Toutefois tout type de lecteur comportant les fonctionnalités indiquées peut être mis en oeuvre avec le procédé de l'invention. L'élément commun aux différentes technologies de lecture mises en œuvre est le module d'interface ou Smart Module.This example of a reader in the form of a simplified and autonomous reader pen at a reduced cost allows implementation of the method in everyday life and more particularly in relation to computer means of the hypertext type (hypermedia) on a microcomputer, personal assistant. , mobile phone, access point or others. However, any type of reader comprising the indicated functionalities can be implemented with the method of the invention. The element common to the different reading technologies implemented is the interface module or Smart Module.
Sur la Figure 4 est représentée un schéma bloc du crayon. Celui-ci permet entre autre d'intégrer du logiciel embarqué et permet donc d'utiliser le composant Bluetooth, d'une part pour envoyer et recevoir des données par radio et d'autre part, pour effectuer le décodage du code à barres, la gestion de l'interface homme / machine ainsi que la gestion de la consommation et de la batterie. Cela permet de réduire la complexité (taille mémoire, puissance de calcul) du microcontrôleur externe et donc de réduire le coût matériel du produit. L'architecture (logicielle et matérielle) originale du Smart Module, revendiquée dans l'invention, permet donc de réduire très nettement le coût d'un crayon lecteur sans-fil et peut donc accélérer la mise en œuvre du procédé dans la vie courante et plus particulièrement en relation avec des moyens informatiques du type hypertexte (hypermédia)In Figure 4 is shown a block diagram of the pencil. This allows among other things to integrate embedded software and therefore allows the use of the Bluetooth component, on the one hand to send and receive data by radio and on the other hand, to perform the decoding of the barcode, the management of the man / machine interface as well as consumption and battery management. This reduces the complexity (memory size, computing power) of the external microcontroller and therefore reduce the material cost of the product. The original architecture (software and hardware) of the Smart Module, claimed in the invention, therefore makes it possible to very significantly reduce the cost of a wireless pencil reader and can therefore accelerate the implementation of the process in everyday life and more particularly in relation to computer resources of the hypertext type (hypermedia)
Dans un mode particulier de réalisation du lecteur, par exemple le crayon décrit, le bouton poussoir est disposé pour que l'utilisateur positionne nécessairement le lecteur dans une orientation donnée par rapport au code à barres. Le bouton poussoir est ainsi disposé pour que l'organe de préhension de l'utilisateur maintienne le lecteur dans une position donnée pour qu'il puisse appuyer sur le bouton et que la lecture puisse se faire. Cette orientation donnée est telle que le lecteur est sensiblement vertical, c'est à dire sensiblement perpendiculaire par rapport au support du code à barres, lors de la lecture. Dans le cas où l'utilisateur doit balayer manuellement le code à barres, le bouton poussoir est également disposé pour faciliter ledit balayage et, par exemple, pour que l'organe de préhension de l'utilisateur travaille selon les habitudes de balayage utilisées lors de l'écriture manuelle.In a particular embodiment of the reader, for example the pencil described, the push button is arranged so that the user necessarily positions the reader in a given orientation relative to the bar code. The push button is thus arranged so that the user gripping member keeps the reader in a given position so that he can press the button and that reading can be done. This given orientation is such that the reader is substantially vertical, that is to say substantially perpendicular to the support of the bar code, during reading. In the case where the user has to manually scan the bar code, the push button is also arranged to facilitate said scanning and, for example, so that the user's gripping member works according to the scanning habits used during manual writing.
Sur la Figure 5, on a représenté un crayon 1 en cours de lecture d'un code à barres 14 sur un objet 13. Dans l'environnement proche pouvant être atteint par les ondes radioélectriques 18 du module 4 sont disposés plusieurs équipements informatiques pouvant potentiellement communiquer par ondes électromagnétiques selon le protocole « Bluetooth »® avec ledit crayon 1. Ces équipements sont un micro-ordinateur 15, un téléphone portable 16, avec des fonctionnalités hypertexte, un assistant personnel 17 et un ou plusieurs point d'accès à un réseau local.In Figure 5, there is shown a pencil 1 in the process of reading a bar code 14 on an object 13. In the nearby environment which can be reached by the radio waves 18 of the module 4 are arranged several computer equipments which can potentially communicate by electromagnetic waves according to the “Bluetooth” ® protocol with said pencil 1. These devices are a microcomputer 15, a mobile telephone 16, with hypertext functionalities, a personal assistant 17 and one or more access points to a network local.
PHASE D'INITIALISATION ET DE CONFIGURATION Une première phase d'initialisation est prévue pour la configuration du crayon. Cette phase à pour but de préciser quels périphériques sont « jumelés » avec le lecteur. Ce procédé d'initialisation est géré au niveau du processeur embarqué dans le Smart Module, au niveau du logiciel Smart Module Manager. Il comprend 4 étapes :INITIALIZATION AND CONFIGURATION PHASE A first initialization phase is planned for the configuration of the pen. The purpose of this phase is to specify which peripherals are “paired” with the reader. This initialization process is managed at the level of the processor embedded in the Smart Module, at the level of the Smart Module Manager software. It includes 4 stages:
1 - Téléchargement du logiciel client sur un des terminaux utilisateur (micro-ordinateur par exemple). Ce logiciel est décrit de manière schématique sur la figure 9. 2- L'utilisateur doit alors sélectionner l'ensemble des terminaux avec lesquels il veut « jumeler » le crayon .1 - Download of the client software to one of the user terminals (microcomputer for example). This software is described schematically in Figure 9. 2- The user must then select all the terminals with which he wants to "pair" the pencil.
Deux moyens sont possibles pour remplir cette liste : ou bien, l'utilisateur effectue, à partir du terminal, unThere are two ways to fill this list: or, the user performs, from the terminal, a
« inquiry » et sélectionne les terminaux trouvés par l'inquiry. Cela nécessite que l'utilisateur configure tous les terminaux en mode d'écoute (« discoverable »). Ou bien l'utilisateur, remplit « à la main » la liste des adresses"Inquiry" and selects the terminals found by the inquiry. This requires that the user configures all the terminals in listening mode ("discoverable"). Or the user fills in the list of addresses "by hand"
Bluetooth (48-bits d'adresse MAC). Une fois que la liste des terminaux est constituée, l'utilisateur doit alors remplir un champ contenant le numéro d'identifiant du crayonBluetooth (48-bit MAC address). Once the list of terminals is assembled, the user must then fill in a field containing the pencil identifier number
(adresse 48-bits du crayon ou tout autre type d'identifiant du crayon). Le logiciel client invite alors l'utilisateur à mettre le crayon en mode d'écoute.(48-bit pen address or any other type of pen identifier). The client software then prompts the user to put the pen in listening mode.
3- Plusieurs moyens sont proposés à l'utilisateur pour mettre le crayon en mode d'écoute (« discoverable mode »). La première est la lecture d'un code à barres spécifique3- Several means are proposed to the user to put the pencil in listening mode ("discoverable mode"). The first is the reading of a specific barcode
(code propriétaire) et la seconde méthode correspond au positionnement du crayon en contact avec un papier(owner code) and the second method corresponds to positioning the pencil in contact with paper
« blanc » pendant une durée de l'ordre de 1 à 5s environ. Ces paramètres de mise en écoute du crayon peuvent évoluer et cette description n'est pas exhaustive."White" for a period of the order of approximately 1 to 5 s. These listening parameters of the pencil may change and this description is not exhaustive.
Parallèlement, le logiciel client effectue une tentative de connexion vers le crayon et lui envoie les informations spécifiques à la configuration : liste des adresses des périphériques ou terminaux jumelés, la description du « profile » à utiliser pour chaque terminal, ainsi qu'un ordre de priorité associé à chaque équipement. Le terminal NULL ou BATCH pourra faire partie de la liste des terminaux jumelés. Il s'agit de configurer le lecteur en mode asynchrone : au lieu de vouloir envoyer, par radio, un code à barres décodés vers un terminal distant, le crayon stocke ledit code à barres dans sa mémoire non volatile.At the same time, the client software attempts to connect to the pen and sends it configuration-specific information: list of addresses of paired devices or terminals, description of the “Profile” to be used for each terminal, as well as an order of priority associated with each device. The NULL or BATCH terminal can be part of the list of paired terminals. This involves configuring the reader in asynchronous mode: instead of sending, by radio, a decoded barcode to a remote terminal, the pen stores said barcode in its non-volatile memory.
4- Les données de configuration sont alors stockées dans la mémoire non volatile du crayon et pourront être modifiées à chaque instant en effectuant à nouveau une phase de configuration. En fin d'initialisation du lecteur, l'utilisateur est informé du succès de la phase d'initialisation par l'intermédiaire de l'interface homme machine du crayon et / ou du terminal utilisateur.4- The configuration data are then stored in the non-volatile memory of the pen and can be modified at any time by performing a configuration phase again. At the end of initialization of the reader, the user is informed of the success of the initialization phase via the man-machine interface of the pencil and / or of the user terminal.
Une fois cette phase d'initialisation effectuée, le crayon , peut être utilisé comme suit :Once this initialization phase has been carried out, the pencil can be used as follows:
Sur la Figure 6, seul le téléphone 17 est fonctionnel. La liaison s'établie alors entre l'équipement et le crayon, les données lues par le crayon son lues sous forme d'ensembles de données numériques ou alphanumériques ou binaires sont transmises par ondes électromagnétiques 20 vers l'équipement 16 comme représenté Figure 3c. La transmission des données est effectuée en temps réel, les données étant transmises au fur et à mesure de leur lecture et décodage ou en temps quasi- réel, l'établissement de la communication avec l'équipement ou les équipements de l'environnement s'effectuant avant la transmission, les chaînes de données étant temporairement stockées dans le crayon 1 pendant l'établissement de ladite liaison. Entre la lecture de 2 codes à barres consécutifs, la connexion est maintenue pour maintenir une consommation réduite.In Figure 6, only the telephone 17 is functional. The link is then established between the equipment and the pencil, the data read by the pencil is read in the form of digital or alphanumeric or binary data sets are transmitted by electromagnetic waves 20 to the equipment 16 as shown in FIG. 3c. The data is transmitted in real time, the data being transmitted as they are read and decoded or in near real time, establishing communication with the equipment or the equipment in the environment performing before transmission, the data strings being temporarily stored in the pencil 1 during the establishment of said link. Between the reading of 2 consecutive bar codes, the connection is maintained to maintain reduced consumption.
GESTION DES MODES BASSES CONSOMMATION La consommation électrique est un élément fondamental dans le fonctionnement du crayon. Le protocole « Bluetooth® » a grand avantage intrinsèque en terme de consommation par rapport à d'autres standards radio comme 802.1 1 b. Néanmoins, le protocole « Bluetooth® » nécessite d'être utilisé dans toute sa complexité et notamment en terme de gestion de modes de basse consommation. La pile d'abstraction « Bluetooth® » intègre cette gestion efficace des modes de connexion « Bluetooth® ». A la première lecture de code à barres, la connexion est créée. Lorsque le code à barres est envoyé, la connexion radio passe en mode « sniff » (recherche) avec un intervalle de « Sniff ». court. Cela permet de garder un temps de latence limité. Après une certaine période de temps (T1 ), la période de « sniff » est augmentée afin de diminuer encore d'avantage la consommation. L'inconvénient dans ce cas, , est une augmentation du délai d'envoi d'un code à barres. Ce n'est pas néanmoins un problème car dans un tel cas, la durée entre 2 lectures successives est longue et le délai d'envoi n'est pas fondamental. Au bout d'un certain temps (T2), le lecteur passe en mode parqué « parked mode » après avoir effectué un échange de rôle maître / esclave. Au bout d'un temps T3, la connexion radio est coupée et l'alimentation du Smart Module est éteinte. Les durées T1 , T2, T3 sont des paramètres variables qui sont adaptés au mode d'utilisation de l'utilisateur. Une statistique des durées entre lectures successives. Pour un utilisateurMANAGEMENT OF LOW CONSUMPTION MODES Electricity consumption is a fundamental element in the functioning of the pencil. The “Bluetooth®” protocol has a great intrinsic advantage in terms of consumption compared to other radio standards such as 802.1 1 b. However, the “Bluetooth®” protocol needs to be used in all its complexity, particularly in terms of managing low-consumption modes. The “Bluetooth®” abstraction stack integrates this efficient management of the “Bluetooth®” connection modes. The first time the barcode is read, the connection is created. When the barcode is sent, the radio connection goes into “sniff” mode (search) with an interval of “Sniff” . short. This allows to keep a limited latency time. After a certain period of time (T1), the "sniff" period is increased in order to further decrease consumption. The downside in this case is an increase in the time it takes to send a barcode. This is not a problem, however, because in such a case, the time between 2 successive readings is long and the delivery time is not essential. After a certain time (T2), the reader switches to parked mode after having performed a master / slave role exchange. After a time T3, the radio connection is cut and the power supply to the Smart Module is switched off. The durations T1, T2, T3 are variable parameters which are adapted to the mode of use of the user. A statistic of the durations between successive readings. For a user
Les durées T1 , T2, T3 sont des paramètres variables qui sont adaptés au mode d'utilisation de l'utilisateur. Une statistique des durées entre lectures successives. Pour un utilisateur lisant des codes à barres à un rythme moyen élevé, les valeurs de T1 , T2 et T3 seront choisies plus courtes.The durations T1, T2, T3 are variable parameters which are adapted to the mode of use of the user. A statistic of the durations between successive readings. For a user reading bar codes at a high average rate, the values of T1, T2 and T3 will be chosen shorter.
GESTION DE LA CONNEXION MULTI TERMINAUX Sur la figure 5, est représenté un crayon dans son environnement. Le crayon peut être configuré avec différents équipements très variés. C'est un des éléments importants de la norme « Bluetooth® » : l'interopérabilité et la connectivité multi terminal. Néanmoins, même si ces services sont proposés par la norme « Bluetooth® », encore faut il gérer cette connectivité de manière intelligente compte tenu du fait que l'interface homme machine au niveau du crayon est très réduite et qu'elle ne permet donc pas choisir vers équipements le crayon doit se connecter. Cette gestion intelligente est une spécificité du crayon et est intégrée dans la couche applicative du Smart Module.MULTI-TERMINAL CONNECTION MANAGEMENT In FIG. 5, a pencil is represented in its environment. The pencil can be configured with different and very varied equipment. This is one of the important elements of the “Bluetooth®” standard: interoperability and multi-terminal connectivity. However, even if these services are offered by the "Bluetooth®" standard, it is still necessary to manage this connectivity intelligently, given that the man-machine interface at the pencil level is very small and therefore does not allow choose to equipment the pencil should connect. This intelligent management is a specific feature of the pen and is integrated into the application layer of the Smart Module.
Lors de la phase de configuration, les dispositifs avec lesquels le crayon peut se connecter sont enregistrés dans la mémoire non volatile du crayon.During the configuration phase, the devices with which the pen can be connected are saved in the pen's non-volatile memory.
Si le crayon a été configuré en mode asynchrone (en n'utilisant que le terminal NULL dans, la phase de configuration), chaque code à barres décodé sera automatiquement stocké dans la mémoire non volatile du crayon (Figure 7a). Pour pouvoir accéder ultérieurement aux données enregistrées dans le crayon, l'utilisateur doit procéder à une phase ά'upload ou chargement des données. Cette phase s'exécute en mettant le crayon en mode d'écoute (par lecture d'un code propriétaire par exemple) (Figure 7b) tout en activant la fonction de chargement sur le logiciel client (microordinateur par exemple). Tous les codes à barres en mémoire sont alors transférés par ondes radio vers le terminal utilisateur (Figure 7c).If the pen was configured in asynchronous mode (using only the NULL terminal in, the configuration phase), each decoded barcode will be automatically stored in the pen's non-volatile memory (Figure 7a). In order to be able to access the data recorded in the pencil at a later date, the user must proceed to the upload or download phase. This phase is executed by putting the pencil in listening mode (by reading a proprietary code for example) (Figure 7b) while activating the loading function on the client software (microcomputer for example). All the bar codes in memory are then transferred by radio waves to the user terminal (Figure 7c).
Dans le cas d'une configuration en mode temps réel ( Figure 6), c'est-à-dire que le crayon a été configuré avec au moins un équipement utilisateur non NULL (ou BATCH), le crayon essaye de se connecter aux différents équipements en mémoire par ordre de priorité ou en utilisant le dernier équipement jumelé. Cet établissement de connexion ne se fait qu'en début d'une phase de lecture. Une phase de lecture étant caractérisée par le fait qu'entre 2 lectures successives, la durée est inférieure à T3 (durée d'inactivité avant l'extinction totale de l'alimentation). Pendant toute la phase de lecture, la connexion est maintenue dans des modes de basses consommation comme décrits dans la partie « gestion des modes basse consommation ». Si aucun des équipements jumelés ne répond à l'établissement de connexion de la part du crayon, celui se configure automatiquement (après une ou plusieurs tentatives infructueuses) en mode asynchrone pendant la même phase de lecture.In the case of a configuration in real time mode (Figure 6), that is to say that the pen has been configured with at least one non-NULL user equipment (or BATCH), the pen tries to connect to the different devices in memory in order of priority or using the last paired device. This connection establishment is only done at the start of a reading phase. A reading phase being characterized by the fact that between 2 successive readings, the duration is less than T3 (duration of inactivity before the total extinction of the power supply). During the entire reading phase, the connection is maintained in low consumption modes as described in the “management of low consumption modes” section. If none of the paired equipment responds to the establishment of a connection on the part of the pen, that is automatically configured (after one or more unsuccessful attempts) in asynchronous mode during the same reading phase.
L'hétérogénéité des terminaux jumelés avec un crayon est très importante. Les modes d'établissement de connexion, spécifiés dans les « profiles » de la norme « Bluetooth® » sont très différents d'un type de terminal à un autre. Le logiciel embarqué dans le Smart Module du crayon est capable de gérer plusieurs « profiles ». Plus précisément, la couche d'abstraction applicative choisit automatiquement le mode d'établissement de connexion pertinent en fonction de l'équipement avec lequel le crayon veut se connecter. Par exemple, dans le cas d'un point d'accès, le « profile » qui convient est le « Lan Access Point Profile », pour un ordinateur ou assistant numérique, il s'agit du « Sériai Port Profile » ou « HID profile » et pour un téléphone il s'agira soit du « DialUp Networking Profile », en envoyant des commandes AT vers le téléphone. Dans ce cas, le logiciel client est réduit à zéro sur le terminal : le navigateur hypermédia du téléphone étant commandé à distance par le crayon au moyen de commandes AT. D'autres solutions peuvent être implémentés, notamment, il est possible de télécharger un logiciel client sur la carte SIM du mobile ou dans la mémoire du processeur du téléphone.The heterogeneity of the terminals paired with a pencil is very important. The connection establishment modes, specified in the “profiles” of the “Bluetooth®” standard, are very different from one type of terminal to another. The software embedded in the Smart Module of the pen is capable of managing several "profiles". More precisely, the application abstraction layer automatically chooses the relevant connection establishment mode according to the equipment with which the pen wants to connect. For example, in the case of an access point, the appropriate “profile” is the “Lan Access Point Profile”, for a computer or digital assistant, it is the “Sériai Port Profile” or “HID profile "And for a phone it will either be the" DialUp Networking Profile ", by sending AT commands to the phone. In this case, the client software is reduced to zero on the terminal: the phone's hypermedia browser is controlled remotely by the pencil using AT commands. Other solutions can be implemented, in particular, it is possible to download client software on the SIM card of the mobile or in the memory of the phone's processor.
GESTION DE LA BATTERIEBATTERY MANAGEMENT
La batterie du crayon est rechargeable par l'intermédiaire d'un circuit électronique, intégré dans le Smart Module. Plusieurs régulateurs de tension, commandés en tension, sont utilisés sur le Smart Module pour commander de manière logicielle, l'alimentation de différentes zones indépendantes dans le crayon. Par exemple, lorsque l'utilisateur relâche le bouton d'action, la zone correspondant à la tête de lecture n'est plus alimentée. En revanche, l'alimentation du module radio reste tant que le logiciel embarqué lui demande. Cela permet une gestion plus fine de la consommation du crayon en séparant bien par fonctionnalités les différents circuits électronique constituant le crayon.The pen battery is rechargeable via an electronic circuit, integrated in the Smart Module. Several voltage regulators, voltage-controlled, are used on the Smart Module to control the supply of different independent zones in the pen in software. For example, when the user releases the action button, the zone corresponding to the read head is no longer supplied. On the other hand, the power supply of the radio module remains as long as the on-board software requests it. This allows a finer management of the pencil consumption by separating by functionality the different electronic circuits constituting the pencil.
GESTION DE L'INTERFACE HOMME / MACHINEMAN / MACHINE INTERFACE MANAGEMENT
Cette interface est gérée de manière logicielle dans le Smart Module du crayon. Il s'agit sur le crayon de diodes électroluminescentes ou d'un générateur de son. Cette interface permet d'avertir l'utilisateur d'une bonne lecture ou d'une mauvaise lecture, d'un envoi, radio réussit ou non. Elle permet aussi d'informer l'utilisateur lorsque le niveau de batterie est trop bas. Une partie de cette interface homme machine pourra être délocalisée sur le terminal lorsque celui est pourvu d'une interface plus riche (micro-ordinateur ou téléphone portable par exemple)This interface is managed by software in the Smart Module of the pen. These are light-emitting diodes or a sound generator on the pencil. This interface allows to warn the user of a good reading or a bad reading, of a sending, radio successful or not. It also informs the user when the battery level is too low. Part of this man-machine interface can be relocated to the terminal when that is provided with a richer interface (microcomputer or mobile phone for example)
Dans son application, l'invention est architecturée autour de quatre composants: • le lecteur de code à barres,In its application, the invention is structured around four components: • the barcode reader,
• l'équipement client,• customer equipment,
• le serveur de routage, le serveur de documents, éventuellement atteint par le biais d'un serveur relais (proxy). Quiconque veut accéder aux informations et services associés à une ressource utilise le lecteur de code à barres pour balayer le code à barres référençant cette ressource. Le lecteur décode alors le code à barres pour produire un identifiant de ressource. Celui-ci est envoyé avec le propre identifiant du lecteur vers l'équipement client, à travers une connexion locale.• the routing server, the document server, possibly reached via a relay server (proxy). Anyone who wants to access information and services associated with a resource uses the barcode reader to scan the barcode referencing that resource. The reader then decodes the barcode to produce a resource identifier. This is sent with your own identifier from the reader to the client equipment, through a local connection.
L'équipement client traite (es identifiants reçus pour déterminer l'adresse d'un serveur de documents approprié. Ce serveur tient à disposition les documents hypermédia présentant les informations et services relatifs à la ressource désignée avec le lecteur. L'équipement . client peut, pour faciliter sa recherche d'adresse, obtenir des informations supplémentaires de la part du serveur de routage. Les identifiants en provenance du lecteur sont ensuite relayés à travers une connexion distante vers le serveur de documents, dont l'adresse vient d'être déterminée par l'équipement client. Des informations supplémentaires dont l'utilisateur a autorisé la diffusion peuvent à cette étape être transmises par la même voie.The client equipment processes (the identifiers received to determine the address of an appropriate document server. This server makes available hypermedia documents presenting the information and services relating to the designated resource with the reader. The equipment. Client can , to facilitate its address search, obtain additional information from the routing server The identifiers from the reader are then relayed through a remote connection to the document server, whose address has just been determined by client equipment Additional information which the user has authorized may be transmitted at this stage by the same channel.
Eventuellement, la connexion distante vers le serveur de documents passe par un. serveur relais ou proxy, lequel est susceptible de mémoriser la requête et/ou de la traiter à des fins statistiques ou autres, avant de la transmettre intégralement au serveur de documents.Optionally, the remote connection to the document server goes through one . relay or proxy server, which may store the request and / or process it for statistical or other purposes, before transmitting it in full to the document server.
Enfin, le serveur de documents traite les données qui lui ont été transmises pour renvoyer à l'équipement client le document hypermédia qui va permettre à l'utilisateur d'accéder aux informations et services qu'il a demandés. L'ensemble de ces étapes tire parti des dernières innovations technologiques dans le domaine des télécommunications pour proposer un service en temps réel ou quasi-réel : seules quelques secondes séparent le balayage du code à barres de la présentation du document hypermédia associé.Finally, the document server processes the data sent to it to send the hypermedia document back to the client equipment, which will allow the user to access the information and services he has requested. All of these steps take advantage of the latest technological innovations in the telecommunications field to offer a service in real or near real time: only a few seconds separate the scanning of the barcode from the presentation of the associated hypermedia document.
Le lecteur de code à barres est un équipement matériel capable de décoder un code à barres en signaux électriques puis en données numériques et/ou alphanumériques. Ces données constituent un identifiant de la ressource référencée par le code à barres. Cet identifiant de ressource et un autre identifiant propre au lecteur sont tous deux émis vers l'équipement client à travers une connexion locale.The barcode reader is a piece of hardware capable of decoding a barcode into electrical signals and then into digital and / or alphanumeric data. This data constitutes an identifier of the resource referenced by the bar code. This resource identifier and another both reader-specific identifiers are sent to the client equipment through a local connection.
Le lecteur est destiné au grand public et se doit par conséquent d'être suffisamment bon marché. Il peut en revanche être de qualité modeste en comparaison des lecteurs industriels puisque son utilisation est bien moins intensive.The reader is intended for the general public and must therefore be sufficiently inexpensive. However, it can be of modest quality compared to industrial readers since its use is much less intensive.
Il se décompose en quatre parties principales :It is broken down into four main parts:
• un émetteur / récepteur optique,• an optical transmitter / receiver,
• une alimentation, • un émetteur local,• a power supply, • a local transmitter,
• un boîtier.• a housing.
La connexion locale est une liaison de communication de courte portée entre deux équipements. La distance qui sépare les équipements ne dépasse pas quelques dizaines de mètres. Comprise comme dispositif électronique, la connexion locale désigne un émetteur/récepteur de courte portée commandé par l'intermédiaire d'un protocole de communication.The local connection is a short-range communication link between two devices. The distance between the equipment does not exceed a few tens of meters. Included as an electronic device, the local connection designates a short-range transmitter / receiver controlled via a communication protocol.
L'équipement client est l'élément central du système. L'équipement client est un équipement utilisateur mettant en oeuvre le logiciel client. L'équipement utilisateur est un équipement matériel que possède l'utilisateur. il peut être de caractéristiques variées, mobile ou non, à condition de disposer des éléments suivants : • une connexion locale,Customer equipment is the central element of the system. The client equipment is a user equipment implementing the client software. User equipment is hardware equipment owned by the user. it can be of various characteristics, mobile or not, provided that the following elements are available: • a local connection,
• une connexion distante,• a remote connection,
• un système d'exploitation avec une interface de programmation documentée,• an operating system with a documented programming interface,
• un navigateur hypermédia. Concrètement, un équipement mobile peut être un ordinateur ou un assistant numérique connecté à l'Internet, un téléphone mobile WAP offrant des possibilités de programmation, un terminal GPRS, UMTS ou tout autre équipement satisfaisant aux conditions précédemment énoncées. La connexion distante est une liaison de communication de portée mondiale entre deux équipements. Elle met presque toujours en oeuvre des réseaux globaux, dont l'Internet est le meilleur représentant. Dans ce contexte, il peut être envisagé de faire transiter toutes les requêtes par un serveur relais (proxy) déterminé, afin que celui-ci tienne à jour des informations globales concernant l'ensemble des requêtes. Dans tous les cas, les requêtes sont au moins transmises intégralement. Comprise comme dispositif électronique, la connexion distante désigne un émetteur/récepteur réseau, éventuellement commandé par l'intermédiaire de protocoles de communication.• a hypermedia browser. Concretely, a mobile device can be a computer or a digital assistant connected to the Internet, a WAP mobile phone offering programming possibilities, a GPRS, UMTS terminal or any other device satisfying the conditions previously stated. The remote connection is a worldwide communication link between two devices. It almost always implements global networks, of which the Internet is the best representative. In this context, it can be envisaged to pass all the requests through a determined relay server (proxy), so that the latter keeps up to date with global information concerning all the requests. In all cases, the requests are transmitted at least in full. Included as an electronic device, the remote connection designates a network transmitter / receiver, possibly controlled via communication protocols.
Le logiciel client est un logiciel s'exécutant sur tout type d'équipement utilisateur pour remplir les fonctions suivantes : • recevoir les identifiants émis par le lecteur de code à barres à travers la connexion locale, • présenter à l'utilisateur le document hypermédia lui donnant accès aux informations et services relatifs à la ressource désignée par le lecteur. Ce logiciel est dit client car il se comporte comme un client pour le serveur de routage d'une part et pour le serveur de documents dont il doit déterminer l'adresse d'autre part.The client software is software running on all types of user equipment to fulfill the following functions: • receive the identifiers sent by the barcode reader through the local connection, • present the hypermedia document to the user giving access to information and services relating to the resource designated by the reader. This software is called client because it behaves like a client for the routing server on the one hand and for the document server whose address it must determine the other hand.
Il est réalisé comme un programme applicatif, par exemple à l'aide d'un langage de programmation orientée objet tel que C++ ou Java. Il commande l'équipement utilisateur par l'intermédiaire de l'interface de programmation spécifique à cet équipement.It is produced as an application program, for example using an object-oriented programming language such as C ++ or Java. It controls the user equipment via the programming interface specific to this equipment.
L'installation de ce logiciel sur un équipement utilisateur peut nécessiter le téléchargement du programme, l'insertion d'une carte électronique sur laquelle il est implanté (carte à puce pour téléphone mobile, carte d'extension pour ordinateur portable ou assistant numérique) ou toute autre méthode électronique ou informatique.Installing this software on user equipment may require downloading the program, inserting an electronic card on which it is installed (smart card for mobile phone, expansion card for laptop or PDA) or any other electronic or computer method.
Le logiciel client peut se décomposer en trois modules : • un récepteur local, • un routeur,The client software can be broken down into three modules: • a local receiver, • a router,
• un gestionnaire de navigateur.• a browser manager.
Le récepteur local est un programme dont le rôle est de rester à l'écoute de la connexion locale. Il réagit à tout message en provenance du lecteur de code à barres en activant le routeur et en lui transmettant les identifiants reçus du lecteur.The local receiver is a program whose role is to listen to the local connection. It reacts to any message from the barcode reader by activating the router and transmitting the identifiers received from the reader.
Ce programme s'exécute tout le temps que le système est activé. En revanche, lorsque aucun message du lecteur n'est en cours de traitement, il est l'unique partie du logiciel client en fonctionnement, ce. qui réduit la consommation des ressources de l'équipement utilisateur.This program runs all the time the system is activated. On the other hand, when no message from the reader is being processed, it is the only part of the client software in operation, this. which reduces the consumption of user equipment resources.
Le routeur est un programme recevant du récepteur local l'identifiant de la ressource et l'identifiant du lecteur. Son rôle est d'appliquer à ces identifiants l'algorithme de résolution d'adresse pour tenter de déterminer l'adresse WEB d'un serveur de documents convenant à la ressource référencée.The router is a program receiving the identifier of the resource and the identifier of the reader from the local receiver. Its role is to apply the address resolution algorithm to these identifiers in an attempt to determine the WEB address of a document server suitable for the referenced resource.
Si une telle adresse est obtenue, le routeur y adjoint selon une syntaxe définie les deux identifiants précédents, ainsi que certaines informations que l'utilisateur a pu choisir de mettre à disposition sur son équipement (par exemple certaines préférences ou restrictions). L'adresse ainsi complétée localise sans ambiguïté un document hypermédia présentant des informations et services relatifs à la ressource identifiée par le biais du lecteur. Le routeur active alors le gestionnaire de navigateur et lui transmet l'adresse du document.If such an address is obtained, the router appends to it according to a syntax defined the two previous identifiers, as well as certain information that the user could choose to make available on his equipment (for example certain preferences or restrictions). The address thus completed unambiguously locates a hypermedia document presenting information and services relating to the resource identified through the reader. The router then activates the browser manager and transmits the address of the document to it.
L'algorithme de résolution d'adresse est appliqué aux identifiants de la ressource et du lecteur. Cet algorithme traite d'abord l'identifiant du lecteur. Si l'identifiant est connu, c'est à dire s'il figure dans une table de routage (correspondance) stockée sur l'équipement utilisateur et gérée par le routeur, alors le programme extrait de cette même table les informations de routage concernant le lecteur. La table de routage peut être réalisée avec diverses structures de données ; elle constitue un système très simplifié de gestion de base de données.The address resolution algorithm is applied to the identifiers of the resource and of the reader. This algorithm first processes the identifier of the reader. If the identifier is known, that is to say if it appears in a routing table (correspondence) stored on the user equipment and managed by the router, then the program extracts from this same table the routing information concerning the reader. The routing table can be produced with various data structures; it constitutes a very simplified database management system.
Les informations de routage peuvent contenir : • un historique des requêtes précédentes avec leur résultat, dont on pourra éventuellement extraire l'adresse d'un serveur de documents ;Routing information can contain: • a history of previous requests with their results, from which we can possibly extract the address of a document server;
• une adresse unique de serveur de documents, par exemple dans le cas où le lecteur est exclusivement affilié à ce serveur ou une adresse de serveur relais, par lequel toutes les requêtes à un serveur de documents doivent transiter ;• a unique document server address, for example in the case where the reader is exclusively affiliated with this server or a relay server address, through which all requests to a document server must pass;
• toute autre information propre au lecteur et utile à la résolution d'adresse.• any other information specific to the reader and useful for address resolution.
Dans un deuxième temps, l'algorithme de résolution d'adresse traite l'identifiant de la ressource et les informations de routage extraites lors de la première étape. Dans certains cas, ces données sont, suffisantes: pour produire l'adresse du serveur de documents associé à la ressource référencée. Par exemple, il peut être convenu qu'un identifiant présentant certaines similitudes avec un autre identifiant traité lors d'une requête précédente doit être associé à l'adresse qui fut le résultat de cette requête.In a second step, the address resolution algorithm processes the resource identifier and the routing information extracted during the first step. In some cases, this data is sufficient: to produce the address of the document server associated with the referenced resource. For example, it may be agreed that an identifier having certain similarities with another identifier processed during a previous request must be associated with the address which was the result of this request.
S'il n'est pas possible de conclure avec ces seules données, le routeur transmet au serveur de routage l'identifiant du lecteur et celui de la ressource, à travers la connexion distante. Ce serveur retourne au routeur l'adresse du serveur de documents qu'il attend, ainsi éventuellement que l'adresse d'un serveur relais (proxy) associé, et ces adresses sont stockées dans la table de routage. L'algorithme de résolution d'adresse a donc permis de déterminer l'adresse du serveur de documents avec au plus un accès distant au serveur de routage. Notons cependant qu'il peut être nécessaire de rafraîchir périodiquement les informations de routage, par le biais de requêtes supplémentaires transmises au serveur de routage lors de son éventuel accès distant.If it is not possible to conclude with these data alone, the router transmits to the routing server the identifier of the reader and that of the resource, through the remote connection. This server returns to the router the address of the document server it expects, as well as the address of an associated relay server (proxy), and these addresses are stored in the routing table. The address resolution algorithm therefore made it possible to determine the address of the document server with at most remote access to the routing server. Note however that it may be necessary to periodically refresh the routing information, through requests additional data transmitted to the routing server when it is accessed remotely.
Dans le cas où l'identifiant du lecteur est inconnu du routeur, le comportement de ce dernier dépend du mode de fonctionnement dans lequel l'utilisateur a placé son équipement client. En mode courant, la procédure de résolution est abandonnée et le message en provenance du lecteur est donc ignoré. Cette situation normale peut par exemple survenir si un message émis par radio par le lecteur d'un utilisateur est reçu par l'équipement client d'un autre utilisateur, qui n'a que faire des intentions de son voisin.In the case where the identifier of the reader is unknown to the router, the behavior of the latter depends on the operating mode in which the user has placed his client equipment. In current mode, the resolution procedure is abandoned and the message from the reader is therefore ignored. This normal situation can for example arise if a message sent by radio by the reader of a user is received by the client equipment of another user, who has nothing to do with the intentions of his neighbor.
Si, par contre, l'utilisateur a placé son équipement client en mode d'accueil d'un nouveau lecteur de code à barres, alors le nouvel identifiant de lecteur est transmis vers le serveur de routage à travers la connexion distante, afin que ce serveur renvoie au routeur les informations de routage propres au nouveau lecteur. Le mode accueil permet donc l'enregistrement d'un nouveau lecteur. Ces informations sont placées dans une nouvelle entrée de la table de routage, et le traitement de la requête par le logiciel client est terminé.If, on the other hand, the user has placed his client equipment in the welcome mode of a new barcode reader, then the new reader identifier is transmitted to the routing server through the remote connection, so that this server returns routing information specific to the new drive to the router. The reception mode therefore allows the registration of a new reader. This information is placed in a new entry in the routing table, and processing of the request by the client software is complete.
Le gestionnaire de navigateur est un programme dont le rôle est de commander au navigateur hypermédia présent sur l'équipement utilisateur de présenter le document hypermédia localisé par l'adresse reçue du routeur. L'utilisateur est alors libre de naviguer à sa guise à partir du document qui lui est présenté.The browser manager is a program whose role is to command the hypermedia browser present on the user equipment to present the hypermedia document located by the address received from the router. The user is then free to navigate at will from the document presented to him.
Le gestionnaire de navigateur ne fait que commander l'affichage d'un document au navigateur habituel de l'utilisateur, qui reste parfaitement libre de le configurer à sa convenance.The browser manager only orders the display of a document to the user's usual browser, which remains perfectly free to configure it as it sees fit.
Pour illustrer le mécanisme mis en oeuvre, on peut prendre l'exemple d'un navigateur WEB à qui le gestionnaire de navigateur va commander la création d'une nouvelle fenêtre pour afficher un document HTML. L'adresse de ce document est fournie au navigateur sous la forme d'une URL conforme au protocole HTTP.To illustrate the mechanism implemented, we can take the example of a WEB browser to which the browser manager will order the creation of a new window to display an HTML document. The address of this document is provided to the browser in the form of a URL conforming to the HTTP protocol.
Un autre exemple consiste en la restitution sur un téléphone mobile connecté à l'Internet d'un document sonore, localisé par une adresse conforme au protocole WAP.Another example consists in the restitution on a mobile telephone connected to the Internet of an audio document, located by an address conforming to the WAP protocol.
Le serveur de routage est la source d'informations auxiliaire du système « Baracoda® » (dénomination retenue pour l'ensemble des composants, procédés et services liés à l'invention). Le serveur de routage est un logiciel s'exécutant sur un ou plusieurs ordinateurs équipés d'une connexion distante pour remplir les fonctions suivantes :The routing server is the auxiliary information source for the “Baracoda®” system (name used for all of the components, processes and services linked to the invention). The routing server is software running on one or more computers equipped with a remote connection to perform the following functions:
• gérer et tenir à jour les informations de routage propres à chaque lecteur de code à barres ; • gérer et tenir à jour les informations permettant d'associer l'adresse WEB d'un serveur relais à l'adresse WEB d'un serveur de documents;• manage and keep up to date the routing information specific to each barcode reader; • manage and keep up to date information enabling the WEB address of a relay server to be associated with the WEB address of a document server;
• gérer et tenir à jour les informations permettant d'associer l'adresse WEB d'un serveur de documents à un identifiant de ressource accompagné d'un identifiant de lecteur ;• manage and keep up to date information enabling the WEB address of a document server to be associated with a resource identifier accompanied by a reader identifier;
• gérer et tenir à jour le code des différents programmes composant le logiciel client ;• manage and maintain the code of the various programs making up the client software;
• rester à l'écoute de la connexion distante afin de réagir aux requêtes d'un équipement client en lui transmettant les informations qu'il réclame.• stay tuned to the remote connection in order to react to requests from a client device by transmitting the information it requires.
Il se comporte donc comme un serveur pour chaque équipement client, les clients pouvant être très nombreux. Il répond aux différentes requêtes du routeur, mais aussi aux demandes d'installation en provenance d'un équipement utilisateur non encore équipé du logiciel client.It therefore behaves like a server for each client device, the clients can be very numerous. It responds to various requests from the router, but also to installation requests from user equipment not yet equipped with client software.
Le logiciel serveur de routage peut être un logiciel unique s'exécutant sur un ordinateur unique, ou être distribué sur plusieurs ordinateurs. L'organisation en réseau de ces machines peut elle-même mettre en oeuvre diverses architectures : • une architecture hiérarchique, suivant laquelle les machines situées aux nœuds les plus bas détiennent une information locale et se réfèrent aux machines de rang plus élevé pour obtenir une information plus générale ; • une architecture de voisinage, chaque machine étant au même rang que ses voisines et travaillant en coopération avec ces dernières pour accéder à une information largement distribuée ;Routing server software can be single software running on a single computer, or distributed over multiple computers. The network organization of these machines can itself implement various architectures: • a hierarchical architecture, according to which the machines located at the lowest nodes hold local information and refer to machines of higher rank to obtain more general information; • a neighborhood architecture, each machine being on the same level as its neighbors and working in cooperation with the latter to access widely distributed information;
• toute autre architecture jugée efficace pour répartir la charge de traitement et susceptible d'améliorer le temps de réponse aux requêtes.• any other architecture deemed effective to distribute the processing load and likely to improve the response time to requests.
La communication entre le serveur de routage et un équipement client peut employer un protocole propriétaire spécifiquement conçu à cette fin ou bien un protocole public (HTTP ou WAP par exemple). Des protocoles différents peuvent être choisis selon la nature de l'équipement clientCommunication between the routing server and a client device can use a proprietary protocol specifically designed for this purpose or a public protocol (HTTP or WAP for example). Different protocols can be chosen depending on the nature of the client equipment
(ordinateur, assistant numérique, téléphone mobile, etc.).(computer, digital assistant, mobile phone, etc.).
Le serveur de documents est le dernier élément du système « Baracoda® ». Le serveur de documents est un logiciel s'exécutant sur un ou plusieurs ordinateurs équipés d'une connexion distante pour remplir les fonctions suivantes :The document server is the last element of the “Baracoda®” system. The document server is software running on one or more computers equipped with a remote connection to perform the following functions:
• gérer et tenir à jour un grand nombre de documents hypermédia présentant les informations et services relatifs à certaines ressources ;• manage and maintain a large number of hypermedia documents presenting information and services relating to certain resources;
• rester à l'écoute de la connexion distante afin de réagir aux requêtes d'un navigateur hypermédia en lui transmettant le document qu'il réclame.• stay tuned to the remote connection in order to react to requests from a hypermedia browser by sending it the document it requires.
Les tables de routage stockées sur l'équipement client ou sur le serveur de routage comprennent non seulement les adresses de serveurs de documents mais aussi les adresses de serveurs relais associés aux serveurs de documents.The routing tables stored on the client equipment or on the routing server include not only the addresses of document servers but also the addresses of relay servers associated with the document servers.
Le composant logiciel "routeur" du "logiciel client" est donc susceptible de fournir au composant "gestionnaire de navigateur" une adresse composée à partir de celle du serveur relais, afin que ce dernier filtre toutes les requêtes à un serveur de documents donné.The "router" software component of the "client software" is therefore capable of providing the "browser manager" component with an address composed from that of the server. relay, so that the latter filters all requests to a given document server.
Le serveur relais ne fait que retransmettre la requête au serveur de documents qui en est le destinataire final. Mais il peut au passage mémoriser qu'une requête a eu lieu et faire un traitement statistique de toutes les requêtes ainsi relayées. Ce service supplémentaire offert à certains serveurs de documents peut constituer une valeur ajoutée pour qui veut connaître la fréquence de consultation à partir de codes à barres, le volume total des requêtes, leur répartition horaire, etc.The relay server only retransmits the request to the document server which is the final recipient. But it can in passing memorize that a request has taken place and make a statistical processing of all the requests thus relayed. This additional service offered to certain document servers can be an added value for those who want to know the frequency of consultation from bar codes, the total volume of requests, their hourly distribution, etc.
Le serveur de documents est la propriété d'un tiers souhaitant mettre à disposition les documents relatifs à certaines ressources. Il est mis en oeuvre et administré à la discrétion de celui qui le possède. Par exemple il peut s'agir du serveur d'une entreprise industrielle publiant son catalogue de produits sur l'Internet. Cependant, il doit pour s'intégrer au système « Baracoda® » être capable d'interpréter l'adresse que lui transmet le gestionnaire de navigateur par l'intermédiaire du navigateur.The document server is the property of a third party wishing to make documents relating to certain resources available. It is implemented and administered at the discretion of the owner. For example it can be the server of an industrial company publishing its catalog of products on the Internet. However, in order to integrate into the “Baracoda®” system, it must be able to interpret the address transmitted to it by the browser manager via the browser.
Afin de garantir cette compatibilité au moindre coût, l'adresse considérée est dans la plupart des cas conforme à un protocole public. Il peut s'agir par exemple d'une URL HTTP ou WAP. Dans ce cas la mise à niveau d'un serveur WEB existant ne réclame qu'une adaptation mineure, par exemple la conception d'une seule page de redirection dynamique.In order to guarantee compatibility at the lowest cost, the address considered is in most cases compliant with a public protocol. It can be for example an HTTP or WAP URL. In this case, the upgrade of an existing WEB server requires only a minor adaptation, for example the design of a single dynamic redirection page.
L'application du module de radiocommunication n'est pas limitée au procédé de lecture des codes à barres et il est possible de lettre en œuvre le module dans d'autres applications.The application of the radiocommunication module is not limited to the method of reading bar codes and it is possible to implement the module in other applications.
Par exemple, le routeur « Bluetooth® »-GPRS est un appareil électronique constitué d'un « SmartModule » et d'un modem GSM, GPRS, EDGE ou UMTS. Ledit appareil effectue la conversion de protocole entre le protocole de communication « Bluetooth® » et le protocole GPRS, EDGE ou UMTS. Il permet par exemple à des produits « Bluetooth® » d'accéder à un réseau distant (réseau Internet par exemple). Les applications de cet appareil sont nombreuses dans le domaine de la domotique et le domaine de l'accès à Internet (ISP) pour le particulier ou la petite entreprise.For example, the “Bluetooth®” -GPRS router is an electronic device consisting of a “SmartModule” and a GSM, GPRS, EDGE or UMTS modem. The said device performs the protocol conversion between the “Bluetooth®” communication protocol and the GPRS, EDGE or UMTS. For example, it allows “Bluetooth®” products to access a remote network (Internet network for example). The applications of this device are numerous in the field of home automation and the field of Internet access (ISP) for the individual or small business.
L'appareil se compose d'un module de radiocommunication et d'une radio GSM/GPRS/EDGE/UMTS avec gestion de la couche physique du protocole GSM/GPRS/EDGE/UMTS et de la pile du protocole considéré ainsi que d'un logiciel spécifique gérant la qualité de service et le partage de la bande passante entre les différents utilisateurs. Jusqu'à 7 produits équipés de l'appareil peuvent utiliser les services du GPRS/UMTS simultanément, en passant par le même routeur « Bluetooth® »-GPRS. Plus de 7 équipements (jusqu'à 255) peuvent accéder à ces services par le même routeur, mais de manière, non simultanée. Ces équipements peuvent utiliser un protocole à jeton (développé sur le processeur du routeur) pour pouvoir régulièrement envoyer ou recevoir des données en utilisant la connexion GPRS/UMTS.The device consists of a radiocommunication module and a GSM / GPRS / EDGE / UMTS radio with management of the physical layer of the GSM / GPRS / EDGE / UMTS protocol and the stack of the protocol considered as well as a specific software managing quality of service and sharing of bandwidth between different users. Up to 7 products equipped with the device can use GPRS / UMTS services simultaneously, using the same “Bluetooth®” router -GPRS. More than 7 devices (up to 255) can access these services through the same router, but not simultaneously. These devices can use a token protocol (developed on the router processor) to be able to regularly send or receive data using the GPRS / UMTS connection.
Grâce à l'appareil qui intègre le matériel et le logiciel nécessaire, l'utilisateur n'a pas besoin de gérer la complexité du logiciel de routage provenant de la nécessité du partage de la bande passante dans le sens montant (du point d'accès « Bluetooth® »-GPRS vers la station de base GPRS).Thanks to the device which integrates the necessary hardware and software, the user does not need to manage the complexity of the routing software stemming from the need to share the bandwidth in the uplink direction (from the access point "Bluetooth®" -GPRS to GPRS base station).
Le routeur « Bluetooth® »-GPRS est également utilisé en tant que « Hub » dans le cadre de la construction d'un réseau local « Bluetooth® ». On peut également mettre en œuvre ce routeur en Domotique. Les réfrigérateurs, alarmes, radiateurs, éclairages, interrupteurs, thermomètres et autres capteurs (compteurs d'eau, de gaz, d'électricité), télévision, magnétoscopes peuvent être connecté à un réseau distant via un point d'accès « Bluetooth® »-GPRS qui est ce routeur « Bluetooth® »-GPRS. Dans une telle application du routeur il est par exemple possible de mettre en route le chauffage de sa maison de campagne grâce à son téléphone portable, à distance. Le routeur peut également être appliqué pour accès à Internet chez soi avec des PC ou PDA (assistant électronique portable) ou à l'intérieur d'une voiture. The “Bluetooth®” -GPRS router is also used as a “Hub” when building a “Bluetooth®” local network. We can also implement this router in Home Automation. Refrigerators, alarms, radiators, lights, switches, thermometers and other sensors (water, gas, electricity meters), television, video recorders can be connected to a remote network via a "Bluetooth®" access point - GPRS which is this "Bluetooth®" -GPRS router. In such an application of the router it is for example possible to start the heating of its country house thanks to its remote cell phone. The router can also be applied for Internet access at home with PCs or PDAs (portable electronic assistant) or inside a car.

Claims

REVENDICATIONS
1 . Module d'interface de radiocommunication bidirectionnelle selon un protocole prédéfini pour au moins une application utilisateur ayant des données et instructions à communiquer à un dispositif externe, le module comportant au moins un circuit électronique radio d'émission et de réception de signaux numériques et au moins un circuit électronique programmable avec un microcontrôleur radio pour gestion du circuit électronique radio, caractérisé en ce que le microcontrôleur radio comporte des moyens matériels coopérant avec des logiciels sous la forme d'une pile logicielle formée d'une première partie dite pile protocole surmontée d'une seconde partie dite pile d'abstraction applicative, la pile logicielle permettant l'adaptation selon le protocole entre, d'une part, les signaux numériques et, d'autre part, les données et instructions de l'application utilisateur, la pile d'abstraction applicative permettant au moins la traduction des données et instructions de l'application utilisateur dans un format propriétaire en des données et instructions selon le protocole pour traitement dans la pile protocole, le module étant un composant matériel unique stockant également l'application utilisateur sous forme d'un programme et assurant son exécution dans le microcontrôleur radio.1. Bidirectional radio communication interface module according to a predefined protocol for at least one user application having data and instructions to communicate to an external device, the module comprising at least one radio electronic circuit for transmitting and receiving digital signals and at least a programmable electronic circuit with a radio microcontroller for managing the radio electronic circuit, characterized in that the radio microcontroller comprises hardware means cooperating with software in the form of a software stack formed of a first part called protocol stack surmounted by a second part called the application abstraction stack, the software stack allowing the adaptation according to the protocol between, on the one hand, the digital signals and, on the other hand, the data and instructions of the user application, the stack d application abstraction allowing at least the translation of data and instructions of the app User lication in a proprietary format in data and instructions according to the protocol for processing in the protocol stack, the module being a single hardware component also storing the user application in the form of a program and ensuring its execution in the radio microcontroller.
2. Module selon la revendication 1 caractérisé en ce qu'il est constitué d'un circuit imprimé radio regroupant une antenne, le circuit électronique radio d'émission et de réception sous forme d'une radio et d'un circuit intégré bande de base et le circuit électronique programmable de gestion sous forme d'un microcontrôleur avec moyens de mémorisation.2. Module according to claim 1 characterized in that it consists of a radio printed circuit grouping an antenna, the radio electronic transmission and reception circuit in the form of a radio and an integrated baseband circuit and the programmable electronic management circuit in the form of a microcontroller with storage means.
3. Module selon la revendication 1 ou 2 caractérisé en ce que le fonctionnement logiciel du module est divisé en taches exécutées selon des priorités, les taches liées à la gestion du circuit radio ayant une priorité supérieure aux taches d'exécution de l'application utilisateur. 3. Module according to claim 1 or 2 characterized in that the software operation of the module is divided into tasks executed according to priorities, the tasks related to the management of the radio circuit having a priority higher than the tasks of execution of the user application .
4. Module selon l'une quelconque des revendications précédentes caractérisé en ce qu'il comporte en outre un second circuit imprimé interconnecté au circuit imprimé radio, avec au moins un périphérique au moins choisi parmi: - une entrée numérique avec éventuellement un comparateur pour détection de niveau ou de transition,4. Module according to any one of the preceding claims, characterized in that it further comprises a second printed circuit interconnected with the radio printed circuit, with at least one peripheral at least chosen from: - a digital input with possibly a comparator for detection level or transition,
- une entrée analogique avec convertisseur analogique- numérique avec éventuellement un amplificateur analogique à gain programmable ou non, - une sortie numérique,- an analog input with analog-digital converter with possibly an analog amplifier with programmable gain or not, - a digital output,
- une sortie analogique avec convertisseur numérique- analogique,- an analog output with digital-to-analog converter,
- un régulateur ou convertisseur de tension commandable,- a controllable voltage regulator or converter,
- un compteur/décompteur, - une horloge temps réel,- an up / down counter, - a real time clock,
- un circuit de charge pour batterie, - un circuit logique,- a battery charging circuit, - a logic circuit,
- une mémoire,- a memory,
- un circuit logique programmable spécialisé notamment choisi parmi un microprocesseur, un microcontrôleur, un processeur de signal numérique ou un circuit dédié, une partie au moins de l'application utilisateur sous forme d'un programme étant alors stockée dans ledit circuit logique programmable spécialisé et ledit circuit logique programmable spécialisé assurant alors son exécution, la pile d'abstraction applicative pouvant en outre comporter des moyens logiciels propriétaire pour traiter des instructions pour récupération de données en provenance du périphérique et/ou l'envoi de données vers le périphérique. a specialized programmable logic circuit notably chosen from a microprocessor, a microcontroller, a digital signal processor or a dedicated circuit, at least part of the user application in the form of a program then being stored in said specialized programmable logic circuit and said specialized programmable logic circuit then ensuring its execution, the application abstraction stack can also include proprietary software means for processing instructions for retrieving data from the device and / or sending data to the device.
5. Module selon l'une quelconque des revendications précédentes caractérisé en ce qu'il comporte une mémoire reprogrammable ainsi que des moyens permettant la reprogrammation de ladite mémoire à partir de données reçues par radiocommunication. 5. Module according to any one of the preceding claims, characterized in that it comprises a reprogrammable memory as well as means allowing the reprogramming of said memory from data received by radiocommunication.
6. Module selon l'une quelconque des revendications précédentes caractérisé en ce que le protocole est « Bluetooth® » ou IEEE802.15.1.6. Module according to any one of the preceding claims, characterized in that the protocol is "Bluetooth®" or IEEE802.15.1.
7. Dispositif d'interfaçage de radiocommunication bidirectionnelle selon un protocole prédéfini pour au moins une application logicielle utilisateur et comportant un module selon l'une quelconque des revendications précédentes caractérisé en ce qu'il comporte en outre au sein d'un unique boîtier, une source d'alimentation électrochimique, et au moins un connecteur dont les broches sont reliées à au moins une interface du module.7. Bi-directional radiocommunication interface device according to a predefined protocol for at least one user software application and comprising a module according to any one of the preceding claims, characterized in that it also comprises, within a single housing, a electrochemical power source, and at least one connector, the pins of which are connected to at least one interface of the module.
8. Application du module à la réalisation d'un appareil électronique comportant une application logicielle utilisateur communiquant par radiocommunication bidirectionnelle selon un protocole prédéfini, caractérisé en ce qu'il comporte un module selon l'une quelconque des revendications précédentes.8. Application of the module to the production of an electronic device comprising a user software application communicating by two-way radio communication according to a predefined protocol, characterized in that it comprises a module according to any one of the preceding claims.
9. Appareil selon la revendication 8 caractérisé en ce qu'il est un crayon (1) lecteur de codes à barres d'un support, le crayon comportant à une extrémité dans un capteur (2) optique une source lumineuse produisant un faisceau lumineux focalisé sur le support et un détecteur optique destiné à recevoir et convertir la lumière réfléchie par le support en signaux électriques, le crayon étant autonome et comportant une source d'alimentation électrique interne et le module d'interface de radiocommunication, avec une pile logicielle selon le protocole « Bluetooth® », l'application utilisateur sous forme d'un programme de fonctionnement comportant des moyens pour traiter les signaux électriques du détecteur optique, et des moyens d'interfaçage par l'intermédiaire du module de radiocommunication assurant au moins la transmission desdits codes à barres selon ledit protocole à un équipement informatique.9. Apparatus according to claim 8 characterized in that it is a pencil (1) barcode reader of a support, the pencil comprising at one end in an optical sensor (2) a light source producing a focused light beam on the support and an optical detector intended to receive and convert the light reflected by the support into electrical signals, the pencil being autonomous and comprising an internal electrical power source and the radio communication interface module, with a software stack according to the "Bluetooth®" protocol, the user application in the form of an operating program comprising means for processing the electrical signals from the optical detector, and interfacing means via the radiocommunication module ensuring at least the transmission of said bar codes according to said protocol to computer equipment.
10. Appareil selon la revendication 8 caractérisé en ce qu'il est un crayon lecteur à reconnaissance de l'écriture, le crayon comportant au moins deux accéléromètres selon deux axes X et Y correspondant au plan d'écriture et produisant des signaux électriques, le crayon étant autonome et comportant une source d'alimentation électrique interne et le module d'interface de radiocommunication, avec une pile logicielle selon le protocole « Bluetooth® » , l'application utilisateur sous forme d'un programme de fonctionnement comportant des moyens pour traiter les signaux électriques du détecteur optique et reconnaître l'écriture, et des moyens d'interfaçage par l'intermédiaire du module de radiocommunication assurant au moins la transmission de ladite écriture selon ledit protocole à un équipement informatique.10. Apparatus according to claim 8 characterized in that it is a pencil for recognition of writing, the pencil comprising at least two accelerometers along two axes X and Y corresponding to the writing plane and producing electrical signals, the pencil being autonomous and comprising an internal electrical power source and the radio communication interface module, with a software stack according to the “Bluetooth®” protocol, the user application in the form of an operating program comprising means for processing the electrical signals from the optical detector and recognizing writing, and interfacing means by means of the radiocommunication ensuring at least the transmission of said writing according to said protocol to computer equipment.
11. Appareil selon la revendication 8 caractérisé en ce qu'il est une prise d'alimentation électrique secteur commandée par radiocommunication.11. Apparatus according to claim 8 characterized in that it is a mains power outlet controlled by radio communication.
12. Procédé de lecture, traitement, transmission et exploitation d'un code à barres dans lequel :; . ' 12. Method for reading, processing, transmitting and using a bar code in which:; . '
- on lit le code à barres avec un lecteur comportant un module d'interface de radiocommunication selon l'une quelconque des revendications 1 à 10 et des moyens de lecture optiques du type tête de lecture optique de code à barres produisant des signaux électriques en fonction des barres,- The bar code is read with a reader comprising a radiocommunication interface module according to any one of Claims 1 to 10 and optical reading means of the optical bar code reading head type producing electrical signals as a function bars,
- on traite lesdits signaux électriques . dans le module d'interface pour produire des données numériques et/ou alphanumériques,- said electrical signals are processed. in the interface module to produce digital and / or alphanumeric data,
- on associe aux dites données numériques et/ou alphanumériques un identifiant de lecteur afin de produire une chaîne de données propriétaire,- said digital and / or alphanumeric data are associated with a reader identifier in order to produce a proprietary data string,
- on transmet en temps réel la chaîne de données propriétaire à au moins un équipement client comportant au moins un logiciel client pour exécution d'une commande compréhensible par ledit équipement client.- The proprietary data chain is transmitted in real time to at least one client device comprising at least one client software for execution of an order understandable by said client device.
13. Procédé selon la revendication 12 caractérisé en ce que lorsqu'un équipement client n'est pas disponible pour réception, on stocke la chaîne de données propriétaire dans une mémoire du lecteur.13. Method according to claim 12 characterized in that when a client equipment is not available for reception, the proprietary data string is stored in a memory of the reader.
14. Procédé selon la revendication 12 ou 13 caractérisé en ce que dans l'équipement client on associe en outre à la chaîne de données propriétaire au moins une donnée de type d'équipement client afin de former une adresse informatique dépendant alors du code à barres, de l'identifiant de lecteur et de la donnée de type d'équipement.14. The method of claim 12 or 13 characterized in that in the client equipment is also associated with the owner data chain at least one datum of the client equipment type in order to form an IT address then dependent on the barcode , the reader identifier and the equipment type data.
15. Procédé selon la revendication 12, 13 ou 14 caractérisé en ce qu'on met en œuvre une table de correspondance pour associer une adresse informatique à la chaîne de données propriétaire, éventuellement associée à au moins une donnée de type d'équipement client, la table de correspondance étant située dans un serveur informatique distinct de l'équipement client.15. The method of claim 12, 13 or 14 characterized in that a correspondence table is used to associate a computer address with the proprietary data chain, possibly associated with at least one piece of data of client equipment type, the correspondence table being located in a computer server separate from the client equipment.
16. Procédé selon l'une quelconque des revendications 12 à 14 caractérisé en ce qu'on met en œuvre une table de correspondance pour associer une adresse informatique à la chaîne de données propriétaire, éventuellement associée à au moins une donnée de type d'équipement client, la table de correspondance étant stockée dans l'équipement client.16. Method according to any one of claims 12 to 14 characterized in that a correspondence table is used to associate a computer address with the proprietary data chain, possibly associated with at least one piece of data of type of equipment. customer, the correspondence table being stored in the customer equipment.
17. Procédé selon la revendication 16 caractérisé en ce que l'on stocke la table de correspondance dans l'équipement client par sélection selon un critère dans une table de correspondance globale située dans un serveur informatique distinct de l'équipement client, le critère comportant au moins l'identifiant de lecteur.17. Method according to claim 16 characterized in that the correspondence table is stored in the client equipment by selection according to a criterion in a global correspondence table located in a computer server separate from the client equipment, the criterion comprising at least the reader ID.
18. Procédé selon l'une quelconque des revendications 12 à 17 caractérisé en ce que l'on met en œuvre un moyen de transmission par ondes électromagnétiques en espace libre entre le lecteur et l'équipement client avec un protocole de communication permettant au moins de déterminer quels sont les équipements clients pouvant communiquer et, dans le cas où plusieurs équipements seraient opérationnels, ledit protocole permettant de sélectionner au moins un desdits équipements opérationnels.18. Method according to any one of claims 12 to 17 characterized in that one implements a means of transmission by electromagnetic waves in free space between the reader and the client equipment with a communication protocol allowing at least determine which client devices can communicate and, in the event that several devices are operational, said device protocol for selecting at least one of said operational equipment.
19. Procédé selon l'une quelconque des revendications 12 à 18 caractérisé en ce que l'on code selon un algorithme de codage les données numériques et/ou alphanumériques avant de les associer à l'identifiant de lecteur.19. Method according to any one of claims 12 to 18 characterized in that one encodes according to an algorithm for coding the digital and / or alphanumeric data before associating them with the reader identifier.
20. Procédé selon l'une quelconque des revendications 12 à 1 9 caractérisé en ce que l'adresse informatique associée à la chaîne de données propriétaire est celle d'un serveur informatique relayant une demande d'informations à un autre serveur informatique.20. Method according to any one of claims 12 to 1 9 characterized in that the computer address associated with the proprietary data chain is that of a computer server relaying a request for information to another computer server.
21. Crayon lecteur de symboles sur un support, le crayon comportant à une extrémité dans un capteur optique une source lumineuse produisant un faisceau lumineux focalisé sur le support et un détecteur optique destiné à recevoir et convertir la lumière réfléchie par le support en signaux électriques, le crayon étant autonome et comportant une source d'alimentation électrique interne, une interface de radiocommunication bidirectionnelle selon un protocole prédéfini pour au moins une application utilisateur ayant des données et instructions à communiquer, à un . dispositif externe ainsi que des moyens de lecture optiques du type tête de lecture optique produisant des signaux électriques en fonction des symboles, l'application utilisateur sous forme d'un programme de fonctionnement comportant un moyen de reconnaissance des symboles, des moyens pour traiter les signaux électriques du détecteur optique et des moyens d'interfaçage par l'intermédiaire de l'interface de radiocommunication assurant au moins la transmission desdits symboles selon ledit protocole à un équipement informatique.21. Symbol reader pencil on a support, the pencil comprising at one end in an optical sensor a light source producing a light beam focused on the support and an optical detector intended to receive and convert the light reflected by the support into electrical signals, the pencil being autonomous and comprising an internal power supply, a bidirectional radio interface according to a predefined protocol for at least one user application having data and instructions to communicate, to one . external device as well as optical reading means of the optical reading head type producing electrical signals according to the symbols, the user application in the form of an operating program comprising a symbol recognition means, means for processing the signals the optical detector and the interfacing means through the radio interface ensuring at least the transmission of said symbols according to said protocol to computer equipment.
22. Procédé de lecture, traitement, transmission et exploitation d'un symbole dans lequel :22. Method for reading, processing, transmitting and using a symbol in which:
- on lit le symbole avec un lecteur qui est un crayon lecteur de symbole selon la revendication 21 , - on traite lesdits signaux électriques dans le module d'interface pour produire des données numériques et/ou alphanumériques,the symbol is read with a reader which is a symbol reader pen according to claim 21, said electrical signals are processed in the interface module to produce digital and / or alphanumeric data,
- on associe aux dites données numériques et/ou alphanumériques un identifiant de lecteur afin de produire une chaîne de données propriétaire, - we associate with said digital and / or alphanumeric data a reader identifier in order to produce a proprietary data string,
- on transmet en temps réel la chaîne de données propriétaire à au moins un équipement client comportant au moins un logiciel client pour exécution d'une commande compréhensible par ledit équipement client.- The proprietary data chain is transmitted in real time to at least one client device comprising at least one client software for execution of an order understandable by said client device.
23. Procédé selon la revendication 22 caractérisé en ce que lorsqu'un équipement client n'est pas disponible pour réception, on stocke la chaîne de données propriétaire dans une mémoire du lecteur. 23. The method of claim 22 characterized in that when a client equipment is not available for reception, the proprietary data string is stored in a memory of the reader.
24. Procédé selon la revendication 22 ou 23 caractérisé en ce que dans l'équipement client on associe en outre à la chaîne de données propriétaire au moins une donnée de type d'équipement client afin de former une adresse informatique dépendant alors du symbole, de l'identifiant de lecteur et de la donnée de type d'équipement.24. The method of claim 22 or 23 characterized in that in the client equipment is also associated with the owner data chain at least one datum of the client equipment type in order to form a computer address then depending on the symbol, the reader identifier and the equipment type data.
25. Procédé selon la revendication 22, 23 ou 24 caractérisé en ce qu'on met en œuvre une table de correspondance pour associer une adresse informatique à la chaîne de données propriétaire, éventuellement associée à au moins une donnée de type d'équipement client, la table de correspondance étant située dans un serveur informatique distinct de l'équipement client.25. The method of claim 22, 23 or 24 characterized in that a correspondence table is used to associate a computer address with the proprietary data chain, possibly associated with at least one piece of data of client equipment type, the correspondence table being located in a computer server separate from the client equipment.
26. Procédé selon l'une quelconque des revendications 22 à 24 caractérisé en ce qu'on met en œuvre une table de correspondance pour associer une adresse informatique à la chaîne de données propriétaire, éventuellement associée à au moins une donnée de type d'équipement client, la table de correspondance étant stockée dans l'équipement client.26. Method according to any one of claims 22 to 24 characterized in that a correspondence table is used to associate a computer address with the proprietary data chain, possibly associated with at least one piece of data of type of equipment. customer, the correspondence table being stored in the customer equipment.
27. Procédé selon la revendication 26 caractérisé en ce que l'on stocke la table de correspondance dans l'équipement client par sélection selon un critère dans une table de correspondance globale située dans un serveur informatique distinct de l'équipement client, le critère comportant au moins l'identifiant de lecteur. 27. The method of claim 26 characterized in that the correspondence table is stored in the equipment client by selection according to a criterion in a global correspondence table located in a computer server separate from the client equipment, the criterion comprising at least the reader identifier.
28. Procédé selon l'une quelconque des revendications28. Method according to any one of claims
22 à 27 caractérisé en ce que l'on met en œuvre un moyen de transmission par ondes électromagnétiques en espace libre entre le lecteur et l'équipement client avec un protocole de communication permettant au moins de déterminer quels sont les équipements clients pouvant communiquer et, dans le cas où plusieurs équipements seraient opérationnels, ledit protocole permettant de sélectionner au moins un desdits équipements opérationnels.22 to 27 characterized in that one implements a means of transmission by electromagnetic waves in free space between the reader and the client equipment with a communication protocol allowing at least to determine which client equipment can communicate and, in the case where several pieces of equipment are operational, said protocol making it possible to select at least one of said operational pieces of equipment.
29. Procédé selon l'une quelconque des revendications 22 à 28 caractérisé en ce que l'on code selon un algorithme de codage les données numériques et/ou alphanumériques avant de les associer à l'identifiant de lecteur. ,29. Method according to any one of claims 22 to 28 characterized in that the digital and / or alphanumeric data is coded according to an algorithm for coding before associating them with the reader identifier. ,
30. Procédé selon l'une quelconque des revendications 22 à 29 caractérisé en ce que l'adresse informatique associée à la chaîne de données propriétaire est celle d'un serveur informatique relayant une demande d'informations à un autre serveur informatique.30. Method according to any one of claims 22 to 29 characterized in that the computer address associated with the proprietary data chain is that of a computer server relaying a request for information to another computer server.
31. Procédé selon l'une quelconque des revendications 22 à 30 caractérisé en ce que les symboles sont des codes à barres correspondant à un enchaînement temporel successif de surface sombre et claire sur un écran d'affichage. 31. Method according to any one of claims 22 to 30 characterized in that the symbols are bar codes corresponding to a successive time sequence of dark and light surface on a display screen.
EP02722393A 2001-04-05 2002-04-05 Radio communication interface module, and its use in a device reading, processing, transmitting and operating on a bar code Withdrawn EP1379976A1 (en)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
FR0104659 2001-04-05
FR0104659A FR2823337B1 (en) 2001-04-05 2001-04-05 METHOD FOR READING, PROCESSING, TRANSMISSION AND OPERATION OF A BAR CODE
PCT/FR2002/001202 WO2002082316A1 (en) 2001-04-05 2002-04-05 Radio communication interface module, and its use in a device reading, processing, transmitting and operating on a bar code

Publications (1)

Publication Number Publication Date
EP1379976A1 true EP1379976A1 (en) 2004-01-14

Family

ID=8861999

Family Applications (1)

Application Number Title Priority Date Filing Date
EP02722393A Withdrawn EP1379976A1 (en) 2001-04-05 2002-04-05 Radio communication interface module, and its use in a device reading, processing, transmitting and operating on a bar code

Country Status (4)

Country Link
US (1) US20060168261A1 (en)
EP (1) EP1379976A1 (en)
FR (1) FR2823337B1 (en)
WO (1) WO2002082316A1 (en)

Families Citing this family (30)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7916124B1 (en) 2001-06-20 2011-03-29 Leapfrog Enterprises, Inc. Interactive apparatus using print media
US7743347B2 (en) 2001-11-19 2010-06-22 Ricoh Company, Ltd. Paper-based interface for specifying ranges
US7703044B2 (en) 2001-11-19 2010-04-20 Ricoh Company, Ltd. Techniques for generating a static representation for time-based media information
US7861169B2 (en) 2001-11-19 2010-12-28 Ricoh Co. Ltd. Multimedia print driver dialog interfaces
US7788080B2 (en) 2001-11-19 2010-08-31 Ricoh Company, Ltd. Paper interface for simulation environments
US8539344B2 (en) 2001-11-19 2013-09-17 Ricoh Company, Ltd. Paper-based interface for multimedia information stored by multiple multimedia documents
US7747655B2 (en) 2001-11-19 2010-06-29 Ricoh Co. Ltd. Printable representations for time-based media
US20040229195A1 (en) * 2003-03-18 2004-11-18 Leapfrog Enterprises, Inc. Scanning apparatus
US8452153B2 (en) 2003-07-11 2013-05-28 Ricoh Company, Ltd. Associating pre-generated barcodes with temporal events
US7685428B2 (en) 2003-08-14 2010-03-23 Ricoh Company, Ltd. Transmission of event markers to data stream recorder
US20050060385A1 (en) * 2003-09-15 2005-03-17 Gupta Vivek G. Method and apparatus for sharing a GPRS module with two computing devices
US7864352B2 (en) 2003-09-25 2011-01-04 Ricoh Co. Ltd. Printer with multimedia server
US8077341B2 (en) 2003-09-25 2011-12-13 Ricoh Co., Ltd. Printer with audio or video receiver, recorder, and real-time content-based processing logic
JP2005108230A (en) 2003-09-25 2005-04-21 Ricoh Co Ltd Printing system with embedded audio/video content recognition and processing function
US7853193B2 (en) 2004-03-17 2010-12-14 Leapfrog Enterprises, Inc. Method and device for audibly instructing a user to interact with a function
US7831933B2 (en) 2004-03-17 2010-11-09 Leapfrog Enterprises, Inc. Method and system for implementing a user interface for a device employing written graphical elements
US8274666B2 (en) 2004-03-30 2012-09-25 Ricoh Co., Ltd. Projector/printer for displaying or printing of documents
CN101129079B (en) * 2005-02-25 2011-09-28 汤姆森许可贸易公司 Radio communication device and radio communication system comprising same
US7922099B1 (en) 2005-07-29 2011-04-12 Leapfrog Enterprises, Inc. System and method for associating content with an image bearing surface
US8352323B2 (en) * 2007-11-30 2013-01-08 Blaze Mobile, Inc. Conducting an online payment transaction using an NFC enabled mobile communication device
US8261967B1 (en) 2006-07-19 2012-09-11 Leapfrog Enterprises, Inc. Techniques for interactively coupling electronic content with printed media
US7552863B2 (en) * 2007-02-28 2009-06-30 Hand Held Products, Inc. Method for updating indicia readers
FR2919083B1 (en) * 2007-07-18 2014-11-21 Wavecom METHOD FOR MANAGING THE EXECUTION OF A SOFTWARE ARCHITECTURE OF A CONSTANT PROCESSOR FREQUENCY RADIOCOMMUNICATION CIRCUIT, CORRESPONDING COMPUTER PROGRAM PRODUCT AND CIRCUIT
US8635309B2 (en) * 2007-08-09 2014-01-21 Hand Held Products, Inc. Methods and apparatus to change a feature set on data collection devices
US8638810B2 (en) * 2008-04-25 2014-01-28 Qualcomm Incorporated Multiradio-database systems and methods
US9083474B2 (en) * 2008-04-25 2015-07-14 Qualcomm Incorporated Multimedia broadcast forwarding systems and methods
DE102008064674B4 (en) * 2008-11-18 2018-04-12 Abb Ag Central module for a flexible, expandable automation device
US9100393B2 (en) 2010-11-04 2015-08-04 Apple Inc. Simulacrum of physical security device and methods
KR102114453B1 (en) 2013-07-19 2020-06-05 삼성전자주식회사 Mobile device and control method thereof
CN103927858B (en) * 2014-04-09 2016-09-14 广东海洋大学 Boat-carrying based on Big Dipper positioning and communicating unit hand-held fishery harvesting information collecting device

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6119944A (en) * 1997-02-03 2000-09-19 Symbol Technologies, Inc. Down-loadable hand-held optical reader
CA2212121C (en) * 1996-08-02 2010-03-30 Symbol Technologies, Inc. Improvements in data retrieval
US8712835B1 (en) * 1998-09-11 2014-04-29 Rpx Corporation Method and apparatus for linking a web browser link to a promotional offer
KR100415996B1 (en) * 1998-10-12 2004-01-31 삼성전자주식회사 Method of rendering documents by server
AUPQ363299A0 (en) * 1999-10-25 1999-11-18 Silverbrook Research Pty Ltd Paper based information inter face
US6593908B1 (en) * 2000-02-16 2003-07-15 Telefonaktiebolaget Lm Ericsson (Publ) Method and system for using an electronic reading device on non-paper devices
US7031945B1 (en) * 2000-07-24 2006-04-18 Donner Irah H System and method for reallocating and/or upgrading and/or rewarding tickets, other event admittance means, goods and/or services

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
See references of WO02082316A1 *

Also Published As

Publication number Publication date
WO2002082316A9 (en) 2004-02-19
FR2823337B1 (en) 2004-10-15
WO2002082316A1 (en) 2002-10-17
FR2823337A1 (en) 2002-10-11
US20060168261A1 (en) 2006-07-27
WO2002082316A8 (en) 2003-03-20
WO2002082316B1 (en) 2002-11-14

Similar Documents

Publication Publication Date Title
EP1379976A1 (en) Radio communication interface module, and its use in a device reading, processing, transmitting and operating on a bar code
CA2696854C (en) Method and device for managing application data in an nfc system in response to the sending or receiving of data without contact
US9740905B2 (en) Data collection system having reconfigurable data collection terminal
EP0565469B1 (en) System for the contactless exchange of data between a terminal and a modular portable unit
WO2017198842A1 (en) Device for dynamically generating and displaying a security code
FR2798809A1 (en) APPARATUS AND METHOD FOR TRANSFERRING DATA
EP1857953A1 (en) Method and system for authentication and secure exchange of data between a personalised chip and a dedicated server
EP1869942A2 (en) Contextually-based local selective communications device
EP3110190B1 (en) Method and device for managing contactless applications
WO2014124942A1 (en) Tag-based interactive system for a device distributing a multimedia content
EP3433979B1 (en) Service recording in a local area network
EP1269377B1 (en) Selective intercommunication device for mobile terminals in physical proximity, also linked by global networks
WO2018229227A1 (en) Wi-fi geolocation of products or of individuals
FR2863378A1 (en) Support medium hypermediatisation method, involves processing dynamic hypermedia link in marker identifier to create reference value associated with multimedia contents, and transmitting multimedia information
FR2725813A3 (en) METHOD FOR OPERATING A DATA MEDIUM, PORTABLE OBJECT AND MANAGEMENT SYSTEM USING THE OPERATING METHOD
Kajewski et al. Handheld Technology Review, Technical Report 2001-008-C-06 CRC-CI
CH712534A2 (en) Manage synchronization with a tag.
EP3255939A1 (en) Management of synchronisation with a beacon
JP2007193559A (en) Information display method and compact radio communication terminal
FR3029378A1 (en) METHOD AND SYSTEM FOR COMMUNICATING BETWEEN REMOTE TERMINALS
FR2921739A1 (en) Application data managing method for near field communication system of e.g. portable telephone, involves generating application data within near field communication system, and providing application data to processors and external server
WO2011147680A1 (en) Lumino‑communicating passive device

Legal Events

Date Code Title Description
PUAI Public reference made under article 153(3) epc to a published international application that has entered the european phase

Free format text: ORIGINAL CODE: 0009012

17P Request for examination filed

Effective date: 20031105

AK Designated contracting states

Kind code of ref document: A1

Designated state(s): AT BE CH CY DE DK ES FI FR GB GR IE IT LI LU MC NL PT SE TR

AX Request for extension of the european patent

Extension state: AL LT LV MK RO SI

17Q First examination report despatched

Effective date: 20040329

RIC1 Information provided on ipc code assigned before grant

Ipc: 7H 04L 12/56 B

Ipc: 7H 04L 12/28 A

RTI1 Title (correction)

Free format text: RADIO COMMUNICATION INTERFACE MODULE

STAA Information on the status of an ep patent application or granted ep patent

Free format text: STATUS: THE APPLICATION IS DEEMED TO BE WITHDRAWN

18D Application deemed to be withdrawn

Effective date: 20101103