Method for quick weighing of loose and small packages of traditional Chinese medicine (TCM)

11635324 · 2023-04-25

Assignee

Inventors

Cpc classification

International classification

Abstract

The present disclosure discloses a method for quick weighing of loose and small packages of traditional Chinese medicine (TCM), comprising: 1) establishing an equivalent physical model of a weighing system for loose and small packages, and, through Laplace transformation and Z transformation, obtaining a formula of the mass M of medicine packages to be weighed; 2) calculating a.sub.1, a.sub.2, b.sub.1 and b.sub.2 on the basis of a vector prediction error; 3) according to a.sub.1, a.sub.2, b.sub.1, and b.sub.2 obtained and the formula of the mass of medicine packages to be weighed, obtaining the mass of the loose and small packages of TCM that are weighed. According to the method, the scalar prediction error is expanded into the vector prediction error based on the traditional method so as to construct a new identification model based on the vector prediction error, and as a result the utilization efficiency of prediction error turns higher.

Claims

1. A method for quick weighing of loose and small packages of traditional Chinese medicine (TCM), which is performed by a weighing system comprising a weighing sensor and a processor, comprising: 1) Establishing a calculation model for a mass of medicine packages by the processor, comprising: establishing an equivalent physical model of a weighing system for loose and small packages: ( M + m ) d y ( t ) 2 d 2 t + c d y ( t ) d t + k y ( t ) = Mgu ( t ) ( 1 ) wherein, m is the equivalent mass of the medicine receiving tank; M is the mass of medicine packages; y(t) is the output signal of the weighing system; g is the gravitational acceleration; c is the equivalent damping coefficient of the weighing system; k is the equivalent elastic coefficient of the weighing system; when loose and small packages of TCM fall on the medicine receiving tank, the medicine packages will vibrate synchronously with the weighing system represented by the medicine receiving tank, which may be regarded as applying a step signal Mgu(t) to the weighing system, wherein u(t) represents the step signal; after Laplace transformation, the output signal is obtained as follows: Y ( s ) = Mg .Math. 1 s .Math. 1 ( M + m ) s 2 + c s + k ( 2 ) since the sampled signal is a discrete value, Z transformation is performed for Y(s) so as to obtain: Y ( z ) = b 1 z - 1 + b 2 z - 2 1 + a 1 z - 1 + a 2 z - 2 .Math. U ( z ) ( 3 ) wherein a.sub.1, a.sub.2, b.sub.1, and b.sub.2 are coefficients related to M, m, C, and k; and taking into account a weighing error caused by noise at an input terminal, the formula (3) is expressed by a difference equation as:
y(t)=−a.sub.1y(t−1)−a.sub.2y(t−2)+b.sub.1u(t−1)+b.sub.2u(t−2)+e(t)  (4) in view of the formula (3) and according to the final-value theorem of the Z transformation, a system output in a steady state is obtained as follows: lim t .fwdarw. y ( t ) = lim z .fwdarw. 1 ( z - 1 ) .Math. Y ( z ) = b 1 + b 2 1 + a 1 + a 2 = M g k ( 5 ) as a result, the calculation model for the mass of medicine packages M is obtained as follows: M = k g .Math. b 1 + b 2 1 + a 1 + a 2 ( 6 ) wherein g is the gravitational acceleration, and k is the equivalent elastic coefficient of the weighing system; 2) Establishing a recursive model for identifying coefficients based on an identification model of vector prediction error by the processor, comprising that: a) a scalar prediction error at the time t of a sample sequence of the weighing system is defined as:
e(t)=y(t)−[−â.sub.1y(t−1)−â.sub.2y(t−2)+{circumflex over (b)}.sub.1u(t−1)+{circumflex over (b)}.sub.2u(t−2)]=y(t)−φ.sup.T.sub.t{circumflex over (θ)}.sub.t−1  (7) In the formula t>2, wherein:
φ.sub.t=[−y(t−1),−y(t−2),u(t−1),u(t−2)].sup.2  (8)
{circumflex over (θ)}.sub.t−1=[â.sub.1.sub.2,{circumflex over (b)}.sub.1,{circumflex over (b)}.sub.2].sup.T  (9) φ.sub.t represents an information vector of the system at a time of the t.sup.th sample point, {circumflex over (θ)}.sub.t−1 represents a coefficient identification result of the system at a time before the t.sup.th sample point; y(t) represents a sample output sequence at the t.sup.th sample point, y(t−1) represents a sample output sequence at a time before the t.sup.th sample point, y(t−2) represents a sample output sequence at two times before the t.sup.th sample point; u(t−1) is a sample output sequence at a time before the t.sup.th sample point, u(t−2) is a sample output sequence at two times before the t.sup.th sample point; â.sub.1 is an estimated value of the coefficient a.sub.1, â.sub.2 is an estimated value of the coefficient a.sub.2, {circumflex over (b)}.sub.1 is an estimated value of the coefficient b.sub.1, and {circumflex over (b)}.sub.2 is an estimated value of the coefficient b.sub.2; b) by taking into consideration p.sub.t sets of data in total from the time t−p.sub.t+1 to the time t of the weighing system sample sequence, it is set that: Y t p t = [ y ( t ) y ( t - 1 ) .Math. y ( t - p t + 1 ) ] ( 10 ) Φ t p t = [ φ t , φ t - 1 , .Math. , φ t - p t + 1 ] ( 11 ) wherein: p.sub.t is a length of time window; Y.sub.t.sup.p.sup.t represents an output vector formed by inverting a sample output sequence within a range p.sub.t of the system previous to a time t; Φ.sub.t.sup.p.sup.t represents an information matrix formed by inverting an information vector within a range p.sub.t previous to a time t; p.sub.t is a variable that varies along with any change of statistical properties of locally sampled data at the time t, resulting in the vector prediction error with an extended length of time window of p.sub.t as follows: E t p t = [ e ( t ) e ( t - 1 ) .Math. e ( t - p t + 1 ) ] = [ y ( t ) - φ t T θ ˆ t - 1 y ( t - 1 ) - φ t - 1 T θ ˆ t - 2 .Math. y ( t - p t + 1 ) - φ t - p t + 1 T θ ˆ t - p t ] ( 12 ) E.sub.t.sup.p.sup.t represents a vector formed by inverting a scalar prediction error sequence within a range p.sub.t of the system starting from a time t; and, given that theoretically {circumflex over (θ)}.sub.t−1 is closer to a real value θ than an estimated value of a system coefficient at a previous time, {circumflex over (θ)}.sub.t−1 is used to replace the estimated value of the system coefficient at the previous time, so that the above formula may be altered into: E t p t = [ y ( t ) - φ t T θ ˆ t - 1 y ( t - 1 ) - φ t - 1 T θ ˆ t - 1 .Math. y ( t - p t + 1 ) - φ t - p t + 1 T θ ˆ t - 1 ] = Y t p t - Φ T t p t θ ˆ t - 1 ( 13 ) it can be known from the formula (13) that the weighing system is based on the identification model of a vector prediction error:
Ŷ.sub.t.sup.p.sup.t=Φ.sub.t.sup.Tp.sup.t{circumflex over (θ)}.sub.t−1+E.sub.t.sup.p.sup.t  (14) the formula (14) is expressed as the identification model of the vector prediction error: c) according to the identification model of the vector prediction error, a criterion function is defines as below: J ( θ ˆ t - 1 ) = .Math. i = 1 t .Math. Y i p i - Φ T i p i θ ^ i - 1 .Math. 2 = .Math. i = 1 t .Math. E i p i .Math. 2 ( 15 ) wherein ∥E.sub.t.sup.p.sup.t is a 2-norm of the vector E.sub.t.sup.p.sup.t, and J({circumflex over (θ)}.sub.t−1) is a criterion function; d) {circumflex over (θ)}.sub.t−1 that may minimize the criterion function is evaluated to obtain a coefficient estimated value based on the identification model of the vector prediction error, Z t = [ Y 1 p 1 Y 2 p 2 .Math. Y t p 1 ] ( 16 ) H t = [ Φ T 1 p 1 Φ T 2 p 2 .Math. Φ T t p t ] ( 17 ) so that the criterion function may be expressed as:
J({circumflex over (θ)}.sub.t−1)=(Z.sub.t−H.sub.t{circumflex over (θ)}.sub.t−1).sup.T(Z.sub.t−H.sub.t{circumflex over (θ)}.sub.t−1)  (18) a vector differential formula is used to derive J({circumflex over (θ)}.sub.t−1) and set the result thereof as {circumflex over (θ)}.sub.t−1 so as to calculate {circumflex over (θ)}.sub.t−1 that may minimize the criterion function: θ ˆ t - 1 = ( H t T H t ) - 1 H t T Z t = [ .Math. i = 1 t Φ i p i Φ T i p i ] - 1 [ .Math. i = 1 t Φ i p i Y T i p i ] ( 19 ) d) the recursive calculation form of {circumflex over (θ)}.sub.t−1 is derived, which sets that: R t - 1 = .Math. i = 1 t Φ i p i Φ T i p i ( 20 ) so that:
R.sub.t.sup.−1=R.sub.t−1.sup.−1+Φ.sub.t.sup.P.sup.tΦ.sub.t.sup.Tp.sup.t  (21) after the simplification of the above formula by using the matrix inversion theorem, the recursive model for identifying coefficients based on the identification model of vector prediction error is finally obtained as follows: { θ ˆ t + 1 = θ ˆ t + L t + 1 E t + 1 p t ( 22 ) L t + 1 = R t Φ t + 1 p t [ I p t + Φ T t + 1 p t R t Φ t + 1 p t ] - 1 ( 23 ) R t + 1 = R t - L t + 1 Φ T t + 1 p t R t ( 24 ) wherein L.sub.t+1 is an algorithm gain vector; the coefficient estimation vector {circumflex over (θ)}.sub.t+1 at the time t+1 is the product of the gain vector L.sub.t+1 and the vector prediction error E.sub.t+1.sup.p.sup.t, which corrects the coefficient estimation vector {circumflex over (θ)}.sub.t at the time t; 3) Calculating a weight of target medicine packages based on the calculation model for the mass of medicine packages and the recursive model for identifying coefficients by the processor, comprising: (1) initialization: a start time is set as t.sub.0=5, which indicates the recursion process starts from the fifth sampling point of the sampling sequence, {circumflex over (θ)}.sub.5=[0, 0, 0, 0].sup.T; R.sub.5=α.Math.I.sub.4, wherein α is a sufficiently large positive integer, I.sub.4 represents an identity matrix of 4×4; and at the same time, a number of times, N, of recursive iteration is set; (2) by analyzing the statistical characteristics of locally sampled data, the length of time window p.sub.t is determined; at the same time, the sample output sequence and the input sequence of the weighing system are obtained to construct an output vector Y.sub.t+1.sup.p.sup.t according to the formula (10), and to construct an information matrix Φ.sub.t+1.sup.p.sup.t according to the formulas (8) (11), wherein the sample output sequence is collected from the weighing sensor; and then a vector prediction error E.sub.t+1.sup.p.sup.t is obtained by using the formula (13); (3) L.sub.t+1 and R.sub.t+1 are calculated according to the formula (23) and formula (24) in the recursion formula, and then {circumflex over (θ)}.sub.t+1 is calculated according to the formula (22); (4) it is determined whether t=t+1 has reached a specified number of iteration times N, if not, proceed to the step (2); or otherwise end the recursion process, thereby obtaining a.sub.1, a.sub.2, b.sub.1, and b.sub.2; (5) according to a.sub.1, a.sub.2, b.sub.1, and b.sub.2 obtained in the step (4) and the formula (6), obtaining the weight of the loose and small packages of TCM that are weighed.

2. The method for quick weighing of loose and small packages of TCM according to claim 1, wherein: the length of time window p.sub.i is determined as below: a length interval of the time window of the t.sup.th sample time is defined as follows:
P.sub.t∈[P.sub.min,P.sub.max]  (25) Wherein P.sub.min represents the lower limit value of the length interval, and P.sub.max represents the upper limit value of the length interval, i.e., the length of the time window p.sub.i can slide from P.sub.min to P.sub.max according to statistical characteristics of the sampled data; a standard deviation of a sequence formed by d system sample output values previous to a time t is defined as follows: S t = .Math. i = t - d + 1 t ( y i - y _ ) 2 d ( 26 ) wherein, it can be seen from tests for d that the stability and smoothness of local data can be better reflected when d=5; y.sub.i represents a system sample output value at the i.sup.th sample time, and y represents an average sample value of a sequence formed by d system sample output values previous to the time t, which is calculated by the following formula: y _ = 1 d .Math. .Math. i = t - d + 1 t y i ( 27 ) an initial recursive time of the recursive algorithm is set as t.sub.0, and a sample standard deviation of d pieces of data previous to the initial time by the formula (26), which is set as S.sub.t0; and a self-adaptive function of the time window length is used to determine the time window length p.sub.t at the sample time t as follows: p t = [ ( 1 - S t S t 0 ) .Math. P max ] ( 28 ) wherein, [ ( 1 - S t S t 0 ) .Math. P max ] represents a maximum integer not more than a real number ( 1 - S t S t 0 ) .Math. P max .

3. The method for quick weighing of loose and small packages of TCM according to claim 1, wherein: in the recursion process, α=10.sup.7 a number of iteration times N is 8-10.

Description

BRIEF DESCRIPTION OF THE DRAWINGS

(1) FIG. 1 is a graph of the AD sampling result of an electronic weighing signal.

(2) FIG. 2 shows the identification result by using the traditional least square identification method.

(3) FIG. 3 shows the identification result based on the identification model of the vector prediction error.

(4) FIG. 4 shows a structure of a weighing system according to the present disclosure.

DETAILED DESCRIPTION

(5) The present disclosure will be further described with reference to figures and embodiments below.

(6) In this embodiment, a method for quick weighing of loose and small packages of TCM is provided. The method is performed by a weighing system 400 comprising a weighing sensor 401 and a processor 402. The method includes: 1) Establishing an equivalent physical model of a weighing system for loose and small packages:

(7) ( M + m ) d y ( t ) 2 d 2 t + c d y ( t ) d t + k y ( t ) = M g u ( t ) ( 1 )

(8) Wherein, m is the equivalent mass of the medicine receiving tank; M is the mass of medicine packages to be weighed; y(t) is the output signal of the weighing system; g is the gravitational acceleration; c is the equivalent damping coefficient of the weighing system; k is the equivalent elastic coefficient of the weighing system; when loose and small packages of TCM fall on the medicine receiving tank, the medicine packages will vibrate synchronously with the weighing system represented by the medicine receiving tank, which may be regarded as applying a step signal Mgu(t) to the weighing system, wherein u(t) represents the step signal. After Laplace transformation, the formula (1) obtains the output signal as follows:

(9) 0 Y ( s ) = Mg .Math. 1 s .Math. 1 ( M + m ) s 2 + c s + k ( 2 )

(10) Since the sampled signal is a discrete value, Z transformation is performed for Y (s) so as to obtain:

(11) Y ( z ) = b 1 z - 1 + b 2 z - 2 1 + a 1 z - 1 + a 2 z - 2 .Math. U ( z ) ( 3 )

(12) Wherein a.sub.1, a.sub.2, b.sub.1, and b.sub.2 are coefficients related to M, m, c and k. Taking into account a weighing error caused by noise at an input terminal, the formula (3) is expressed by a difference equation as:
y(t)=−a.sub.1y(t−1)−a.sub.2y(t−2)+b.sub.1u(t−1)+b.sub.2u(t−2)+e(t)  (4)

(13) In view of the formula (3) and according to the final-value theorem of the Z transformation, a system output in a steady state is obtained as follows:

(14) lim t .fwdarw. y ( t ) = lim z .fwdarw. 1 ( z - 1 ) .Math. Y ( z ) = b 1 + b 2 1 + a 1 + a 2 = M g k ( 5 )

(15) As a result, a calculation formula is obtained for the mass of medicine packages to be weighed M as follows:

(16) M = k g .Math. b 1 + b 2 1 + a 1 + a 2 ( 6 ) Wherein g is the gravitational acceleration, and k is the equivalent elastic coefficient of the weighing system. k, as a constant related to the weighing system, may be determined by experiment.

(17) It can be known from the formula (6) that the key point of calculating the mass M of medicine packages to be weighed is identification of the weighing system coefficients a.sub.1, a.sub.2, b.sub.1, and b.sub.2. 2) Calculating a.sub.1, a.sub.2, b.sub.1, and b.sub.2 on the basis of a vector prediction error, comprising: a) A scalar prediction error at the time t of a sample sequence of the weighing system is defined as:
e(t)=y(t)−[−â.sub.1y(t−1)−â.sub.2y(t−2)+{circumflex over (b)}.sub.1u(t−1)+{circumflex over (b)}.sub.2u(t−2)]=y(t)−φ.sup.T.sub.t{circumflex over (θ)}.sub.t−1  (7)

(18) In the formula t>2, wherein:
φ.sub.t=[−y(t−1),−y(t−2),u(t−1),u(t−2)].sup.2  (8)
{circumflex over (θ)}.sub.t−1=[â.sub.1.sub.2,{circumflex over (b)}.sub.1,{circumflex over (b)}.sub.2].sup.T  (9)

(19) φ.sub.t represents an information vector of the system at a time of the t.sup.th sample point, {circumflex over (θ)}.sub.t−1 represents a coefficient identification result of the system at a time before the t.sup.th sample point; y(t) represents a sample output sequence at the t.sup.th sample point, y(t−1) represents a sample output sequence at a time before the t.sup.th sample point, y(t−2) represents a sample output sequence at two times before the t.sup.th sample point; u(t−1) is a sample output sequence at a time before the t.sup.th sample point, u(t−2) is a sample output sequence at two times before the t.sup.th sample point; â.sub.1 is an estimated value of the coefficient a.sub.1, â.sub.2 is an estimated value of the coefficient a.sub.2, {circumflex over (b)}.sub.1 is an estimated value of the coefficient b.sub.1, and {circumflex over (b)}.sub.2 is an estimated value of the coefficient b.sub.2. b) By taking into consideration p.sub.t sets of data in total from the time t−p.sub.t+1 to the time t of the weighing system sample sequence, it is set that:

(20) Y t p t = [ y ( t ) y ( t - 1 ) .Math. y ( t - p t + 1 ) ] ( 10 ) Φ t p t = [ φ t , φ t - 1 , .Math. , φ t - p t + 1 ] ( 1 1 )

(21) Wherein: p.sub.t is a length of time window; Y.sub.t.sup.p.sup.t represents an output vector formed by inverting a sample output sequence within a range p.sub.t of the system previous to a time t; Φ.sub.t.sup.p.sup.t represents an information matrix formed by inverting an information vector within a range p.sub.t previous to a time t; p.sub.t is a variable that varies along with any change of statistical properties of locally sampled data at the time t, resulting in the vector prediction error with an extended length of time window of p.sub.t as follows:

(22) E t p t = [ e ( t ) e ( t - 1 ) .Math. e ( t - p t + 1 ) ] = [ y ( t ) - φ t T θ ^ t - 1 y ( t - 1 ) - φ t - 1 T θ ^ t - 2 .Math. y ( t - p t + 1 ) - φ t - p t + 1 T θ ^ t - p t ] ( 12 )

(23) E.sub.t.sup.p.sup.t represents a vector formed by inverting a scalar prediction error sequence within a range p.sub.t of the system previous to a time t; and, given that theoretically θ.sub.t−1 is closer to a real value θ than an estimated value of a system coefficient at a previous time, θ.sub.t−1 is used to replace the estimated value of the system coefficient at the previous time, so that the above formula may be altered into:

(24) E t p t = [ y ( t ) - φ t T θ ^ t - 1 y ( t - 1 ) - φ t - 1 T θ ^ t - 1 .Math. y ( t - p t + 1 ) - φ t - p t + 1 T θ ^ t - 1 ] = Y t p t - Φ t Tp t θ ^ t - 1 ( 13 )

(25) It can be known from the formula (13) that the weighing system is based on an identification model of a vector prediction error:
Ŷ.sub.t.sup.p.sup.t=Φ.sub.t.sup.Tp.sup.t{circumflex over (θ)}.sub.t−1+E.sub.t.sup.p.sup.t  (14)

(26) The formula (14) is expressed as the identification model of the vector prediction error. c) According to the identification model of the vector prediction error, a criterion function is defines as below:

(27) J ( θ ˆ t - 1 ) = .Math. i = 1 t .Math. Y i p i - Φ T i P i θ ^ i - 1 .Math. 2 = .Math. i = 1 t .Math. E i p i .Math. 2 ( 15 )

(28) Wherein ∥E.sub.t.sup.p.sup.t∥ is a 2-norm of the vector E.sub.t.sup.p.sup.t, and J({circumflex over (θ)}.sub.t−1) is a criterion function. d) {circumflex over (θ)}.sub.t−1 that may minimize the criterion function is evaluated to obtain a coefficient estimated value based on the identification model of the vector prediction error.

(29) Z t = [ Y 1 p 1 Y 2 p 2 .Math. Y t p t ] ( 16 ) H t = [ Φ T 1 p 1 Φ T 2 p 2 .Math. Φ T t p t ] ( 17 )

(30) So that the criterion function may be expressed as:
J({circumflex over (θ)}.sub.t−1)=(Z.sub.t−H.sub.t{circumflex over (θ)}.sub.t−1).sup.T(Z.sub.t−H.sub.t{circumflex over (θ)}.sub.t−1)  (18)

(31) A vector differential formula is used to derive J ({circumflex over (θ)}.sub.t−1) and set the result thereof as 0, so as to calculate {circumflex over (θ)}.sub.t−1 that may minimize the criterion function:

(32) θ ˆ t - 1 = ( H t T H t ) - 1 H t T Z t = [ .Math. i = 1 t Φ i P i Φ T i P i ] - 1 [ .Math. i = 1 t Φ I P i Y T i P i ] . ( 19 ) d) Although the formula of the coefficient {circumflex over (θ)}.sub.t−1 to be identified is obtained, this formula needs to use all the sample information of the weighing system starting from the sample start time. The actual calculation process consumes a large memory overhead, so that with the increase of sample data, the inversion calculation of

(33) 0 [ .Math. i = 1 t Φ i p i Φ T i p i ] - 1
in the above formula will be great in amount, which decreases the identification speed. To solve these problems, the recursive calculation form is further derived for θ.sub.t−1. It is set that:

(34) R t - 1 = .Math. i = 1 t Φ i P i Φ T i P i ( 20 )

(35) So that:
R.sub.t.sup.−1=R.sub.t−1.sup.−1+Φ.sub.t.sup.P.sup.tΦ.sub.t.sup.Tp.sup.t  (21)

(36) After the simplification of the above formula by using the matrix inversion theorem, a recursive formula for identifying coefficients based on the identification model of vector prediction error is finally obtained as follows:

(37) { θ ˆ t + 1 = θ ˆ t + L t + 1 E t + 1 p t ( 22 ) L t + 1 = R t Φ t + 1 p t [ I p t + Φ T t + 1 p t R t Φ t + 1 p t ] - 1 ( 23 ) R t + 1 = R t - L t + 1 Φ T t + 1 p t R t ( 24 )
Wherein L.sub.t+1 is an algorithm gain vector; the coefficient estimation vector θ.sub.t+1 at the time t+1 is the product of the gain vector L.sub.t+1 and the vector prediction error E.sub.t+1.sup.p.sup.t, which corrects the coefficient estimation vector {circumflex over (θ)}.sub.t at the time t.

(38) Here is the recursion process: (1) Initialization: a start time is set as t.sub.0=5, which indicates the recursion process starts from the fifth sampling point of the sampling sequence, {circumflex over (θ)}.sub.5=[0,0,0,0].sup.T; R.sub.5=α.Math.I.sub.4, wherein a is a sufficiently large positive integer which is set as α=10.sup.7 in this embodiment, and I.sub.4 represents an identity matrix of 4×4; and at the same time, a number of times, N, of recursive iteration is determined, which indicates the number of times that the recursive identification algorithm, based on the identification model of the vector prediction error, has been cycled and completed since the starting of the recursion process. According to results of many tests, when N=8□10 times, the error rate of the coefficient identification result {circumflex over (θ)} can be less than 2%; while N=10 in this embodiment. (2) By analysing the statistical characteristics of locally sampled data, the length of time window p.sub.t is determined; at the same time, the sample output sequence and the input sequence of the weighing system are obtained to construct an output vector Y.sub.t+1.sup.p.sup.t according to the formula (10), and to construct an information matrix Φ.sub.t+1.sup.p.sup.t according to the formulas (8) (11), where the sample output sequence is collected from the weighing sensor; and then a vector prediction error E.sub.t+1.sup.p.sup.t is obtained by using the formula (13). (3) L.sub.t+1 and R.sub.t+1 are calculated according to the formula (23) and formula (24) in the recursion formula, and then {circumflex over (θ)}.sub.t+1 is calculated according to the formula (22). (4) It is determined whether t=t+1 has reached a specified number of iteration times N. If not, proceed to the step (2), or otherwise end the recursion process. 3) According to a.sub.1, a.sub.2, b.sub.1, and b.sub.2 obtained in the step 2) and the formula (6), obtaining the weight of the loose and small packages of TCM that are weighed.

(39) The only part of formulas (22) to (24) in the recursive formula that needs to be inverted is: [I.sub.p.sub.t+Φ.sub.t+1.sup.Tp.sup.tR.sub.tΦ.sub.t+1.sup.p.sup.t].sup.−1, wherein I.sub.p.sub.t and I.sub.p.sub.t+Φ.sub.t+1.sup.Tp.sup.tR.sub.tΦ.sub.t+1.sup.p.sup.t are both matrices of p.sub.t×p.sub.t, so the inversion calculation only needs to invert the matrix of one p.sub.t×p.sub.t. When p.sub.t is small, the calculation is significantly reduced in amount compared with the inversion calculation of

(40) R t = [ .Math. i = 1 t Φ i p i Φ T i p i ] - 1 .
Compared with the traditional least square identification algorithm with an identification model y(t)=φ.sup.T.sub.t{circumflex over (θ)}.sub.t−1+e(t) and a recursive form {circumflex over (θ)}.sub.t+1={circumflex over (θ)}.sub.t+K.sub.t+1e(t+1), every recursive process of the identification algorithm based on the identification model of vector prediction error uses multiple times of sampled data within a time window range that has a length of p.sub.t and is previous to the time t, which enables higher data utilization, and increases coefficient identification accuracy and weighing efficiency.

(41) The length of time window p.sub.t in this embodiment is determined by the method below:

(42) A length interval of the time window of the t.sup.th sample time is defined as follows:
P.sub.t∈[P.sub.min,P.sub.max]  (25)
Wherein P.sub.min represents the lower limit value of the length interval, and P.sub.max represents the upper limit value of the length interval, i.e., the length of the time window p.sub.t can slide from P.sub.min to P.sub.max according to statistical characteristics of the sampled data;

(43) A standard deviation of a sequence formed by d system sample output values previous to a time t is defined as follows:

(44) S t = .Math. i = t - d + 1 t ( y - y _ ) 2 d ( 26 )
Wherein, it can be seen from tests for d that the stability and smoothness of local data can be better reflected when d=5; y.sub.i represents a system sample output value at the i.sup.th sample time, and y represents an average sample value of a sequence formed by d system sample output values previous to the time t, which is calculated by the following formula:

(45) y _ = 1 d .Math. .Math. i = t - d + 1 t y i ( 27 )

(46) An initial recursive time of the recursive algorithm is set as t.sub.0, and a sample standard deviation of d pieces of data previous to the initial time by the formula (26), which is set as S.sub.t0; and a self-adaptive function of the time window length is used to determine the time window length p.sub.t at the sample time t as follows:

(47) p t = [ ( 1 - S t S t 0 ) .Math. P max ] ( 28 )
Wherein,

(48) [ ( 1 - S t S t 0 ) .Math. P max ]
represents a maximum integer not more than a real number

(49) ( 1 - S t S t 0 ) .Math. P max .

(50) According to the method for quick weighing of loose and small packages of TCM in this embodiment, the actual weighing is carried out, wherein an AD sample frequency of an electronic weighing signal is 80 HZ, and an AD sample result is as shown in FIG. 1. Recursion is completed for the sampled data at sample points after the fifth sample points according to the recursion process described above. FIG. 2 shows the identification result by using the traditional least square identification method, and FIG. 3 shows the identification result based on the identification model of the vector prediction error. It can be seen from the comparison that the least square coefficient identification fluctuates greatly at the first 10 sample points, and the estimated value levels off when the coefficient identification achieves the 20th sample points.

(51) The identification method based on the identification model of the vector prediction error has been stable since the start of coefficient identification without any large oscillation. When the recursion proceeds to the 10th sample point, the coefficient estimated value has levelled off. By setting the actual mass of the medicine packages as M0, the weighing result obtained by the least square identification method is M1, and the weighing result obtained by the identification model of the vector prediction error is M2. Ten groups of data are respectively taken for analysis and comparison, and the comparison results are shown as follows:

(52) TABLE-US-00001 TABLE 1 Weighing Results Based on Traditional Least Square Method M0 30.65 30.65 30.65 30.65 30.65 30.65 30.65 30.65 30.65 30.65 M1 52.75 33.93 31.81 31.40 31.48 31.37 31.44 31.41 31.32 31.46 Sample 5 10 15 20 25 30 35 40 45 50 point time t Error 72.1% 10.7 3.8% 2.4% 2.7% 2.3% 2.5% 2.4% 2.1% 2.6% rate

(53) TABLE-US-00002 TABLE 2 Weighing Results through Identification Based on Identification Model of Vector Prediction Error M0 30.6 30.65 30.65 30.65 30.65 30.65 30.65 30.65 30.65 30.65 M2 42.8 31.14 31.12 31.13 31.17 31.16 31.17 31.16 31.15 31.17 Sample 5 10 15 20 25 30 35 40 45 50 time t Error 39.9 1.62 1.54% 1.57 1.68% 1.66% 1.69% 1.66% 1.64% 1.71% rate

(54) It can be seen by comparison that the identification result based on the identification model of vector prediction error is fast in weighing speed, whereby the error rate is less than 2% at the 10th sample time and the weighing result thereafter is relatively stable; while the weighing result levels off for convergence after the 20th sample time in the traditional least square identification model which takes longer to weigh and results in a lower weighing efficiency than that of the method provided in the present disclosure. It can be seen from the weighing result data that the steady-state error data of the weighing result based on the traditional least square identification method fluctuates greatly, while the steady-state error data of the method provided in the present disclosure fluctuates less.

(55) After the 10th sample time, the maximum error rate of the weighing method provided in the present disclosure is only 1.71%, which means the actual error mass is less than 1 g for a medicine package of a mass specification of 30 g. Since the objective is to obtain an accurate quantity of medicine packages when weighing and counting TCM packages without critical demand of the total mass data of packages, so the weighing method of the present disclosure does not affect the accurate counting of medicine packages, and the weighing accuracy of the method provided in the present disclosure fully satisfies the quick weighing requirement of loose and small TCM packages. The weighing method according to the present disclosure can make good use of the dynamic response characteristics of the system without having to wait for the signal to level off, and make full use of dynamic information of the system without too much consideration about setting the time, which makes it particularly suitable for meeting the requirement of quick TCM prescription filling and dispensing in traditional TCM pharmacies.

(56) In addition, in practical application, since the recursive identification method based on the identification model of vector prediction error does not need to save all the sample values from the sample start time after acquiring new sample values every time, it has the advantages of a high calculation efficiency and a low memory overhead.

(57) Finally, it is noted that the above embodiments are only for the purpose of illustrating the technical scheme of the present disclosure without limiting it, and those of ordinary skills in the art should understand that the modified scheme or equivalent alternative scheme substantially the same as the technical scheme of the present disclosure should also be included in the claim scope of the present disclosure.