A motion control system and method for a dynamic seat based on an improved CAN protocol

Through the improved CAN protocol and the damping value adjustment of the seat buffer, the problem of untimely response of the dynamic seat and difficulty in regulating the dynamic effect is solved, achieving higher real-time, synchronization and safety, and meeting the dynamic needs of different audiences.

CN115343975BActive Publication Date: 2025-06-10ZHEJIANG SCI-TECH UNIV
View PDF 2 Cites 0 Cited by

Patent Information

Application Number
CN202210149865.9
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2022-02-18
Publication Date
2025-06-10
Estimated Expiration
2042-02-18

AI Technical Summary

Technical Problem

The communication of dynamic seats in motion control is insufficient in real-time and stability, resulting in untimely response and frequent sudden changes in speed and acceleration, affecting the regulation of safety and dynamic effects.

Method used

Using the improved CAN protocol, the alternating storage and synchronous transmission of servo control instructions are realized by introducing a bidirectional memory group and a dedicated MCU in the seat control system, and the real-time and synchronization of the dynamic seat are improved. At the same time, the adjustability of the dynamic strength is achieved by adjusting the damping value of the seat buffer.

Benefits of technology

It improves the real-time and synchronization of the response of dynamic seats, enhances the ability to regulate safety and dynamic effects, and meets the dynamic needs of audiences of different ages.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN115343975B_ABST
    Figure CN115343975B_ABST
Patent Text Reader

Abstract

The present invention discloses a motion control system and method for a dynamic seat based on an improved CAN protocol; the control system alternately stores servo driver control instructions through two bidirectional memory banks, and uses six dedicated MCUs to respectively control six CAN controllers to simultaneously transmit servo control instructions to the corresponding six servo drivers, realizing uninterrupted and continuous transmission of servo control instructions to a single servo driver, overcoming the problem of transmitting servo control instructions to multiple servo driver nodes one by one using a single CAN node in the conventional method, reducing the transmission time of servo control instructions for a single servo driver, and improving the real-time response of the dynamic seat. In addition, the present invention utilizes the characteristic that there are only two nodes in each independent CAN bus channel in the control system to improve the ID identification bit of the data frame, and uses some of the ID identification bits in the data frame as data transmission bits, improving the data volume carried by the data frame.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present invention belongs to the technical field of motion seats, and particularly relates to a motion seat motion control system and method based on an improved CAN protocol. Background Art

[0002] Motion seats are an important part of a motion cinema. Motion seats can make corresponding actions according to different plot contents of a movie through computer control, so as to achieve an immersive effect. When a movie plays an action clip, it will send a motion effect control instruction to the motion seat. After receiving the control instruction, the motion seat makes actions consistent with the movie playback content, thereby driving the audience on the seat to realize actions such as rotation, acceleration, braking, and roll. The audience on the motion seat can experience special effects consistent with those in the movie through these actions, thus giving the audience a sense of immersion. The higher the real-time performance and stability of the motion seat's action response, the more real the experience obtained by the audience on the motion seat. At present, there are still problems in terms of reliability, generality, safety, comfort, etc. in the motion seat control system, and it is urgent to optimize and improve it from aspects such as appearance design, hardware mechanism, software design, control method, and application promotion. These problems greatly restrict the development speed of motion cinemas in China.

[0003] As a device serving people, a motion seat must consider the motion effect of the motion seat on the premise of meeting safety. When a motion seat is in motion, there are continuous mutations in speed and acceleration, and too frequent speed mutations cause damage to the bodies of the audience on the seat, thus endangering the health of the audience on the seat. In addition, considering that audiences of different ages have different experiences of the motion effects achieved by the same action profile, for example, the speed and acceleration mutations corresponding to a good motion effect in the young audience group may not be suitable for the elderly and child audience groups. This requires that the motion intensity of the motion seat can be adjusted.

[0004] At present, the communication method in the motion control of motion seats mostly uses the RS232 bus, and there are deficiencies in the real-time performance, stability of communication, and interconnection between multiple devices. The CAN bus is widely used in industrial motion control due to its excellent characteristics, extremely high reliability, and low-cost advantages. Summary of the Invention

[0005] To solve the problem of insufficient real-time response of the above-mentioned motion seat, improve the real-time performance, stability, and synchronization of the motion seat; solve technical problems such as insufficient safety caused by frequent mutations of speed and acceleration of the motion seat and inability to adjust the intensity of the motion effect, the present invention provides a motion seat motion control system and method based on an improved CAN protocol.

[0006] In a first aspect, the present invention provides a motion control system for a dynamic seat based on an improved CAN protocol, which includes a seat body, a seat buffer, a moving platform, a dynamic execution module, a base, and a control module. The moving platform is connected to the base through the dynamic execution module. The seat body is installed on the moving platform through a plurality of seat buffers; the dynamic execution module is used to drive the seat body to move. The seat buffer is used to provide buffers with different damping values for the seat body.

[0007] The control module includes a seat controller, a seat detector, and a dynamic intensity controller. The seat detector is used to detect operating parameters including the position of the seat body. The dynamic intensity controller includes a manual input module, an automatic selection module, and a dynamic intensity processing module. The seat controller controls the movement of the dynamic execution module. The dynamic intensity controller adjusts the damping value of the seat buffer.

[0008] The seat controller includes a processor, an FPGA module, two bidirectional memory banks, n dedicated MCUs, and n CAN controllers. n is the number of servo motors in the dynamic execution module. The processor communicates with the FPGA module. Both of the two bidirectional memory banks include n bidirectional memories. The first data transfer interfaces of all the bidirectional memories are connected to the FPGA module. The n bidirectional memories in the first bidirectional memory bank are respectively connected to the first data interfaces of the n dedicated MCUs; the n bidirectional memories in the second bidirectional memory bank are respectively connected to the second data interfaces of the n dedicated MCUs. The control output interfaces of the n dedicated MCUs are respectively connected to the n CAN controllers. The n CAN controllers are respectively connected to n servo drivers; the n servo drivers respectively drive the n servo motors in the dynamic execution module to rotate. The n dedicated MCUs are all connected to the FPGA module to receive interrupt signals.

[0009] During one servo cycle of controlling the n servo motors by the seat controller, the FPGA module stores servo control instructions in one of the two bidirectional memory banks; at the same time, under the control of an external interrupt provided by the FPGA module, the n dedicated MCUs respectively read the n servo control instructions stored in the n bidirectional memories in the other bidirectional memory bank, and respectively send the read servo control instructions to the corresponding CAN controllers; the n CAN controllers respectively send the n servo control instructions to the n servo drivers. In different servo cycles, the two bidirectional memory banks are alternately used for reading and writing servo control instructions, so that the reading and writing of servo control instructions are executed simultaneously, shortening the servo cycle and improving the real-time performance of servo motor control.

[0010] Preferably, the CAN protocol data frame structure used for controlling the servo motor in the motion execution module consists of a frame start, arbitration segment, control segment, data segment, CRC segment, acknowledgment segment, and frame end connected in sequence. The arbitration segment includes a 2-bit ID1 segment, a 9-bit DATA1 segment, a 1-bit SRR segment, a 1-bit IDE segment, an 18-bit DATA2 segment, and a 1-bit RTR segment; the data segment is a 0-64 Bit DATA3 segment; the DATA1 segment, DATA2 segment, and DATA3 segment are jointly used for data transmission.

[0011] Preferably, when the damping value of the seat buffer increases, the motion intensity of the motion seat increases; when the damping value of the seat buffer decreases, the motion intensity of the motion seat decreases. The damping value of the seat buffer is divided into multiple different gears for the user to choose, so that different users can obtain an appropriate motion intensity. During the operation of the motion seat, if it is detected that the acceleration of the seat body exceeds a preset threshold, the damping value of the seat buffer automatically decreases to ensure the safety of the user.

[0012] Preferably, the seat controller communicates with the main control server acting as the upper computer through Ethernet.

[0013] Preferably, the seat detector includes a position detection module, a speed detection module, a temperature detection module, a humidity detection module, a weight detection module, a heart rate detection module, a safety judgment module, and an I / O control module.

[0014] Preferably, the motion execution module includes six electric push rods. The bottom end of the electric push rod forms a spherical pair with the base, and the top end forms a spherical pair with the moving platform. Each electric push rod is driven by a corresponding servo motor. The bottom ends of the six electric push rods are arranged circumferentially along the central axis of the base. For any one electric push rod, there are two adjacent electric push rods. For an electric push rod, its bottom end is close to the bottom end of one of the adjacent electric push rods on the base, and its top end is close to the top end of the other adjacent electric push rod on the moving platform.

[0015] Preferably, there are six seat buffers in total. The six seat buffers are grouped in pairs; the installation positions of the two seat buffers in the same group are close to each other. The three groups of seat buffers are evenly distributed circumferentially along the central axis of the moving platform.

[0016] Preferably, the seat buffer includes a cylinder body, a piston rod, a spring, a pressure charging interface and a pressure sensor. The piston part of the piston rod is slidably connected to the inner cavity of the cylinder body, dividing the cylinder body into two air chambers. Two springs are respectively located in the two air chambers. The opposite ends of the two springs respectively abut against the two side surfaces of the piston part of the piston rod, and the opposite ends respectively abut against the two end surfaces of the inner cavity of the cylinder body. The outer end of the piston rod extends out of the cylinder body and is fixed to the seat body. The two pressure charging interfaces are both installed on the cylinder body and are respectively communicated with the two air chambers. By adjusting the air pressures in the two air chambers, the damping value of the seat buffer is changed.

[0017] Preferably, the two air chambers of the seat buffer are charged and depressurized under the control of the motion intensity adjustment module. The motion intensity adjustment module includes a pressure source, an electric valve controller and an electric valve; each pressure charging interface is connected to the pressure source through an independent electric valve. The two pressure charging interfaces are controlled to be charged and depressurized through the electric valves to adjust the air pressures in the two air chambers. Pressure sensors are installed on the opposite end surfaces of the two air chambers. The control interfaces of each electric valve and the signal output interfaces of the pressure sensors are all connected to the electric valve controller. The electric valve controller is connected to the motion intensity controller.

[0018] In a second aspect, the present invention provides a motion control method for a motion seat based on an improved CAN protocol, which is based on the foregoing control system, and the specific steps are as follows:

[0019] Step 1: When the movie starts playing, the main control server sends the action data to the seat controller through the Ethernet.

[0020] Step 2: The seat controller calculates and processes the action data to generate servo control instructions, and respectively transmits them to n servo drivers through the CAN bus. The specific process is as follows: The processor in the seat controller resolves the received action data through the forward and inverse kinematic algorithms of the seat to obtain the attitude coordinates of the next target position of the motion seat and the action length of the electric push rod; the resolution result is input into the FPGA module through the SPI bus.

[0021] Step 3: Each servo driver controls each motion execution module to perform corresponding actions according to the received servo control instructions. Through the combined actions of the servo motors in the motion execution module, the motion seat achieves the required motion effect. The process of synchronous transmission of multiple servo control instructions is as follows:

[0022] ①. During a servo cycle, the storage processing unit in the FPGA module stores the servo control instructions of n servo drivers into n bidirectional memories in the first bidirectional memory group respectively. Meanwhile, under the control of the external interrupt generation unit in the FPGA module, n dedicated MCUs simultaneously read the n servo control instructions stored in the n bidirectional memories in the second bidirectional memory group respectively, and simultaneously send the read servo control instructions to the corresponding CAN controllers; the n CAN controllers send the n servo control instructions to the n servo drivers respectively.

[0023] ②. In a servo cycle T after step ① is executed, the storage processing unit in the FPGA module stores the control instructions of n servo drivers into n bidirectional memories in the second bidirectional memory group respectively. Meanwhile, under the control of the external interrupt generation unit in the FPGA module, n dedicated MCUs simultaneously read the n servo control instructions stored in the n bidirectional memories in the first bidirectional memory group respectively, and simultaneously send the read servo control instructions to the corresponding CAN controllers; the n CAN controllers send the n servo control instructions to the n servo drivers respectively.

[0024] ③. Repeat steps ① and ② to achieve the alternate storage and synchronous transmission of the servo control instructions.

[0025] Step 4: The seat detector detects the operating parameters of the motion seat and sends the detected operating parameters to the seat controller. The seat controller performs error compensation based on the operating parameters, thereby forming a closed-loop control.

[0026] The beneficial effects of the present invention are as follows:

[0027] 1. The present invention proposes to alternately store the servo driver control instructions using the first bidirectional memory group and the second bidirectional memory group, and use the first dedicated MCU to the sixth dedicated MCU to control the first CAN controller to the sixth CAN controller to simultaneously transmit the servo control instructions to the corresponding first servo driver to the sixth servo driver respectively, realizing the uninterrupted continuous transmission of the servo control instructions to a single servo driver, overcoming the problem of transmitting the servo control instructions to multiple servo driver nodes one by one using a single CAN node in the conventional method, reducing the transmission time of the servo control instructions of a single servo driver, and improving the real-time response of the motion seat.

[0028] 2. The first CAN controller to the sixth CAN controller used in the present invention simultaneously and continuously transmit the servo control instructions to the first servo driver to the sixth servo driver respectively, improving the synchronization and stability of the linkage of the first motion execution module to the sixth motion execution module, making the motion seat work more synchronously and stably.

[0029] 3. The present invention proposes an improved CAN protocol data frame structure. By utilizing the characteristic that there are only two nodes in each independent CAN bus channel, the ID identification bits of the data frame are improved, and some of the ID identification bits in the data frame are used as data transmission bits, maximizing the utilization of the ID identification bits of the data frame, increasing the data volume carried by the data frame, reducing the number of data frame transmissions within a dynamic special effect action, thereby relatively reducing the transmission time of servo control instructions and improving the real-time performance of the dynamic seat response.

[0030] 4. The present invention proposes a method for adjusting the dynamic intensity of a dynamic seat based on a seat buffer. By virtue of the controllable damping value of the seat buffer, different damping values of the seat buffer are set to adjust the speed and acceleration mutation intensity of the dynamic seat, thereby realizing adjustable dynamic intensity.

[0031] 5. The present invention detects the position and speed of the dynamic seat through a seat detection module, and a safety judgment module judges the detection results and issues control instructions to a dynamic intensity controller according to the judgment results, thereby realizing the automatic control of the dynamic intensity. By this method, the safety of the dynamic seat is improved.

[0032] 6. The dynamic intensity controller used in the present invention can manually adjust the dynamic intensity of the seat, thereby meeting the requirements of audiences of different ages for the dynamic intensity and expanding the user group of the dynamic seat. BRIEF DESCRIPTION OF THE DRAWINGS

[0033] Figure 1 It is a schematic structural diagram of the dynamic seat controlled by the present invention.

[0034] Figure 2 It is a schematic diagram of the installation position of the seat buffer in the dynamic seat controlled by the present invention.

[0035] Figure 3 It is a schematic structural diagram of the seat buffer in the dynamic seat controlled by the present invention.

[0036] Figure 4 It is a system block diagram of the control module used in the present invention.

[0037] Figure 5 It is a system block diagram of the seat controller in the present invention.

[0038] Figure 6 It is a system block diagram of the seat detector in the present invention.

[0039] Figure 7 It is a schematic diagram of the composition of the dynamic intensity controller in the present invention.

[0040] Figure 8 It is a schematic diagram of the process of controlling the dynamic intensity in the present invention.

[0041] Figure 9 This is the system block diagram of the dynamic intensity adjustment module in the present invention.

[0042] Figure 10 This is the schematic diagram of the servo control instruction access process in the third step of the present invention.

[0043] Figure 11 This is the schematic diagram of the standard CAN protocol data frame format.

[0044] Figure 12 This is the schematic diagram of the improved CAN protocol data frame format provided by the present invention. Detailed implementation manners

[0045] In order to make the technical means, creative features, achieved purposes and effects of the invention easy to understand, the present invention will be further described below in conjunction with specific drawings.

[0046] As Figure 1 shown, a dynamic seat motion control system based on an improved CAN protocol includes a seat main body 1, a seat buffer 2, a moving platform 3, a dynamic execution module 4, a base 5 and a control module. The control module includes a seat controller, a seat detector and a dynamic intensity controller. The seat detector includes a position detection module, a speed detection module, a temperature detection module, a humidity detection module, a weight detection module, a heart rate detection module, a safety judgment module and an I / O control module. The dynamic intensity controller used in the present invention is composed of multiple modules. As Figure 7 shown, it includes a manual input module, an automatic selection module and a dynamic intensity processing module. The seat controller controls the movement of the dynamic execution module 4. The dynamic intensity controller controls the first to sixth dynamic intensity adjustment modules to work, and then adjusts the damping value of the seat buffer 2. The seat controller communicates with the main control server as the upper computer through Ethernet.

[0047] The moving platform 3 is connected to the base 5 through the dynamic execution module 4. The dynamic execution module 4 includes six electric push rods. The bottom end of the electric push rod forms a spherical pair with the base 5, and the top end forms a spherical pair with the moving platform 3. Each electric push rod is driven by a corresponding servo motor. The bottom ends of the six electric push rods are arranged circumferentially along the central axis of the base 5. For any one electric push rod, there are two adjacent electric push rods. For one electric push rod, its bottom end is close to the bottom end of one of the adjacent electric push rods on the base 5, and its top end is close to the top end of the other adjacent electric push rod on the moving platform 3, so that a triangular structure is formed between any two adjacent electric push rods, ensuring the stability of the moving platform 3. Through the cooperation of the six electric push rods, the six-degree-of-freedom movement of the moving platform 3 can be realized.

[0048] The seat main body 1 is connected to the moving platform 3 through six seat buffers 2. AsFigure 2 As shown, the six seat buffers 2 are grouped in pairs; the installation positions of the two seat buffers 2 in the same group are close to each other. The three groups of seat buffers 2 are evenly distributed circumferentially along the central axis of the moving platform 3. As Figure 3 shown, the seat buffer 2 includes a cylinder body 2-1, a piston rod 2-2, a spring 2-3, a pressure charging interface 2-4 and a pneumatic sensor 2-5. The piston part of the piston rod 2-2 is slidably connected to the inner cavity of the cylinder body 2-1, separating the cylinder body 2-1 into two air chambers. The two springs 2-3 are respectively located in the two air chambers. The opposite ends of the two springs 2-3 respectively abut against the two side surfaces of the piston part of the piston rod 2-2, and the opposite ends respectively abut against the two end surfaces of the inner cavity of the cylinder body 2-1. The outer end of the piston rod 2-2 extends outside the cylinder body 2-1 and is fixed to the seat body 1. The seat buffer 2 is used to provide buffering for the seat body 1 when the motion execution module 4 moves extremely violently, so that the intensity of the motion effect generated by the seat body 1 can be adjusted, ensuring the safety of the user. The two pressure charging interfaces 2-4 are respectively installed at both ends of the outer side surface of the cylinder body 2-1 and are respectively communicated with the two air chambers.

[0049] The two air chambers of the seat buffer 2 are charged and depressurized under the control of the motion intensity adjustment module. The motion intensity adjustment module includes a pneumatic source, an electric valve controller and an electric valve; each pressure charging interface 2-4 is connected to the pneumatic source through an independent electric valve. The two pressure charging interfaces 2-4 are controlled for charging and depressurizing through the electric valve to adjust the air pressure in the two air chambers, so as to achieve the effect of adjusting the damping value of the seat buffer 2. The pneumatic sensors 2-5 are installed on the opposite end surfaces of the two air chambers. The control interfaces of the electric valves and the signal output interfaces of the pneumatic sensors 2-5 are all connected to the electric valve controller. The electric valve controller is connected to the motion intensity controller.

[0050] As Figure 5 shown, the seat controller includes a processor, an FPGA module, two bidirectional memory banks, six dedicated MCUs and six CAN controllers. The processor uses an ARM processor. The processor communicates with the FPGA module through an SPI bus. The two bidirectional memory banks each include six bidirectional memories. The first data transfer interfaces of all the bidirectional memories are connected to the storage processing unit of the FPGA module. The six bidirectional memories in the first bidirectional memory bank are respectively connected to the first data interfaces of the six dedicated MCUs; the six bidirectional memories in the second bidirectional memory bank are respectively connected to the second data interfaces of the six dedicated MCUs. The control output interfaces of the six dedicated MCUs are respectively connected to the six CAN controllers. The six CAN controllers are respectively connected to the six servo drivers; the six servo drivers respectively drive the servo motors of the six electric push rods to rotate. The six dedicated MCUs are all connected to the external interrupt generation unit in the FPGA module, receive interrupt signals, and read the servo control instructions stored in the corresponding bidirectional memories according to the interrupt signals.

[0051] The further description of the connection relationships of each part in the seat controller is as follows: The two bidirectional memory groups are the first bidirectional memory group and the second bidirectional memory group respectively; these two bidirectional memory groups have the same specifications and functions. The first bidirectional memory group includes independent first to sixth bidirectional memories, and the second bidirectional memory group includes independent seventh to twelfth bidirectional memories. Both the first bidirectional memory group and the second bidirectional memory group are used to store the servo control instructions of six servo drivers calculated by the FPGA module. The storage process is as Figure 10 shown. Within a servo cycle T, the storage processing unit in the FPGA module stores the control instructions of the first to sixth servo drivers into the first to sixth bidirectional memories in the first bidirectional memory group respectively.

[0052] As Figure 4 shown, the dynamic seat control method based on the improved CAN protocol includes the following steps:

[0053] Step 1: When the movie starts playing, the master server sends the action data to the ARM processor in the seat controller through Ethernet.

[0054] Step 2: The seat controller calculates and processes the action data to generate servo control instructions, and transmits them to the six servo drivers through the CAN bus respectively. The specific process is as follows: The ARM processor in the seat controller uses the forward and inverse kinematic algorithms of the seat to solve the received action data, and obtains the attitude coordinates of the next target position of the dynamic seat and the action lengths of the electric push rods; the calculation results are input into the FPGA module through the SPI bus. The main function of the FPGA module is to perform servo calculations on the operation results of the ARM processor to obtain the servo control instructions of each servo driver.

[0055] Step 3: Each servo driver controls the corresponding actions of each servo motor in the dynamic execution module according to the received servo control instructions. Through the combined actions of the six electric push rods in the dynamic execution module, the dynamic seat achieves the required dynamic effects.

[0056] In order to improve the real-time performance, stability and synchronization of the six electric push rods in the dynamic execution module during the movement of the dynamic seat, the present invention provides an alternating storage multi-channel synchronous transmission scheme based on the improved CAN protocol. This scheme is implemented based on the aforementioned two bidirectional memory groups, six dedicated MCUs and six CAN controllers. The specific scheme is as follows:

[0057] ①. During a servo cycle T, the storage processing unit in the FPGA module stores the servo control instructions of six servo drivers into six dual-port memories in the first dual-port memory bank respectively. Meanwhile, six dedicated MCUs, under the control of the external interrupt generation unit in the FPGA module, simultaneously read the six servo control instructions stored in the six dual-port memories in the second dual-port memory bank respectively, and send the read servo control instructions to the corresponding CAN controllers simultaneously; the six CAN controllers send the six servo control instructions to the six servo drivers respectively to achieve the control of six electric push rods in the dynamic execution module. It should be noted here that the six dedicated MCUs have the same clock frequency. Their functions are to achieve the access to the data in the first dual-port memory bank and the second dual-port memory bank and the control of the first CAN controller to the sixth CAN controller. It should also be noted that the six dedicated MCUs respectively provide external clocks with the same frequency to the corresponding CAN controllers, and the six CAN controllers have the same transmission rate.

[0058] ②. In a servo cycle T after step ① is executed, the storage processing unit in the FPGA module stores the control instructions of six servo drivers into six dual-port memories in the second dual-port memory bank respectively. Meanwhile, six dedicated MCUs, under the control of the external interrupt generation unit in the FPGA module, simultaneously read the six servo control instructions stored in the six dual-port memories in the first dual-port memory bank respectively, and send the read servo control instructions to the corresponding CAN controllers simultaneously; the six CAN controllers send the six servo control instructions to the six servo drivers respectively to achieve the control of six electric push rods in the dynamic execution module.

[0059] ③. Repeat steps ① and ② to achieve the alternate storage and synchronous transmission of servo control instructions, so as to achieve the purpose of real-time control of six dynamic execution modules. In this process, thanks to the way of alternate reading and writing of the two dual-port memory banks, the process of the FPGA module writing servo control instructions to the dual-port memory can be synchronized with the process of the dedicated MCU reading servo control instructions; it avoids the situation in the prior art that after the FPGA module writes the previous servo control instruction to the dual-port memory, it needs to wait for the MCU to complete the reading before writing the next servo control instruction; thus, without changing the operation speed of the FPGA module, the real-time performance of the dynamic seat control is significantly improved.

[0060] In addition, since each of the two bidirectional memory banks includes six bidirectional memories, each servo driver corresponds to an independent dedicated MCU, a CAN controller, and two bidirectional memories, forming six independent CAN channels, and each CAN channel includes two CAN communication nodes. This enables synchronous transmission of servo control instructions to the six servo drivers, avoiding the situation in the prior art where six servo control instructions need to be written into the corresponding servo drivers one by one and frame by frame, significantly improving the real-time performance and synchronization of the control of the six electric push rods.

[0061] In this embodiment, to shorten the transmission time of the servo control instructions corresponding to a dynamic special effect, improve the real-time performance and synchronization between the dynamic effect of the motion seat and the played movie, and thus improve the user experience, the present invention provides an improved CAN protocol data frame structure. This data frame structure is an extended frame structure improved based on CAN2.0B. As Figure 11 shown, the existing CAN2.0B structure consists of a frame start, an arbitration segment, a control segment, a data segment, a CRC segment, an acknowledgment segment, and a frame end connected in sequence. The arbitration segment includes an 11-bit ID1 segment, a 1-bit SRR segment, a 1-bit IDE segment, an 18-bit ID2 segment, and a 1-bit RTR segment; as Figure 12 shown, in the data frame structure improved by the present invention, the first two bits of the ID1 segment store the ID, and the remaining 9 bits of the ID1 segment and all 18 bits of the ID2 segment are all used to store data. The remaining 9 bits of the ID1 segment form the DATA1 segment, and the 18 bits of the ID2 segment form the DATA2 segment; the DATA segment of the original data segment forms the DATA3 segment.

[0062] Since the CAN protocol requires that the first 7 bits of the identifier cannot all be recessive, ID = 11 is not available. In this CAN network, the maximum total number of nodes is 3; and since each CAN channel of the present invention only includes two CAN communication nodes; therefore, the improved data frame structure of the present invention can make full use of the ID identification bits, enabling up to 9 of the 11 bits of the ID to be used as data bits. It should be noted that when setting the filter for the nodes in this CAN network, the mask register corresponding to the ID identification bits used as data bits must be set to 0, indicating that the IDs of these bits are not considered during the reception process.

[0063] Step 4: The seat detector detects the operating parameters of the motion seat and sends the detected operating parameters to the seat controller. The operating parameters of the motion seat include seat position, speed, ambient temperature, ambient humidity, audience weight, and audience heart rate. The seat controller performs error compensation based on the operating parameters to form a closed-loop control. Meanwhile, the safety judgment module makes a safety judgment on the detection results. If the detection results exceed the preset safety value of the seat detector, an adjustment instruction will be sent to the motion intensity controller. The motion intensity controller adjusts the motion intensity of the motion seat according to the received adjustment instruction. In addition, the motion intensity controller can also manually adjust the motion intensity according to the audience's needs.

[0064] The adjustment process of the motion intensity is as follows:

[0065] ①. As Figure 6 shown, the seat detector detects the operating parameters of the motion seat. The operating parameters of the motion seat include seat position, speed, ambient temperature, ambient humidity, audience weight, and audience heart rate. As Figure 4 shown, on the one hand, the seat detector sends the operating parameters to the seat controller through the I / O control module. The seat controller performs error compensation on the six electric push rods in the motion execution module 4 according to the position and speed in the operating parameters to form an accurate closed-loop control of the motion execution module 4. Meanwhile, the seat controller sends the operating parameters of the motion seat to the main control server through the Ethernet. The main control server uses the operating parameters including seat position, speed, ambient temperature, ambient humidity, audience weight, and audience heart rate as the basis for calculating the action data. Different action data bring different motion effects. On the other hand, the safety judgment module calculates the acceleration of the motion seat based on the detected seat position and speed, and evaluates the speed and acceleration. If the speed and acceleration exceed the preset safety value of the safety judgment module, an adjustment instruction will be sent to the motion intensity controller.

[0066] ②. As Figure 7 shown, there are several preset values in the automatic selection module for calibrating and adjusting different motion intensity levels. The automatic selection module selects the corresponding adjustment preset value according to the adjustment instruction from the seat detector and transmits it to the motion intensity processing module. As Figure 8 shown, the motion intensity processing module controls the six motion intensity adjustment modules to work to reach different damping values according to the adjustment preset value, so that the motion seat has different motion intensity levels. In addition, the audience can manually input the motion intensity adjustment value through the manual input module to select the motion intensity level suitable for themselves. It should be noted here that the motion intensity level is the gradient division value when the six motion intensity adjustment modules reach different damping values.

[0067] ③. As Figure 9As shown, the electric valve controller controls the electric valve under the control of the dynamic intensity controller. By pressurizing or depressurizing two air chambers in each seat buffer 2, the damping value of each seat buffer 2 is adjusted. Different damping values of the seat buffer 2 have different degrees of adjustment on the dynamic intensity. When the air pressure in the two air chambers decreases, the damping value of the seat buffer 2 decreases, and the buffering ability for the movement of the dynamic execution module 4 increases, achieving the effect of reducing the dynamic intensity and ensuring safety. When the air pressure in the two air chambers increases, the damping value of the seat buffer 2 increases, and the buffering ability for the movement of the dynamic execution module 4 decreases, resulting in an increase in the dynamic intensity.

[0068] Two pressure sensors 2-5 respectively located in the two air chambers in the seat buffer 2 detect the air pressure in the two air chambers in real time and transmit it back to the electric valve controller in real time; the electric valve controller performs error compensation based on the transmitted air pressure to achieve the purpose of precisely controlling the damping value of the seat buffer 2; at the same time, the electric valve controller will calculate the damping value of each seat buffer 2 according to the measured air pressure value and transmit the damping value to the dynamic intensity controller. The dynamic intensity controller calculates the dynamic intensity level based on the damping value and sends the dynamic intensity level to the main control server through the seat controller. The dynamic intensity level serves as the basis for the main control server to calculate the action data.

[0069] The present invention utilizes the characteristic that the damping value of the seat buffer 2 is controllable, and sets different damping values of the seat buffer 2 to adjust the speed and acceleration mutation intensity of the dynamic seat, thereby realizing adjustable dynamic intensity.

Claims

1. A motion control system for a dynamic seat based on an improved CAN protocol, characterized in that: it includes a seat body (1), a seat buffer (2), a moving platform (3), a dynamic execution module (4), a base (5) and a control module; the moving platform (3) is connected to the base (5) through the dynamic execution module (4); the seat body (1) is installed on the moving platform (3) through a plurality of seat buffers (2); the dynamic execution module (4) is used to drive the seat body (1) to move; the seat buffer (2) is used to provide buffers with different damping values for the seat body (1); the control module includes a seat controller, a seat detector and a dynamic intensity controller; the seat detector is used to detect operating parameters including the position of the seat body; the dynamic intensity controller includes a manual input module, an automatic selection module and a dynamic intensity processing module; the seat controller controls the movement of the dynamic execution module (4); the dynamic intensity controller adjusts the damping value of the seat buffer (2); the seat controller includes a processor, an FPGA module, two bidirectional memory banks, n dedicated MCUs and n CAN controllers; n is the number of servo motors in the dynamic execution module (4); the processor communicates with the FPGA module; both of the two bidirectional memory banks include n bidirectional memories; the first data transfer interfaces of all the bidirectional memories are connected to the FPGA module; the n bidirectional memories in the first bidirectional memory bank are respectively connected to the first data interfaces of the n dedicated MCUs; the n bidirectional memories in the second bidirectional memory bank are respectively connected to the second data interfaces of the n dedicated MCUs; the control output interfaces of the n dedicated MCUs are respectively connected to the n CAN controllers; the n CAN controllers are respectively connected to n servo drivers; the n servo drivers respectively drive the n servo motors in the dynamic execution module (4) to rotate; the n dedicated MCUs are all connected to the FPGA module to receive interrupt signals; when the seat controller controls one servo cycle of the n servo motors, the FPGA module stores servo control instructions in one of the two bidirectional memory banks; at the same time, under the control of the external interrupt provided by the FPGA module, the n dedicated MCUs respectively read the n servo control instructions stored in the n bidirectional memories in the other bidirectional memory bank, and respectively send the read servo control instructions to the corresponding CAN controllers; the n CAN controllers respectively send the n servo control instructions to the n servo drivers; in different servo cycles, the two bidirectional memory banks are alternately used for reading and writing servo control instructions, so that the reading and writing of servo control instructions are executed simultaneously.

2. A motion control system for a dynamic seat based on an improved CAN protocol according to claim 1, characterized in that: The CAN protocol data frame structure used to control the servo motor in the motion execution module (4) consists of a frame start, an arbitration segment, a control segment, a data segment, a CRC segment, an acknowledgment segment, and a frame end connected in sequence; the arbitration segment includes a 2-bit ID1 segment, a 9-bit DATA1 segment, a 1-bit SRR segment, a 1-bit IDE segment, an 18-bit DATA2 segment, and a 1-bit RTR segment; the data segment is a 0-64 Bit DATA3 segment; the DATA1 segment, the DATA2 segment, and the DATA3 segment are jointly used for data transmission.

3. A motion control system for a dynamic seat based on an improved CAN protocol according to claim 1, characterized in that: when the damping value of the seat buffer (2) increases, the motion intensity of the dynamic seat increases; when the damping value of the seat buffer (2) decreases, the motion intensity of the dynamic seat decreases; the damping value of the seat buffer (2) is divided into multiple different gears for the user to select, so that different users can obtain an appropriate motion intensity; during the operation of the dynamic seat, if it is detected that the acceleration of the seat body (1) exceeds a preset threshold, the damping value of the seat buffer (2) will automatically decrease to ensure the safety of the user.

4. A motion control system for a dynamic seat based on an improved CAN protocol according to claim 1, characterized in that: the seat controller communicates with the main control server as the upper computer through Ethernet.

5. A motion control system for a dynamic seat based on an improved CAN protocol according to claim 1, characterized in that: the seat detector includes a position detection module, a speed detection module, a temperature detection module, a humidity detection module, a weight detection module, a heart rate detection module, a safety judgment module, and an I / O control module.

6. A motion control system for a dynamic seat based on an improved CAN protocol according to claim 1, characterized in that: the motion execution module (4) includes six electric push rods; the bottom end of the electric push rod forms a spherical pair with the base (5), and the top end forms a spherical pair with the moving platform (3); each electric push rod is driven by a corresponding servo motor; the bottom ends of the six electric push rods are arranged circumferentially along the central axis of the base (5); for any one electric push rod, there are two adjacent electric push rods; for one electric push rod, its bottom end is close to the bottom end of one of the adjacent electric push rods on the base (5), and its top end is close to the top end of the other adjacent electric push rod on the moving platform (3).

7. A motion control system for a dynamic seat based on an improved CAN protocol according to claim 1, characterized in that: there are a total of six seat buffers (2); the six seat buffers (2) are grouped in pairs; the installation positions of the two seat buffers (2) in the same group are close to each other; the three groups of seat buffers (2) are evenly distributed circumferentially along the central axis of the moving platform (3).

8. A motion control system for a dynamic seat based on an improved CAN protocol according to claim 3, characterized in that: The described seat buffer (2) includes a cylinder body (2-1), a piston rod (2-2), a spring (2-3), a pressure charging interface (2-4), and a pneumatic sensor (2-5); The piston part of the piston rod (2-2) is slidably connected to the inner cavity of the cylinder body (2-1), dividing the cylinder body (2-1) into two air chambers; two springs (2-3) are respectively located in the two air chambers; the opposite ends of the two springs (2-3) respectively abut against the two side surfaces of the piston part of the piston rod (2-2), and the opposite ends respectively abut against the two end surfaces of the inner cavity of the cylinder body (2-1); the outer end of the piston rod (2-2) extends outside the cylinder body (2-1) and is fixed to the seat body (1); two pressure charging interfaces (2-4) are both installed on the cylinder body (2-1) and are respectively communicated with the two air chambers; by adjusting the air pressure in the two air chambers, the damping value of the seat buffer (2) is changed.

9. A motion control system for a dynamic seat based on an improved CAN protocol according to claim 8, characterized in that: The two air chambers of the seat buffer (2) are charged and depressurized under the control of a motion intensity adjustment module; the motion intensity adjustment module includes a pneumatic source, an electric valve controller, and an electric valve; each pressure charging interface (2-4) is connected to the pneumatic source through an independent electric valve; the two pressure charging interfaces (2-4) are controlled for charging and depressurizing through the electric valve to adjust the air pressure in the two air chambers; pneumatic sensors (2-5) are installed on the opposite end surfaces of the two air chambers; the control interfaces of each electric valve and the signal output interfaces of the pneumatic sensors (2-5) are all connected to the electric valve controller; the electric valve controller is connected to the motion intensity controller.

10. A motion control method for a dynamic seat based on an improved CAN protocol, characterized in that: It is applied to a motion control system for a dynamic seat based on an improved CAN protocol as described in any one of claims 1-9; the control method includes the following steps: Step 1, when the movie starts playing, the main control server sends the action data to the seat controller through the Ethernet; Step 2, the seat controller calculates and processes the action data to generate servo control instructions, and respectively transmits them to n servo drivers through the CAN bus; the specific process is as follows: the processor in the seat controller performs a solution calculation on the received action data through the forward and inverse kinematic algorithms of the seat to obtain the attitude coordinates of the next target position of the dynamic seat and the action length of the electric push rod; the solution result is input into the FPGA module through the SPI bus; Step 3, each servo driver controls each dynamic execution module to perform corresponding actions according to the received servo control instructions; through the combined actions of each servo motor in the dynamic execution module, the dynamic seat reaches the required dynamic effect; the process of synchronous transmission of multiple servo control instructions is as follows: ①. During a servo cycle, the storage processing unit in the FPGA module stores the servo control instructions of n servo drivers into n dual-port memories in the first dual-port memory bank respectively; meanwhile, under the control of the external interrupt generation unit in the FPGA module, n dedicated MCUs simultaneously read the n servo control instructions stored in the n dual-port memories in the second dual-port memory bank respectively, and send the read servo control instructions to the corresponding CAN controllers simultaneously; the n CAN controllers send the n servo control instructions to the n servo drivers respectively; ②. In a servo cycle T after step ① is executed, the storage processing unit in the FPGA module stores the control instructions of n servo drivers into n dual-port memories in the second dual-port memory bank respectively; meanwhile, under the control of the external interrupt generation unit in the FPGA module, n dedicated MCUs simultaneously read the n servo control instructions stored in the n dual-port memories in the first dual-port memory bank respectively, and send the read servo control instructions to the corresponding CAN controllers simultaneously; the n CAN controllers send the n servo control instructions to the n servo drivers respectively; ③. Repeat steps ① and ② to achieve alternate storage and synchronous transmission of servo control instructions; Step 4: The seat detector detects the operating parameters of the motion seat and sends the detected operating parameters to the seat controller; the seat controller performs error compensation based on the operating parameters to form a closed-loop control.

Citation Information

Patent Citations

  • Real-time double-bus control system applied to multiaxial warp knitting machine

    CN103488142A

  • Control system for high-precision six-degree-of-freedom optical module adjusting mechanism

    CN108983672A