Detailed description of the preferred embodiments
For a better understanding of the technical solutions of the present application, embodiments of the present application are described in detail below with reference to the accompanying drawings.
In order to clearly describe the technical solutions of the embodiments of the present application, in the embodiments of the present application, the words "first", "second", etc. are used to distinguish the same item or similar items having substantially the same function and effect. For example, the first instruction and the second instruction are for distinguishing different user instructions, and the sequence of the instructions is not limited. It will be appreciated by those of skill in the art that the words "first," "second," and the like do not limit the amount and order of execution, and that the words "first," "second," and the like do not necessarily differ.
In this application, the terms "exemplary" or "such as" are used to mean serving as an example, instance, or illustration. Any embodiment or design described herein as "exemplary" or "for example" should not be construed as preferred or advantageous over other embodiments or designs. Rather, the use of words such as "exemplary" or "such as" is intended to present related concepts in a concrete fashion.
The embodiment of the application can be applied to electronic devices such as tablet computers, personal computers (personal computer, PCs), personal digital assistants (personal digital assistant, PDAs), smart watches, netbooks, wearable electronic devices, augmented reality (augmented reality, AR) devices, virtual Reality (VR) devices, vehicle-mounted devices, smart automobiles, robots, smart glasses, smart televisions and the like.
As shown in fig. 1, fig. 1 is a schematic diagram of an electronic device provided in an embodiment of the present application, where the electronic device shown in fig. 1 may include a processor 110, an external memory interface 120, an internal memory 121, a universal serial bus (Universal Serial Bus, USB) interface 130, a charge management module 140, a power management module 141, a battery 142, an antenna 1, an antenna 2, a mobile communication module 150, a wireless communication module 160, an audio module 170, a speaker 170A, a receiver 170B, a microphone 170C, an earphone interface 170D, a sensor module 180, keys 190, a motor 191, an indicator 192, a camera 193, a display 194, and a subscriber identity module (Subscriber Identity Module, SIM) card interface 195. Among them, the sensor module 180 may include a pressure sensor 180A, a gyro sensor 180B, an air pressure sensor 180C, a magnetic sensor 180D, an acceleration sensor 180E, a distance sensor 180F, a proximity light sensor 180G, a fingerprint sensor 180H, a temperature sensor 180J, a touch sensor 180K, an ambient light sensor 180L, and a bone conduction sensor 180M, etc.
It should be understood that the structures illustrated in the embodiments of the present application do not constitute a specific limitation on the electronic device. In other embodiments of the present application, the electronic device may include more or less components than illustrated, or certain components may be combined, or certain components may be split, or different arrangements of components. The illustrated components may be implemented in hardware, software, or a combination of software and hardware.
The processor 110 may include one or more processing units, such as: the processor 110 may include an application processor (Application Processor, AP), a modem processor (modem), a graphics processor (Graphics Processing Unit, GPU), an image signal processor (Image Signal Processor, ISP), a controller, a video codec, a digital signal processor (Digital Signal Processor, DSP), a baseband processor, and/or a neural-Network Processor (NPU), etc. Wherein the different processing units may be separate devices or may be integrated in one or more processors.
The processor 110 may generate operation control signals according to the instruction operation code and the timing signals to complete instruction fetching and instruction execution control.
A memory may also be provided in the processor 110 for storing instructions and data. In some embodiments, the memory in the processor 110 is a cache memory. The memory may hold instructions or data that the processor 110 has just used or recycled. If the processor 110 needs to reuse the instruction or data, it can be called directly from the memory. Repeated accesses are avoided and the latency of the processor 110 is reduced, thereby improving the efficiency of the system.
In some embodiments, the processor 110 may include one or more interfaces. The interfaces may include an integrated circuit (Inter-Integrated Circuit, I2C) interface, an integrated circuit built-in audio (Inter-Integrated Circuit Sound, I2S) interface, a pulse code modulation (Pulse Code Modulation, PCM) interface, a universal asynchronous receiver Transmitter (Universal Asynchronous Receiver/Transmitter, UART) interface, a mobile industry processor interface (Mobile Industry Processor Interface, MIPI), a General-Purpose Input/Output (GPIO) interface, and a subscriber identity module (Subscriber Identity Module, SIM) interface.
The I2C interface is a bi-directional synchronous Serial bus, comprising a Serial Data Line (SDA) and a Serial clock Line (Derail Clock Line, SCL). In some embodiments, the processor 110 may contain multiple sets of I2C buses. The processor 110 may be coupled to the touch sensor 180K, charger, flash, camera 193, etc., respectively, through different I2C bus interfaces. For example: the processor 110 may be coupled to the touch sensor 180K through an I2C interface, so that the processor 110 and the touch sensor 180K communicate through an I2C bus interface to implement a touch function of the electronic device.
The I2S interface may be used for audio communication. In some embodiments, the processor 110 may contain multiple sets of I2S buses. The processor 110 may be coupled to the audio module 170 via an I2S bus to enable communication between the processor 110 and the audio module 170. In some embodiments, the audio module 170 may transmit an audio signal to the wireless communication module 160 through the I2S interface, to implement a function of answering a call through the bluetooth headset.
PCM interfaces may also be used for audio communication to sample, quantize and encode analog signals. In some embodiments, the audio module 170 and the wireless communication module 160 may be coupled through a PCM bus interface. The audio module 170 may transmit the acquired downstream audio stream data and upstream audio stream data to an electronic device wirelessly connected to the electronic device through the wireless communication module 160.
In some embodiments, the audio module 170 may also transmit audio signals to the wireless communication module 160 through the PCM interface to implement a function of answering a call through the bluetooth headset. Both the I2S interface and the PCM interface may be used for audio communication.
The UART interface is a universal serial data bus for asynchronous communications. The bus may be a bi-directional communication bus. It converts the data to be transmitted between serial communication and parallel communication. In some embodiments, a UART interface is typically used to connect the processor 110 with the wireless communication module 160. For example: the processor 110 communicates with a bluetooth module in the wireless communication module 160 through a UART interface to implement a bluetooth function. In some embodiments, the audio module 170 may transmit an audio signal to the wireless communication module 160 through a UART interface, so as to implement a function of obtaining a downstream audio stream through a bluetooth-connected electronic device.
The MIPI interface may be used to connect the processor 110 to peripheral devices such as a display 194, a camera 193, and the like. The MIPI interface includes camera serial interface (Camera Serial Interface, CSI), display serial interface (Display Serial Interface, DSI), and the like. In some embodiments, processor 110 and camera 193 communicate through a CSI interface to implement the photographing functions of electronic device 100. The processor 110 and the display screen 194 communicate via a DSI interface to implement the display functionality of the electronic device.
It should be understood that the connection relationship between the modules illustrated in the embodiments of the present application is only illustrative, and does not limit the structure of the electronic device. In other embodiments of the present application, the electronic device may also use different interfacing manners in the foregoing embodiments, or a combination of multiple interfacing manners.
The wireless communication function of the electronic device may be implemented by the antenna 1, the antenna 2, the mobile communication module 150, the wireless communication module 160, a modem processor, a baseband processor, and the like.
The antennas 1 and 2 are used for transmitting and receiving electromagnetic wave signals. Each antenna in the electronic device may be used to cover a single or multiple communication bands. Different antennas may also be multiplexed to improve the utilization of the antennas. For example: the antenna 1 may be multiplexed into a diversity antenna of a wireless local area network. In other embodiments, the antenna may be used in conjunction with a tuning switch.
The mobile communication module 150 may provide a solution for wireless communication including 2G/3G/4G/5G or the like for use on the first electronic device. In some embodiments, the transmission of call data between two electronic devices may be accomplished through the mobile communication module 150, for example, as a called party device, downstream audio stream data from the calling party device may be obtained, and upstream audio stream data may be transmitted to the calling party device.
The wireless communication module 160 may provide solutions for wireless communication including wireless local area network (Wireless Local Area Networks, WLAN) (e.g., wireless fidelity (Wireless Fidelity, wi-Fi) network), bluetooth (BT), global navigation satellite system (Global Navigation Satellite System, GNSS), frequency modulation (Frequency Modulation, FM), near field wireless communication technology (Near Field Communication, NFC), and infrared technology (IR) for application on electronic devices.
In some embodiments, the antenna 1 and the mobile communication module 150 of the electronic device are coupled, and the antenna 2 and the wireless communication module 160 are coupled, so that the electronic device can communicate with the network and other devices through wireless communication technology. In one embodiment of the present application, the electronic device may implement a local area network connection with another electronic device through the wireless communication module 160. Wireless communication techniques may include global system for mobile communications (Global System for Mobile Communications, GSM), general packet radio service (General Packet Radio Service, GPRS), code Division multiple access (Code Division Multiple Access, CDMA), wideband code Division multiple access (Wideband Code Division Multiple Access, WCDMA), time Division-synchronous code Division multiple access (Time-Division-Synchronous Code Division Multiple Access, TD-SCDMA), long term evolution (Long Term Evolution, LTE), BT, GNSS, WLAN, NFC, FM, and/or IR techniques, among others. The GNSS may include a global satellite positioning system (Global Positioning System, GPS), a global navigation satellite system (Global Navigation Satellite System, GLONASS), a Beidou satellite navigation system (Beidou Navigation Satellite System, BDS), a Quasi zenith satellite system (Quasi-Zenith Satellite System, QZSS), and/or a satellite based augmentation system (Satellite Based Augmentation System, SBAS), among others.
The display screen 194 is used to display images, videos, and the like. The display 194 includes a display panel. The display panel may employ a liquid crystal display (Liquid Crystal Display, LCD), an Organic Light-Emitting Diode (OLED), an Active-matrix or Active-matrix Organic Light-Emitting Diode (AMOLED), a flexible Light-Emitting Diode (Flex Light-Emitting Diode), a MiniLED, microLED, micro-OLED, a quantum dot Light-Emitting Diode (Quantum dot Light Emitting Diode, QLED), or the like. In some embodiments, the electronic device may include 1 or N display screens 194, N being a positive integer greater than 1.
The external memory interface 120 may be used to connect external memory cards, such as Micro secure digital (Secure Digital Memory, SD) cards, to enable expansion of the memory capabilities of the electronic device. The external memory card communicates with the processor 110 through an external memory interface 120 to implement data storage functions. Files such as music, video, audio files, etc. are stored in an external memory card.
The internal memory 121 may be used to store computer executable program code including instructions. The internal memory 121 may include a storage program area and a storage data area. The storage program area may store an operating system, and application programs (such as a sound playing function, an image playing function, and a recording function) required for at least one function, etc. The storage data area may store data created during use of the electronic device (e.g., upstream audio data, downstream audio data, phonebook, etc.), and so on. In addition, the internal memory 121 may include a high-speed random access memory, and may further include a nonvolatile memory such as at least one magnetic disk storage device, a flash memory device, a universal flash memory (Universal Flash Storage, UFS), and the like. The processor 110 performs various functional applications of the electronic device and data processing by executing instructions stored in the internal memory 121 and/or instructions stored in a memory provided in the processor 110.
The electronic device may implement a call conflict handling function, etc. through the audio module 170, speaker 170A, receiver 170B, microphone 170C, earphone interface 170D, application processor, etc.
The audio module 170 is used to convert digital audio information into an analog audio signal output and also to convert an analog audio input into a digital audio signal. The audio module 170 may also be used to encode and decode audio signals. In some embodiments, the audio module 170 may be disposed in the processor 110, or a portion of the functional modules of the audio module 170 may be disposed in the processor 110.
A receiver 170B, also referred to as a "earpiece", is used to convert the audio electrical signal into a sound signal. When the electronic device picks up a call or voice message, the voice transmitted by the caller device may be heard through the listener 170B.
Microphone 170C, also referred to as a "microphone" or "microphone", is used to convert sound signals into electrical signals. When making a call or sending voice information, the user can sound near the microphone 170C through the mouth, and input a sound signal to the microphone 170C to realize the collection of the upstream.
The pressure sensor 180A is used to sense a pressure signal, and may convert the pressure signal into an electrical signal. In some embodiments, the pressure sensor 180A may be disposed on the display screen 194. In some embodiments, the manual answer call function may be implemented when the user clicks an answer key on the display screen 194, and the manual hang-up call function may be implemented when the user clicks a hang-up key on the display screen 194.
The touch sensor 180K, also referred to as a "touch device". The touch sensor 180K may be disposed on the display screen 194, and the touch sensor 180K and the display screen 194 form a touch screen, which is also called a "touch screen". The touch sensor 180K is for detecting a touch operation acting thereon or thereabout. The touch sensor 180K may communicate the detected touch operation to the application processor to determine the touch event type. Visual output related to touch operations may be provided through the display 194. In other embodiments, the touch sensor 180K may also be disposed on the surface of the electronic device at a different location than the display 194.
The keys 190 include a power-on key, a volume key, etc. The keys 190 may be mechanical keys. Or may be a touch key. The electronic device may receive key inputs, generating key signal inputs related to user settings and function controls of the electronic device.
The motor 191 may generate a vibration cue. The motor 191 may be used for incoming call vibration alerting as well as for touch vibration feedback. For example, touch operations acting on different applications (e.g., photographing, audio playing, etc.) may correspond to different vibration feedback effects. The motor 191 may also correspond to different vibration feedback effects by touching different areas of the display screen 194. Different application scenarios (such as time reminding, receiving information, alarm clock, game, etc.) can also correspond to different vibration feedback effects. The touch vibration feedback effect may also support customization.
The SIM card interface 195 is used to connect a SIM card. The SIM card may be inserted into the SIM card interface 195, or removed from the SIM card interface 195 to enable contact and separation with the electronic device. The electronic device may support 1 or N SIM card interfaces, N being a positive integer greater than 1. The SIM card interface 195 may support Nano SIM cards, micro SIM cards, and the like. The same SIM card interface 195 may be used to insert multiple cards simultaneously. The types of the plurality of cards may be the same or different. The SIM card interface 195 may also be compatible with different types of SIM cards. The SIM card interface 195 may also be compatible with external memory cards. The electronic equipment interacts with the network through the SIM card, so that the functions of communication, data communication and the like are realized. In some embodiments, the electronic device employs esims, namely: an embedded SIM card. The eSIM card can be embedded in the electronic device and cannot be separated from the electronic device.
Firstly, the execution main body of the scheme is an electronic device which can be connected with a Bluetooth device through Bluetooth information and can move, for example: the mobile phone, the tablet personal computer and the like can be used as execution subjects of the scheme.
As shown in fig. 2, a flowchart of a first bluetooth device positioning method according to an embodiment of the present application is shown, where the method includes the following steps: S201-S204.
Step S201: and continuously determining a first horizontal direction which the Bluetooth signal faces in the moving process of the Bluetooth signal, and determining a second horizontal direction with the strongest signal strength of the Bluetooth signal under the condition that the signal strength of the Bluetooth signal is detected to be greater than that of the signal strength detected in the history.
Firstly, the electronic device can display positioning indication information on a screen of the electronic device, can play the positioning indication information through voice or can display the positioning indication information in other modes, and then a user can shake the electronic device, carry the electronic device to perform operations such as in-situ turning and the like based on the positioning indication information, and the operations can lead the electronic device to move. In addition, when the user carries the electronic device to search for the Bluetooth device, the electronic device can also move.
Specifically, the orientation of the electronic device may change during the movement of the electronic device, and thus it is necessary to continuously determine the first horizontal direction in which the electronic device is oriented.
In one embodiment of the present application, the electronic device may determine a first horizontal direction indicating its own orientation once every first preset time period has elapsed.
Secondly, according to the general knowledge, the bluetooth device should be located in the direction with the strongest bluetooth signal intensity, and in the process of moving the electronic device, the electronic device continuously detects the signal intensity of the bluetooth signal emitted by the bluetooth device, and as long as the detected signal intensity of the bluetooth signal is greater than all signal intensities detected by the history, the second horizontal direction is updated, and the direction in which the latest detected maximum signal intensity is located is determined as the second horizontal direction of the bluetooth signal.
In an embodiment of the present application, after a second preset time period passes, the electronic device detects a bluetooth signal emitted by the bluetooth device, and then determines whether the signal strength of the detected bluetooth signal is greater than the signal strength of a previously historically detected bluetooth signal, if so, determines a second horizontal direction in which the signal strength of the bluetooth signal is strongest, where the duration of the first preset time period and the duration of the second preset time period may be the same or different.
In another embodiment of the present application, the above step S201 may be implemented by the following steps a-B, which are not described in detail herein.
Step S202: a first deflection angle is calculated for the newly determined first horizontal direction to deviate from the second horizontal direction.
Specifically, because the first horizontal direction is the direction in which the electronic device faces itself, and the second horizontal direction is the direction in which the signal strength of the bluetooth signal is strongest, and because the direction in which the bluetooth device is located can be determined approximately by the second horizontal direction, the first deflection angle may represent an angle in which the direction in which the electronic device faces itself deviates from the direction in which the bluetooth device is located.
For example, referring to fig. 3, fig. 3 is a schematic view of a first deflection angle according to an embodiment of the present application. In fig. 3, a rectangle in the rectangular coordinate system represents the electronic device, an arrow in a first quadrant in the rectangular coordinate system represents a first horizontal direction, that is, the electronic device faces itself, an arrow in a second quadrant in the rectangular coordinate system represents a second horizontal direction, that is, a direction in which the signal intensity of the bluetooth signal is strongest, and an angle β between the right angles of the two arrows is a first deflection angle in which the first horizontal direction deviates from the second horizontal direction.
Step S203: and calculating a second deflection angle between the third horizontal direction and the fourth horizontal direction under the condition that the electronic equipment moves on the horizontal plane.
Wherein the movement is an instantaneous movement of the electronic device, and the third horizontal direction is: the position of the bluetooth device is in a horizontal direction to an initial position of the electronic device moving at the time, and the fourth horizontal direction is: the Bluetooth device is positioned in the horizontal direction of the termination position of the movement of the electronic device.
Specifically, referring to fig. 4, fig. 4 is a schematic diagram of a second deflection angle provided in the embodiment of the present application, and in fig. 4, for a movement of the electronic device in a horizontal plane, an M point represents: the initial position of the electronic device when moving on the horizontal plane at this time is represented by the point N: the termination position of the electronic device when this movement is performed on the horizontal plane, and the O point represents: the direction in which the bluetooth device is located is the third horizontal direction, that is, the direction in which the position of the bluetooth device is located is the horizontal direction of the initial position where the electron moves at this time, the direction in which the second arrow is located is the fourth horizontal direction, the direction in which the position of the bluetooth device is located is the horizontal direction of the final position where the electron moves at this time, and the included angle formed by the first arrow and the second arrow is the second deflection angle between the third horizontal direction and the fourth horizontal direction.
Therefore, when the electronic device moves on the horizontal plane, the initial position and the final position of the electronic device during movement, such as the position between the M point and the O point in fig. 4, are different, so that the direction of the initial position of the bluetooth device when the position of the bluetooth device points to the electronic device during movement is different from the direction of the final position of the bluetooth device when the position of the bluetooth device points to the electronic device during movement, such as the direction of the first arrow points to the direction of the second arrow in fig. 4, and the second deflection angle can be calculated through the third horizontal direction and the fourth horizontal direction, and the second deflection angle can represent the change condition of the direction of the position of the bluetooth device when the electronic device moves on the horizontal plane.
In one embodiment of the present application, the step S203 may be implemented through steps S203A-S203C in fig. 6
In addition, the second deflection angle between the third horizontal direction and the fourth horizontal direction can be calculated once every time the electronic device moves on the horizontal plane.
Step S204: and determining a horizontal offset angle between the current orientation of the electronic equipment and the position of the Bluetooth equipment based on the newly determined first deflection angle and each second deflection angle.
Specifically, because the first deflection angle may represent an angle in which the direction in which the electronic device itself faces deviates from the direction in which the bluetooth device is located, the bluetooth device may be positioned based on the first deflection angle. However, if the bluetooth device is located based on only the first deflection angle, and then the user searches for the bluetooth device by moving the electronic device on the horizontal plane, if the orientation of the electronic device is not changed and the signal intensity of the bluetooth signal is detected to be not greater than the signal intensity detected historically, the determined first horizontal direction and second horizontal direction are not changed, and thus the calculated first deflection angle is not changed, but because the position of the electronic device itself may be changed, locating the bluetooth device based on only the first deflection angle is not accurate.
For example, referring to fig. 5A, fig. 5A is a schematic diagram of positioning based on a first deflection angle, where in fig. 5A, points a, B and C represent positions where an electronic device passes during a moving process on a horizontal plane, and point D represents a position where a bluetooth device is located, when the electronic device is located at point a, the bluetooth device may be positioned based on the first deflection angle, that is, a direction pointed by an arrow located at point a is obtained by the first deflection angle, and an pointing direction pointed by an arrow located at point a is obtained by deflecting the first deflection angle based on an orientation of the electronic device, where the arrow is pointed at point D where the bluetooth device is located; and then the electronic device moves along the arrow of the point A, when the electronic device moves to the point B, if the direction of the electronic device is not changed and the signal intensity of the Bluetooth signal is not larger than the signal intensity detected by history, the first horizontal direction and the second horizontal direction are determined to be unchanged, so that the calculated first deflection angle is not changed, the direction of the arrow of the point B is the same as the direction of the arrow of the point A, as can be seen from fig. 5A, the arrow of the point B does not point to the position D of the Bluetooth device, so that the Bluetooth device is positioned only based on the first deflection angle, and similarly, if the electronic device moves to the point C along the arrow of the point B, the electronic device is not moved towards the Bluetooth device, and when the electronic device moves to the point C, if the direction of the electronic device is not changed and the signal intensity of the Bluetooth signal is not larger than the signal intensity detected by history, the first horizontal direction and the second horizontal direction are determined to be not changed, the position D of the Bluetooth device is not accurately positioned based on the position D of the Bluetooth device, and the position C is not accurately positioned.
Specifically, the scheme provided by the embodiment of the application determines, based on the newly determined first deflection angle and each second deflection angle, a horizontal deflection angle indicating a current direction of the electronic device and a position where the bluetooth device is located, where the second deflection angle may indicate a change condition of a direction in which the position where the bluetooth device is located points to the position where the electronic device is located when the electronic device moves on a horizontal plane, so that even if the electronic device moves on the horizontal plane, the change condition of the direction in which the position where the bluetooth device is located is determined by each second deflection angle even if the obtained first deflection angle does not change, and therefore the bluetooth device can be located more accurately through the horizontal deflection angle.
For example, referring to fig. 5B, fig. 5B is a schematic diagram of positioning based on a first deflection angle and a second deflection angle provided in the embodiment of the present application, in fig. 5B, points a, B and C represent positions where an electronic device passes during moving on a horizontal plane, point D represents a position where a bluetooth device is located, when the electronic device is located at point a, the bluetooth device may be positioned based on the first deflection angle and the second deflection angle, that is, a direction pointed by an arrow located at point a is obtained by the first deflection angle and the second deflection angle, and an pointing direction pointed by an arrow located at point a is obtained by deflecting the first deflection angle and the second deflection angle based on an orientation of the electronic device, where the arrow is pointed at point D where the bluetooth device is located; then the electronic device moves along the arrow of the point a, when the electronic device moves to the point B, if the orientation of the electronic device does not change and the signal intensity of the bluetooth signal is detected to be not larger than the signal intensity detected by history, then the determined first horizontal direction and the second horizontal direction do not change, then the calculated first deflection angle does not change, so if the bluetooth device is positioned based on the first deflection angle only, the pointing direction of the arrow of the point B in fig. 5B should be the same as the pointing direction of the arrow of the point B in fig. 5A, at the moment, the arrow of the point B does not point to the point D of the bluetooth device, so that the bluetooth device is positioned based on the first deflection angle only at the moment, but the scheme of fig. 5B is to position the bluetooth device based on the first deflection angle and the second deflection angle at the same time, and even if the first deflection angle does not change, the electronic device can also point to the point D of the bluetooth device at the point D of the point B at the point of the bluetooth device based on the second deflection angle; similarly, if the electronic device continues to move along the arrow at the point B, and moves to the point C, if the orientation of the electronic device is not changed and the signal strength of the bluetooth signal is not greater than the signal strength detected by the history, the determined first horizontal direction and the determined second horizontal direction are not changed, and the calculated first deflection angle is not changed, so if the bluetooth device is positioned based on the first deflection angle only, the pointing direction of the arrow at the point C in fig. 5B should be the same as the pointing direction of the arrow at the point C in fig. 5A, but the scheme in fig. 5B positions the bluetooth device based on the first deflection angle and the second deflection angle at the same time, so even if the first deflection angle is not changed, the electronic device can also determine the position D of the arrow at the point C based on the second deflection angle, and thus the bluetooth device can be accurately positioned based on the first deflection angle and the second deflection angle at the same time.
In one embodiment of the present application, the newly determined first deflection angle and each second deflection angle may be added to obtain a horizontal deflection angle, for example: if the newly determined first deflection angle is represented by β, the second deflection angle is represented by η, and the horizontal offset angle is represented by γ, the horizontal offset angle γ can be determined according to the following formula:
wherein n in the above formula represents the total number of calculated second deflection angles, i is the number of the second deflection angles, η i Is the i second deflection angle.
From the above, in the process of moving the electronic device, the first horizontal direction and the second horizontal direction are continuously determined, then the first deflection angle of the newly determined first horizontal direction deviating from the second horizontal direction is calculated, because the first horizontal direction is the horizontal direction in which the electronic device faces, the second horizontal direction is the horizontal direction in which the signal intensity of the bluetooth signal is strongest, and because the position of the bluetooth device should be located in the direction in which the signal intensity of the bluetooth signal is strongest, the first deflection angle may represent the angle of the direction in which the electronic device faces deviating from the direction in which the bluetooth device faces, and then the second deflection angle between the third horizontal direction and the fourth horizontal direction is calculated, because the third horizontal direction is the horizontal direction in which the position of the bluetooth device faces to the initial position in which the electronic device moves at this time, and the fourth horizontal direction is: the position of the bluetooth device is in a horizontal direction of the termination position of the movement of the electronic device, so that a second deflection angle between the third horizontal direction and the fourth horizontal direction can represent a change condition of a direction of the position of the bluetooth device pointing to the position of the electronic device when the electronic device moves on a horizontal plane, and further, a horizontal deflection angle representing a current direction of the electronic device and the position of the bluetooth device can be determined based on the first deflection angle and the second deflection angle at the same time, and further, the bluetooth device can be positioned based on the horizontal deflection angle.
In addition, in the process that the electronic device moves on the horizontal plane, under the condition that the orientation of the electronic device is not changed and the signal intensity of the Bluetooth signal is not larger than the signal intensity detected by history, the determined first horizontal direction and the determined second horizontal direction are not changed, and further the calculated first deflection angle is not changed, but because the position of the electronic device may be changed, the Bluetooth device is positioned only based on the first deflection angle and is not accurate, and the scheme provided by the embodiment of the application considers the first deflection angle and the second deflection angle at the same time, and the second deflection angle can represent the change condition that the position of the Bluetooth device points to the direction of the position of the electronic device when the electronic device moves on the horizontal plane.
In an embodiment of the present application, after the electronic device locates the bluetooth device, the location result may be displayed on a screen of the electronic device, or the location result may be played by a voice playing method, so that the user may carry the electronic device to find the bluetooth device based on the location result. The electronic device locates the bluetooth device based on the horizontal offset angle, so the locating result may be: offset 30 to the right, i.e. the bluetooth device is located to the right of the location of the electronic device and offset 30.
In another embodiment of the present application, the above step S201 may be implemented by the following steps a-B.
Step A: in the process of self movement, continuously acquiring first direction data, and determining a first horizontal direction of self orientation based on the latest first direction data.
Wherein, the first direction data is: and the gyroscope and/or the geomagnetic sensor installed in the electronic equipment acquire data.
Specifically, in the case where the gyroscope and/or the geomagnetic sensor are/is mounted on the electronic device, first, the first direction data may be continuously acquired based on the gyroscope and/or the geomagnetic sensor, and then the first horizontal direction in which the electronic device is oriented may be determined based on the first direction data.
In one embodiment of the present application, the first direction data may be continuously acquired based on the gyroscope, the first direction data may be continuously acquired based on the geomagnetic sensor, and the first direction data may be acquired based on both the gyroscope and the geomagnetic sensor.
In another embodiment of the present application, after the first direction data is obtained, noise reduction processing may be performed on the first direction data, so that the obtained first direction data is more accurate, where noise reduction processing may be performed on the first direction data based on a kalman filter algorithm, and noise reduction processing may be performed on the first direction data based on the kalman filter algorithm, which is not described in detail herein.
And (B) step (B): when the signal intensity of the Bluetooth signal is detected to be larger than the signal intensity detected historically, a second horizontal direction in which the signal intensity of the Bluetooth signal is strongest is determined based on the second direction data.
Wherein, the second direction data is: and data acquired by the gyroscope and/or the geomagnetic sensor installed in the electronic equipment when the strongest signal intensity is detected.
Specifically, in the case where the gyroscope and/or the geomagnetic sensor are/is mounted on the electronic device, first, the second direction data may be continuously acquired based on the gyroscope and/or the geomagnetic sensor, and then, the second horizontal direction in which the signal strength of the bluetooth signal is strongest may be determined based on the second direction data.
In one embodiment of the present application, the second direction data may be continuously acquired based on the gyroscope, the second direction data may be continuously acquired based on the geomagnetic sensor, and the second direction data may be simultaneously acquired based on the gyroscope and the geomagnetic sensor.
In another embodiment of the present application, after the second direction data is obtained, noise reduction processing may be performed on the second direction data, so that the obtained second direction data is more accurate, where noise reduction processing may be performed on the second direction data based on a kalman filter algorithm, and noise reduction processing may be performed on the second direction data based on the kalman filter algorithm, which is not described in detail herein.
In another embodiment of the present application, in the case where the first direction data and the second direction data are continuously acquired simultaneously based on the gyroscope and the geomagnetic sensor at the same time, the first deflection angle in the above-described step S202 may be calculated in the following manner.
First, the first horizontal direction θ may be determined based on the continuously acquired first direction data of the gyroscope 0 Determining a second horizontal direction θ based on continuously acquired second direction data of the gyroscope 1 Then, a second horizontal direction sigma is determined based on the second direction data continuously acquired by the geomagnetic sensor 0 Determining a second horizontal direction sigma based on continuously acquired second direction data of the geomagnetic sensor 1 。
Then, a difference Δθ between the second horizontal direction and the first horizontal direction determined based on the gyroscope is calculated:
Δθ=θ 1 -0
calculating a difference Δσ between the second horizontal direction and the first horizontal direction determined based on the geomagnetic sensor:
Δσ=σ 1 -σ 0
finally, the first deflection angle can be calculated by the following formula:
in view of the above, in the case where the gyroscope and/or the geomagnetic sensor is mounted on the electronic apparatus, first, the first direction data and the second direction data may be continuously acquired by the gyroscope and/or the geomagnetic sensor, then, the first horizontal direction may be determined based on the first direction data, and the second horizontal direction may be determined based on the second direction data. Therefore, the first horizontal direction and the second horizontal direction can be determined through the scheme provided by the embodiment of the application.
In addition, in the prior art, the first direction data and the second direction data are generally continuously acquired only based on the gyroscope or only based on the geomagnetic sensor, and the scheme provided by the embodiment of the application can simultaneously acquire the first direction data and the second direction data based on the gyroscope and the geomagnetic sensor together.
In another embodiment of the present application, the embodiment shown in fig. 2 further includes the following step C.
Step C: and calculating the target distance between the position of the Bluetooth equipment and the position of the Bluetooth equipment based on the signal intensity of the Bluetooth signal detected by the Bluetooth equipment.
Specifically, in general, the stronger the signal strength of the bluetooth signal detected by the electronic device, the closer the distance between the position of the bluetooth device and the position of the electronic device, the weaker the signal strength of the bluetooth signal detected by the electronic device, and the farther the distance between the position of the bluetooth device and the position of the electronic device, so the target distance between the position of the bluetooth device and the position of the electronic device can be calculated based on the signal strength of the bluetooth signal detected by the electronic device.
In one embodiment of the present application, the target distance between the location of the bluetooth device and the location of the bluetooth device may be calculated based on an RSSI (Received Signal Strength Indicator ), where the RSSI value is less than 0, and the smaller the absolute value of the RSSI value, the stronger the signal strength of the bluetooth signal detected by the electronic device itself.
Specifically, the target distance may be calculated using the following formula:
wherein Dis represents: the target distance, RSSI, represents: the signal intensity of the bluetooth signal detected by the electronic device, N represents: when the distance between the location of the electronic device and the location of the bluetooth device is 1m, the electronic device should detect an RSSI value, where n represents: an environmental attenuation factor.
In addition, after the target distance is calculated, the distance between the position of the Bluetooth device and the position of the electronic device is determined, so that the electronic device can position the Bluetooth device according to the horizontal offset angle and the target distance at the same time.
Therefore, according to the general knowledge, the stronger the signal intensity of the Bluetooth signal detected by the electronic device, the closer the distance between the position of the Bluetooth device and the position of the electronic device, the weaker the signal intensity of the Bluetooth signal detected by the electronic device, the stronger the distance between the position of the Bluetooth device and the position of the electronic device, so that the target distance between the position of the Bluetooth device and the position of the electronic device can be calculated based on the signal intensity of the Bluetooth signal detected by the electronic device, and the Bluetooth device can be positioned by combining the target distance and the horizontal offset angle, so that the positioning result is more accurate.
In addition, the solution provided in the embodiment of the present application is to determine the target distance based on the signal strength of the bluetooth signal, and the target distance does not need to be determined based on assistance of a third party device, for example: bluetooth base station, bluetooth anchor point, AOA (Angle of Arrival), etc., and thus can avoid the problem of incompatibility with third party equipment.
As shown in fig. 6, a flowchart of a second bluetooth device positioning method according to an embodiment of the present application, compared to the embodiment shown in fig. 2, the step S203 may include the following steps: S203A-S203C.
Step S203A: and determining a first linear distance and a second linear distance under the condition that the electronic equipment moves on the horizontal plane.
Wherein, the first straight line distance is: the linear distance between the initial position of the electronic device moving at this time and the bluetooth device is the second linear distance: and a linear distance between the termination position of the movement of the electronic equipment and the Bluetooth equipment.
Such as: referring to fig. 7A, fig. 7A is a schematic diagram of a moving process of a first electronic device according to an embodiment of the present application, in fig. 7A, a point P is an initial position of the electronic device moving at the time, a point Q is an end position of the electronic device moving at the time, a point O is a position of a bluetooth device, and a length D of a connection line between the point O and the point P 1 The length D of the connecting line between the O point and the Q point is represented by the first straight line distance 2 Representing the second straight line distance.
In an embodiment of the present application, the first straight line distance and the second straight line distance may be calculated based on RSSI, and the specific implementation manner of calculating the first straight line distance and the second straight line distance based on RSSI is similar to the embodiment in the step C, and will not be repeated here.
Step S203B: and calculating the translation angle based on the horizontal acceleration of the electronic equipment.
Wherein, the translation angle is: the electronic device is moved in a horizontal movement direction and a fifth horizontal direction, and the fifth horizontal direction is: the initial position of the electronic equipment moving at the time is in the horizontal direction of the position of the Bluetooth equipment.
First, referring to fig. 7B, fig. 7B is a schematic diagram of a moving process of the second electronic device provided in this embodiment of the present application, in fig. 7B, a point P is an initial position of the electronic device moving at this time, a point Q is an end position of the electronic device moving at this time, a point O is a position where a bluetooth device is located, an arrow direction of the point P pointing to the point O is the fifth horizontal direction, and an arrow direction of the point P pointing to the point Q is a horizontal moving direction of the electronic device moving at this time, so an included angle Δα in fig. 7B is the translation angle.
Specifically, as long as the electronic device moves on the horizontal plane, the electronic device must have a horizontal acceleration, so the electronic device can determine which direction to move in on the basis of the horizontal acceleration, and further can calculate the translational angle.
In an embodiment of the present application, in a case where the electronic device is mounted with an accelerometer, the horizontal acceleration of the current movement of the electronic device may be determined based on the accelerometer.
In another embodiment of the present application, after the above-mentioned horizontal acceleration is obtained based on the accelerometer, the noise reduction processing may be performed on the above-mentioned horizontal acceleration, so that the obtained horizontal acceleration is more accurate, where the noise reduction processing may be performed on the above-mentioned horizontal acceleration based on a kalman filter algorithm, and the noise reduction processing may be performed on the above-mentioned horizontal acceleration based on the kalman filter algorithm, which is not described in detail herein.
In another embodiment of the present application, since the electronic device moves on a horizontal plane, a rectangular coordinate system can be constructed in the horizontal plane, and then the electronic device has an initial acceleration a of X component parallel to the X axis when the electronic device is at the initial position during the movement of the electronic device on the horizontal plane x1 Initial acceleration a of Y component parallel to Y axis y1 When the electronic equipment is positioned at the end position, the electronic equipment canHaving an X-component initial acceleration a parallel to the X-axis x2 Initial acceleration a of Y component parallel to Y axis y2 ,
Then, when a x1 Not less than 0 and a x2 When not less than 0, the following formula can be obtained:
when a is x1 Less than or equal to 0 and a x2 At less than or equal to 0, the following formula can be obtained:
wherein alpha is 1 The representation is: when the position of the electronic equipment is the initial position, the x component initial acceleration a x1 Initial acceleration a with y component y1 Included angle alpha 2 The representation is: when the position of the electronic equipment is the termination position, the x component terminates the acceleration a x2 Terminating acceleration a with y component y2 An included angle between the two.
Finally, the above-described translational angle Δα can be calculated by the following formula:
Δα=α 2 -α 1
step S203C: and calculating a second deflection angle between the third horizontal direction and the fourth horizontal direction based on the translation angle, the first linear distance and the second linear distance.
Specifically, the translation angle represents an angle between an initial position and a final position of the electronic device when the electronic device moves on a horizontal plane, the first linear distance is a linear distance between the initial position of the electronic device moving at the time and the bluetooth device, and the second linear distance is a linear distance between the final position of the electronic device moving at the time and the bluetooth device, so that if the electronic device moves on the horizontal plane based on the translation angle, the first linear distance and the second linear distance, it can be determined that the position of the bluetooth device points to a change condition of the direction of the position of the electronic device, that is, the second deflection angle.
In one embodiment of the present application, the second deflection angle described above may be calculated based on a sine theorem.
Specifically, referring to fig. 7C, fig. 7C is a schematic diagram of a third movement process of the electronic device according to the embodiment of the present application, in fig. 7C, a point P is an initial position of the movement of the electronic device, a point Q is an end position of the movement of the electronic device, a point O is a position of the bluetooth device, an arrow direction of the point O pointing to the point P is the third horizontal direction, an arrow direction of the point O pointing to the point Q is the fourth horizontal direction, and D 1 Represents the first straight line distance D 2 Representing the second line distance, wherein, the QPO is the translation angle, and the eta is the second deflection angle.
In addition, the arrow direction of the point Q to the point T is the direction in which the initial position of the movement of the electronic device is directed to the position of the bluetooth device, and since the distance of the electronic device each time it moves on the horizontal plane can be considered to be small, the arrow direction of the point Q to the point T and the arrow direction of the point O to the point P can be considered to be parallel.
Since the arrow direction of the point Q pointing to the point T is parallel to the arrow direction of the point O pointing to the point P, +. TQP = +.η, the second deflection angle may be calculated by calculating+. TQP.
First, the following formula can be derived based on the sine theorem:
and then can be derived:
also, because = TQP = = η, we can derive:
∠TQP=∠η=π-∠QPO-∠PQO
finally, the calculated angle TQP is the second deflection angle.
From the above, it can be seen that, first, the first linear distance, the second linear distance, and the translation angle can be calculated, where the translation angle indicates an angle between an initial position and a final position of the electronic device when the electronic device moves on a horizontal plane, and the first linear distance is a linear distance between the initial position of the electronic device that moves and the bluetooth device, and the second linear distance is a linear distance between the final position of the electronic device that moves and the bluetooth device, so that, if the electronic device moves on the horizontal plane, a change condition of a direction in which the position of the bluetooth device points to the position of the electronic device, that is, the second deflection angle, can be determined based on the translation angle, the first linear distance, and the second linear distance. Therefore, the second deflection angle can be calculated according to the scheme provided by the embodiment of the application.
As shown in fig. 8, a flowchart of a third bluetooth device positioning method according to an embodiment of the present application may further include, after the step S201, the following steps compared with the embodiment shown in fig. 2: S205-S207.
Step S205: and determining the pitching angle between the direction with the strongest signal intensity of the Bluetooth signal and the horizontal plane of the electronic equipment.
Specifically, because the direction of the strongest signal strength of the bluetooth signal detected by the electronic device may not be on the horizontal plane where the electronic device is located, that is, the position where the bluetooth device is not located on the horizontal plane where the electronic device is located, the pitch angle between the direction of the strongest signal strength of the bluetooth signal and the horizontal plane where the electronic device is located may also be determined.
For example, referring to fig. 9A, fig. 9A is a schematic view of a pitch angle according to an embodiment of the present application. In fig. 9A, the direction of the X axis is the direction in which the electronic device faces itself, the O point indicates the position of the bluetooth device, the S point indicates the position of the electronic device, the arrow direction of the S point to the O point is the direction in which the signal intensity of the bluetooth signal detected by the electronic device is strongest, and the angle between the direction of the X axis and the arrow direction of the S point to the O point is the pitch angle.
Step S206: and determining a third linear distance between the position of the Bluetooth device and the position of the Bluetooth device based on the strongest signal intensity.
Specifically, the third linear distance may be calculated based on the RSSI, and the embodiment of the step C is similar to the embodiment of the step C in which the third linear distance is calculated based on the RSSI, which is not described herein.
Step S207: and calculating the height difference between the position of the Bluetooth device and the position of the electronic device based on the third linear distance and the pitching angle.
Specifically, the pitch angle is an included angle between a horizontal plane where the electronic device is located and a position where the blue device is located, and the third linear distance is a linear distance between a position where the electronic device is located and a position where the bluetooth device is located, so that a height difference between the position where the bluetooth device is located and the position where the electronic device is located is easily calculated through the third linear distance and the pitch angle.
In one embodiment of the present application, referring to fig. 9B, fig. 9B is a schematic view of a height difference provided in an embodiment of the present application. In fig. 9B, the direction of the X axis is the direction in which the electronic device faces itself, the O point represents the position of the bluetooth device, the S point represents the position of the electronic device, the arrow direction of the S point to the O point is the direction in which the signal strength of the bluetooth signal detected by the electronic device is strongest, the angle λ between the direction of the X axis and the arrow direction of the S point to the O point is the pitch angle, and the connection line D between the O point and the S point 3 And the third straight line distance is represented, and the vertical distance H between the O point and the X axis is the height difference between the position of the Bluetooth device and the position of the electronic device.
The vertical distance H between the O-point and the X-axis can be calculated by the following formula:
H=D 3 *sinλ
specifically, after the height difference is calculated, the electronic device may position the bluetooth device based on the height difference and the horizontal offset angle, and then position the bluetooth device in a three-dimensional space without being limited to a two-dimensional plane.
From the above, the electronic device first determines the third linear distance and the pitch angle, where the pitch angle is an included angle between a horizontal plane where the electronic device is located and a position where the blue device is located, and the third linear distance is a linear distance between a position where the electronic device is located and a position where the bluetooth device is located, so that a height difference between the position where the bluetooth device is located and the position where the electronic device is located can be calculated through the third linear distance and the pitch angle. Therefore, according to the scheme provided by the embodiment of the application, the height difference between the position of the Bluetooth device and the position of the electronic device can be calculated.
In addition, in the prior art, the bluetooth device can be positioned only in the two-dimensional plane, and the scheme provided by the embodiment of the application can simultaneously position the bluetooth device in the three-dimensional space based on the height difference and the horizontal offset angle, so that the positioning result is more accurate.
As shown in fig. 10, a flowchart of a fourth bluetooth device positioning method according to an embodiment of the present application may further include, after the step S207, the following steps compared with the embodiment shown in fig. 8: S208-S210.
Step S208: and continuously acquiring air pressure data acquired by the air pressure gauge installed on the electronic equipment.
Specifically, in the case where the electronic device is equipped with a barometer, the above-described barometer data may be continuously acquired based on the barometer.
In addition, since the electronic device may be moved, the barometer may acquire barometric pressure data at different locations of the electronic device, so that the barometric pressure data may need to be continuously acquired.
In one embodiment of the present application, the electronic device may acquire the barometric data collected by the barometer once after the electronic device performs a movement.
In another embodiment of the present application, after the air pressure data is acquired based on the barometer, noise reduction processing may be performed on the air pressure data, so that the acquired air pressure data is more accurate, where the noise reduction processing may be performed on the air pressure data based on a kalman filter algorithm, and the noise reduction processing may be performed on the air pressure data based on the kalman filter algorithm, which is not described in detail herein.
Step S209: and determining the altitude change amplitude of the electronic equipment based on the air pressure data.
Specifically, since the altitude of the location of the electronic device can be determined from the air pressure data, the altitude change amplitude can be determined based on the air pressure data acquired by the electronic device at different locations.
In one embodiment of the present application, when the electronic device is in the first position, the altitude h of the electronic device in the first position may be determined by the following formula 1 :
When the electronic device is in the second position, the altitude h of the electronic device in the second position can be determined by the following formula 2 :
Wherein P is 0 The representation is: 1 atm, P 1 The representation is: air pressure data acquired by electronic equipment at first position, P 2 The representation is: air pressure data, 44306 andis an empirical constant.
Finally, the altitude change amplitude Δh described above can be calculated by the following formula:
Δh=h 2 -h 1
step S210: the altitude difference is updated based on the altitude change amplitude.
Specifically, the altitude change amplitude may represent the altitude change of the electronic device when moving, so that the altitude change amplitude may be calculated once every time the electronic device moves once, and the altitude difference may be updated.
In one embodiment of the present application, each time the electronic device performs a movement, the calculated altitude change amplitude and the altitude difference before the electronic device performs the movement may be added, and as the updated altitude difference, the altitude difference may be expressed by the following formula:
h=H+Δh
wherein H represents: the electronic device makes the height difference before this movement, h represents: the updated height difference.
From the above, the air pressure data is continuously acquired, and the altitude of the position of the electronic device can be determined according to the air pressure data, so that the altitude change amplitude of the electronic device can be calculated based on the air pressure data, and the altitude change amplitude can represent the altitude change of the electronic device when the electronic device moves, so that the altitude difference of the electronic device after the electronic device moves is updated based on the altitude change amplitude. Therefore, according to the scheme provided by the embodiment of the application, after the electronic equipment moves, the height difference after the movement can be updated.
In one implementation of the present application, as shown in fig. 11, a flowchart of a fifth bluetooth device positioning method provided in an embodiment of the present application may include the following steps: S1101-S1112.
Step S1101: and judging whether the Bluetooth device can be successfully connected.
Specifically, if the bluetooth device can be successfully connected, step S1102 is performed, otherwise step S1103 is performed.
Step S1102: based on the detected signal strength of the bluetooth signal, an RSSI value is determined.
Step S1103: and ending the Bluetooth equipment positioning process.
Step S1104: and calculating the target distance between the Bluetooth equipment and the electronic equipment based on the RSSI value.
Step S1105: the first horizontal direction and the second horizontal direction are continuously determined during the movement of the electronic device itself.
Step S1106: a first deflection angle is calculated for the newly determined first horizontal direction to deviate from the second horizontal direction.
Step S1107: the translation angle is determined based on an accelerometer installed in the electronic device.
Step S1108: a second deflection angle is determined based on the translation angle, the first linear distance, and the second linear distance.
Step S1109: the horizontal offset angle is determined based on the newly determined first deflection angle and each second deflection angle.
Step S1110: and calculating the height difference between the position of the Bluetooth device and the position of the electronic device.
Step S1111: and positioning the Bluetooth device based on the horizontal offset angle, the height difference and the target distance.
Specifically, after the bluetooth device is located, the location result may be displayed on a screen of the electronic device, or the location result may be played through voice, so that the user may find the bluetooth device based on the location result.
For example, referring to fig. 12, fig. 12 is a schematic diagram showing a positioning result according to an embodiment of the present application. Since the solution provided in this embodiment is to locate the bluetooth device based on the above-mentioned horizontal offset angle, the above-mentioned height difference, and the above-mentioned target distance, the positioning result may include the horizontal offset angle, the target distance, and the height difference, that is, the offset 30 ° in fig. 12 is the above-mentioned horizontal offset angle, the height difference 1 meter is the above-mentioned height difference, and the front 0.8 meter is the above-mentioned target distance.
Step S1112: and judging whether to disconnect with the Bluetooth equipment.
Specifically, if the bluetooth device is successfully found, the connection between the bluetooth device and the bluetooth device may be disconnected, that is, step S1103 may be executed, and if the bluetooth device is not found yet, the connection with the bluetooth device is still required, and then step S1104 is executed.
The specific implementation of the steps S1101 to S1112 is described in detail above, and will not be repeated here.
In a specific implementation, the application further provides a computer storage medium, where the computer storage medium may store a program, where when the program runs, the program controls a device where the computer readable storage medium is located to execute some or all of the steps in the foregoing embodiments. The storage medium may be a magnetic disk, an optical disk, a read-only memory (ROM), a random-access memory (random access memory, RAM), or the like.
In a specific implementation, the embodiment of the application further provides a computer program product, where the computer program product contains executable instructions, and when the executable instructions are executed on a computer, the executable instructions cause the computer to perform some or all of the steps in the above method embodiments.
Embodiments of the mechanisms disclosed herein may be implemented in hardware, software, firmware, or a combination of these implementations. Embodiments of the present application may be implemented as a computer program or program code that is executed on a programmable system including at least one processor, a storage system (including volatile and non-volatile memory and/or storage elements), at least one input device, and at least one output device.
Program code may be applied to input instructions to perform the functions described herein and generate output information. The output information may be applied to one or more output devices in a known manner. For purposes of this application, a processing system includes any system having a processor such as, for example, a digital signal processor (Digital Signal Processor, DSP), microcontroller, application specific integrated circuit (Application Specific Integrated Circuit, ASIC), or microprocessor.
The program code may be implemented in a high level procedural or object oriented programming language to communicate with a processing system. Program code may also be implemented in assembly or machine language, if desired. Indeed, the mechanisms described in the present application are not limited in scope to any particular programming language. In either case, the language may be a compiled or interpreted language.
In some cases, the disclosed embodiments may be implemented in hardware, firmware, software, or any combination thereof. The disclosed embodiments may also be implemented as instructions carried by or stored on one or more transitory or non-transitory machine-readable (e.g., computer-readable) storage media, which may be read and executed by one or more processors. For example, the instructions may be distributed over a network or through other computer readable media. Thus, a machine-readable medium may include any mechanism for storing or transmitting information in a form readable by a machine (e.g., a computer), including, but not limited to, floppy diskettes, optical disks, compact disk Read-Only memories (Compact Disc Read Only Memory, CD-ROMs), magneto-optical disks, read-Only memories (ROMs), random Access Memories (RAMs), erasable programmable Read-Only memories (Erasable Programmable Read Only Memory, EPROMs), electrically erasable programmable Read-Only memories (Electrically Erasable Programmable Read Only Memory, EEPROMs), magnetic or optical cards, flash Memory, or tangible machine-readable Memory for transmitting information (e.g., carrier waves, infrared signal digital signals, etc.) in an electrical, optical, acoustical or other form of propagated signal using the internet. Thus, a machine-readable medium includes any type of machine-readable medium suitable for storing or transmitting electronic instructions or information in a form readable by a machine (e.g., a computer).
In the drawings, some structural or methodological features may be shown in a particular arrangement and/or order. However, it should be understood that such a particular arrangement and/or ordering may not be required. Rather, in some embodiments, these features may be arranged in a different manner and/or order than shown in the drawings of the specification. Additionally, the inclusion of structural or methodological features in a particular figure is not meant to imply that such features are required in all embodiments, and in some embodiments, may not be included or may be combined with other features.
It should be noted that, in the embodiments of the present application, each unit/module is a logic unit/module, and in physical aspect, one logic unit/module may be one physical unit/module, or may be a part of one physical unit/module, or may be implemented by a combination of multiple physical units/modules, where the physical implementation manner of the logic unit/module itself is not the most important, and the combination of functions implemented by the logic unit/module is the key to solve the technical problem posed by the present application. Furthermore, to highlight the innovative part of the present application, the above-described device embodiments of the present application do not introduce units/modules that are less closely related to solving the technical problems presented by the present application, which does not indicate that the above-described device embodiments do not have other units/modules.
It should be noted that in the examples and descriptions of this patent, relational terms such as first and second, and the like are used solely to distinguish one entity or action from another entity or action without necessarily requiring or implying any actual such relationship or order between such entities or actions. Moreover, the terms "comprises," "comprising," or any other variation thereof, are intended to cover a non-exclusive inclusion, such that a process, method, article, or apparatus that comprises a list of elements does not include only those elements but may include other elements not expressly listed or inherent to such process, method, article, or apparatus. Without further limitation, an element defined by the phrase "comprising" does not exclude the presence of other like elements in a process, method, article, or apparatus that comprises the element.
While the present application has been shown and described with reference to certain preferred embodiments thereof, it will be understood by those skilled in the art that various changes in form and details may be made therein without departing from the spirit and scope of the present application.