A wireless control system for glow sticks
By adopting a hierarchical wireless control architecture and timecode synchronization control, the problems of poor synchronization and stability in large-scale wireless control of glow sticks are solved, and efficient lighting effect control and reliable execution of critical events are achieved.
Patent Information
- Application Number
- CN202611229068.6
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2026-08-13
- Publication Date
- 2026-11-03
AI Technical Summary
In large-scale wireless control scenarios for glow sticks, existing technologies suffer from high wireless communication link occupancy, data transmission delays and losses, and asynchronous lighting control. In particular, in complex environments, glow stick terminals cannot receive complete lighting control commands in a timely manner, resulting in poor synchronization and stability.
A hierarchical wireless control architecture is adopted, which decomposes the light effect control frame into time index data and light effect execution data, pre-writes them into the glow stick terminal, and performs regional matching and frame conversion through regional sub-controllers to reduce the data transmission volume of the wireless communication link. Time code is used to synchronously control each glow stick terminal to execute the light effect according to the performance timeline.
It reduces the data transmission volume of the wireless communication link and the data parsing volume of the terminal, improves the synchronization and stability of the glow stick light effect control, enhances the fault tolerance and continuity in complex environments, and ensures the synchronous execution of key light effect events.
Smart Images

Figure CN123035576A_ABST
Abstract
Description
Technical Field
[0001] This invention relates to the field of wireless control technology for electric light sources, and more specifically to a wireless control system for fluorescent sticks. Background Technology
[0002] Existing wireless control solutions for glow sticks typically involve a host computer or main control device generating lighting effect control commands based on the performance timeline and transmitting these commands to the glow stick terminals in real time via a wireless communication link during the performance. These commands generally include control data such as lighting effect type, color, brightness, change cycle, duration, and applicable area. Upon receiving the lighting effect control commands, the glow stick terminals immediately activate their light-emitting components according to these commands.
[0003] For larger performance venues, multiple area control devices can be set up. The main control device sends the lighting effect control instructions to the corresponding area control devices, and then the area control devices forward the instructions to the glow stick terminals in the corresponding areas to achieve regional lighting effect control.
[0004] In the aforementioned control method that issues complete lighting effect control commands in real time, each change in lighting effect requires the transmission of data such as lighting effect type, color parameters, brightness parameters, and lighting effect change parameters via a wireless communication link. When there are many glow sticks, frequent lighting effect changes, or multiple areas need to execute different lighting effects simultaneously, the amount of data that needs to be transmitted per unit time increases with the number of lighting effect events and the number of control areas, which can easily lead to an increase in the occupancy rate of the wireless communication link.
[0005] In situations with limited wireless bandwidth, on-site obstructions such as people, equipment interference, or concurrent communication across multiple areas, complete lighting effect control commands may experience delays, loss, or inconsistent reception times across different areas. Since glow stick terminals rely on real-time received complete lighting effect control commands to execute their effects, if a command fails to arrive in time, some glow sticks may not execute, execute late, or experience asynchronous lighting effects across different areas. Furthermore, the main control device needs to continuously send complete lighting effect data to a large number of terminals, increasing the communication load on large-scale glow stick control systems. Summary of the Invention
[0006] To address the aforementioned technical problems, this invention provides a wireless control system for glow sticks. In large-scale wireless glow stick control scenarios, this system reduces the amount of lighting effect control data that needs to be transmitted via wireless communication links during performances. Furthermore, through regionalized time synchronization control, each glow stick terminal can call the corresponding lighting effect data according to the performance timeline, thereby improving the synchronization and stability of batch glow stick lighting effect control.
[0007] The technical solution adopted in this invention is as follows:
[0008] A wireless control system for glow sticks includes a performance control host computer, a main controller, multiple regional sub-controllers, and multiple glow stick terminals;
[0009] The performance control host computer is used to decompose multiple complete lighting effect control frames into time index data and lighting effect execution data according to the performance timeline, generate a performance control package according to the time index data and the lighting effect execution data, and write the performance control package into the glow stick terminal before the performance starts.
[0010] The main controller is used to generate a first wireless time code frame based on the current performance time code, and send the first wireless time code frame to multiple regional sub-controllers through a first wireless communication link;
[0011] Each of the regional sub-controllers is used to determine whether the first wireless time code frame is applicable to the corresponding region based on the corresponding region information, convert the first wireless time code frame applicable to the corresponding region into a second wireless time code frame containing the current performance time code, and send the second wireless time code frame to multiple glow stick terminals in the corresponding region through the second wireless communication link;
[0012] Each glow stick terminal is used to determine target time index data in the performance control package according to the current performance time code in the received second wireless time code frame, call the lighting effect execution data corresponding to the target time index data, and control the light-emitting component to execute the corresponding lighting effect according to the lighting effect execution data.
[0013] The beneficial effects of this invention are:
[0014] (1) This invention decomposes the complete lighting effect control frame into time index data and lighting effect execution data by the performance control host computer before the performance begins, generates a performance control package, and pre-writes it into the glow stick terminal. This allows the main controller to transmit the current performance time code instead of continuously sending complete lighting effect data such as color parameters, brightness parameters, and lighting effect change parameters during the performance. At the same time, a hierarchical wireless control architecture is formed by the main controller, regional sub-controllers, and glow stick terminals. The regional sub-controllers complete the performance matching, regional filtering, and wireless frame conversion, enabling each glow stick terminal to call the locally stored lighting effect execution data according to the current performance time code. As a result, the amount of data transmission and data parsing on the terminal side of the wireless communication link can be reduced during the performance, the link load when multiple regions and multiple terminals are controlled simultaneously can be reduced, and the impact of delay or loss of complete lighting effect control instructions on lighting effect execution can be reduced, thereby improving the synchronization and stability of batch glow stick lighting effect control.
[0015] (2) The present invention further generates the light effect event density, event synchronization sensitivity, and synchronization risk level based on the number of light effect events within a preset prediction period, the time interval between adjacent light effect events, the magnitude of light effect changes, and the number of target areas. It also dynamically determines the target time code transmission period based on the synchronization risk level, allowing for a longer transmission period during periods of gentle light effect changes and low synchronization requirements, while shortening the transmission period during periods of concentrated light effect changes, wide coverage areas, or high synchronization requirements. For critical light effect events, future time anchor data is also pre-generated and transmitted, enabling the glow stick terminal to establish a binding relationship between the future time anchor data and the target time index data in advance. Therefore, even if a short-term wireless link interruption or real-time time code loss occurs before the execution of a critical light effect event, the glow stick terminal can still call the corresponding light effect execution data based on the local performance timing value and the pre-established binding relationship, thereby balancing the utilization rate of wireless communication resources with the synchronization guarantee capability of critical light effect events, and improving the fault tolerance and continuity of light effect control in complex wireless environments. Attached Figure Description
[0016] Figure 1 This is a block diagram of the wireless control system for glow sticks according to an embodiment of the present invention;
[0017] Figure 2 This is a schematic diagram of the overall data flow of the glow stick wireless control system according to an embodiment of the present invention. Detailed Implementation
[0018] The technical solution of the present invention will be further described below with reference to specific embodiments. These embodiments are used to illustrate the configuration, communication relationships, data processing, and control processes of the components in the system, and are not intended to limit the implementation of the present invention.
[0019] Unless otherwise stated, in this document, "current performance timecode" refers to the global playback time continuously maintained by the performance control host computer based on the performance timeline; "time index data" refers to the index information of the lighting effect execution time in the performance control package; "lighting effect execution data" refers to the lighting effect identifier, color parameters, brightness parameters, lighting effect change parameters, and target area information corresponding to the time index data; and "lighting effect event" refers to a combination of a corresponding time index data and a lighting effect execution data.
[0020] In this article, "target time index data" refers to the time index data that the glow stick terminal determines from the time index area of the performance control package based on the current performance timecode, local performance timing value, and the region or future time anchor point data, which is used to call the light effect execution data.
[0021] The Z-Wave Long Range wireless communication link, as described in this paper, is used for control information transmission between the main controller and multiple regional sub-controllers; the second wireless communication link is used for local control information transmission between the regional sub-controllers and the glow stick terminals within their respective regions. The two wireless communication links employ independent communication modules and parameters, thus separating the converged transmission from the terminal control within each region.
[0022] The Z-Wave Long Range master control node and Z-Wave Long Range regional node referred to in this article are used to characterize the functional hierarchy of the master controller and regional sub-controller in this system, and are not limited to specific standard role names in the communication protocol.
[0023] The preset thresholds, preset prediction periods, preset timecode transmission cycles, preset anchor point advances, and preset effective periods mentioned in this article can all be written into the configuration data of the performance control host computer or glow stick terminals before the performance begins, and can be determined based on the venue size, number of terminals, light effect change speed, and communication test results. The values given below are only for illustrating one feasible configuration method.
[0024] The "region mask" in the first wireless timecode frame, as referred to in this document, is used to characterize the regional controller to which the first wireless timecode frame applies. To distinguish it from the "target region mask" in the lighting effect execution data, the region mask in the first wireless timecode frame will be referred to as the timecode region mask below. The timecode region mask still belongs to the region mask in the first wireless timecode frame. The target region mask is used to characterize the region to which the corresponding lighting effect event or future time anchor data applies; the two have different purposes.
[0025] like Figure 1 As shown in the figure, the wireless control system for glow sticks proposed in this embodiment of the invention may include a performance control host computer, a main controller, multiple regional sub-controllers, and multiple glow stick terminals.
[0026] The host computer for performance control breaks down multiple complete lighting effect control frames into time index data and lighting effect execution data according to the performance timeline, generates a performance control package, and writes it into the glow stick terminal before the performance begins. The main controller generates a first wireless time code frame based on the current performance time code and sends it to multiple regional sub-controllers through a first wireless communication link. The regional sub-controllers determine whether the first wireless time code frame is applicable to the corresponding region based on the corresponding region information, convert the first wireless time code frame applicable to the corresponding region into a second wireless time code frame containing the current performance time code, and send it to multiple glow stick terminals in the corresponding region through a second wireless communication link. The glow stick terminal determines the target time index data in the performance control package based on the current performance time code in the second wireless time code frame, calls the corresponding lighting effect execution data, and controls the light-emitting components to execute the corresponding lighting effect.
[0027] In this embodiment, the performance control host computer can be implemented by a computer equipped with performance scheduling software. The performance scheduling software provides functions such as timeline editing, area configuration, lighting effect parameter configuration, performance control package generation, performance control package writing, current performance timecode maintenance, timecode sending strategy calculation, and future time anchor point data generation.
[0028] The performance control host computer and the main controller can communicate via wired serial communication, Ethernet communication, or USB communication. The wired communication link is used to transmit the current performance timecode, target timecode transmission period, future time anchor point data, target anchor point lead time, and system configuration data.
[0029] In the implementation where the performance control package is written to the glow stick terminal via the main controller and regional sub-controllers, the wired communication link is also used to send the performance control package, the write start command, the data block write command, and the write end command to the main controller.
[0030] The main controller includes a main control processor, a host computer communication interface, and a first wireless communication module. The main control processor receives data sent by the performance control host computer, encapsulates the current performance timecode into a first wireless timecode frame, and transmits it through the first wireless communication module. During the performance, the main controller does not need to send color parameters, brightness parameters, and lighting effect change parameters for each lighting effect event individually, allowing the first wireless communication link to primarily handle the transmission of time synchronization information and key lighting effect event assurance information.
[0031] The host computer controlling the performance also generates a timecode region mask based on the region configuration for the current performance and sends the timecode region mask to the main controller. When time synchronization is required for all participating regions, the region bits corresponding to all participating regions in the timecode region mask are set to the valid state; when time synchronization information only needs to be sent to a specific region, the region bits corresponding to the specific region are set to the valid state. The main controller encapsulates the timecode region mask in the first wireless timecode frame.
[0032] Multiple regional sub-controllers are located in different control areas of the venue. Each regional sub-controller includes a sub-control processor, a second wireless communication module, and a third wireless communication module. The second wireless communication module receives the first wireless time code frame sent by the main controller. The sub-control processor performs frame verification, session matching, area matching, duplicate frame filtering, and frame format conversion. The third wireless communication module sends the converted second wireless time code frame to the glow stick terminals in its area.
[0033] The glow stick terminal includes a terminal processor, local memory, a terminal wireless communication module, a local timer, and a light-emitting component. The terminal wireless communication module receives a second wireless time code frame; the local memory stores the performance control package and terminal configuration data; the terminal processor reads the corresponding lighting effect execution data according to the current performance time code and the local performance timing value; the light-emitting component can use RGB light-emitting diodes, addressable RGB LEDs, or a light-emitting unit composed of multiple light-emitting diodes.
[0034] Before the performance begins, the performance control host computer generates and writes the performance control package, and configures the area identifier and current session identifier for each regional sub-controller, and configures the terminal's current session identifier for each glow stick terminal. After the performance begins, the performance control host computer advances the current performance timecode according to the performance timeline, the main controller sends the first wireless timecode frame according to the target timecode sending cycle, the regional sub-controllers send the second wireless timecode frame after regional filtering, and the glow stick terminals complete local performance timing value calibration and lighting effect call according to the second wireless timecode frame.
[0035] Since the lighting effect execution data is written to the glow stick terminals before the performance, the amount of wireless data during the performance mainly consists of time code frames, future time anchor point data, and control status information. Even if the number of glow stick terminals that need to be controlled at the same time increases, the main controller does not need to transmit complete lighting effect parameters to each glow stick terminal separately.
[0036] In one embodiment, a complete lighting effect control frame includes lighting effect execution time, lighting effect identifier, color parameters, brightness parameters, lighting effect change parameters, and target area information. The target area information includes a target area mask used to characterize the applicable area of the complete lighting effect control frame. The performance control host computer generates time index data based on the lighting effect execution time, and combines the lighting effect identifier, color parameters, brightness parameters, lighting effect change parameters, and target area information into lighting effect execution data corresponding to the time index data. Each time index data and the corresponding lighting effect execution data together constitute a lighting effect event, and multiple lighting effect events are arranged in the performance control package according to the order of lighting effect execution time.
[0037] In this embodiment, a complete lighting effect control frame is a lighting effect record generated by the performance control host computer during the performance choreography stage. The lighting effect execution time can be expressed as the number of milliseconds accumulated from the start of the performance. Lighting effect identifiers are used to characterize lighting effect types such as constant light, flashing, breathing, fading, chasing, or extinguishing. Color parameters can be represented by red channel values, green channel values, and blue channel values; brightness parameters can be represented by discrete values from 0 to 255; lighting effect change parameters may include duration, change period, duty cycle, fading direction, or dual-color switching parameters.
[0038] The target area mask consists of multiple area bits, each corresponding to an area identifier. For example, if the system has twelve areas, the target area mask must include at least twelve valid area bits, where the first area bit corresponds to area identifier 1, the second area bit corresponds to area identifier 2, and the remaining area bits correspond sequentially. When an area bit is valid, it indicates that the corresponding lighting effect event applies to that area; when an area bit is invalid, it indicates that the corresponding lighting effect event does not apply to that area.
[0039] The host computer controlling the performance sorts the complete lighting effect control frames according to the lighting effect execution time. For multiple complete lighting effect control frames with the same lighting effect execution time but different target area masks, multiple time index data can be generated separately; for multiple complete lighting effect control frames with the same lighting effect execution time, lighting effect identifier, and lighting effect parameters, and whose target areas do not conflict, the target area masks can be merged to generate a single lighting effect event.
[0040] Before generating the performance control package, the performance control host computer can also perform conflict verification on multiple complete lighting effect control frames with the same execution time and overlapping target areas. When multiple different lighting effect execution data correspond to the same lighting effect execution time and the same area, the performance control host computer retains the lighting effect execution data with higher priority according to the preset event priority, or generates combined lighting effect execution data according to the preset merging rules, thereby avoiding conflicting lighting effect control results obtained by the same glow stick terminal at the same execution time.
[0041] The performance control package includes a header area, a time index area, and a lighting effect execution data area. The header area stores the performance control package identifier, performance control package version, total size of the performance control package, number of lighting effect events, and performance control package checksum. The time index area stores the lighting effect execution time and the storage location of the lighting effect execution data in the lighting effect execution data area in chronological order. The lighting effect execution data area stores the corresponding lighting effect identifier, color parameters, brightness parameters, lighting effect change parameters, and target area mask.
[0042] Each time index data entry may also include a time index sequence number. The time index sequence number is generated according to the order in which the lighting effect events are arranged in the performance control package. It is used to distinguish between multiple lighting effect events with the same execution time and can also serve as auxiliary information for locating target time index data in future time anchor data.
[0043] In one embodiment, the performance control host computer sequentially sends a write start command, multiple data block write commands, and a write end command to write the performance control package to the glow stick terminal. The write start command includes the performance control package identifier, performance control package version, total performance control package size, data block size, number of data blocks, and performance control package verification value. Each data block write command includes the corresponding data block and data block verification value. The glow stick terminal verifies each data block according to the data block verification value, and performs an integrity check according to the performance control package verification value after receiving the write end command. If the integrity check passes, the performance control package is saved.
[0044] In this embodiment, one writing path is as follows: the performance control host computer sends the writing command and data block to the main controller, the main controller transfers the data to the corresponding regional sub-controller, and the regional sub-controller sends it to the glow stick terminals in its area through a second wireless communication link. To avoid conflicts caused by a large number of terminals receiving data simultaneously, the regional sub-controller can send data blocks in stages according to a preset terminal group.
[0045] Another writing path is: during the equipment deployment or maintenance phase, the maintenance equipment directly writes the performance control package through the Bluetooth communication unit in the terminal wireless communication module.
[0046] The data block checksum can use a CRC16 checksum, while the performance control packet checksum can use a CRC32 checksum. After receiving each data block, the glow stick terminal calculates the CRC16 checksum of the received data block and compares it with the data block checksum in the data block write instruction. If they match, the data block is written to the write-to-store area; if they do not match, the corresponding data block is not updated.
[0047] In one implementation, when a data block verification fails, the glow stick terminal generates a data block reception status including the terminal identifier, performance control package version, and data block sequence number, and returns this status to the regional sub-controller via a second wireless communication link. The regional sub-controller then retransmits the corresponding data block based on the data block reception status.
[0048] In another implementation, the regional controller repeatedly sends each data block according to a preset number of repetitions, and after sending the write end command, queries the performance control package version and integrity verification status of each glow stick terminal; for glow stick terminals that fail the integrity verification, it re-executes the missing data block sending or complete performance control package writing.
[0049] Upon receiving the write end command, the glow stick terminal reassembles multiple data blocks according to their sequence numbers, calculates the CRC32 checksum of the reassembled performance control packet, and compares it with the performance control packet checksum in the write start command. Only when the number of data blocks, the total size of the performance control packet, and the CRC32 checksum are all consistent is the performance control packet considered to have passed the integrity check.
[0050] In one embodiment, the glow stick terminal has a first storage area and a second storage area, one of which is configured as a valid storage area and the other is configured as a storage area to be written. The glow stick terminal writes the performance control package to be updated into the storage area to be written. After the performance control package to be updated passes the integrity check, the storage area to be written is switched to the valid storage area, and the performance control package in the switched valid storage area is called during the next performance playback.
[0051] Initially, the first storage area is considered valid, and the second storage area is considered pending writes. During the update process, the terminal processor retains the original performance control packet in the first storage area without overwriting it. After the performance control packet to be updated in the second storage area passes integrity verification, the terminal processor updates the valid storage area flag, making the second storage area valid for the next performance start, while the first storage area becomes pending writes.
[0052] If a power outage occurs, a data block is missing, or integrity verification fails during the writing process, the terminal processor will not change the valid storage area flag, and the performance control package in the original valid storage area will still be called in the next performance.
[0053] In one embodiment, the first wireless timecode frame includes a protocol identifier, a protocol version, a session identifier, a frame sequence number, the current performance timecode, a region mask, and a first check value; the first check value is generated based on each field in the first wireless timecode frame except for the first check value; the regional controller verifies the protocol identifier, the protocol version, and the first check value, and when all the above verifications pass, it performs a regional applicability judgment on the first wireless timecode frame.
[0054] The protocol identifier distinguishes timecode frames from other control frames, the protocol version distinguishes different data structure versions, the performance identifier distinguishes different performances, the frame sequence number increments according to the transmission order of the first wireless timecode frame, the current performance timecode is in milliseconds, and the area mask is used to specify the receiving area. The first checksum can be generated using CRC16-CCITT-FALSE.
[0055] After receiving the first radio timecode frame, the regional controller first determines whether the protocol identifier is a preset timecode frame identifier, then determines whether the protocol version is consistent with the locally supported version, and then recalculates the first checksum. If any check fails, the regional controller discards the first radio timecode frame and does not perform regional matching or generate the second radio timecode frame.
[0056] In one embodiment, the area information includes an area identifier and a current performance identifier pre-stored by the area sub-controller; the area sub-controller determines whether the performance identifier in the first wireless timecode frame is consistent with the current performance identifier, and determines whether the area bit in the area mask corresponding to the area identifier is in a valid state; when the performance identifier is consistent and the area bit is in a valid state, the area sub-controller determines that the first wireless timecode frame is applicable to the corresponding area; the area sub-controller generates a second wireless timecode frame including the performance identifier, frame sequence number, current performance timecode and area identifier.
[0057] The region identifier can be written to non-volatile memory during the installation of the region sub-controller. The current show identifier is issued by the performance control host computer via the main controller before the performance begins. When determining the applicability of a region, the region sub-controller uses its own region identifier to determine the corresponding region bit in the region mask. For example, when the region identifier is 5, the fifth region bit in the timecode region mask is read; if the fifth region bit is 1, it is determined to be applicable to the corresponding region; if it is 0, it is determined to be inapplicable to the corresponding region.
[0058] The second wireless timecode frame can adopt a shorter frame structure than the first wireless timecode frame. The regional controller retains the performance identifier, frame number, and current performance timecode from the first wireless timecode frame, and converts the timecode regional mask into its own regional identifier.
[0059] In this embodiment, the second wireless time code frame also includes a second check value. The second check value is generated based on all fields in the second wireless time code frame except for the second check value itself. The glow stick terminal recalculates the second check value after receiving the second wireless time code frame.
[0060] The valid second radio time code frame referred to in this article is a second radio time code frame whose session identifier is consistent with the current session identifier of the terminal, whose second check value verification passes, and whose frame sequence number does not belong to a duplicate frame.
[0061] In one embodiment, the regional controller and the glow stick terminal respectively store the most recently received frame sequence number; the regional controller compares the frame sequence number in the newly received first wireless time code frame with the frame sequence number in the most recently received first wireless time code frame, and discards the newly received first wireless time code frame if they are the same, and records the frame loss information of the first wireless communication link if they are not consecutive; the glow stick terminal processes the second wireless time code frame in the same way and records the frame loss information of the second wireless communication link.
[0062] The frame sequence number can be an unsigned cyclic counter. Once the count limit is reached, the frame sequence number returns to its initial value.
[0063] ;
[0064] in, This represents the cyclic difference between the sequence number of the new received frame and the sequence number of the most recent received frame; This indicates the frame number of the newly received first or second radio time code frame. This indicates the frame number of the most recently received corresponding radio timecode frame; The preset modulus value represents the frame sequence number, which is the range of the frame sequence number cyclic count. This indicates the modulo operation.
[0065] When the cyclic difference When the value is 0, the newly received frame is determined to be a duplicate frame; when the cyclic difference is 0, the frame is determined to be a duplicate frame. When the value is 1, the frame sequence number is determined to be continuous; when the cyclic difference is 1, the frame sequence number is determined to be continuous. If the value is greater than 1, it is determined that there is a frame drop in the middle, and the number of missing frames is 1. .
[0066] Frame loss information includes at least the time of the frame loss, the number of missing frames, and the corresponding communication link. Frame loss information can be used for debugging and statistics, and can also serve as auxiliary data for subsequent adjustments to the timecode transmission period, but it does not change the basic process of the glow stick terminal running continuously according to the local performance timing value.
[0067] In one embodiment, the main controller includes a main control processor and a first wireless communication module connected to the main control processor; each regional sub-controller includes a sub-control processor, a second wireless communication module connected to the sub-control processor, and a third wireless communication module connected to the sub-control processor; the first wireless communication module and multiple second wireless communication modules form a first wireless communication link, and the second wireless communication module is used to receive a first wireless time code frame; the third wireless communication module and multiple glow stick terminals in the corresponding area form a second wireless communication link, and the third wireless communication module is used to send a second wireless time code frame.
[0068] In this embodiment, the main control processor can be a microcontroller with a serial communication interface and an RF module control interface; the sub-control processor can be a microcontroller with two independent wireless communication interfaces. The first and second wireless communication modules can use the same Z-Wave Long Range communication parameters, and the third wireless communication module uses the same second wireless communication parameters as the terminal wireless communication module of the glow stick terminal.
[0069] The first wireless communication module broadcasts or unicasts the first wireless time code frame generated by the main controller to multiple regional sub-controllers. The second wireless communication module receives the first wireless time code frame and delivers the received data to the sub-controller processor. The third wireless communication module sends the second wireless time code frame generated by the sub-controller to the glow stick terminals within its area. The second wireless communication link can use a 2.4GHz proprietary wireless communication link, and its communication coverage range matches the corresponding area.
[0070] In one embodiment, each glow stick terminal may include a terminal processor, a local memory, a terminal wireless communication module, and a light-emitting component; the local memory stores a performance control package; the terminal wireless communication module receives a second wireless time code frame; the terminal processor determines target time index data based on the second wireless time code frame, retrieves the corresponding lighting effect execution data from the local memory, and drives the light-emitting component according to the lighting effect execution data; the terminal wireless communication module also includes a Bluetooth communication unit, the Bluetooth communication link being independent of the first wireless communication link and the second wireless communication link, and not participating in the performance synchronization transmission.
[0071] In this embodiment, the terminal processor can be a microcontroller with integrated Bluetooth functionality and timer resources. Local memory can be on-chip flash memory or external non-volatile memory. The light-emitting components can be connected to the terminal processor via a single-wire digital interface or a multi-channel pulse-width modulation interface. The terminal processor can generate output values for each color channel based on color parameters, proportionally adjust the output values of the color channels based on brightness parameters, and control the output values to change over time based on lighting effect change parameters.
[0072] The Bluetooth communication unit is used to receive terminal debugging commands or user control commands sent by the mobile terminal, such as reading the terminal identifier, querying the performance control package version, testing color output, or adjusting brightness in non-performance mode. After the terminal enters performance synchronization mode, the Bluetooth communication unit does not participate in the transmission of the first and second wireless timecode frames, nor does it modify the current performance timecode, thereby avoiding local interaction links from affecting unified performance synchronization.
[0073] In one embodiment, the first wireless communication link is a Z-Wave Long Range wireless communication link; the main controller is configured as a Z-Wave Long Range main control node, and multiple regional sub-controllers are respectively configured as Z-Wave Long Range regional nodes communicating with the Z-Wave Long Range main control node.
[0074] Before the performance begins, the Z-Wave Long Range master control node stores node information for multiple Z-Wave Long Range regional nodes and establishes a correspondence between regional identifiers and node information. The master controller can send the entire performance timecode frame to all regional nodes, or it can send it to specific regional nodes based on the timecode regional mask. After receiving the first wireless timecode frame, the regional sub-controllers still perform application layer judgments based on the performance identifier and the timecode regional mask.
[0075] After receiving a valid second wireless timecode frame, the glow stick terminal calibrates the local performance timing value according to the current performance timecode in it, and determines the next light effect execution time that is later than the local performance timing value in the time index area of the performance control packet.
[0076] The local timer continuously advances the local performance time value. When the local performance time value reaches or exceeds the next lighting effect execution time, the terminal processor obtains all candidate time index data corresponding to the next lighting effect execution time.
[0077] The terminal processor reads the lighting effect execution data corresponding to each candidate time index data, determines whether the lighting effect event is applicable to the area where the glow stick terminal is located based on the target area mask in the lighting effect execution data, and determines the candidate time index data in the target area mask whose area bit is in a valid state as the target time index data.
[0078] When there is only one candidate time index data applicable to the region for the same lighting effect execution time, the terminal processor calls the lighting effect execution data corresponding to that candidate time index data.
[0079] When there are multiple candidate time index data applicable to the same lighting effect execution time in the region, the terminal processor determines the target time index data according to the event priority recorded in the performance control package, or executes it according to the combined lighting effect execution data pre-generated by the performance control host computer.
[0080] When no suitable candidate time index data exists for the current region, the terminal processor maintains the previous lighting effect state or executes a preset idle lighting effect. After completing the lighting effect processing corresponding to the current lighting effect execution time, the terminal processor continues to determine the subsequent lighting effect execution time and triggers them continuously based on the local timer.
[0081] The second wireless timecode frame is used to periodically calibrate the local performance timing value, rather than being the sole trigger condition for each lighting effect event. Therefore, even if there are multiple lighting effect events between two adjacent second wireless timecode frames, the glow stick terminal can still trigger multiple lighting effect events sequentially according to the lighting effect execution time in the performance control package based on the local timer.
[0082] When a new valid second wireless time code frame is received, the terminal processor also determines the subsequent time index data that has not yet been executed based on the most recently executed time index position, in order to avoid repeating completed light effect events due to time code calibration.
[0083] In one embodiment, the performance control host computer obtains multiple lighting effect events within a preset prediction period following the current performance timecode from the performance control package based on the current performance timecode; generates a lighting effect event density based on the number of lighting effect events and the time interval between the execution times of two adjacent lighting effect events; generates a lighting effect change amplitude corresponding to the next lighting effect event based on the changes in brightness parameters, color parameters, and lighting effect identifiers between two adjacent lighting effect events; generates an event synchronization sensitivity based on the number of target areas and the lighting effect change amplitude of each lighting effect event, and determines the maximum value among multiple event synchronization sensitivities as the synchronization sensitivity corresponding to the preset prediction period; generates a synchronization risk level based on the lighting effect event density and synchronization sensitivity; determines the target timecode transmission period based on the synchronization risk level; and the main controller transmits the first wireless timecode frame through the Z-Wave Long Range wireless communication link according to the target timecode transmission period, wherein the higher the synchronization risk level, the shorter the target timecode transmission period.
[0084] Specifically, the performance control host computer uses the current performance timecode as the prediction start point and the end time of the preset prediction period as the prediction end point. Let the current performance timecode be... The preset prediction period duration is Then the j-th lighting effect event within the preset prediction time period satisfies:
[0085] ;
[0086] in, This indicates the execution time of the lighting effect for the j-th lighting event.
[0087] The number of lighting effect events within the preset prediction period is recorded as: The time interval between two adjacent lighting events Recorded as: ;
[0088] When there are at least two lighting events within the preset prediction period, the average time interval Calculate according to the following formula:
[0089] ;
[0090] in, This represents the average time interval between adjacent lighting effect events within the preset prediction period; This indicates the number of lighting effect events within the preset prediction period; This represents the time interval between the j-th lighting effect event and the previous lighting effect event.
[0091] When only one lighting effect event exists within the preset prediction period, the average time interval is set to the duration of the preset prediction period, i.e. When no lighting effect events exist, the lighting effect event density will be increased. Set to zero.
[0092] The density of lighting effect events can be generated according to the following formula:
[0093] ;
[0094] in, This indicates the density of lighting events corresponding to the preset prediction period; This indicates the number of lighting effect events within the preset prediction period; Indicates the preset number of reference events; Indicates the preset reference time interval; This represents the average time interval within the preset prediction period; Indicates the weight of the number of events. Represents the weight of the time interval, and satisfies: .
[0095] For the first lighting effect event in the preset prediction period, compare the lighting effect event with the most recent lighting effect event before the preset prediction period; for the remaining lighting effect events, compare each lighting effect event with its previous lighting effect event.
[0096] The change in brightness parameter for the j-th lighting effect event is calculated using the following formula:
[0097] ;
[0098] in, This represents the change in brightness parameter of the j-th lighting effect event relative to the previous lighting effect event; This represents the brightness parameter of the j-th lighting effect event; Indicates the brightness parameter of the previous lighting effect event; Indicates taking the absolute value; This represents the maximum value of the brightness parameter, when the brightness parameter uses discrete values from 0 to 255. 255 is acceptable.
[0099] The change in the color parameter of the j-th lighting effect event can be calculated using the following formula:
[0100] ;
[0101] in, This represents the change in color parameters of the j-th lighting effect event relative to the previous lighting effect event; , , These represent the red, green, and blue channel values for the j-th lighting effect event, respectively. , , These represent the red, green, and blue channel values of the previous lighting effect event, respectively. Indicates the maximum value of a single color channel; This represents the maximum color distance in the RGB color space, used to normalize color variation to a value between 0 and 1, when color channels use discrete values between 0 and 255. 255 is acceptable.
[0102] Changes in lighting effect indicators are recorded as follows: When the j-th lighting effect event has the same lighting effect identifier as the previous lighting effect event, Set to 0; when the lighting effect indicators are different, Take 1.
[0103] The change range of the lighting effect corresponding to the j-th lighting effect event It can be generated according to the following formula:
[0104]
[0105] in, Indicates the weight of brightness variation. Indicates the weight of color changes. Indicates the weight of changes in the lighting effect identifier, and satisfies: and .
[0106] The performance control host computer counts the number of valid region bits in the target region mask for the j-th lighting effect event and determines this number as the target region count. The total number of regions configured in the system is denoted as... The proportion of the target area corresponding to the j-th lighting effect event. The larger the target area ratio, the greater the spatial impact range caused by the time deviation of the same lighting effect event.
[0107] The event synchronization sensitivity corresponding to the j-th lighting effect event It can be generated according to the following formula:
[0108] ;
[0109] in, Indicates the weight of the variation in lighting effects. Represents the target region's proportional weight, and satisfies: .
[0110] The host computer controlling the performance calculates the event synchronization sensitivity of each lighting effect event within a preset prediction time period, and determines the maximum value as the synchronization sensitivity corresponding to the preset prediction time period. ,Right now ,in, to These represent the event synchronization sensitivity of each lighting effect event within the preset prediction period. Using the maximum value can retain the lighting effect event with the highest synchronization requirement within the prediction period, avoiding the average result of multiple low-sensitivity lighting effect events from masking a single high-sensitivity lighting effect event.
[0111] Synchronous risk score It can be generated according to the following formula:
[0112] ;
[0113] in, Indicates the density weight of lighting effect events. Represents the synchronization sensitivity weight, and satisfies: .
[0114] The performance control host computer compares the synchronization risk score with a first risk threshold and a second risk threshold, where the first risk threshold is less than the second risk threshold. When the synchronization risk score is less than the first risk threshold, the synchronization risk level is Level 1; when the synchronization risk score is not less than the first risk threshold and less than the second risk threshold, the synchronization risk level is Level 2; when the synchronization risk score is not less than the second risk threshold, the synchronization risk level is Level 3.
[0115] Multiple preset timecode transmission periods include a first transmission period, a second transmission period, and a third transmission period. The first transmission period is longer than the second transmission period, and the second transmission period is longer than the third transmission period. The first transmission period is selected when the synchronization risk level is level one, the second transmission period is selected when the synchronization risk level is level two, and the third transmission period is selected when the synchronization risk level is level three.
[0116] For example, the first transmission period is 1000ms, the second transmission period is 500ms, and the third transmission period is 200ms.
[0117] The performance control host computer can recalculate the synchronization risk level at the beginning of each preset prediction period, or it can repeat the calculation according to a rolling update cycle shorter than the preset prediction period. For example, if the preset prediction period is 10000ms and the rolling update cycle is 1000ms, then every 1000ms, the prediction starting point is moved forward and the target timecode transmission cycle is redefined.
[0118] In one embodiment, the performance control host computer determines whether the synchronization risk level reaches a preset critical risk level. When the synchronization risk level reaches the preset critical risk level, it determines lighting effect events that meet preset critical event conditions within a preset prediction period as critical lighting effect events. The preset critical event conditions include at least one of the following: the lighting effect change magnitude of the lighting effect event relative to the previous lighting effect event reaches a preset change threshold, and the number of target areas corresponding to the lighting effect event reaches a preset area number threshold. The performance control host computer generates future time anchor point data based on the lighting effect execution time, lighting effect identifier, target area mask, and corresponding performance control package version of the critical lighting effect event, and determines the target anchor point advance from multiple preset anchor point advances based on the synchronization risk level and the target time code sending cycle.
[0119] In this embodiment, the preset critical risk level can be set to level three. When the synchronization risk level is level one or level two, the system adjusts the target timecode transmission period; when the synchronization risk level reaches level three, the performance control host computer further checks whether each lighting effect event in the preset prediction period meets the preset critical event conditions.
[0120] The preset change threshold can be set to 0.65, and the preset area quantity threshold can be set to three-quarters of the total number of areas. When the change amplitude of a lighting effect event is not less than 0.65, it is identified as a lighting effect event with significant change; when the number of target areas is not less than the preset area quantity threshold, it is identified as a lighting effect event with a large coverage area. Meeting either condition is sufficient to qualify as a key lighting effect event.
[0121] Future time anchor data must include at least the execution time of key lighting effects events, lighting effect identifiers, target area masks, and performance control package versions. The lighting effect execution time is used to determine the uniform execution time of key lighting effects events; the lighting effect identifier is used to match lighting effects events in the performance control package; the target area mask is used for filtering by regional controllers; and the performance control package version is used to prevent inconsistencies between future time anchor data and the performance control package stored locally on the terminal.
[0122] Multiple preset anchor lead times are mapped to the synchronization risk level and the target timecode transmission period, respectively. For example, when the synchronization risk level is level 2 and the target timecode transmission period is 500ms, the preset anchor lead time is 3000ms; when the synchronization risk level is level 3 and the target timecode transmission period is 200ms, the preset anchor lead time is 5000ms.
[0123] When the difference between the execution time of a key lighting event and the current performance timecode is less than the preset anchor advance amount determined according to the mapping relationship, the difference between the execution time of the lighting event and the current performance timecode is determined as the current available advance time, and the current available advance time is determined as the target anchor advance amount. At the same time, the future time anchor data and the target anchor advance amount are immediately sent to the main controller.
[0124] In one embodiment, the performance control host computer sends the future time anchor point data and the target anchor point advance to the main controller; the main controller determines the time when the lighting effect execution time is earlier than the key lighting effect event and differs from the lighting effect execution time by the target anchor point advance as the anchor point sending time: ,in Indicates the anchor point sending time. Indicates the execution time of the key lighting effect event. This indicates the lead time for the target anchor point.
[0125] At the moment of anchor point transmission, the main controller generates a first wireless anchor frame that includes future time anchor data based on the future time anchor data, and transmits it through the Z-Wave Long Range wireless communication link.
[0126] The first wireless anchor frame may include a protocol identifier, protocol version, session identifier, anchor frame sequence number, future time anchor data, and anchor frame checksum. The area controller first performs verification of the protocol identifier, protocol version, and anchor frame, and then reads the target area mask from the future time anchor data. If the area bit in the target area mask corresponding to the area identifier pre-stored by the area controller is in a valid state, then the first wireless anchor frame is determined to be applicable to the corresponding area.
[0127] The regional controller converts the first wireless anchor frame applicable to the corresponding region into a second wireless anchor frame. The second wireless anchor frame can retain the session identifier, the execution time of key lighting events, the lighting effect identifier, the performance control package version, and the region identifier.
[0128] In future implementations where the time anchor data includes a time index number, the second wireless anchor frame also retains the time index number.
[0129] The regional controller sends the second wireless anchor frame to multiple glow stick terminals within the corresponding area via the second wireless communication link.
[0130] After receiving the second wireless anchor frame, the glow stick terminal first compares the performance control packet version in the second wireless anchor frame with the performance control packet version in the valid storage area. If they are inconsistent, no binding relationship is established, and the version inconsistency status is recorded. If they are consistent, the glow stick terminal retrieves all candidate time index data corresponding to the same light effect execution time from the time index area based on the light effect execution time in the second wireless anchor frame.
[0131] When the second wireless anchor frame includes a time index number, the terminal processor directly determines the target time index data from the candidate time index data based on the time index number. When the second wireless anchor frame does not include a time index number, the terminal processor filters the lighting effect execution data corresponding to the candidate time index data based on the lighting effect identifier and the area identifier in the second wireless anchor frame, and determines the candidate time index data with the same lighting effect identifier and whose target area mask is applicable to the area identifier as the target time index data.
[0132] The terminal processor establishes an anchor point binding table in local memory. The anchor point binding table records at least the lighting effect execution time, lighting effect identifier, performance control package version, and storage location of the target time index data for future time anchor data.
[0133] When the future time anchor data for the same key lighting effect event is received repeatedly, the terminal processor updates the same binding record instead of creating multiple records. After the key lighting effect event is executed, the terminal processor deletes the corresponding anchor binding record. When the performance control package version is switched or the show identifier changes, the terminal processor clears the anchor binding record corresponding to the original performance control package version or the original show identifier.
[0134] In one embodiment of the present invention, each glow stick terminal includes a local timer and stores the current session identifier of the terminal, and the second wireless time code frame includes the session identifier.
[0135] When the glow stick terminal receives a valid second wireless time code frame, it calibrates the local performance timing value according to the current performance time code in the second wireless time code frame, and continues to advance the local performance timing value according to the local timer until the next second wireless time code frame is received.
[0136] The local timer can be implemented by the terminal processor's hardware timer, with a timing resolution no greater than the smallest time unit of the current performance timecode. For example, if the current performance timecode is represented in milliseconds, the local timer operates at a resolution of 1ms or less. The local performance timing value is stored in the terminal processor's runtime memory.
[0137] After receiving a valid second wireless timecode frame, the glow stick terminal writes the current performance timecode from the second wireless timecode frame into the local performance timing value, or writes it after compensation for the communication reception and processing time. Subsequently, the local timer continues to advance the local performance timing value until the next valid second wireless timecode frame is received and recalibrated.
[0138] The terminal processor only receives the second wireless timecode frame whose session identifier matches the terminal's current session identifier. If the session identifiers do not match, the terminal processor does not use this frame to calibrate the local performance timing value.
[0139] The preset valid time period is a period of time preceding the execution time of the critical lighting effect event. For example, if the preset valid time period is 500ms and the execution time of the critical lighting effect event is 180000ms, then the terminal processor checks whether a valid second wireless time code frame is received between 179500ms and 180000ms.
[0140] When a valid second wireless time code frame is received within the preset effective time period, it indicates that the time synchronization link is available before the occurrence of the key lighting effect event. The terminal processor determines the target time index data in the performance control packet based on the local performance timing value calibrated from the most recent valid second wireless time code frame. When the local performance timing value reaches the lighting effect execution time, the terminal processor reads the lighting effect execution data corresponding to the target time index data and controls the lighting components.
[0141] If no valid second wireless time code frame is received within the preset valid time period, the terminal processor reads the pre-established anchor point binding record and determines the target time index data based on the binding relationship between the future time anchor point data and the target time index data. When the local performance timing value reaches the lighting effect execution time in the future time anchor point data, the corresponding lighting effect execution data is invoked.
[0142] The future time anchor data is used to ensure the local location and retrieval of key lighting events during the short-term absence of the second wireless time code frame. The future time anchor data itself does not replace the periodic calibration of the local performance timing value by the second wireless time code frame.
[0143] The terminal processor records the reception time of the most recent valid second radio time code frame and determines the out-of-synchronization duration since the most recent valid second radio time code frame based on the local timer.
[0144] When the out-of-synchronization duration does not exceed the preset maximum hold duration, the terminal processor allows the execution of key lighting effects events based on the local performance timing value and anchor point binding relationship; when the out-of-synchronization duration exceeds the preset maximum hold duration, the terminal processor records the time synchronization failure state and executes the preset degraded lighting effect or maintains the safe lighting effect state.
[0145] The preset maximum hold duration can be determined based on the maximum timing error of the local timer and the allowable synchronization error of the key lighting effect event. For example, if the cumulative timing error of the local timer within ten seconds does not exceed the allowable synchronization error of the key lighting effect event, the preset maximum hold duration can be set to ten seconds. This value is only one implementation method.
[0146] If no valid second wireless timecode frame is received within the preset valid time period and no valid anchor point binding record exists, the terminal processor continues to call the ordinary lighting effect events in the performance control package according to the local performance time value sequence. For key lighting effect events with established anchor point binding relationships, the anchor point binding record is used as the primary location. After communication is restored, the glow stick terminal receives a new valid second wireless timecode frame and recalibrates the local performance time value using the current performance timecode in that frame. If the time difference before and after calibration does not exceed the preset small deviation threshold, calibration can be performed directly; if it exceeds the preset small deviation threshold, calibration can be performed at the boundary of the next lighting effect event to avoid abrupt changes in the currently executing gradient or flashing lighting effect. After calibration, the terminal processor redetermines the next time index data that has not yet been executed based on the calibrated local performance time value and continues to trigger subsequent lighting effect events according to the local timer.
[0147] In one specific embodiment of the invention, the venue is divided into twelve zones, each equipped with a zone controller and five hundred glow stick terminals, for a total of six thousand glow stick terminals. The performance control host computer generates a performance control package, version 3, with the lighting effect execution time in the package expressed in milliseconds. The first wireless communication link uses a Z-Wave Long Range wireless communication link, and the second wireless communication link uses a 2.4GHz wireless communication link within the zone.
[0148] Before the performance begins, the performance control host computer divides the performance control packet into multiple 1024-byte data blocks and sends them according to the write start command, data block write command, and write end command. Each data block carries a CRC16 checksum, and the complete performance control packet carries a CRC32 checksum. The glow stick terminal writes the data to the storage area to be written, and switches to the valid storage area after the integrity check passes. When the current performance timecode is 120000ms, the performance control host computer selects a preset prediction period of 10000ms after the current performance timecode. This preset prediction period includes six lighting effect events, with lighting effect execution times of 121000ms, 121600ms, 122000ms, 123500ms, 126000ms, and 129000ms respectively. The five adjacent time intervals are 600ms, 400ms, 1500ms, 2500ms, and 3000ms, with an average time interval of 1600ms. With a preset reference event count of 10, a preset reference time interval of 1000ms, an event count weight of 0.5, and a time interval weight of 0.5, the lighting effect event density is:
[0149] ;
[0150] One lighting effect event involves a change in brightness from 80 to 240, a change in color from (20, 20, 180) to (240, 240, 240), and a change in the lighting effect icon from a breathing effect to a rapidly flashing effect. With both the maximum brightness value and the maximum single-channel color value set to 255, the change in brightness is approximately 0.627, the change in color is approximately 0.717, and the change in the lighting effect icon is 1. With a weighting of 0.35 for brightness change, 0.35 for color change, and 0.30 for the lighting effect icon change, the overall lighting effect change magnitude for this event is approximately 0.770.
[0151] The target area mask for this lighting effect event has ten active regions, and the total number of regions is twelve, so the target area ratio is approximately 0.833.
[0152] With a weight of 0.7 for the magnitude of the lighting effect change and a weight of 0.3 for the target area proportion, the event synchronization sensitivity of this lighting effect event is approximately 0.789. Assuming this value is the maximum among multiple event synchronization sensitivities within the preset prediction period, the synchronization sensitivity corresponding to the preset prediction period is 0.789.
[0153] With a lighting effect event density weight of 0.4 and a synchronization sensitivity weight of 0.6, the synchronization risk score is approximately 0.718. Since this value is not less than the second risk threshold of 0.65, the synchronization risk level is classified as level three, and the target timecode transmission period is determined to be 200ms.
[0154] The lighting effect event has a change range of 0.770 that is not less than the preset change threshold of 0.65, and the number of target areas is not less than the preset area number threshold of 9. Therefore, the lighting effect event is identified as a critical lighting effect event.
[0155] The host computer for performance control generates future time anchor point data based on the lighting effect execution time, lighting effect identifier, target area mask, and performance control package version 3, and determines the target anchor point advance to be 5000ms.
[0156] Assuming the execution time of a key lighting event is 126000ms, the anchor point transmission time is 121000ms. When the current performance timecode reaches 121000ms, the main controller transmits the first wireless anchor point frame through the Z-Wave Long Range wireless communication link.
[0157] The regional controller, whose corresponding region bit in the target region mask is in an effective state, generates a second wireless anchor frame and sends it to the glow stick terminals within the region.
[0158] The glow stick terminal confirms that the performance control packet version in the second wireless anchor frame is 3, which is consistent with the performance control packet version in the local valid storage area. Then, based on the 126000ms light effect execution time, the corresponding light effect identifier, and the area, it determines the target time index data and establishes a binding relationship between the future time anchor data and the target time index data.
[0159] When the local performance timer advances to 126000ms, if the terminal receives a valid second wireless timecode frame within the preset valid time period from 125500ms to 126000ms, it will invoke the lighting effect execution data according to the calibrated local performance timer value. If no valid second wireless timecode frame is received, and the out-of-synchronization duration does not exceed the preset maximum hold time, it will invoke the same lighting effect execution data according to the anchor point binding record. Both branches cause the light-emitting components to execute the corresponding fast flashing lighting effect.
[0160] When the checksum of the first or second wireless timecode frame is incorrect, the receiver discards the frame and does not use the current performance timecode in it for calibration; when the frame sequence number is repeated, the receiver discards the repeated frame; when the frame sequence number is not consecutive, the receiver records the lost frame information, but the glow stick terminal continues to advance the local performance time value through the local timer.
[0161] When the performance control package version in the second wireless anchor frame is inconsistent with the locally stored performance control package version, the glow stick terminal will not establish an anchor binding relationship. The performance control host computer can check the performance control package version of each terminal through the terminal status query before the performance, and re-execute the performance control package writing for terminals with inconsistent versions.
[0162] When multiple key lighting effect events occur within the same preset prediction time period, the performance control host computer generates corresponding future time anchor point data for each event. The main controller sends the first wireless anchor point frame according to the respective anchor point sending time, and the glow stick terminal saves the binding record of each key lighting effect event in the anchor point binding table.
[0163] Lighting effect event density, lighting effect variation amplitude, event synchronization sensitivity, and synchronization risk level can also be generated using a preset lookup table. For example, the number of lighting effect events, average time interval, lighting effect variation amplitude, and target area number can be divided into multiple levels, and then the synchronization risk level can be found based on the level combination. When using a lookup table, the boundaries of each level and the mapping results are written to the performance control host computer before the performance begins.
[0164] Color parameters are not limited to RGB representation; hue, saturation, and brightness parameters can also be used. When using other color representation methods, the color distance between adjacent lighting events is normalized to between 0 and 1 before being used to generate the lighting effect variation.
[0165] The second wireless communication link is not limited to a single radio frequency implementation; it only needs to be able to transmit the second wireless time code frame and the second wireless anchor frame from the regional sub-controller to multiple glow stick terminals within the corresponding area. The regional sub-controller and the glow stick terminals can use different channels or time slots according to the venue structure to reduce wireless interference between adjacent areas.
[0166] The target timecode transmission cycle, target anchor point advance, preset effective time period, preset maximum hold duration, and preset small deviation threshold can be configured based on the on-site communication test results and terminal timing error test results.
[0167] The above embodiments illustrate the local storage of the performance control package, Z-Wave Long Range timecode transmission, region frame conversion, local timed triggering of ordinary lighting effect events, dynamic timecode transmission cycle, future time anchor point data preset, and local execution process when timecode is temporarily missing. Those skilled in the art can adjust the processor model, memory capacity, communication interface, and parameter values without changing the above data flow and control relationships.
[0168] Although embodiments of the present invention have been shown and described above, it is understood that the above embodiments are exemplary and should not be construed as limiting the present invention. Those skilled in the art can make changes, modifications, substitutions and variations to the above embodiments within the scope of the present invention.
Claims
1. A wireless control system for glow sticks, characterized in that, This includes a performance control host computer, a main controller, multiple regional sub-controllers, and multiple glow stick terminals; The performance control host computer is used to decompose multiple complete lighting effect control frames into time index data and lighting effect execution data according to the performance timeline, generate a performance control package according to the time index data and the lighting effect execution data, and write the performance control package into the glow stick terminal before the performance starts. The main controller is used to generate a first wireless time code frame based on the current performance time code, and send the first wireless time code frame to multiple regional sub-controllers through a first wireless communication link; Each of the regional sub-controllers is used to determine whether the first wireless time code frame is applicable to the corresponding region based on the corresponding region information, convert the first wireless time code frame applicable to the corresponding region into a second wireless time code frame containing the current performance time code, and send the second wireless time code frame to multiple glow stick terminals in the corresponding region through the second wireless communication link; Each glow stick terminal is used to determine target time index data in the performance control package according to the current performance time code in the received second wireless time code frame, call the lighting effect execution data corresponding to the target time index data, and control the light-emitting component to execute the corresponding lighting effect according to the lighting effect execution data.
2. The wireless control system for glow sticks according to claim 1, characterized in that, The complete lighting effect control frame includes lighting effect execution time, lighting effect identifier, color parameters, brightness parameters, lighting effect change parameters, and target area information; the target area information includes a target area mask used to characterize the applicable area of the complete lighting effect control frame. The performance control host computer is used to generate the time index data according to the lighting effect execution time, and combine the lighting effect identifier, the color parameter, the brightness parameter, the lighting effect change parameter and the target area information into lighting effect execution data corresponding to the time index data; Each time index data and the corresponding lighting effect execution data together constitute a lighting effect event, and multiple lighting effect events are arranged in the performance control package according to the order of the lighting effect execution time.
3. The wireless control system for glow sticks according to claim 2, characterized in that, The performance control host computer is used to sequentially send a write start command, multiple data block write commands and a write end command to write the performance control package into the glow stick terminal; The write start command includes the performance control package identifier, performance control package version, total size of the performance control package, data block size, number of data blocks, and performance control package checksum. Each data block write instruction includes a corresponding data block and a data block check value; The glow stick terminal is used to verify each of the received data blocks according to the data block verification value, and after receiving the write end instruction, to perform an integrity verification on the performance control package composed of multiple data blocks according to the performance control package verification value, and to save the performance control package when the integrity verification passes. The glow stick terminal has a first storage area and a second storage area, one of which is configured as an active storage area and the other is configured as a storage area to be written. The glow stick terminal is used to write the performance control package to be updated into the storage area to be written. After the performance control package to be updated passes the integrity verification, the storage area to be written is switched to the valid storage area, and the performance control package in the switched valid storage area is called during the next performance playback.
4. The wireless control system for glow sticks according to claim 3, characterized in that, The first wireless timecode frame includes a protocol identifier, protocol version, performance identifier, frame sequence number, the current performance timecode, area mask, and a first check value; The first check value is generated based on all fields in the first wireless time code frame except for the first check value; Each of the regional sub-controllers is used to verify the protocol identifier, the protocol version, and the first check value, and when the protocol identifier, the protocol version, and the first check value all pass the verification, to determine the regional applicability of the first wireless time code frame; The regional information includes the regional identifier and the current session identifier pre-stored by the regional sub-controller; The regional controller is used to determine whether the session identifier in the first wireless time code frame is consistent with the current session identifier, and to determine whether the region bit in the regional mask corresponding to the region identifier is in a valid state. When the session identifier is consistent with the current session identifier and the area bit is in a valid state, the area sub-controller determines that the first wireless time code frame is applicable to the corresponding area; The regional sub-controller is also used to generate a second wireless timecode frame including the show identifier, the frame number, the current performance timecode, and the regional identifier.
5. The wireless control system for glow sticks according to claim 4, characterized in that, The main controller includes a main control processor and a first wireless communication module connected to the main control processor; Each of the regional sub-controllers includes a sub-controller processor, a second wireless communication module connected to the sub-controller processor, and a third wireless communication module connected to the sub-controller processor; The first wireless communication module and a plurality of second wireless communication modules constitute the first wireless communication link, and the second wireless communication module is used to receive the first wireless time code frame; The third wireless communication module and multiple glow stick terminals in the corresponding area constitute the second wireless communication link, and the third wireless communication module is used to send the second wireless time code frame. Each of the glow stick terminals includes a terminal processor, a local memory, a terminal wireless communication module, and the light-emitting component; The local memory is used to store the performance control package; The terminal wireless communication module is used to receive the second wireless time code frame; The terminal processor is used to determine the target time index data according to the second wireless time code frame, retrieve the lighting effect execution data corresponding to the target time index data from the local memory, and drive the light-emitting component according to the lighting effect execution data; The terminal wireless communication module further includes a Bluetooth communication unit, which is used to receive terminal debugging instructions or user control instructions sent by the mobile terminal. The Bluetooth communication link formed by the Bluetooth communication unit is independent of the first wireless communication link and the second wireless communication link, and does not participate in the performance synchronization transmission of the first wireless time code frame and the second wireless time code frame.
6. The wireless control system for glow sticks according to claim 2, characterized in that, The first wireless communication link is a Z-Wave Long Range wireless communication link; The main controller is configured as a Z-Wave Long Range master control node, and the multiple regional sub-controllers are respectively configured as Z-Wave Long Range regional nodes that communicate with the Z-Wave Long Range master control node.
7. The wireless control system for glow sticks according to claim 6, characterized in that, The performance control host computer is also used to obtain the current performance time code maintained by the performance control host computer, and according to the current performance time code, to obtain multiple lighting effect events within a preset prediction period after the current performance time code from the performance control package; The performance control host computer is also used to generate a lighting effect event density based on the number of lighting effect events in the preset prediction period and the time interval between the lighting effect execution times of two adjacent lighting effect events. The performance control host computer is also used to generate the light effect change amplitude corresponding to the next light effect event in the two adjacent light effect events based on the change in brightness parameters, the change in color parameters, and the change in light effect identifier between the two adjacent light effect events. The performance control host computer is also used to determine the number of valid region bits in the target region mask of each lighting effect event as the corresponding number of target regions, generate the event synchronization sensitivity of each lighting effect event according to the lighting effect change amplitude and the number of target regions, and determine the maximum value among the multiple event synchronization sensitivities as the synchronization sensitivity corresponding to the preset prediction period. The performance control host computer is also used to generate a synchronization risk level based on the synchronization sensitivity corresponding to the lighting effect event density and the preset prediction period, determine a target time code transmission period from multiple preset time code transmission periods based on the synchronization risk level, and send the target time code transmission period to the main controller. The main controller is used to transmit the first wireless time code frame through the Z-Wave Long Range wireless communication link according to the target time code transmission period; The higher the synchronization risk level, the shorter the target time code transmission period.
8. The wireless control system for glow sticks according to claim 7, characterized in that, The performance control host computer is also used to determine whether the synchronization risk level has reached the preset critical risk level. When the synchronization risk level reaches the preset critical risk level, the performance control host computer determines the lighting effect event that meets the preset critical event conditions from the preset prediction period as the critical lighting effect event. The preset key event conditions include at least one of the following: the change in lighting effect of the lighting effect event relative to the previous lighting effect event reaches a preset change threshold; the number of target areas corresponding to the lighting effect event reaches a preset area number threshold. The performance control host computer is also used to generate future time anchor data based on the execution time of the key lighting effect event, the lighting effect identifier, the target area mask and the corresponding performance control package version, and to determine the target anchor advance from multiple preset anchor advances based on the synchronization risk level and the target time code sending cycle.
9. The wireless control system for glow sticks according to claim 8, characterized in that, The performance control host computer is used to send the future time anchor point data and the target anchor point advance to the main controller; The main controller is used to determine the time when the execution time of the lighting effect is earlier than the execution time of the key lighting effect event and the difference between the execution time of the lighting effect and the target anchor point advance amount is the anchor point transmission time. At the anchor point transmission time, a first wireless anchor frame including the future time anchor data is generated according to the future time anchor data, and the first wireless anchor frame is transmitted through the Z-WaveLong Range wireless communication link. Each of the regional sub-controllers pre-stores a regional identifier that matches the corresponding region; Each of the regional sub-controllers is used to determine whether the first wireless anchor frame is applicable to the corresponding region based on the target region mask in the first wireless anchor frame and the pre-stored region identifier, convert the first wireless anchor frame applicable to the corresponding region into a second wireless anchor frame including the future time anchor data, and send the second wireless anchor frame to multiple glow stick terminals in the corresponding region through the second wireless communication link. Each glow stick terminal is used to determine whether the performance control package version in the second wireless anchor frame is consistent with the locally stored performance control package version. When they are consistent, the corresponding target time index data is determined in the performance control package according to the light effect execution time and light effect identifier in the second wireless anchor frame, the future time anchor data in the second wireless anchor frame is stored, and a binding relationship is established between the future time anchor data and the target time index data.
10. The wireless control system for glow sticks according to claim 9, characterized in that, Each of the glow stick terminals also includes a local timer and stores the current session identifier of the terminal; the second wireless time code frame also includes the session identifier. When the glow stick terminal receives a second wireless time code frame in which the session identifier in the second wireless time code frame is consistent with the current session identifier of the terminal, it calibrates the local performance timing value according to the current performance time code in the second wireless time code frame, and advances the local performance timing value according to the local timer when no next second wireless time code frame is received. The glow stick terminal is also used to determine, when the local performance timing value reaches the lighting effect execution time in the future time anchor data, whether a second wireless time code frame whose performance identifier is consistent with the current performance identifier of the terminal is received within a preset effective period before the lighting effect execution time. When the second wireless time code frame whose session identifier is consistent with the current session identifier of the terminal is received within the preset effective time period, the glow stick terminal determines the target time index data in the performance control packet according to the local performance timing value calibrated by the second wireless time code frame. If no second wireless time code frame matching the current session identifier of the terminal is received within the preset effective time period, the glow stick terminal determines the target time index data based on the binding relationship between the future time anchor data and the target time index data; After determining the target time index data, the glow stick terminal calls the light effect execution data corresponding to the target time index data, and controls the light-emitting component to execute the key light effect event according to the light effect execution data.
