Rotation angle feedback system and method and readable storage medium
By setting blind holes on the rack of the CT equipment and generating pulse signals, the problem of high cost of rotation angle encoder is solved, low-cost and accurate rotation angle feedback is achieved, and CT image artifacts are reduced.
Patent Information
- Application Number
- CN202510577431.2
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2025-04-30
- Publication Date
- 2025-08-01
AI Technical Summary
The cost of rotation angle encoder in existing CT devices is high, resulting in inaccurate feedback on rotation angle information and artifacts.
A detection device is adopted that evenly sets multiple blind holes on the frame, and pulse signals are generated by detecting the blind holes, and the processing device generates an equal-time counting pulse signal, determines the target rotation angle, and feeds back to the controller of the CT device.
The cost of rotation angle feedback is reduced, while meeting the accuracy requirements of CT equipment for rotation angle feedback is reduced, and the generation of artifacts is reduced.
Smart Images

Figure CN120392137A_ABST
Abstract
Description
Technical Field
[0001] This application relates to the technical field of medical devices, and in particular, to a rotation angle feedback system, method, and readable storage medium. Background Art
[0002] In computed tomography (CT) imaging, by combining and processing two-dimensional images collected at different rotation angles, three-dimensional CT images can be constructed. An accurate rotation angle is the basis of the reconstruction algorithm. Inaccurate rotation angles will cause CT image distortion and artifacts.
[0003] Currently, various rotation angle encoders with different forms and principles are used to collect the angle information of the CT tube. The rotation angle encoder feeds back the detected angle information to the controller of the CT device, and the controller performs image reconstruction based on the angle information. For example: magnetic scale + read head / steel scale + read head / grating scale + read head / rotary encoder.
[0004] However, the current rotation angle encoder for rotation angle information feedback has the problem of high cost. Summary of the Invention
[0005] Based on this, in view of the above technical problems, it is necessary to provide a rotation angle feedback system, method, and readable storage medium that can perform rotation angle feedback at a reduced cost.
[0006] In a first aspect, this application provides a rotation angle feedback system applied to a CT device. The system includes a detection device, a processing device, and a gantry. The gantry includes a stator and a rotor. The detection device and a plurality of equally spaced blind holes are provided on the gantry;
[0007] The detection device is configured to detect the blind holes during the rotation of the rotor to generate a pulse signal, and send the pulse signal to the processing device;
[0008] The processing device is configured to generate an equal-time counting pulse signal corresponding to the current angular velocity in response to the pulse signals detected by the detection device when adjacent two blind holes are detected, and determine the count values corresponding to each acquired image according to the equal-time counting pulse signal;
[0009] The processing device is configured to determine the target rotation angle of each acquired image during the rotation of the rotor according to the count values and the counting duration required for each count value, and feed back the target rotation angle to the controller of the CT device.
[0010] In one embodiment, the processing device includes an acquisition module, a transmission module, and a driving module;
[0011] The acquisition module is configured to respond to the pulse signal detected by the detection device when it is between two adjacent blind holes, and send the pulse signal to the driving module through the transmission module;
[0012] The driving module is configured to respond to the pulse signal detected by the detection device when it is between two adjacent blind holes, generate an equal-time counting pulse signal corresponding to the current angular velocity, and determine the count values corresponding to each acquired image according to the equal-time counting pulse signal.
[0013] In one embodiment, the transmission module includes a slip ring and a synchronization unit;
[0014] The acquisition module is configured to send the pulse signal to the slip ring;
[0015] The slip ring is configured to send the received pulse signal to the synchronization unit;
[0016] The synchronization unit is configured to synchronize the pulse signal to the driving module.
[0017] In one embodiment, the acquisition module is configured to determine the counting duration required to generate each of the count values according to a first ratio of the duration required for the rotor to rotate one circle and the number of turns of the equal-time counting pulse signal per circle;
[0018] The acquisition module is configured to determine the number of minimum clock cycles required to generate the count value according to a second ratio of the counting duration required for each of the count values and the minimum clock cycle of the acquisition module.
[0019] In one embodiment, the acquisition module is further configured to use the second ratio as the number of minimum clock cycles required to generate the count value when the second ratio is an integer;
[0020] The acquisition module is further configured to, when the second ratio is a non-integer, compensate the second ratio according to the remainder in the second ratio to obtain the number of minimum clock cycles required to generate the count value.
[0021] In one embodiment, a plurality of blind holes are provided on the stator, and the detection device is provided on the rotor.
[0022] In one embodiment, the plurality of blind holes include a zero-position hole and a plurality of positioning holes, and the detection device includes a first detection device for the zero-position hole and a second detection device for the plurality of positioning holes.
[0023] Second aspect, the present application further provides a rotation angle feedback method, which is applied to the rotation angle feedback system provided in the first aspect. The method includes:
[0024] Receiving a pulse signal sent by a detection device; the pulse signal is a signal generated by the detection device detecting a blind hole during the rotation of the rotor;
[0025] In response to the pulse signals detected by the detection device at two adjacent blind holes, generating an equal-time counting pulse signal corresponding to the current angular velocity, and determining the count values corresponding to each acquired image according to the equal-time counting pulse signal;
[0026] Determining the target rotation angle of each acquired image during the rotation of the rotor according to the count value and the counting duration required for each count value, and feeding back the target rotation angle to the controller of the CT device.
[0027] Third aspect, the present application further provides an electronic device, including a memory and a processor. The memory stores a computer program, and when the processor executes the computer program, the method steps provided in the second aspect are implemented.
[0028] Fourth aspect, the present application further provides a computer-readable storage medium, on which a computer program is stored. When the computer program is executed by a processor, the method steps provided in the second aspect are implemented.
[0029] Fifth aspect, the present application further provides a computer program product, including a computer program. When the computer program is executed by a processor, the method steps provided in the second aspect are implemented.
[0030] The above-mentioned rotation angle feedback system, method and readable storage medium. The rotation angle feedback system includes a detection device, a processing device, and a frame. The frame includes a stator and a rotor. The detection device and a plurality of equally spaced blind holes are arranged on the frame. The detection device is configured to detect the blind holes during the rotation of the rotor to generate a pulse signal and send the pulse signal to the processing device. The processing device is configured to generate an equal-time counting pulse signal corresponding to the current angular velocity in response to the pulse signals detected at two adjacent blind holes, and determine the count values corresponding to each acquired image according to the equal-time counting pulse signal. The processing device is configured to determine the target rotation angle of each acquired image during the rotation of the rotor according to the count values and the counting duration required for each count value, and feedback the target rotation angle to the controller of the CT device. The rotation angle feedback system provided by the embodiments of the present application uniformly arranges a plurality of blind holes on the frame, and uses the detection device to detect each blind hole to obtain a pulse signal, so as to determine the target rotation angle based on the pulse signals detected at two adjacent blind holes. Compared with the traditional rotation angle feedback technology, it can not only greatly reduce the cost, but also meet the accuracy requirements of the CT device for rotation angle feedback. Description of the Drawings
[0031] To more clearly illustrate the technical solutions in the embodiments of the present application or related technologies, the following will briefly introduce the drawings required for use in the description of the embodiments of the present application or related technologies. Obviously, the drawings in the following description are only some embodiments of the present application. For those of ordinary skill in the art, without creative efforts, other related drawings can also be obtained based on these drawings.
[0032] Figure 1 Schematic diagram of an angle feedback system based on a rotation angle encoder in one embodiment;
[0033] Figure 2 Schematic diagram of a pulse signal in one embodiment;
[0034] Figure 3 Schematic diagram of a rotation angle feedback system in one embodiment;
[0035] Figure 4 Schematic diagram of a rotation angle feedback system in another embodiment;
[0036] Figure 5 Schematic diagram of a rotation angle feedback system in another embodiment;
[0037] Figure 6 Schematic diagram of a rotation angle feedback system in another embodiment;
[0038] Figure 7 Schematic diagram of the flow of a rotation angle feedback method in one embodiment.
[0039] Description of the reference numerals in the drawings:
[0040] 100, Rotation angle feedback system; 10, Detection device; 20, Processing device;
[0041] 30, Power device; 40, Stator; 50, Rotor;
[0042] 401, Blind hole; 4011, Zero position hole; 4012, Positioning hole;
[0043] 101, First detection device; 102, Second detection device; 200, Controller;
[0044] 201, Acquisition module; 202, Transmission module; 203, Driving module;
[0045] 2021, Slip ring; 2022, Synchronization unit;
[0046] 301, Motor; 302, Transmission belt. Detailed implementation manners
[0047] In order to make the objectives, technical solutions and advantages of the present application clearer and more understandable, the present application will be further described in detail below with reference to the drawings and embodiments. It should be understood that the specific embodiments described herein are only used to explain the present application and are not used to limit the present application.
[0048] In the description of the present application, it should be understood that the orientation or positional relationship indicated by the terms "center", "longitudinal", "transverse", "length", "width", "thickness", "upper", "lower", "front", "rear", "left", "right", "vertical", "horizontal", "top", "bottom", "inner", "outer", "clockwise", "counterclockwise", "axial", "radial", "circumferential", etc. is based on the orientation or positional relationship shown in the drawings, and is only for the convenience of describing the present application and simplifying the description, rather than indicating or implying that the device or element referred to must have a specific orientation, be constructed and operated in a specific orientation, and therefore should not be construed as a limitation of the present application.
[0049] In the present application, the terms "first" and "second" are only used for descriptive purposes and cannot be understood as indicating or implying relative importance or implicitly specifying the quantity of the indicated technical features. Thus, the features defined with "first" and "second" may explicitly or implicitly include at least one of such features. In the description of the present application, "a plurality" means at least two, for example, two, three, etc., unless otherwise specifically defined.
[0050] In this application, unless otherwise clearly defined and limited, terms such as "installed", "connected", "joined", "fixed", etc. shall be understood in a broad sense. For example, it may be a fixed connection, a detachable connection, or integrated; it may be a mechanical connection or an electrical connection; it may be directly connected or indirectly connected through an intermediate medium, and it may be the communication inside two components or the interaction relationship between two components, unless otherwise clearly defined. For those of ordinary skill in the art, the specific meanings of the above terms in this application can be understood according to specific circumstances.
[0051] In this application, unless otherwise clearly defined and limited, the first feature being "on" or "under" the second feature may be that the first and second features are in direct contact, or the first and second features are indirectly in contact through an intermediate medium. Moreover, the first feature being "above", "over" and "on top of" the second feature may be that the first feature is directly above or obliquely above the second feature, or merely indicates that the first feature has a higher horizontal height than the second feature. The first feature being "under", "below" and "beneath" the second feature may be that the first feature is directly below or obliquely below the second feature, or merely indicates that the first feature has a lower horizontal height than the second feature.
[0052] As Figure 1 shown, currently various rotation angle encoders with different forms and principles are adopted (such as: magnetic scale + read head / steel scale + read head / grating scale + read head / rotary encoder) to collect the rotation angle of the CT tube. The principle is that when the rotor equipped with the CT tube rotates, relative movement occurs between the read head and the magnetic scale / steel scale / grating scale. For example, the read head reads the magnetic pole signal of the magnetic scale and generates Figure 2The A / B pulse signal shown will also generate a Z pulse signal representing the zero position when the read head passes through the zero position of the magnetic scale. The A / B pulse signal provided by the read head is counted by means of quadrature decoding. For example, 1 and 0 represent the high level and low level of the A / B signal respectively, and "10" represents that the A signal is at a high level and the B signal is at a low level. When the combination of the high and low levels of the A / B signal changes from "10" to "00", from "00" to "01", from "01" to "11", and from "11" to "10", each change increases the count by 1; when the combination of the high and low levels of the A / B signal changes from "10" to "11", from "11" to "01", from "01" to "00", and from "00" to "10", each change decreases the count by 1; when the combination of the high and low levels of the A / B signal changes from "10" to "01", from "01" to "10", from "00" to "11", and from "11" to "00", the count remains unchanged. In the actual use process, when the read head and the magnetic scale move relative to each other and generate the original pulse signal, the acquisition circuit reads the original pulse signal by the above-mentioned quadrature decoding method and converts it into a count value, and then controls the number of samples per revolution through the count value. Considering ensuring the measurement accuracy, the number of original pulses provided by the magnetic scale should be at least a dozen times the number of samples per revolution. Assuming that the total grid length of the magnetic scale is 3.0 m and the resolution is 0.005 mm, 3000 mm / 0.005 mm = 600000, then the total number of original pulses for one revolution of the CT device is 600000 (the larger this value, the higher the accuracy of the magnetic scale, and the corresponding cost will increase). The pulse count corresponding to the linear length of the magnetic scale is converted into the rotation angle value for one revolution, providing feedback information on the rotation angle corresponding to each image for the CT device.
[0053] Figure 3 It is a schematic diagram of a rotation angle feedback system in an embodiment, applied to a CT device, as Figure 3 shown. The rotation angle feedback system 100 includes a detection device 10, a processing device 20, a frame. The frame includes a stator 40 and a rotor 50. The detection device 10 and a plurality of equally spaced blind holes 401 are arranged on the frame; the detection device 10 is used to detect the blind holes 401 during the rotation of the rotor 50 to generate a pulse signal and send the pulse signal to the processing device 20; the processing device 20 is used to generate an equal-time count pulse signal corresponding to the current angular velocity in response to the pulse signals detected by the detection device 10 when it is between two adjacent blind holes 401, and determine the count values corresponding to each acquired image according to the equal-time count pulse signal; the processing device 20 is used to determine the target rotation angle of each acquired image during the rotation of the rotor 50 according to the count values and the counting duration required for each count value, and feedback the target rotation angle to the controller 200 of the CT device.
[0054] Among them, the detection device 10 and multiple equally spaced blind holes 401 are arranged on the frame. Optionally, multiple blind holes 401 can be arranged on the stator 40, and the detection device 10 can be arranged on the rotor 50, or multiple blind holes 401 can be arranged on the rotor 50, and the detection device 10 can be arranged on the stator 40.
[0055] As Figure 3 shown, taking the case where multiple blind holes 401 are arranged on the stator 40 and the detection device 10 is arranged on the rotor 50 as an example, a sparse circle of blind holes 401 is evenly drilled on the stator 40 with the scanning center as the center. The position of each blind hole 401 corresponds to a fixed angle within the 360° angle of one rotation of the tube on the rotor 50. Specifically, based on the number of blind holes 401, the angular information of one rotation of the CT device can be divided into several arc-shaped sector angles, and the size of each sector angle = 360° / n, where n is the number of blind holes 401.
[0056] As Figure 4 shown, the multiple blind holes 401 include a zero position hole 4011 and multiple positioning holes 4012, and the detection device 10 includes a first detection device 101 for the zero position hole 4011 and a second detection device 102 for the multiple positioning holes 4012. The detection device 10 is installed on the rotor 50 through an adjustable fixing bracket, and the probe of the detection device 10 is aligned with the center of each blind hole 401. When the detection device 10 rotates and detects the blind hole 401, a pulse signal is generated, and the angular information reached by the rotation of the rotor 50 can be obtained based on the pulse signal. The first detection device 101 is used to detect the zero position hole 4011 and generate a zero position pulse signal, and the second detection device 102 is used to detect the positioning holes 4012 and generate positioning pulse signals. For example, when the second detection device 102 approaches the edge of the positioning hole 4012, the output pulse signal of the second detection device 102 changes from high level to low level to generate a falling edge. When the second detection device 102 leaves the positioning hole 4012, the output signal of the second detection device 102 changes from low level to high level to generate a rising edge. The rotation angle of the positioning hole 4012 is obtained through the rising edge / falling edge pulse signal output by the second detection device 102.
[0057] In the embodiment of the present application, as Figure 4 shown, the processing device 20 may include an acquisition module 201, a transmission module 202, and a driving module 203.
[0058] The acquisition module 201 in the processing device 20 is configured to generate an equal-time count pulse signal corresponding to the current angular velocity in response to the pulse signal detected by the detection device 10 when it is adjacent to two adjacent blind holes 401. That is, taking each blind hole 401 as the timing starting point after the CT device rotates to a uniform speed, the acquisition module 201 can start timing according to the rising edge of the pulse signal detected when the detection device 10 leaves the first blind hole 401, and end timing until the rising edge of the pulse signal detected when the detection device 10 leaves the second blind hole 401, generating an equal-time count pulse signal corresponding to the current angular velocity. It can also start timing according to the falling edge of the pulse signal detected when the detection device 10 approaches the first blind hole 401, and end timing until the falling edge of the pulse signal detected when the detection device 10 approaches the second blind hole 401, generating an equal-time count pulse signal corresponding to the current angular velocity.
[0059] Determine the count value corresponding to each acquired image according to the equal-time count pulse signal, that is, the count value is the count value required between two adjacent fields of view (two acquired images). Assume that 2400 images are acquired when the rotor 50 rotates one circle, and the number of blind holes 401 is 80, then 30 images need to be acquired between two blind holes 401. The number of equal-time count pulse signals for one rotation of the rotor 50 is 57600, then the number of equal-time count pulse signals between two adjacent blind holes 401 is 57600 / 80 = 720, and the count value between two images is 720 / 30 = 24.
[0060] Determine the counting duration required to generate each count value according to the first ratio of the duration required for one rotation of the rotor 50 and the number of equal-time count pulse signals per circle of the acquisition module 201. Assume that the duration required for one rotation of the rotor 50 is 499968000 ns, then the counting duration required to generate each count value is 499968000 / 57600 = 8680.
[0061] According to the product of the count value and the counting duration required for each count value, the target rotation angle of each acquired image during the rotation of the rotor 50 can be determined, and the target rotation angle is fed back to the controller 200. The controller 200 controls the acquisition of images at the corresponding angles upon receiving the target rotation angle.
[0062] In a possible implementation, the detection device 10 is configured to detect the blind holes 401 during the rotation of the rotor 50 to generate a pulse signal, and send the pulse signal to the acquisition module 201. The acquisition module 201 sends the pulse signal to the drive module 203, and the drive module 203 controls the current angular velocity of the rotor 50 based on the pulse signal detected when it is adjacent to two adjacent blind holes 401.
[0063] Optionally, such as Figure 5As shown in the figure, in the embodiments of the present application, the blind holes 401 can also be evenly arranged on the rotor 50, and the detection device is arranged on the stator 40.
[0064] Further, in order to verify the accuracy of the rotation angle feedback system proposed in the present application for feedback of the target rotation angle, the above rotation angle feedback system is verified before application.
[0065] The duration t required for the rotor 50 of the CT device to rotate one circle is divided into n parts. Assume that the preset angular velocity issued to the power device 30 driving the rotor 50 is ω o , with the unit of ° / s. The speed fluctuations of the rotor 50 at n time points are respectively , then the speed at each time point is , i = 1, 2, 3, …, n. Then the actual rotation angle under this speed fluctuation is:
[0066]
[0067] The average speed deviation within the time t is recorded as follows:
[0068]
[0069] Then
[0070]
[0071] The actual rotation angle at time t is and the theoretical rotation angle The angular deviation between them is as follows:
[0072]
[0073] It can be obtained from the above expressions that the accuracy of the actual rotation angle is jointly determined by the magnitude of the speed fluctuation and the duration required for the rotor 50 to rotate one circle. Assume that when the speed fluctuation of the rotor 50 is controlled within a certain range, shortening the duration required for the rotor 50 to rotate one circle can ensure that the deviation of the actual rotation angle does not exceed the specified requirements; similarly, when rotating one circle within the specified duration, if the speed fluctuation is small enough, it can also ensure that the deviation of the actual rotation angle does not exceed the specified requirements.
[0074] Based on the above analysis, in order to reduce the deviation of the actual rotation angle feedback, the 360° rotation of the rotor 50 can be equally divided into several parts, so that the running time required for one rotation is cut into the sum of several parts of time. Due to the existence of the speed fluctuation of the rotor 50, the magnitude of the speed fluctuation depends on the rigid design of the mechanical transmission structure and the adjustment ability of the motor speed. In this application, a belt transmission structure is adopted. Taking the speed fluctuation of the rotor 50 as 0.5% after cutting 360° into several equal-angle parts, the accuracy of the actual rotation angle feedback for each equal part is calculated.
[0075] Assume that the number of images collected by the CT device per rotation is 4,800. Divide 360° of one rotation into 100 parts, that is, the theoretical rotation angle of each part is 360° / 100 = 3.6°. The number of samples required for each equal part is 4,800 / 100 = 48, and the time required for the rotor 50 to rotate one circle is 0.5 s. For each equal part, since the cumulative error in the last field of view of each equal part is the largest, calculate the angular deviation between the actual rotation angle and the theoretical rotation angle of the last field of view of each equal part. If the cumulative error in the last field of view of each equal part can meet the requirements, the angular deviation in any field of view before this equal part can also meet the requirements. Angular deviation = theoretical rotation duration corresponding to the last field of view * actual average angular velocity - theoretical rotation angle, where: the theoretical rotation duration corresponding to the last field of view of each equal part is 0.5 s / 100 = 5 ms, the actual average angular velocity is 3.6° / (5 ms×(1 + 0.5%)) = 0.7164° / ms, and the theoretical rotation angle is 360° / 4,800×48 = 3.6°. It can be obtained that the angular deviation of the last field of view of each equal part is 5 ms×3.6° / (5 ms×(1 + 0.5%)) - 3.6° = -0.0179° < 65 arcseconds. This error magnitude is sufficient to meet the requirements of the CT device for the accuracy of rotation angle feedback, and its reliability can reach 8,020,320 hours of continuous use.
[0076] Optionally, the power device 30 can be a motor 301 and a transmission belt 302.
[0077] In the embodiments of the present application, the rotation angle feedback system includes a detection device, a processing device, and a frame. The frame includes a stator and a rotor. The detection device and a plurality of equally spaced blind holes are arranged on the frame. The detection device is configured to detect the blind holes during the rotation of the rotor to generate a pulse signal and send the pulse signal to the processing device. The processing device is configured to generate an equal-time counting pulse signal corresponding to the current angular velocity in response to the pulse signals detected when passing by two adjacent blind holes, and determine the count values corresponding to each acquired image according to the equal-time counting pulse signal. The processing device is further configured to determine the target rotation angle of each acquired image during the rotation of the rotor according to the count values and the counting duration required for each count value, and feedback the target rotation angle to the controller of the CT device. The rotation angle feedback system provided by the embodiments of the present application uniformly arranges a plurality of blind holes on the frame, and uses the detection device to detect each blind hole to obtain a pulse signal, so as to determine the target rotation angle based on the pulse signals detected when passing by two adjacent blind holes. Compared with the traditional rotation angle feedback technology, it can not only greatly reduce the cost, but also meet the accuracy requirements of the CT device for rotation angle feedback.
[0078] Figure 6 FIG. is a schematic diagram of a rotation angle feedback system in another embodiment, as Figure 6 shown, the processing device includes an acquisition module 201, a transmission module 202, and a driving module 203. The acquisition module 201 is configured to respond to the pulse signals detected by the detection device 10 when passing by two adjacent blind holes 401, and send the pulse signals to the driving module 203 through the transmission module 202. The driving module 203 is configured to generate an equal-time counting pulse signal corresponding to the current angular velocity in response to the pulse signals detected by the detection device 10 when passing by two adjacent blind holes 401, and determine the count values corresponding to each acquired image according to the equal-time counting pulse signal.
[0079] Among them, the transmission module 202 includes a slip ring 2021 and a synchronization unit 2022. The acquisition module 201 is configured to send the pulse signals to the slip ring 2021. The slip ring 2021 is configured to send the received pulse signals to the synchronization unit 2022. The synchronization unit 2022 is configured to synchronize the pulse signals to the driving module 203. The driving module 203 generates an equal-time counting pulse signal corresponding to the current angular velocity in response to the pulse signals detected when passing by two adjacent blind holes 401, and determines the count values according to the equal-time counting pulse signal, and controls the current angular velocity of the rotor 50 according to the count values and the theoretical count values.
[0080] In the embodiment of the present application, the CT device is divided into a rotor end and a stator end. At the stator end of the CT device, a circle of blind holes 401 are evenly drilled on the stator 40 with the scanning center as the center of the circle. The position of each blind hole 401 corresponds to the target rotation angle within 360° of one rotation of the CT tube. A detection device 10 capable of detecting the blind holes 401 is installed at the rotor end, and the detection device 10 is used to obtain the angular information of the blind holes 401. When the rotor 50 starts to rotate, the detection device 10 starts to detect the pulse signals of each blind hole 401 on the stator 40. The acquisition module 201 transmits the detected pulse signals to the General Purpose Control (GPC) circuit (i.e., the synchronization unit 2022) at the stator end through the high-speed downlink (i.e., the slip ring 2021). The GPC circuit accesses the pulse signals into the main encoder interface circuit of the motor driver (i.e., the drive module 203) for use in speed regulation in the speed mode of the motor driver, so as to keep the speed fluctuation of the rotor 50 of the CT device not too large, and achieve the effect of fast synchronization of equal-time counting pulse signals.
[0081] Optionally, the synchronization unit 2022 can also be a Field Programmable Gate Array (FPGA) hardware interface circuit.
[0082] Combined with the above Figure 4 As shown, the detection device 10 sends pulse signals to the acquisition module 201. The acquisition module 201 starts counting by collecting and latching the rising edge and falling edge signals of the blind holes 401, and then sends the pulse signals to the slip ring 2021. After detecting the rising edge and falling edge events, the slip ring 2021 transmits them to the synchronization unit 2022 with the shortest time delay. The synchronization unit 2022 sends the pulse signals to the drive module 203 to achieve the purpose of synchronizing equal-time counting pulse signals and reduce the transmission delay of the pulse signals.
[0083] In an exemplary embodiment, the drive module 203 is further configured to control the current angular velocity of the rotor 50 according to the counted value and the theoretical counted value.
[0084] In the embodiment of the present application, after receiving the pulse signals of two adjacent blind holes 401, the drive module 203 determines the counted value according to the equal-time counting pulse signals, and adjusts the current angular velocity of the rotor 50 according to the counted value and the theoretical counted value to reduce the speed fluctuation of the motor, thereby ensuring that the rotor 50 rotates at a uniform speed.
[0085] In a possible implementation, the equal-time counting pulse signal can also be determined based on the rising edge / falling edge of two adjacent blind holes, the count value is determined based on the equal-time counting pulse signal, the actual rotation duration between the two blind holes is determined according to the count value, and the current angular velocity of the rotor is adjusted according to the difference between the actual rotation duration and the theoretical rotation duration between the two blind holes.
[0086] In the embodiment of the present application, the driving module is configured to generate an equal-time counting pulse signal corresponding to the current angular velocity in response to the pulse signal detected by the detection device when detecting two adjacent blind holes, and determine the count value corresponding to each acquired image according to the equal-time counting pulse signal. The current angular velocity of the rotor is controlled according to the count value and the theoretical count value, and the current angular velocity of the rotor is controlled to make the count value determined based on the equal-time counting pulse signal corresponding to the current angular velocity more accurate.
[0087] In one embodiment, the acquisition module is configured to determine the counting duration required for each count value according to the first ratio of the duration required for the rotor to rotate one circle and the number of circles of the equal-time counting pulse signal; the acquisition module is further configured to determine the number of minimum clock cycles required to generate the count value according to the second ratio of the counting duration required for each count value and the minimum clock cycle of the acquisition module.
[0088] Specifically, when the second ratio is an integer, the acquisition module is further configured to use the second ratio as the number of minimum clock cycles required to generate the count value; when the second ratio is a non-integer, the acquisition module is further configured to compensate the second ratio according to the remainder in the second ratio to obtain the number of minimum clock cycles required to generate the count value.
[0089] Among them, the minimum clock cycle of the acquisition module is determined based on the frequency of the acquisition module. If the crystal oscillator of the acquisition module is 125 MHZ, the minimum clock cycle is 1 / 125 MHZ = \alpha ns; if the crystal oscillator of the acquisition module is 100 MHZ, the minimum clock cycle is 1 / 100 MHZ = 10 ns.
[0090] Optionally, the number of circles of the equal-time counting pulse signal can be 57600 or 62400.
[0091] Optionally, the duration required for the rotor to rotate one circle is determined according to the parameters of the scanning protocol, and can be 0.5 s or 0.6 s.
[0092] Note: In the original text, the value of \(\alpha\) in "1 / 125 MHZ = \alpha ns" is not filled. After translation, it remains in this form to maintain consistency with the original text structure. If there is a specific value that needs to be filled in the actual context, it can be added accordingly.In the embodiments of the present application, assume that the time required for the rotor to rotate one circle is 0.5 s, which is 500,000,000 ns, the minimum clock period is 8 ns, and the number of pulses per circle of the equal-time counting pulse signal is 57,600. Then the counting duration required for the count value is 500,000,000 / 57,600, and the counting duration required for the count value is the duration required from one count value to the next count value. According to the second ratio of the counting duration required for the count value to the minimum clock period, determine the number of minimum clock periods required to generate the count value. The second ratio is 500,000,000 / (57,600 × 8).
[0093] If the second ratio is an integer, use the second ratio as the number of minimum clock periods required to generate the count value. For example, in the above Figure 3 corresponding embodiment, the time required for the rotor to rotate one circle is 499,968,000 ns, the number of pulses per circle of the equal-time counting pulse signal is 57,600, and the minimum clock period is 8 ns. Then the second ratio is 499,968,000 / (57,600 × 8) = 1085.
[0094] If the second ratio is a non-integer, compensate the second ratio according to the remainder in the second ratio to obtain the number of minimum clock periods required to generate the count value. For example, 500,000,000 / (57,600 × 8) = 1085......32,000 (remainder), and the following interpolation algorithm is used to compensate the second ratio.
[0095] Specifically, divide the remainder equally among 57,600 equal-time counting pulses, that is, 32,000 / (57,600 × 8) = 0.069444444 ns. The divided remainder starts to accumulate from the first count value, and as long as it is greater than 1, it is compensated. Since 0.0694 × 15 = 1.041 ns, that is, every 15 count values, an additional count value is added to correct and make up for the error accumulated in the previous counting to ensure the accuracy of each generated count value, thereby ensuring the accuracy of the angle feedback information in each field of view.
[0096] In the embodiments of the present application, the acquisition module is used to determine the counting duration required for each count value according to the first ratio of the time required for the rotor to rotate one circle and the number of pulses per circle of the equal-time counting pulse signal; the acquisition module is also used to determine the number of minimum clock periods required to generate the count value according to the second ratio of the counting duration required for each count value and the minimum clock period of the acquisition module, improving the accuracy of count value determination.
[0097] In an exemplary embodiment, as Figure 7 shown, a rotation angle feedback method is provided. This method is applied to Figure 3Taking the processing device in [the specific context] as an example, it includes the following steps S701 to S703. Among them:
[0098] S701, receiving the pulse signal sent by the detection device; the pulse signal is a signal generated by the detection device detecting the blind hole during the rotation of the rotor;
[0099] S702, in response to the pulse signals detected by the detection device at two adjacent blind holes, generating an equal-time counting pulse signal corresponding to the current angular velocity, and determining the count value corresponding to each acquired image according to the equal-time counting pulse signal;
[0100] S703, determining the target rotation angle of each acquired image during the rotation of the rotor according to the count value and the counting duration required for each count value, and feeding back the target rotation angle to the controller of the CT device.
[0101] In the above rotation angle feedback method, receive the pulse signal sent by the detection device, in response to the pulse signals detected by the detection device at two adjacent blind holes, generate an equal-time counting pulse signal corresponding to the current angular velocity, determine the count value corresponding to each acquired image according to the equal-time counting pulse signal, determine the target rotation angle of each acquired image during the rotation of the rotor according to the count value and the counting duration required for each count value, and feed back the target rotation angle to the controller of the CT device. In the embodiment of the present application, the detection device is used to detect each blind hole to obtain a pulse signal, so as to determine the target rotation angle based on the pulse signals detected at two adjacent blind holes. Compared with the traditional rotation angle feedback technology, it can not only greatly reduce the cost, but also meet the accuracy requirements of the CT device for rotation angle feedback.
[0102] It should be understood that although the steps in the flowcharts involved in the above-described embodiments are shown in sequence according to the arrows, these steps are not necessarily executed in the order indicated by the arrows. Unless there is a clear description in this article, the execution of these steps has no strict order limit, and these steps can be executed in other orders. Moreover, at least a part of the steps in the flowcharts involved in the above-described embodiments may include multiple steps or multiple stages. These steps or stages are not necessarily executed at the same time, but can be executed at different times. The execution order of these steps or stages is not necessarily sequential, but can be executed alternately or alternately with at least a part of other steps or steps or stages in other steps.
[0103] In an exemplary embodiment, an electronic device is provided, including a memory and a processor. A computer program is stored in the memory, and when the processor executes the computer program, the steps of any of the above method embodiments are implemented.
[0104] In one embodiment, a computer-readable storage medium is provided, on which a computer program is stored. When the computer program is executed by a processor, the steps of any of the above method embodiments are implemented.
[0105] In one embodiment, a computer program product is provided, including a computer program. When the computer program is executed by a processor, the steps of any of the above method embodiments are implemented.
[0106] It should be noted that the user information (including but not limited to user device information, user personal information, etc.) and data (including but not limited to data for analysis, stored data, displayed data, etc.) involved in this application are all information and data that have been authorized by the user or fully authorized by all parties, and the collection, use, and processing of relevant data need to comply with relevant regulations.
[0107] Those of ordinary skill in the art can understand that all or part of the processes in the methods of the above embodiments can be completed by instructing relevant hardware through a computer program. The computer program can be stored in a non-volatile computer-readable storage medium. When the computer program is executed, it can include the processes of the embodiments of the above methods. Among them, any reference to a memory, database, or other medium used in the embodiments provided in the present application can include at least one of non-volatile memory and volatile memory. Non-volatile memory can include read-only memory (ROM), magnetic tape, floppy disk, flash memory, optical memory, high-density embedded non-volatile memory, resistive random access memory (ReRAM), magnetoresistive random access memory (MRAM), ferroelectric random access memory (FRAM), phase change memory (PCM), graphene memory, etc. Volatile memory can include random access memory (RAM) or external cache memory, etc. By way of illustration and not limitation, RAM can be in various forms, such as static random access memory (SRAM) or dynamic random access memory (DRAM), etc. The databases involved in the embodiments provided in the present application can include at least one of relational databases and non-relational databases. Non-relational databases can include distributed databases based on blockchain, etc., without limitation. The processors involved in the embodiments provided in the present application can be general-purpose processors, central processors, graphics processors, digital signal processors, programmable logic devices, data processing logics based on quantum computing, artificial intelligence (AI) processors, etc., without limitation.
[0108] The technical features of the above embodiments can be combined arbitrarily. For the sake of concise description, not all possible combinations of the technical features in the above embodiments are described. However, as long as there is no contradiction in the combination of these technical features, it should be considered as the scope recorded in the present application.
[0109] The above-described embodiments merely represent several implementation manners of the present application. The description thereof is relatively specific and detailed, but it should not be construed as a limitation on the scope of the patent of the present application. It should be noted that for those of ordinary skill in the art, without departing from the concept of the present application, several modifications and improvements can still be made, and these all fall within the protection scope of the present application. Therefore, the protection scope of the present application shall be subject to the appended claims.
Claims
1. A rotation angle feedback system, applied to a CT device, characterized in that, The system includes a detection device, a processing device, and a frame. The frame includes a stator and a rotor. The detection device and a plurality of equally spaced blind holes are arranged on the frame. The detection device is configured to detect the blind holes during the rotation of the rotor to generate a pulse signal, and send the pulse signal to the processing device. The processing device is configured to generate an equal-time counting pulse signal corresponding to the current angular velocity in response to the pulse signals detected by the detection device when passing by two adjacent blind holes, and determine the count value corresponding to each acquired image according to the equal-time counting pulse signal. The processing device is configured to determine the target rotation angle of each acquired image during the rotation of the rotor according to the count value and the counting duration required for each count value, and feedback the target rotation angle to the controller of the CT device.
2. The system according to claim 1, wherein The processing device includes an acquisition module, a transmission module, and a driving module. The acquisition module is configured to respond to the pulse signals detected by the detection device when passing by two adjacent blind holes, and send the pulse signals to the driving module through the transmission module. The driving module is configured to generate an equal-time counting pulse signal corresponding to the current angular velocity in response to the pulse signals detected by the detection device when passing by two adjacent blind holes, and determine the count value corresponding to each acquired image according to the equal-time counting pulse signal.
3. The system according to claim 2, wherein The driving module is further configured to control the current angular velocity of the rotor according to the count value and the theoretical count value.
4. The system according to claim 2, wherein The transmission module includes a slip ring and a synchronization unit. The acquisition module is configured to send the pulse signal to the slip ring. The slip ring is configured to send the received pulse signal to the synchronization unit. The synchronization unit is configured to synchronize the pulse signal to the driving module.
5. The system according to claim 2, wherein the acquisition module is configured to determine the counting duration required to generate each count value according to a first ratio of the duration required for the rotor to rotate one circle and the number of pulses per circle of the equal-time counting pulse signal. the acquisition module is configured to determine the number of minimum clock cycles required to generate the count value according to a second ratio of the counting duration required for each count value and the minimum clock cycle of the acquisition module.
6. The system according to claim 5, wherein the acquisition module is further configured to, when the second ratio is an integer, use the second ratio as the number of minimum clock cycles required to generate the count value. the acquisition module is further configured to, when the second ratio is a non-integer, compensate the second ratio according to the remainder in the second ratio to obtain the number of minimum clock cycles required to generate the count value.
7. The system according to claim 1, characterized in that, A plurality of the blind holes are arranged on the stator, and the detection device is arranged on the rotor.
8. The system according to claim 1, wherein The plurality of blind holes include a zero-position hole and a plurality of positioning holes. The detection device includes a first detection device for the zero-position hole and a second detection device for the plurality of positioning holes.
9. A rotation angle feedback method, characterized in that, The method is applied to the rotation angle feedback system according to any one of claims 1-8, and the method includes: Receive the pulse signal sent by the detection device; the pulse signal is a signal generated by the detection device detecting the blind hole during the rotation of the rotor; In response to the pulse signals detected by the detection device at two adjacent blind holes, generate an equal-time counting pulse signal corresponding to the current angular velocity, and determine the count values corresponding to each acquired image according to the equal-time counting pulse signal; Determine the target rotation angles of each acquired image during the rotation of the rotor according to the count values and the counting durations required for each of the count values, and feedback the target rotation angles to the controller of the CT device.
10. A computer-readable storage medium having a computer program stored thereon, characterized in that, When the computer program is executed by a processor, it implements the steps of the method described in claim 9.
Citation Information
Patent Citations
Angle calculation method and angle calculation device
CN109033557A
CT scanning system and method, electronic equipment and storage medium
CN113995431A
Equal-angle acquisition CT system and acquisition method thereof
CN118105094A
Angle calculation method for steering angle sensor, and steering angle sensor
JP2004279274A
Angle data transmit-receive system using count pulse
KR101052028B1