Infrared proximity sensor control of devices

Infrared proximity sensor control of devices is described herein. One disclosed example apparatus includes an infrared proximity detection sensor disposed within a substantially environmentally-isolated zone of an electronic device, where the infrared proximity detection sensor is to detect an input sequence, and a processor to receive the input sequence, where the processor is programmed to interpret a command by comparing a defined sequence to the input sequence.

FIELD OF THE DISCLOSURE

This patent relates generally to control of devices and, more particularly, to infrared proximity sensor control of devices.

BACKGROUND

Some portable electronic devices are used and/or placed in harsh environmental conditions. In particular, portable utility metering communication devices may be used in the field (e.g., outdoors) to communicate with and/or program wireless endpoints, which are typically integrated or in communication with utility meters of an automatic meter reading (AMR) collection system. Utility providers typically use the portable utility metering communication devices to install, control, maintain and/or collect utility usage data from the endpoints. The portable utility metering communication devices also enable and/or facilitate communication between the endpoints and other portable devices for diagnostics, data transfers, etc.

Typically, because the portable utility metering communication devices are used outdoors, they are exposed to harsh environmental conditions (moisture, liquids, extreme temperatures, heavy winds, impact(s), etc.). Operation of the portable utility metering communication devices often requires input via a tactile button, which may be environmentally-sealed to withstand harsh environmental conditions. Environmentally-sealed tactile buttons may pose significant expense and/or complex design implementations such as design features in parts and extraneous components to environmentally isolate and/or attach or mount the buttons, etc.

Wherever possible, the same reference numbers will be used throughout the drawing(s) and accompanying written description to refer to the same or like parts. As used in this disclosure, stating that any part is in any way positioned on (e.g., positioned on, located on, disposed on, or formed on, etc.) another part, means that the referenced part is either in contact with the other part, or that the referenced part is above the other part with one or more intermediate part(s) located therebetween. Stating that any part is in contact with another part means that there is no intermediate part between the two parts.

DETAILED DESCRIPTION

An example apparatus includes an infrared proximity detection sensor disposed within a substantially environmentally-isolated zone of an electronic device, where the infrared proximity detection sensor is to detect an input sequence, and a processor to receive the input sequence, where the processor is programmed to interpret a command by comparing a defined sequence to the input sequence.

An example method includes detecting, by one or more infrared proximity detection sensors disposed within a substantially environmentally-isolated zone of a portable device, an input sequence, receiving, by a processor, the input sequence, verifying, at the processor, that the input sequence falls within a defined criteria, and interpreting a command, at the processor, based on the verification of the input sequence.

Another example apparatus includes a first infrared proximity detection sensor disposed within a substantially environmentally-isolated zone of a portable electronic device for use with utility communication systems, a second infrared proximity detection sensor disposed within the substantially environmentally-isolated zone, and a processor disposed within the substantially environmentally-isolated zone, where the processor is to perform an action upon successfully comparing an input sequence comprising input detected at the first and second infrared proximity detection sensors to a defined sequence.

Infrared proximity sensor control of devices is disclosed herein. Typically, electronic devices (e.g., portable electronic devices) that are subject to harsh environmental conditions utilize buttons and/or actuation switches that are environmentally-isolated (e.g., environmentally-sealed, etc.). Often these environmentally-isolated buttons and/or switches require significant cost and/or part complexity. In particular, the environmentally-isolated buttons and/or switches may require numerous parts (e.g., gaskets, O-rings, etc.) and/or design features to mount and/or environmentally isolate the buttons and/or switches. Additionally, environmentally-isolated buttons or switches typically have wear issues (e.g., limited life) and/or reduced actuation cycles to failure, both of which may be caused by their environmental robustness.

The examples disclosed herein may be used to reduce (e.g., eliminate) the need for expensive environmentally-sealed buttons and/or interfaces for substantially environmentally-isolated (e.g., environmentally-sealed) portable devices. The examples disclosed herein utilize one or more infrared proximity sensors (e.g., infrared proximity detection sensors) to accept and/or detect inputs (e.g., input signals) from a user or any other appropriate input source including, but not limited to, another device or object. In some examples, an input sequence defined by one or more inputs may be entered via an infrared proximity sensor to cause a processor, which may be disposed within an environmentally-isolated zone of the device, to perform a command (e.g., communicate with and/or command another device). The examples disclosed herein allow infrared proximity sensor(s) to be positioned within (e.g., disposed within) a substantially environmentally-isolated zone and detect commands via a translucent window of a housing, for example.

In some examples, overlapping input signals and/or pulses detected from more than one infrared proximity sensor are used by a processor to interpret a command. In some examples, an initialization command sequence received by one or more proximity sensors is received and/or verified by the processor, for example, to initialize the device to receive a command sequence (e.g., an input sequence). In some examples, an accepted and/or verified command sequence from one or more infrared proximity sensors enables communication between a first electronic device and a second electronic device. In some examples, input sequences are verified with respective patterns (e.g., expected detection patterns, defined patterns, expected input sequences, etc.) and/or time tolerance bands by the processor.

As used in the examples disclosed herein, the term “infrared proximity sensor” refers to an infrared sensor used to detect objects within a defined proximity of the sensor. As used in the examples disclosed herein, the terms “environmentally-isolated” or “substantially environmentally-isolated” refers to an enclosure, zone and/or volume that is substantially resistant to fluids, fluid pressure, particles, etc. The terms “environmentally-isolated” or “substantially environmentally-isolated” may refer to an isolation standard such as an IP65, IP67 or IP68 certified enclosure, etc., for example. As used herein, the term “input” may refer to user input, input from another device, sensor output (e.g., transduced output, transduced input signals, voltage, pulses, etc.) and/or any other appropriate means for providing input to a device. For example, “input” may refer to an object causing detection signals at an infrared proximity sensor.

FIG. 1illustrates an example utility data communication system100in which the examples disclosed herein may be implemented. For example, the utility data communication system100is used to collect utility usage data (e.g., utility consumption data, etc.) from endpoints of an automatic meter reading (AMR) collection system. The utility data communication system100of the illustrated example includes a utility meter102that measures utility usage data of home(s)103and is communicatively coupled to an endpoint104that, in turn, communicates the utility usage data via a radio (e.g., a transmitter/receiver, omnidirectional and/or unidirectional antenna(s), etc.)106. In this example, the utility data communication system100also includes a communication radio108, a mobile phone (e.g., a smart phone)110, a tablet112, and a laptop114, all of which are in wireless communication with the endpoint104via the radio106. The utility data communication system100of the illustrated example includes a data collection system120to receive the utility usage data and may store the utility usage data, for example. The data collection system120of the illustrated example includes a radio (e.g., a radio receiver, transmitter/receiver, etc.)122, a network124(e.g., network hardware, routers, servers, gateways, etc.), and a data storage (e.g., data servers, storage devices, etc.)126.

In this example, the endpoint utility meter102measures and/or receives utility usage data of the home(s)103. The utility usage data is then transmitted and/or communicated to the endpoint104. In turn, the endpoint104transmits the utility usage data to the data collection system120via the radio106. The endpoint104may transmit the utility usage data at regularly defined intervals (e.g., periodically) or when a certain condition has been met (e.g., utility usage data value(s) and/or an amount of the utility usage data exceeds a threshold, etc.). In some examples, the endpoint104collects the utility usage data from numerous utility meters. The endpoint104may utilize software (e.g., encoders/decoders, communication buffers, etc.) to process (e.g., compress, encode, encrypt, etc.) the utility usage data prior to or during communication with the data collection system120. In some examples, the endpoint104validates and/or verifies utility usage data or transmission data prior to transmitting the utility usage data to the data collection system120.

The data collection system120of the illustrated example receives the utility usage data from the endpoint104at the radio122. In this example, the radio122communicates (e.g., transmits) the utility usage data to the network124to be collected and/or stored in the data storage126. Additionally or alternatively, the data collection system120may request re-transmission of utility usage data from the endpoint104via transmission from the radio122when data from the endpoint104has not been received within an expected time period and/or data collected from the endpoint has an error, etc.

In this example, the communication radio108communicates wirelessly to the endpoint104via the radio106to issue commands and/or establish communication from the endpoint104to another device and/or the communication radio108. For example, the communication radio108may be used to establish communication between the endpoint104and the mobile phone110, the tablet112and/or the laptop114. In particular, input commands placed on the communication radio108may enable wireless communication between the laptop114and the endpoint104, for example, enable software on the laptop114to configure the endpoint104, analyze the utility usage data received from the home(s)103, use diagnostic software on the endpoint104, configure the endpoint104, and/or disable the endpoint104, etc. Often, devices such as the communication radio108are subject to harsh environmental conditions due to outdoor use and may require substantially environmentally-isolated (e.g., sealed, etc.) enclosures.

As set forth herein,FIG. 2illustrates an example device200in accordance with the teachings of this disclosure. Similar to the communication radio108described above in connection withFIG. 1, the example device200is used to communicate to a utility endpoint to command the utility endpoint and/or initiate communication between the endpoint and another device, for example. The device200of the illustrated example includes a housing204, an antenna206, a display (e.g., LCD, LED, OLED, etc.)208, an input portion210of the housing204with infrared proximity sensor(s)212positioned and/or mounted behind window(s) (e.g., transparent windows, translucent material, etc.)214.

In this example, the device200is substantially environmentally-isolated. In particular, the housing204and other components related to mounting and/or assembly of the device200has seals (e.g., sealing gaskets, compression gaskets, O-rings, etc.) and/or other isolating mechanisms, features or parts to substantially isolate the device200and/or inner portions of the device200from external conditions, thereby defining a substantially environmentally-isolated zone. For example, the input portion210may include a plastic component that is adjacent to a sealing gasket to substantially isolate an internal volume of the device200.

In this example, the device200has three of the infrared proximity sensors212. However, the device200may utilize one or any other appropriate number of the infrared proximity sensors212. In this example, a finger218of a user triggers a detection at the first infrared proximity sensor212when the finger218is within a defined distance from the first proximity sensor212. This detection may be a first input of a sequence of detection events (e.g., an input sequence) necessary for a command to be interpreted at a processor of the device200such as the processor712described below in connection withFIG. 7. In some examples, infrared emitters are used in conjunction with the infrared proximity sensors212to detect the finger218, for example. In other words, the infrared emitters may illuminate the finger218as the finger218is being detected by one of the infrared proximity sensors212, for example.

In some examples, the device200has the display208to convey an endpoint connection status220, a status of a received command and/or input222, and/or detection indicators224to indicate detection events at one or more of the infrared proximity sensors212. In other examples, detection indication may occur by an LED positioned and/or mounted behind a translucent window mounted to the housing204or onto the housing204itself.

In this example, the display208of the illustrated example is positioned behind a window (e.g., transparent or translucent window, etc.)226, which substantially isolates an internal portion of the device200from the external environment via a sealing gasket. In other examples, the device200does not have the display208.

In this example, the infrared proximity sensor(s)212are positioned behind the translucent window(s)214, which substantially isolate (e.g., seal) the internal volume, thereby allowing the sensor(s)212to detect objects such as the finger218, which is within a defined proximity of the sensor(s)212and/or the window(s)214. In some examples, the size and/or position of each of the windows214is dimensioned relative to each of the infrared proximity sensors212to define a characteristic distance at which input is detected (e.g., a threshold distance in which an object is within proximity of the infrared proximity sensor212to be detected by the infrared proximity sensor212).

In some examples, the housing204and/or other components associated with mounting and/or assembling of the device200have structures and/or components to prevent the device200from being damaged during drop or impact (e.g., drop resistant, impact resistant, etc.). In particular, the housing204may have reinforcement ribs, for example, to prevent damage to any of the infrared sensors212and/or any of the related electronics or structure of the device200. In other words, the device200may have a drop-damage resistant zone, which may overlap or partially overlap with the substantially environmentally-isolated zone of the device200.

FIG. 3is a cross-sectional view along the line A-A of the example device200ofFIG. 2. In this example, the housing204includes a front housing302and a rear housing304. The rear housing304of the illustrated example mounts a printed circuit board (PCB)306, onto which the infrared proximity sensors212are mounted (e.g., soldered to, board mounted, etc.). In this example, electrical components308(e.g., the processor712) are mounted onto the PCB306. In other examples, the proximity sensors212may be mounted to the front housing302and/or the rear housing304with wires attached to the proximity sensors212to communicatively couple the proximity sensors212to other hardware, for example. In some examples, walls and/or other structures may isolate the infrared proximity sensors from one another.

To maintain the substantially environmentally-isolated internal zone or volume of the device200described above in connection withFIG. 2, an interface between the front housing302and the rear housing304has seals (e.g., gaskets, compressible gaskets, O-rings, etc.)310. Likewise, the windows214have respective seals312to substantially isolate the internal volume of the device200from external conditions.

In this example, the infrared proximity sensors212detect objects (e.g., a finger of a user, etc.) within a defined proximity such as 5 millimeters (mm), for example, of the infrared proximity sensors212and/or the windows214. In particular, an object close to one of the windows214and/or one of the infrared proximity sensors212may, in response, trigger a voltage output of the infrared proximity sensor212. These detections may comprise input and, thus, define input sequences, etc. In some examples, providing inputs detected at different infrared proximity sensors defines a sequence. Input and input sequences are discussed in greater detail below in connection withFIGS. 4 and 5.

FIG. 4is graph400representative of an example signal402, which defines an example input sequence, provided by an infrared proximity sensor (e.g., the infrared proximity sensor212ofFIGS. 2 and 3) of the example device200ofFIG. 2. A horizontal axis404represents time. A vertical axis406represents output (e.g., an output signal) or voltage provided by the infrared proximity sensor based on detections or inputs. In this example, a first portion (e.g., a pulse, an input pulse, a detection pulse, an input, a pulse based on input, etc.)408of the signal402is provided by the infrared proximity sensor. In this example, the first portion408has a corresponding tolerance range410with corresponding ends412. A second portion of pulses414of the example signal402includes multiple inputs or detections (e.g., four detection events) is later provided. In this example, the second portion414of the signal402has a corresponding tolerance range416for each pulse of the second portion414.

A third portion418of the signal402is later provided after a time period following the second portion414. Likewise, the third portion418has a corresponding tolerance range420for each pulse of the third portion418. In this example, the first portion408, the second portion414and the third portion418define the input sequence. While the first portion408, the second portion414, and the third portion418are depicted as rectangular functions, they may vary from a rectangular shape and/or be processed by circuitry to have the rectangular shape.

In this example, the tolerance ranges410,416, and420are used in the determination and/or verification, by a processor, of the input sequence received (e.g., detected) from the infrared proximity sensor and/or defined by the processor based on pulses (e.g., detections). In other words, verification of the input sequence is based on whether the pulses are received within their respective tolerance bands, for example. In this example, pulses of the first portion408, the second portion414and the third portion418match a sequence and/or fall within the corresponding tolerance bands to cause the processor to interpret the input sequence as a command to perform an action, for example.

In some examples, the tolerance range widths vary at different time periods of the signal402. Additionally or alternatively, the input sequence may require inputs or detections at defined durations (e.g., some inputs are verified to be longer than others to verify a received input sequence). In some examples, verification or determination of the input sequence is also based on not receiving detection pulses at certain times. For example, determination of the lack of pulses (e.g., non-detection or low voltage levels measured at an infrared proximity sensor) between the first portion408and the second portion414, and/or the lack of inputs between the second portion414and the third portion418may be used in verification of the input sequence. Likewise, in some examples, periods of expected non-detection may have corresponding tolerance bands as well. In other examples, the input sequence may be verified by the processor if inputs are out of the tolerance bands (e.g., the inputs extend beyond respective tolerance bands instead of falling within the tolerance bands). In such examples, the input sequence may still be verified if a pulse extends beyond one or more sides of a tolerance band within a defined error. Additionally or alternatively, an input sequence may not be verified if a greater number of pulses than expected is received within a tolerance band (e.g., two distinct pulses within a defined time tolerance band).

FIG. 5is another graph500representative of example signals, which define another example input sequence, provided by a plurality of infrared proximity sensors (e.g., the infrared proximity sensors212ofFIGS. 2 and 3) of the example device200described above in connection withFIG. 2. In this example, the axes502,504and506represent time axes. A vertical axis508of the illustrated example represents output (e.g., an output signal) of a first infrared proximity sensor. Likewise, the vertical axes510and512represent output of the second and third infrared proximity sensors, respectively. In this example, a first pulse (e.g., an input pulse, a detection pulse, an input, a pulse based on input, etc.)514is provided by the first infrared proximity sensor. The first pulse514of the illustrated example has a corresponding tolerance band516(e.g., an error band in which a detection pulse is to be provided by the first infrared proximity sensor). Similarly, the second infrared proximity sensor provides a second pulse518, which has a corresponding tolerance band520, at a later time than the first pulse514. In this example, as the second pulse518is provided, a third pulse522is provided by the third infrared proximity sensor and has a corresponding tolerance band524. In other words, the third pulse522overlaps in time with the second pulse518. Similar to the example described in connection withFIG. 4, the first pulse514, the second pulse518and the third pulse522match a sequence and/or fall within corresponding tolerance bands to cause a processor to interpret the input sequence as a command to perform an action, for example. In this example, the overlap of the second pulse518and the third pulse522is a portion of the input sequence. While the first pulse514, the second pulse518, and the third pulse522are depicted as rectangular functions, they may vary from a rectangular shape and/or be processed by circuitry to have the rectangular shape.

In other examples, the processor may interpret and/or verify the input sequence based on one or more pulses being extending beyond a range of a tolerance band and/or the processor may still interpret a command if one or more pulses extend beyond the tolerance bands within an allowed range beyond the respective tolerance bands. In yet other examples, durations (e.g., widths) of the tolerance bands516,520and524may vary with respect to one another and/or vary over time (e.g., one or more widths of the tolerance bands516,520and524vary over time).

A flowchart representative of an example method for implementing the example device200ofFIG. 2is shown inFIG. 6. In these examples, the methods may be implemented using machine readable instructions that comprise a program for execution by a processor such as the processor712shown in the example processor platform700discussed below in connection withFIG. 7. The program may be embodied in software stored on a tangible computer readable storage medium such as a CD-ROM, a floppy disk, a hard drive, a digital versatile disk (DVD), a Blu-ray disk, or a memory associated with the processor712, but the entire program and/or parts thereof could alternatively be executed by a device other than the processor712and/or embodied in firmware or dedicated hardware. Further, although the example program is described with reference to the flowchart illustrated inFIG. 6, many other methods of implementing the example device200may alternatively be used. For example, the order of execution of the blocks may be changed, and/or some of the blocks described may be changed, eliminated, or combined.

FIG. 6is a flowchart representative of an example method that may be used to implement the example device200ofFIG. 2. The example method ofFIG. 6may begin operation at block600when a portable device, which has an infrared proximity sensor disposed within a substantially environmentally-isolated enclosure (e.g., housing) of the device, is being used to communicate to an endpoint of a utility data communication system (e.g., the utility data communication system100ofFIG. 1) (block600). Next, an initialization command is detected by a portable device at the infrared proximity sensor of the device, for example (block602). In this example, the initialization command enables and/or initializes the portable device to receive input and/or an input sequence via one or more infrared proximity sensors (e.g., the infrared proximity sensors212of the device200) by programming a processor of the portable device to receive the input and/or the input sequence. The initialization command may be similar to the input sequences of the example graph400or the example graph500described above in connection withFIGS. 4 and 5, respectively. In some examples, the initialization command is communicated to the device via wireless means (e.g., Bluetooth, Wi-Fi, etc.). Additionally or alternatively, the initialization command defines what input and/or input sequences the device is initialized and/or enabled to receive (e.g., defines what input sequences the device may interpret or receive, etc.). The input is then detected at the infrared proximity sensor (block604). In some examples, the input is displayed on a display (e.g., the detection indicators224of the display208) and/or an LED disposed on or within an enclosure of the device (block606).

In this example, the processor (e.g., the processor712ofFIG. 7) of the device receives the input, signals resulting from the input, and/or the input sequence (block608). The processor of the illustrated example then verifies that the input sequence falls within a defined criteria (block610). For example, the processor may verify that a pulse of the inputs or signals of the input sequence falls within respective time tolerance bands and/or ends of the pulse are within a defined error of the respective tolerance bands (e.g., the pulse may be within or extend out of the time tolerance band within the defined error). In particular, the processor may verify or compare a received input sequence such as the input sequences described above in connection with the graphs400and500described above with defined inputs and/or predefined sequences to interpret a command (e.g., the processor is programmed to interpret the command). While comparison of the input sequence to time tolerance bands is described in this example, any verification methodology may be used to compare the input sequence to defined sequences.

If the sequence is not successfully verified (block612) by the processor, the process repeats (block602). If the sequence is successfully verified by the processor, the processor interprets a command (block614). In some examples, the processor may perform the command (block616). In particular, performance of the command by the processor may involve enabling and/or initializing the endpoint to communicate with another device (e.g., the mobile phone110, the tablet112and/or the laptop114, etc.). The processor of the illustrated example may also perform, based on the verification of the input sequence, an internal command related to the device such as turning the device on or off, initializing the device, or issuing a command, etc. After the command has been performed, it is determined whether the process is to end (block618). If the process is not determined to end (block618), the process repeats (block602). Otherwise, if the process is determined to end (block618), the process ends (block620). In some examples, a determination of whether the process is to end may be based on the type of command performed and/or a time delay after an input sequence is received (e.g., a timeout).

FIG. 7is a block diagram of an example processor platform700capable of executing instructions to implement the method ofFIG. 6to implement the example control device200ofFIG. 2. The processor platform700can be, for example, a server, a personal computer, a mobile device (e.g., a tablet such as an iPad™), a personal digital assistant (PDA), an Internet appliance, or any other type of computing device.

The processor platform700of the illustrated example includes a processor712. The processor712of the illustrated example is hardware. For example, the processor712can be implemented by one or more integrated circuits, logic circuits, microprocessors or controllers from any desired family or manufacturer.

The processor712of the illustrated example includes a local memory713(e.g., a cache). The processor712of the illustrated example is in communication with a main memory including a volatile memory714and a non-volatile memory716via a bus718. The volatile memory714may be implemented by Synchronous Dynamic Random Access Memory (SDRAM), Dynamic Random Access Memory (DRAM), RAMBUS Dynamic Random Access Memory (RDRAM) and/or any other type of random access memory device. The non-volatile memory716may be implemented by flash memory and/or any other desired type of memory device. Access to the main memory including the volatile memory714and the non-volatile memory716is controlled by a memory controller.

The processor platform700of the illustrated example also includes an interface circuit720. The interface circuit720may be implemented by any type of interface standard, such as an Ethernet interface, a universal serial bus (USB), and/or a PCI express interface.

In the illustrated example, one or more input devices722are connected to the interface circuit720. The input device(s)722permit(s) a user to enter data and commands into the processor712. The input device(s) can be implemented by, for example, an audio sensor, a microphone, a camera (still or video), a keyboard, a button, a mouse, a touchscreen, a track-pad, a trackball, isopoint and/or a voice recognition system.

The processor platform700of the illustrated example also includes one or more mass storage devices728for storing software and/or data. Examples of such mass storage devices728include floppy disk drives, hard drive disks, compact disk drives, Blu-ray disk drives, RAID systems, and digital versatile disk (DVD) drives.

Coded instructions732to implement the method ofFIG. 6may be stored in the mass storage device728, in the local memory713, in the volatile memory714, in the non-volatile memory716, and/or on a removable tangible computer readable storage medium such as a CD or DVD.

Although certain example methods, apparatus and articles of manufacture have been disclosed herein, the scope of coverage of this patent is not limited thereto. On the contrary, this patent covers all methods, apparatus and articles of manufacture fairly falling within the scope of the claims of this patent. While utility communication devices are described, the example methods and apparatus may be applied to electronic devices, portable electronic devices, non-portable devices, etc.