Location scheduling with dynamic priority adjustment
The UWB location planning method dynamically adjusts priority scores to optimize UWB system resource utilization, addressing the issue of prolonged gaps in localization and ensuring consistent vehicle functionality by prioritizing identifiers with higher scores, thus enhancing localization precision and vehicle functionality.
Patent Information
- Authority / Receiving Office
- WO · WO
- Patent Type
- Applications
- Current Assignee / Owner
- VALEO COMFORT & DRIVING ASSISTANCE
- Filing Date
- 2025-11-21
- Publication Date
- 2026-06-25
Smart Images

Figure EP2025083787_25062026_PF_FP_ABST
Abstract
Description
Description Title of the invention: Location planning with dynamic priority adjustment technical field
[0001] This disclosure relates to a planning method implemented by a UWB (Ultra Wide Band) system, a method of using a UWB system, a UWB system configured to perform or be used according to such methods, a computer program for performing such methods, and a medium for such a program. Technical background
[0002] Vehicles equipped with a UWB system now exist, comprising one or more UWB anchors (also called sensors) installed within the vehicle. Such a UWB system typically registers a set of wearable identifiers (such as key fobs or third-party devices like mobile phones or smartwatches) and is then able to determine the position of each of these wearable identifiers based on periodic UWB location checks between each wearable identifier and the system's UWB anchors. Such UWB systems are thus capable of simultaneously locating the driver's key fob and a passenger's mobile phone, and of executing various vehicle functions based on the identifier locations (such as unlocking the doors and / or starting the vehicle when a user approaches).
[0003] To perform these location tracking, each wearable device can be configured to send its respective programming to the UWB system, for example, when the system enters a certain perimeter around the vehicle. The UWB system and the wearable device can then be configured to perform UWB location tracking according to the established programming. Figure 1 shows an example of such programming received for a set of two wearable devices: a first device with ID 100 and a second device with ID 200. Specifically, the programming for the first device with ID 100 includes UWB locations 111, 112, and 113 performed at a first interval, and the programming for the second device with ID 200 includes UWB locations 211, 212, and 213 performed at a second interval.
[0004] When multiple locations are scheduled simultaneously (i.e., in such a way that they would overlap if executed, with the time intervals on which they are scheduled having a non-zero intersection), existing scheduling methods generally retain only one location and therefore include the cancellation of all other UWB locations (for example, only the one scheduled first can be retained). Such cancellation effectively reduces the risk of interference between the UWB exchanges of the UWB locations if they were executed together.For example, in Figure 1, the UWB 112 location of the first portable identifier 100 and the UWB 212 location of the second portable identifier 200 are programmed at the same time, and the existing process therefore cancels the UWB 212 location programmed a little later, so that, during execution, only the remaining UWB 112 location is executed.
[0005] One limitation is that these UWB location cancellations reduce the number of locations ultimately executed. Specifically, they penalize one identifier over the others each time. In such a situation, when several successive locations are canceled for a single identifier, several seconds can elapse before the next location is executed, leading to malfunctions in vehicle functionalities that rely on the identifier's position. For example, the user might approach the vehicle without it automatically unlocking, as is normally the case with this feature.
[0006] Therefore, there is a need for an improved UWB location planning process. Summary
[0007] We propose a planning method implemented by a vehicle UWB system (hereafter referred to as the "planning method" or "method"). The UWB system includes one or more UWB anchors. The UWB system has stored a plurality of wearable identifiers. The system is configured to store, for each wearable identifier, an associated priority score. The method includes receiving, for each wearable identifier, a respective programming of UWB locations from the vehicle UWB system. The method includes detecting at least one overlap between UWB locations programmed with at least two Portable identifiers. The process includes, for each detected overlay, the following three steps. The first step involves determining a priority identifier from among the portable identifiers involved in the overlay, the priority identifier having the highest priority score. The second step involves deprogramming each UWB location included in the overlay other than the UWB location with the portable identifier determined to be the priority identifier. The third step involves, for each deprogrammed UWB location, increasing the priority score of the portable identifier involved in the deprogrammed UWB location.
[0008] The process may further include, for each overlay, and after each deprogramming, a reduction in the priority score of the portable identifier determined to be of priority.
[0009] Each wearable device can be configured to perform periodic UWB location checks with the UWB system at a specific interval. The priority score of each wearable device can initially be based on its respective interval.
[0010] The periodicity of at least one initial portion of the wearable identifiers may be equal to the product of a respective multiplier and a predetermined minimum duration. The priority score of each wearable identifier in at least one initial portion may initially be equal to the product of the wearable identifier's respective multiplier and a predetermined coefficient greater than 5 and / or less than 40. For example, the predetermined coefficient may be greater than 15 and / or less than 25. The score may increase by 1 for each deprogrammed UWB location.
[0011] The priority score of at least one wearable identifier can be increased multiple times. The increase applied to the score can begin after a predetermined number of times the score has been increased.
[0012] In the respective programming of at least one second part of the portable identifiers, each UWB location can be programmed within a respective slot of a respective period comprising several slots. The slot on which the UWB location is programmed can vary pseudo-randomly within each period.
[0013] Each UWB location with a portable identifier can include the transmission, by the portable identifier, of UWB frames, and the reception, by the UWB system, of the transmitted UWB frames. Deprogramming a UWB location can include canceling the vehicle's reception of UWB frames transmitted by the portable identifier involved in the UWB location.
[0014] We also propose a method for using a vehicle UWB system (hereafter referred to as the "use method"). The UWB system includes one or more UWB anchors. The UWB system has stored a plurality of portable identifiers. The use method includes executing the UWB locations planned according to the planning method.
[0015] A vehicle-mounted UWB system is also offered, comprising one or more UWB anchors. The UWB system is configured to execute the planning process. Alternatively, or additionally, the UWB system is configured for use according to the operational process.
[0016] We also offer a computer program for a vehicle UWB system. The computer program includes instructions which, when executed by a processor of the vehicle UWB system, cause the processor to execute the planning process and / or to be used according to the operating process.
[0017] We also offer a computer-readable storage medium on which the said computer program is recorded. Brief description of the figures
[0018] Non-limiting examples will be described with reference to the following figures:
[0019] Figure 1 illustrates an example of an existing UWB location planning solution with handheld devices.
[0020] Figure 2 illustrates an example of a flowchart of the planning process.
[0021] Figure 3 illustrates an example of UWB location with a wearable identifier.
[0022] Figure 4 illustrates an example of programming a session of periodic UWB localizations.
[0023] Figure 5 illustrates an example of process implementation.
[0024] Figures [Fig. 6] and [Fig. 7] show examples of results obtained with and without use of the planning process.
[0025] Figure 8 illustrates an example of a vehicle system.
[0026] Figure 9 illustrates an example of a portable identifier. Detailed description
[0027] With reference to the flowchart in Figure 2, a planning process implemented by a vehicle UWB system (hereafter referred to as the "planning process" or "process") is proposed. The UWB system includes one or more UWB anchors. The UWB system has stored a plurality of wearable identifiers. The system is configured to store an associated priority score for each wearable identifier. The process includes receiving, for each wearable identifier, a respective programming of UWB locations from the vehicle UWB system. The process includes detecting at least one overlap between UWB locations programmed with at least two wearable identifiers. For each detected overlap, the process includes the following three steps.The first step involves determining a priority identifier from among the portable identifiers involved in the overlay, with the priority identifier having the highest priority score. The second step involves deprogramming each UWB location included in the overlay other than the UWB location with the portable identifier determined to be the priority. The third step involves, for each deprogrammed UWB location, increasing the priority score of the portable identifier involved in the deprogrammed UWB location.
[0028] The process offers improved utilization of the vehicle's UWB system.
[0029] Indeed, the process improves the localization of different wearable identifiers. Specifically, it increases the priority score of wearable identifiers whose UWB location has been deprogrammed, thus giving them higher priority during subsequent overlays. This dynamic adjustment of the priority score improves the distribution of locations among the different wearable identifiers. In particular, it increases the likelihood of not experiencing multiple consecutive UWB location deprogrammings, thereby preventing prolonged periods without localization for some identifiers. Ultimately, the process thus enables the sensitive and precise localization of all wearable identifiers.
[0030] We also propose a method for using a vehicle UWB system comprising one or more UWB anchors. The system has recorded a plurality of portable identifiers. The usage process includes executing the UWB locations planned according to the planning process. For each overlay detected during the planning process, at the corresponding time during execution, the usage process therefore includes only executing the single location that is not deprogrammed with the portable identifier determined as the priority for that overlay (and not executing the deprogrammed location(s) with the other identifier(s) involved in the overlay). The execution of a location may include performing the UWB exchanges between the portable identifier involved and the vehicle, for the location.
[0031] After or during the execution of the localization operations, the usage process may include determining the position of each wearable identifier (WI) based on the localization operations that have been performed. For example, for each WI, the execution of a localization operation involving the WI may include providing a relative position of the WI with respect to the UWB system. In particular, each localization operation may include UWB exchanges between the WI and one or more UWB anchors (also called "sensors") of the system (for example, all anchors) to determine the respective distances between the WI and each of the anchors.Each location can then include a determination of the relative position of the portable identifier with respect to the UWB system from the determined distances (the position corresponding for example to the intersection of spheres drawn from the anchors and having as radii the calculated distances).
[0032] Each distance to an anchor can be measured by exchanging a UWB signal between the identifier and the anchor and calculating a time-of-flight (TOF) between the identifier and the anchor during this exchange. This TOF can be the time taken by the exchanged signal to travel to or from the identifier and the anchor. The TOF can be calculated by either the identifier or the anchor, and can be done in any way. For example, each measurement could include recordings of the times the exchanged signal was sent and received, and the calculation could be performed by subtracting the signal's TOF travel from these recordings. Each measurement could then include subtracting the distance between the identifier and the anchor from this TOF. For example, each measurement could This involves multiplying the signal velocity by the calculated time of flight. The signal velocity can, for example, be a predetermined and known speed for this type of signal (e.g., stored in the identifier or system memory). The signal velocity, i.e., the propagation speed of UWB waves, can be the speed of light (a constant stored in memory).
[0033] The successive localizations performed during communication can allow the real-time determination of the wearable identifier's position. For example, each localization can provide the wearable identifier's position relative to the UWB system at a given instant, and the set of all performed localizations can provide an evolution of its position over time. The usage method can thus include determining the evolution of the wearable identifiers' positions based on the periodic UWB localizations performed.
[0034] The usage process may also include one or more uses of the determined relative positions of the wearable identifier. For example, the usage process may include activating one or more vehicle features based on the wearable identifier's position. For example, the feature may include locking the vehicle when it is determined that the wearable identifier is outside the vehicle, for example, after a predetermined time has elapsed between the time it is determined that the wearable identifier is outside. In some examples, the feature may include selectively unlocking one or more vehicle openings (for example, a driver's door, a passenger's door, or a vehicle trunk) based on the determined relative positions of the wearable identifier.For example, the functionality might include unlocking the driver's door or the vehicle's trunk when the wearable device approaches the door or trunk. In other examples, the functionality might include activating one or more vehicle functions, such as turning on the music or adjusting the mirrors to suit the person wearing the wearable device, which is positioned near the driver's seat. The method of use could include any combination of these examples of functionality.
[0035] The planning process is now discussed. The steps of the planning process can be executed by the vehicle's UWB system. Each step of this process is now discussed in more detail.
[0036] The UWB system has registered multiple wearable identifiers (or wearable IDs). A wearable identifier is a mobile object identifiable by the vehicle, whose location may or may not authorize one or more specific vehicle actions. For example, the identifier may be used to unlock the vehicle and / or start the vehicle's engine. For instance, the process may involve unlocking the vehicle when the identifier is located near the vehicle, or starting the engine when the identifier is inside the vehicle. The wearable identifiers registered by the system may include one or more of the vehicle's remote key fobs. Alternatively or additionally, the wearable identifiers registered by the system may include one or more third-party devices, i.e., devices manufactured by a company other than the one that manufactures the vehicle's UWB system.For example, one or more third-party devices may include smart devices, such as mobile phones or smartwatches.
[0037] The vehicle and each wearable device can be configured to communicate using the UWB (Ultra Wide Band) communication protocol. UWB can refer to a communication protocol, such as the one specified by IEEE 802.15.4. This protocol may include an initialization phase with an exchange of communication parameters (such as the location frequency, period length, number of slots in each period, and / or the pseudo-random variation of location positions). The wearable devices can also be configured to communicate with the vehicle using the BLE (Bluetooth Low Energy) communication protocol.Some wearable identifiers (for example, all of them) can also be configured to communicate with the vehicle using one or more other communication protocols, such as the NFC (Near Field Communication) protocol. For each wearable identifier, the... UWB communication with the vehicle can only be initiated if a prior connection has been established according to the BLE protocol.
[0038] The method includes, for each wearable identifier, an S10 reception of a respective UWB location programming with the vehicle's UWB system via one or more UWB anchors. The received programming may be numeric data. The respective programming received for each wearable identifier may include numeric data defining a temporal positioning of the UWB locations, for example, on a time axis (or line). For example, the respective programming received for each wearable identifier may include numeric data defining start and end times for each UWB location specified on this time axis. The time axis may represent a future period of time that has not yet elapsed at the time the programming is received.
[0039] The programming sent by each wearable device may include periodic UWB locations with the vehicle's UWB system. Periodic UWB locations are defined as UWB locations performed at fixed, more or less regular intervals. For example, the programming may include, for a set of successive periods (of approximately equal duration), one UWB location for each period. The duration of these successive periods corresponds to the periodicity of the wearable device.
[0040] In some examples, the location position within each period can vary. This can be the case, for instance, for third-party device-type wearable identifiers. For example, each period might comprise an identical number of successive slots (of roughly equal duration), and the UWB location could be programmed within one of these slots. In this case, the received programming could include, for each UWB location, the slot number on which the UWB location is programmed. In some examples, the slot on which the UWB location is programmed could, for instance, vary pseudo-randomly within each period. Such pseudo-random variation further improves the localization of different wearable identifiers, since it prevents the same overlap between wearable identifiers from being repeated several times regularly (such a situation could, for example, occur when the periodicities (identifiers have common multiples). Indeed, when an overlap occurs in one period, the probability of having an overlap for the following period is low.
[0041] The pseudo-random variation at each period can, for example, follow a law whose parameters are known by the identifier and the vehicle. For example, the system and the portable identifier can initially exchange these parameters to each determine, using an algorithm, the pseudo-random distribution of locations at each period. The parameters of the law can be different for each identifier. The algorithm can, for example, use the following formula:
[0042] where i is the function index, and HOP_Key is a parameter of this algorithm. This value allows us to differentiate between the various identifiers around the vehicle. The final entropy of this function is 2 16The resulting distribution of slot indices assigned for the different periods can be more or less uniform, for example, after a certain number of periods. To have a whole number of slots in each period, filler slots can be added to the end of each location.
[0043] Alternatively, the location position over each period can be fixed. For example, UWB localizations can be performed with a fixed frequency. When periods are divided into slots, this means that each UWB location is always placed on the same slot within each period (for example, the first one). The received programming can then include the frequency of the locations (or the periodicity) and a start time for the first location, for example. In some examples, the received programming can also include numerical data defining each of the UWB transmissions from each UWB location (for example, designating the start and end times of each UWB exchange from the UWB location).
[0044] Each registered wearable device can be configured to send its respective programming, which is received by the UWB system. Each registered wearable device can be within a given perimeter around the vehicle, allowing its respective programming to be sent to the UWB system. The programming These respective values can be sent by wearable devices and received by the UWB system using a companion communication protocol (such as the BLE communication protocol). The UWB system may also have registered one or more other wearable devices, which may, for example, currently be out of range. The consideration of these other wearable devices when they come within range of the vehicle is discussed later.
[0045] After or during S10 reception, the process may include recording all received programming, for example, in system memory. The programming received for each handheld identifier may include the periodicity of the handheld identifier (i.e., the duration of each period), the number of slots per period, and / or the duration of each slot or period. For each period, the programming may also include an indication of the slot on which the UWB location is programmed for that period (this slot may vary randomly between periods or be fixed). This information may be specific to the handheld identifier. The handheld identifier may be configured to enforce certain parameters of its programming.
[0046] Each UWB location can include UWB exchanges between the portable identifier and the system's UWB anchors. Each UWB exchange can consist of frame transmissions between the identifier and one or more UWB anchors. In particular, each UWB location with a portable identifier can include the transmission of UWB frames by the portable identifier, followed by the UWB system listening for the transmitted UWB frames. The programming received for each portable identifier can include, for each programming location, a time position of the transmission and reception times of the frames exchanged between the system and the portable identifier. Each frame transmission can, for example, have a duration between 60 and 137 microseconds.
[0047] After reception S10, the method includes detection S20 of at least one overlap of UWB locations programmed with at least two portable identifiers. By overlapping UWB locations, we mean locations that are programmed on time intervals having a non-zero intersection. For example, the time slot on which a first UWB location involving a first portable identifier is programmed may end after the start of the time slot on which a A second UWB location involving a second portable identifier is programmed.
[0048] The detection of an overlap is now discussed, but these details apply to the detection of any overlap. The S20 detection of each overlap can be performed in any way. For example, the S20 detection of an overlap might include the following two steps. A first step might involve projecting the UWB locations of each of the wearable identifiers onto a common time axis. The projection of the UWB locations might include, for each UWB location, an indication of the start and end times of the UWB location on this common time axis. A second step might involve determining an overlap between the projections of at least two overlapping UWB locations. The determination of the overlap might be performed using the start and end times indicated on the axis for each UWB location.For example, determining the overlap may include determining that the start time of the slot on which the second UWB location involving the second portable identifier is scheduled is located before the end time of the slot on which the first UWB location involving the first portable identifier is scheduled.
[0049] After the detection step S20, the process includes repeating steps S31, S32, and S33 for each detected overlap. These steps are now discussed for a given overlap. However, these details apply to any detected overlap.
[0050] The first step involves an S31 determination of a priority identifier from among the at least two portable identifiers involved in the detected overlay. The S31 determination of the priority identifier is performed based on the priority scores of the different identifiers involved. The system is configured to record, for each portable identifier, a priority score associated with that identifier. The system may, for example, include memory in which a table is stored listing the priority scores associated with the different portable identifiers—that is, the value of each identifier's priority score. Each priority score can be a counter of the priority assigned to a portable identifier, and the system can record the value of this counter for each portable identifier. The scores of Priority scores can be any type of mutually comparable value. Each wearable identifier's priority score can correspond to a value within a predetermined set of ordered values. Identifier scores can then be compared based on the order of their values within this set. For example, priority scores can be numbers, such as integers ("1", "2", "3", ...) or real numbers (e.g., "1,2", "2,4", ...), colors (e.g., "green", "yellow", "red", ...), or words (e.g., "low", "medium", and "high").
[0051] The S31 determination of the priority identifier may involve comparing the priority scores of the portable identifiers involved in the overlay. Since the priority scores are dynamically adjusted, the method can consider the latest updated score values. For example, the method can process the overlays sequentially, one after the other (e.g., in the order they were executed), and consider the priority scores of the identifiers as modified during the previously processed overlay at each stage.
[0052] At each overlay, the comparison of priority scores may include determining the identifier with the highest priority score, that is, the score with the highest value (according to the order of the set to which the values belong). This identifier is the one determined to have priority. If several identifiers have the same priority score and it is the highest, the process can determine the priority identifier among these identifiers in any way (for example, randomly, or based on their periodicity, for example, by selecting the identifier with the longest periodicity).
[0053] After the S31 determination of the priority identifier, the process includes the S32 deprogramming of the overlapping UWB location(s) other than the one with the priority portable identifier. In other words, the process deprograms all overlapping UWB locations other than the one with the identifier determined to be priority. For example, if two locations with two identifiers are overlapped, the process deprograms the one with the lower priority identifier. The deprogramming may include reversing steps that the system would otherwise perform if the location were retained. For example, the deprogramming may include preventing the vehicle from listening for UWB frames sent by the identifier. The portable device involved in UWB location tracking. The portable identifier may not be aware that its programming has been canceled. The deprogrammed portable identifier(s) may vary with each overlay.
[0054] For each UWB localization that is deprogrammed, the process then includes increasing the priority score of the portable identifier involved in the deprogrammed UWB localization. For example, the increase might involve assigning a new value to the portable identifier's priority score (this new value having a higher order than the old one), and, for example, storing this new value for the identifier in memory (for example, in the table associating each identifier with its priority score), for example, by overwriting the old value. The process can then consider the new priority score value for the next overlay that is processed.
[0055] When scores have numerical values, increasing a score can include incrementing the portable identifier's priority score. The increment can consist of adding 1 (or any fixed integer value) to the priority score value. The new value can then be equal to the previous value plus the incremented value. Alternatively, when scores have other values (such as colors or words), the increase can consist of assigning the score a higher value in the order of the set to which the values belong—for example, the next highest value (such as "medium" when the previous value was "low").
[0056] In examples, the process can detect multiple (e.g., at least two) UWB location overlaps in the respective programming of wearable identifiers. The process includes repeating steps S31, S32, and S33 for each detected overlap. Steps S31, S32, and S33 are executed as previously discussed, each time considering a new UWB location overlap (and potentially new identifiers involved). At each repetition for a new overlap, the process considers the priority scores of the wearable identifiers as modified during the processing of the previous overlap. Thus, wearable identifiers whose location has been deprogrammed have a higher priority score than others.
[0057] In some examples, for each overlay and after each deprogramming, the process might involve decreasing the priority score of the mobile identifier determined to be prioritized. In other words, after an identifier has been prioritized over others, the process can decrease its priority score so that it subsequently becomes less of a priority relative to the others. This decrease improves the distribution of available slots among the different identifiers. Indeed, it allows identifiers that have not been prioritized to increase their chances of performing a location search in the future, by reducing the risk of the same mobile identifier being prioritized each time.
[0058] When the priority score is a number (for example, a positive integer), decreasing the score can involve decrementing the priority score. Decrementing can involve subtracting 1 (or any fixed integer value) from the priority score value. Alternatively, when scores have other values (for example, colors or words), decrementing can involve assigning the score a lower value in the order of the set to which the values belong—for example, the one immediately preceding it (e.g., "medium" when the previous value was "high"). Alternatively still, decreasing the score can involve resetting it to its initial value for the identifier.For example, the priority score of each portable identifier may initially be a function of the respective periodicity of the portable identifier, and the process may, after an identifier has been prioritized during an overlay, reassign this value to the priority score of the identifier.
[0059] In some examples, when schedules include periodic UWB localizations, the priority score associated with each portable identifier can initially (i.e., before modifications during overlays) be proportional to the periodicity of localizations performed with the system for that identifier. In other words, the priority score of each portable identifier can initially be inversely proportional to the frequency of UWB localizations that the identifier performs with the system. Using such a priority score improves the selection of the priority identifier and thus ultimately allows for better regulation of localizations with different portable identifiers in the event of an overlay. Indeed, it initially prioritizes identifiers that have Longer intervals improve the localization of portable identifiers. Indeed, on the one hand, deprogramming these identifiers would have been particularly detrimental, given the long period without localization until their next relocation with the system. On the other hand, identifiers with shorter intervals are more likely to be able to relocate more quickly, and are therefore less penalized by this cancellation than those with longer intervals.
[0060] In some examples, for at least some of the wearable identifiers, the respective periodicity can be equal to the product of a respective multiplier (called a "RAN multiplier") and a predetermined minimum duration. For example, the wearable identifier can be configured to perform a location update at each successive time interval of duration T (where T is the periodicity of the wearable identifier). In this case, the duration T can be equal to ORAN x Atmini, where ORAN is the respective multiplier of the identifier and Atmini is the predetermined minimum duration. The multiplier can be an integer. The predetermined minimum duration Atmini can be defined by a standard (for example, 96 ms) and can be the same for all the wearable identifiers concerned. The respective multiplier can be initially negotiated by each identifier with the system, for example, during the pre-configuration phase.
[0061] In this case, the priority score of each of these portable identifiers can initially be proportional to the respective multiplier coefficient of the portable identifier. For example, the priority score of at least a first set of portable identifiers can initially be equal to the product of the respective multiplier coefficient of the portable identifier and a predetermined coefficient C. The method may include, after reception S10 (and before detection S20, for example), determining an initial priority score value for each portable identifier, and the method may, for example, calculate the initial value of the priority score multiplier for these identifiers by multiplying the recorded multipliers for them by the predetermined coefficient C. The method may then increase the scores at step S33 from this initial value.
[0062] In some examples, when the priority score increase is an increment of 1, the predetermined coefficient C may be greater than 5 and / or less than 40. For example, the predetermined coefficient C can be greater than 15 and / or less than 25. Such predetermined coefficient C values make the process particularly efficient. Indeed, they guarantee a certain distance between identifiers with different periodicities, so that a certain number of increments are possible before a priority reversal occurs.
[0063] In some examples, for each wearable device identifier (WDI), the increment applied to the score can increase after a predetermined number of reprogrammings. For instance, the system can be configured to record the number of times each WDI has a location that is reprogrammed (e.g., using a counter other than the priority score), and the process can increase the priority score at step S33 with a first increment value (e.g., 1) when the counter value for the relevant WDI is below a predetermined threshold (e.g., 2 or 5), and with a second increment value greater than the first (e.g., 2 or 3) when the counter value for the relevant WDI is above the predetermined threshold. This increase in the increment value after several successive reprogrammings increases the efficiency of the process.
[0064] In some examples, steps S20 to S33 can be repeated each time a new programming is received for a new wearable identifier. For example, this new wearable identifier might initially be out of range of the vehicle, and the user wearing it might approach the vehicle. This new identifier can also be registered by the UWB system (in addition to the others). As the user approaches the vehicle, once the new identifier enters a certain perimeter around the vehicle, the new identifier can be configured to begin locating the vehicle. To do this, the new identifier can be configured to send its programming to the UWB system. The process can then include receiving this programming for the new identifier (as with the other identifiers in step S10).In this case, the process may include repeating steps S20 to S33 with the respective new programming received for this new identifier. The process may, in particular, determine an initial score for this identifier and, as with the other identifiers involved, increase or decrease this score depending on the deprogramming of its locations.
[0065] Examples will now be described with reference to figures 3 to 9.
[0066] Figure 3 illustrates an example of UWB localization with a portable identifier. Localization involves UWB exchanges between the portable identifier and the vehicle system (the UWB exchanges consisting of frame transmissions between the identifier and the system's UWB anchors). UWB localization begins with the portable identifier sending UWB frames to the UWB anchors. Specifically, localization initially involves two 410 transmissions of a frame in the first two time slots from the 400 identifier to each of the UWB anchors 401, 402, and 403. Each slot can last between 1 and 3 ms. For example, each slot is 2 ms in this example. Localization then involves the UWB anchors listening for these 410 UWB frames sent by the 400 portable identifier in these first two time slots. After this first phase, the anchors respond by sending, one after the other, a respective frame to the portable identifier.Specifically, the localization process involves, successively and within a respective time slot, the transmission of a frame by each of the UWB anchors (frame 412 for 401, frame 413 for 402, and frame 414 for 403) to portable identifier 400. The portable identifier is configured to listen for and receive these frames 412, 413, and 414 sent successively by the anchors. The localization process then involves two transmissions, 415, by identifier 400, of a frame in the last two time slots to each of the UWB anchors 401, 402, and 403 of the system. These two transmitted frames are listened for and received by portable identifier 400.
[0067] The duration of the UWB localization "RR_time" can be calculated from the following formula: RR_time = Ranging_Slot_Time * ( Number_ of_Responder + 4), where "Ranging_Slot_Time" is the duration of each slot and "Number_ of_Responder" is the number of anchors in the system.
[0068] The localization process then involves determining the distances between the portable identifier 400 and each of the system's UWB anchors 401, 402, and 403. Each distance to an anchor can be measured from the UWB frames exchanged between the portable identifier and the anchor, and a time-of-flight calculation between the identifier and the anchor. This time-of-flight is the time taken for each frame to travel to and from the identifier and the anchor. The time-of-flight can be calculated by either the identifier or the anchor, and can be done in any way. For example, each measurement could include recordings of the times the frames were sent and received. Frames are exchanged, and the calculation can be performed by deducting from these records the time taken by each frame to travel to the destination or destination. Each measurement can then include a deduction of the distance between the identifier and the anchor from this time-of-flight. For example, each measurement can involve multiplying the speed of the signal carrying the UWB frame by the calculated time-of-flight. The signal speed can be a predetermined and known speed (for example, stored in the identifier's or system's memory).
[0069] The localization process then involves determining the relative position of the wearable identifier with respect to the UWB system based on the calculated distances. Specifically, the position determination includes determining the intersection of spheres calculated on a plane representing the ground on which the vehicle is located and on which the user wearing the identifier is walking. The spheres originate from the system's anchor points and have radii equal to the calculated distances.
[0070] The deprogramming of such a location is now being discussed. A location is executed by both the system and the identifier. However, the system can cancel a location without informing the identifier. The system may, in fact, only manage one location at a time. Each identifier manages its locations through a specific session. During an overlay, the session containing the first programmed location is executed, and the second session waits for the next period to attempt a location between the wearable identifier and the vehicle's anchors.
[0071] To cancel a location associated with an identifier, the system can, for example, stop listening to the frames sent by the portable identifier. For instance, the cancellation might include stopping listening to the first 410 frames sent by the identifier to each anchor. In some examples, the cancellation might also include stopping the transmission of frames 412, 413, and 414 successively transmitted by each anchor thereafter, and / or stopping listening to the last 415 frames sent by the identifier 400.
[0072] Figure 4 illustrates an example of programming a 420 session of periodic UWB locations between a handheld identifier and a UWB system. During the session, periodic UWB locations are performed at fixed, more or less regular intervals. The respective programming includes, for a set of 422 successive periods (of approximately equal duration), a UWB location for each period. The duration of these 422 successive periods corresponds to the periodicity of the portable identifier.
[0073] In some examples, the location position within each period can vary. Each period 422 can comprise an identical number of successive slots 424 (of substantially equal duration), and the UWB location can be programmed within one of these slots 424. In some examples, the slot on which the UWB location is programmed can, for instance, vary pseudo-randomly with each period. Alternatively, the location position within each period can be fixed. For example, each UWB location can always be performed within the same slot of each period (e.g., the first). Each slot 424 is itself divided into time intervals (called "slots"). The location can include UWB exchanges between the wearable identifier and the system within each of these time intervals.
[0074] Figure 5 illustrates an example of process implementation. The figure shows, in particular, the respective programs received in this example from four portable identifiers 431, 441, 451, and 461. The respective program for each portable identifier includes periodic UWB localizations. Specifically, the programs include, for a set of successive periods divided into successive slots, one localization per period on one of the slots of the period. The slot on which the localization is performed varies pseudo-randomly in each period for all three identifiers.
[0075] The figure illustrates, in particular, the initial planned locations for each identifier over the first successive periods. For the first identifier, 431, the figure shows the first three locations, 435, 436, and 437, distributed across three successive periods, 432, 433, and 434. For this identifier, each period is divided into eight slots, and each location is implemented within one of these slots during each period. As illustrated in the figure, the first location, 435, is implemented in the first slot for the first period, 432; the second location, 436, is implemented in the fifth slot for the second period, 433; and the third location, 437, is again implemented in the first slot for the third period, 434.
[0076] Each period is also divided into 8 slots for the second portable identifier 441. However, the location tracking is not performed in the same slots. Specifically, location tracking is performed in the first slot for the first period 442, but in the second slot for the second period 443, and in the third slot for the third period 444.
[0077] For the third device 451, the number of slots per period is 3. Location tracking is performed on the first slot for the first period 452, on the second for the second period 453, and on the third for the third period 454. The slots have a longer duration than those of the first and second identifiers. The fourth portable identifier 461 has a program with longer periods, with 9 slots of approximately the same duration as the third 451. The first location tracking is also performed on the first slot for the first period 462.
[0078] In this example, the first three identifiers, 431, 441, and 451, have roughly the same periodicity. Their location frequency is therefore also roughly the same. They initially have the same priority score, for example, 10. The fourth portable identifier, 461, has a longer periodicity. It therefore initially has a higher priority score than the others, for example, 20. With each overlay, the planning process dynamically updates the priority scores of the different identifiers.
[0079] The method includes an S20 detection of an initial overlap between UWB locations 435, 445, and 463 programmed with portable identifiers 431, 441, and 461. The method includes an S30 determination that identifier 461 has priority among portable identifiers 431, 441, and 461. This is because it has the highest priority score (initially a score of 20, while the others initially have a score of 10). The method then includes an S40 deprogramming of each UWB location included in the overlap, other than UWB location 463, with the portable identifier 461 determined to have priority; that is, deprogramming location 435 with the first portable identifier 431 and location 445 with the second priority identifier 441.
[0080] The method includes an S20 detection of a first overlap between the UWB locations 435, 445 and 463 programmed with the portable identifiers 431, 441 and 461. The process includes an S30 determination that identifier 461 has priority among portable identifiers 431, 441, and 461. Indeed, it has the highest priority score (it initially has a score of 20, while the others initially have a score of 10). The process then includes an S40 deprogramming of each UWB location included in the overlay, other than UWB location 463, with the portable identifier 461 determined to have priority; that is, a deprogramming of location 435 with the first portable identifier 431 and of location 445 with the second priority identifier 441. Since the process has deprogrammed one of their locations, the process increases the priority score of the first and second portable identifiers 431 and 441. The process increments, for example, their score by 1, which thus becomes 10 + 1 = 11.
[0081] The process then includes a detection (S20) of a second overlap, this time between the UWB locations 446 and 455 programmed with the portable identifiers 441 and 451. Since identifier 441 has a priority score of 11, while identifier 455 has a score of only 10, the process determines (S30) that identifier 441 has priority. The process therefore deprograms (S40) the UWB location 455 planned with the third portable identifier 451. It also consequently increases the priority score of this third portable identifier 451, which thus becomes 10+1=11. The process also decreases the score of the second identifier 441, which was able to retain its location, and its score returns, for example, to 10.
[0082] The process then detects another overlap between locations 447 and 456 with the second and third portable identifiers 441 and 451. This time, the third identifier 451 has a higher priority score (11, while the second identifier 441 only has a score of 10). The process therefore determines that the third identifier 451 has priority and deprograms the planned UWB location 447 with the second portable identifier 441. It also increases the priority score of this second portable identifier 441 accordingly and decreases that of the third identifier 451. The locations thus programmed are then executed during the usage process.
[0083] The process thus offers improved use of the vehicle's UWB system. Indeed, initially maintaining the location 463 involving the portable identifier with the highest periodicity 461 avoids an excessively long gap in location for this Identifier 463. Otherwise, it would have been particularly detrimental to identifier 461 not to retain its location, given its low location frequency and the resulting long period without location tracking until its next location with the system. Furthermore, during subsequent overlaps between identifiers 441 and 451 with the same periodicity, the dynamic adjustment of the priority score allows identifiers 441 and 451 to perform location tracking alternately, thus preventing excessively long gaps in location tracking for either identifier. This process therefore allows for a better distribution of locations among the different identifiers and enables the sensitive and precise localization of all portable identifiers.
[0084] Figures 6 and 7 show examples of results obtained in three different situations involving different types of wearable identifiers. These results were obtained by simulating the various illustrated situations. In all three situations, five wearable identifiers are simulated around the vehicle. The first two situations, 501 and 503, illustrate situations with two different types of wearable identifiers. The third situation, 505, illustrates the case of a single type of identifier. The simulation is performed using a Python program to simulate, via a Monte Carlo method, simultaneous location sessions (with a random offset of less than one period) to measure the overlap rate. The characteristics of the wearable identifiers used are given in Table 1 below.
[0085] Table 1
[0086] Figure 6 presents, in these three situations, the results obtained without using the planning process, and Figure 7 the results obtained when the planning process is used. The tables representing the different situations indicate, in particular, for each identifier involved, the longest duration without localization of the identifier (column "Max (ms)"), the percentage of times where more than one second elapsed between two localizations (column "> ls"), and the Identifier priority (column "priority"). When the planning process is not used, in the event of overlap, all identifiers are considered to have the same priority, and only the first location (which starts before the others) is retained. In this case, the results show that the percentages where more than one second elapsed between two locations are significant for long-period identifiers. For example, they are greater than 3% for the first three identifiers in the first situation 501, and greater than 1% in the second and third situations 503 and 505.
[0087] When the scheduling process is used, it dynamically adjusts the priority scores of identifiers based on the reprogramming of their locations. Priority scores are initially defined based on the length of the identifiers' periodicities. Then, each time a location is reprogrammed for an identifier, its priority score is incremented. After a location is successfully reprogrammed for an identifier, its priority score returns to its initial value. The results in the different situations 511, 513, and 515 show that the scheduling process achieves, in all situations, a percentage of instances where more than one second elapsed between two locations of less than 1% for all identifiers. In particular, the probability of having a waiting time greater than one second is reduced sevenfold for identifiers with longer periodicities.The planning process thus enables the sensitive and precise localization of all portable identifiers, avoiding excessively long gaps in localization for those with the longest intervals. In particular, the process yields better results than reducing the performance of devices with the shortest intervals.
[0088] Figure 8 illustrates an example of a vehicle system 10. The system 10 is configured to implement the planning process. In this example, the system includes several secondary UWB sensors (or anchors) 11 connected to a private CAN (Controller Area Network) 12. The secondary UWB sensors 11 are internal to the vehicle. The system also includes a primary sensor (or anchor) 13, which is a master unit for the system. Each UWB sensor includes means for transmitting and receiving UWB exchanges (such as one or more transmitting antennas and / or (receiver of such UWB exchanges), with wearable identifiers, for example to perform UWB location tracking of these wearable identifiers. The system also includes an NFC reader 14. The system supports Bluetooth technology. The main anchor 13 and the NFC reader 14 are also connected to the system's network 12.
[0089] Figure 9 illustrates an example of a portable identifier 310. The portable identifier 310 may, for example, be a vehicle remote key fob. Such a vehicle remote key fob may include a protective housing enclosing the key fob components. The protective housing may be made of plastic, metal, and / or rubberized plastic. The key fob 310 may include a logo, for example, made of metal. The logo may be located on the outer casing of the protective housing, and / or the logo may represent a manufacturer's brand. Such a key fob may also include, inside the protective housing, a metal insert that allows the vehicle to be opened and / or started manually by inserting and manipulating the insert into a respective vehicle lock.
[0090] The handheld identifier 310 includes a BLE component 312, configured to perform BLE communication with a vehicle, and comprising, for example, a microprocessor. The handheld identifier 310 also includes an antenna 316 connected to the BLE component 312. The antenna 316 is configured to transmit or receive BLE signals. The microprocessor of the BLE component 312 may have in memory a computer program enabling BLE communication and performing various specific functions. The handheld identifier 310 also includes a UWB component 311 for performing UWB communication with a vehicle. The handheld identifier 310 also includes a battery 313.
Claims
Demands 1. A planning method implemented by a vehicle UWB system comprising one or more UWB anchors, the UWB system having recorded a plurality of portable identifiers, the system being configured to record, for each portable identifier, an associated priority score, the method comprising: • a reception (S10), for each portable identifier, of a respective programming of UWB locations with the vehicle's UWB system; • a detection (S20) of at least one overlap between UWB locations programmed with at least two portable identifiers; • for each detected overlay: o a determination (S31) of a priority identifier among the handheld identifiers involved in the overlay, the priority identifier having the highest priority score; o a deprogramming (S32) of each UWB location included in the overlay other than the UWB location with the handheld identifier determined as priority, and o for each deprogrammed UWB location, an increase (S33) in the priority score of the handheld identifier involved in the deprogrammed UWB location.
2. A method according to claim 1, further comprising, for each overlay, and after each deprogramming, a reduction of the priority score of the portable identifier determined as priority.
3. Method according to claim 1 or 2, wherein each handheld identifier is configured to perform periodic UWB localizations with the UWB system according to a respective periodicity, the priority score of each handheld identifier being initially a function of the respective periodicity of the handheld identifier.
4. A method according to claim 3, wherein the periodicity of at least a first part of the portable identifiers is equal to the result of the product of a coefficient the respective multiplier and of a predetermined minimum duration, the priority score of each portable identifier of at least one first part being initially equal to the result of the product of the respective multiplier coefficient of the portable identifier and a predetermined coefficient greater than 5 and / or less than 40, for example greater than 15 and / or less than 25, the increase, for each UWB location deprogrammed, of the priority score being an increment of 1.
5. A method according to any one of the preceding claims, wherein, for each portable identifier, the increase applied to the score increases after a predetermined number of successive deprogrammings.
6. A method according to any one of the preceding claims, wherein, in the respective programming of at least a second part of the portable identifiers, each UWB location is programmed within a respective slot of a respective period including several slots, the slot on which the UWB location is programmed varying pseudo-randomly in each period.
7. A method according to any one of the preceding claims, wherein each UWB location with a portable identifier comprises: • the transmission, via the portable identifier, of UWB frames; and • listening, by the UWB system, to the UWB frames sent, the deprogramming of a UWB location including a cancellation of the listening by the vehicle of the UWB frames sent by the portable identifier involved in the UWB location.
8. Method of using a vehicle system comprising one or more UWB anchors, the system having recorded a plurality of portable identifiers, the method comprising an execution of the planned UWB locations according to the method of any one of claims 1 to 7.
9. Vehicle system comprising one or more UWB anchors and configured to perform the method of any one of claims 1 to 7 and / or to be used according to the method of claim 8.
10. Computer program comprising program code instructions for performing the method according to any one of claims 1 to 7 and / or according to claim 8, when said program is executed by a processor.
11. Computer-readable storage medium on which the computer program according to claim 10 is stored.