Summary of the invention
A technical problem to be solved by this invention is: how to improve the essence of the speed control for storehouse transfer robot
Degree and accuracy.
According to one embodiment of present invention, a kind of method for control speed provided, comprising: by present speed instruction, in advance
If the historical speed instruction in the time and the historical speed in preset time instruct corresponding historical speed value unbalanced input
Neural network model;The erection rate instruction input ratio corresponding with present speed instruction that nonlinear neural network model is exported
Example integral differential PID controller, so that PID controller controls speed according to erection rate instruction.
In one embodiment, this method further include: acquire the historical speed instruction and different operating conditions under different operating conditions
Under historical speed instruct corresponding historical speed value as training data;Training data is normalized;Utilize normalization
Training data determine the parameter of nonlinear neural network model, so that it is determined that nonlinear neural network model.
In one embodiment, training data is normalized includes: by the training data before normalization and to train number
According to the difference of minimum value after the poor training data divided by after normalization of middle minimum value and default normalization as the first ratio;It will return
One change before training data in maxima and minima difference divided by the difference of maxima and minima after default normalization as the
Two ratios;Training data equal with the second ratio according to the first ratio, after determining normalization.
In one embodiment, this method further include: according to feeding back to non-linear neural in real time or every predetermined period
The speed command and velocity amplitude of network model, are modified nonlinear neural network model.
In one embodiment, PID controller is using preset scale parameter, integral parameter, differential parameter to amendment speed
The velocity amplitude for the last moment that degree instruction and feedback obtain carries out operation, rate controlling amount is determined, to control to speed
System.
In one embodiment, nonlinear neural network is non-linear active autoregression NARX neural network, NARX nerve
The hidden neuron of network is 8, and delay order is 2.
According to another embodiment of the invention, a kind of speed control unit provided, comprising: neural network module is used
In present speed is instructed, the historical speed instruction in the instruction of historical speed in preset time and preset time is corresponding goes through
History velocity amplitude unbalanced input neural network model;Pid control module, for exporting nonlinear neural network model and working as
The corresponding erection rate instruction input proportional integral differential PID controller of preceding speed command, so that PID controller is according to amendment speed
Degree instruction controls speed.
In one embodiment, neural network module is also used to acquire the instruction of the historical speed under different operating conditions and difference
Historical speed under operating condition instructs corresponding historical speed value as training data, and training data is normalized, using returning
One training data changed determines the parameter of nonlinear neural network model, so that it is determined that nonlinear neural network model.
In one embodiment, after by the difference of minimum value in the training data and training data before normalization divided by normalization
Training data and default normalization after minimum value difference as the first ratio, by maximum value in the training data before normalization with
The difference of minimum value divided by the difference of maxima and minima after default normalization as the second ratio, by making the first ratio and the
Training data after the equal determining normalization of two ratios.
In one embodiment, neural network module is also used to non-linear according to feeding back in real time or every predetermined period
The speed command and velocity amplitude of neural network model, are modified nonlinear neural network model.
In one embodiment, pid control module is also using preset scale parameter, integral parameter, differential parameter to repairing
The velocity amplitude for the last moment that positive speed command and feedback obtain carries out operation, determines rate controlling amount, so as to speed into
Row control.
In one embodiment, nonlinear neural network is non-linear active autoregression NARX neural network, NARX nerve
The hidden neuron of network is 8, and delay order is 2.
According to still another embodiment of the invention, a kind of speed control unit provided, comprising: memory;And coupling
To the processor of memory, processor is configured as based on the instruction being stored in memory devices, execute as it is aforementioned any one
Method for control speed in embodiment.
A kind of still another embodiment in accordance with the present invention, the computer readable storage medium provided, is stored thereon with calculating
Machine program, which is characterized in that the program realizes the method for control speed in any one aforementioned embodiment when being executed by processor
Step.
Nonlinear neural network model in the present invention can simulate the non-thread of speed command and velocity amplitude under varying environment
Sexual intercourse, by instructing and historical speed value unbalanced input mind the historical speed in present speed instruction and preset time
It can be obtained modified speed command through network model, modified speed command is to be according to the non-thread of speed command and velocity amplitude
Sexual intercourse is modified present speed instruction, then the modified speed command is inputted the system based on PID control
In can then obtain desired velocity amplitude, improve the accuracy and precision of speed control.
By referring to the drawings to the detailed description of exemplary embodiment of the present invention, other feature of the invention and its
Advantage will become apparent.
Specific embodiment
Following will be combined with the drawings in the embodiments of the present invention, and technical solution in the embodiment of the present invention carries out clear, complete
Site preparation description, it is clear that described embodiments are only a part of the embodiments of the present invention, instead of all the embodiments.Below
Description only actually at least one exemplary embodiment be it is illustrative, never as to the present invention and its application or make
Any restrictions.Based on the embodiments of the present invention, those of ordinary skill in the art are not making creative work premise
Under every other embodiment obtained, shall fall within the protection scope of the present invention.
For using in the prior art, PID controller carries out control accuracy to the speed of transfer robot and precision compares
Low problem proposes this programme.
Speed control unit in the embodiment of the present invention can realize respectively by various calculating equipment or computer system, under
Face combines Fig. 1 and Fig. 2 to be described.
Fig. 1 is the structure chart of one embodiment of speed control unit of the present invention.As shown in Figure 1, the device of the embodiment
10 include: memory 110 and the processor 120 for being coupled to the memory 110, and processor 120 is configured as being based on being stored in
Instruction in memory 110 executes the method for control speed in the present invention in any one embodiment.
Wherein, memory 110 is such as may include system storage, fixed non-volatile memory medium.System storage
Device is for example stored with operating system, application program, Boot loader (Boot Loader), database and other programs etc..
Fig. 2 is the structure chart of another embodiment of speed control unit of the present invention.As shown in Fig. 2, the dress of the embodiment
Setting 10 includes: memory 110 and processor 120, can also be connect including input/output interface 230, network interface 240, storage
Mouth 250 etc..It can for example be connected by bus 260 between these interfaces 230,240,250 and memory 110 and processor 120
It connects.Wherein, input/output interface 230 is display, the input-output equipment such as mouse, keyboard, touch screen provide connecting interface.Net
Network interface 240 provides connecting interface for various networked devices, such as may be coupled to database server or cloud storage clothes
Business device etc..The external storages such as memory interface 250 is SD card, USB flash disk provide connecting interface.
Method for control speed of the invention is described below with reference to Fig. 3.Method of the invention can be applied to automated warehousing
In for transfer robot speed control, also can be applied to the control of other automated mechanicals, speed is also not limited to row
Walking speed also may include other speed such as rotation speed.
Fig. 3 is the flow chart of method for control speed one embodiment of the present invention.As shown in figure 3, the method packet of the embodiment
It includes:
Step S302, by the historical speed instruction in present speed instruction, preset time and the history in preset time
The corresponding historical speed value unbalanced input neural network model of speed command.
Include desired velocity amplitude in speed command, can be issued by Central Control Center, such as according to practical in warehouse
Carrying situation, the position etc. of robot issues desired velocity amplitude as speed command to the speed of robot picking.Speed
Value can indicate opposite direction with positive and negative.It include a pair of driven universal such as shown in Fig. 4, in every Train Wheel of transfer robot
Wheel, a driving wheel, by respective motor driven.Two motors respectively execute speed command, become two independent speed closed loops
System.Therefore, two independent Speed closed-link systems can execute different speed commands respectively, and then realization turning etc. is dynamic
Make.
Nonlinear neural network is, for example, NARX (Nonlinear Autoregressive Network with
Exogenous Inputs, non-linear active autoregression) neural network, the hidden neuron and delay order of NARX neural network
It can be configured according to actual needs, such as be set as 8 according to test discovery hidden neuron, delay order is set as 2
When can achieve more satisfied effect for the speed control of robot.Time delay order indicates for 2 by the speed of current t moment
Instruction inputs NARX neural network model with the instruction of the historical speed at t-1 moment and t-2 moment and corresponding velocity amplitude.
Step S304, erection rate corresponding with the present speed instruction instruction that nonlinear neural network model is exported are defeated
Enter PID controller.
Since nonlinear neural network model can simulate the speed command and process of input PID controller under varying environment
The non-linear relation of velocity amplitude after PID controller control, therefore, it would be desirable to can reach after PID controller controls
Velocity amplitude unbalanced input neural network model, then the speed command of available corresponding input PID controller, i.e. input are worked as
Preceding speed command obtains corresponding erection rate instruction.For example, in the prior art only by PID controller to the speed of robot
It is controlled, when the speed command for inputting PID controller is 5m/s, the velocity amplitude after PID controller controls is 4m/s,
There are deviations, if it is desired to obtain the actual speed of 5m/s, it may be necessary to speed command be no longer 5m/s but 6m/s, it is non-thread
Nerve network model is then to be obtained according to the non-linear relation of historical data analog rate instruction and velocity amplitude so that practical speed
The erection rate that angle value is 5m/s instructs.
Step S306, PID controller control speed according to erection rate instruction.
PID controller is instructed and is fed back to erection rate using preset scale parameter, integral parameter, differential parameter
The velocity amplitude of the last moment arrived carries out operation, determines rate controlling amount, and rate controlling amount is inputted executing agency, realization pair
Speed is controlled.The control principle of PID controller belongs to the prior art, and details are not described herein.
Nonlinear neural network model in above-described embodiment can simulate speed command and velocity amplitude under varying environment
Non-linear relation, it is non-thread by inputting the historical speed instruction in present speed instruction and preset time with historical speed value
Modified speed command can be obtained in nerve network model, and modified speed command is according to speed command and velocity amplitude
Non-linear relation is modified present speed instruction, then by the modified speed command input based on PID control
Desired velocity amplitude can be then obtained in system, improve the accuracy and precision of speed control.
It also needs to be trained nonlinear neural network model before using nonlinear neural network model and determines it
In parameter, be described below with reference to Fig. 5.
Fig. 5 is the flow chart of another embodiment of method for control speed of the present invention.As shown in figure 5, before step S302
Can also include:
Step S502, the historical speed instruction acquired under historical speed instruction and different operating conditions under different operating conditions correspond to
Historical speed value as training data.
Different operating conditions are, for example, the environmental impact factors such as different loads situation, different temperatures, different runing times.According to non-
The historical data of acquisition is divided into different training data groups by the delay order of linear neural network model.
Step S504, is normalized training data.
Preferably, by the difference of minimum value in the training data and training data before normalization divided by the training number after normalization
According to the difference with minimum value after default normalization as the first ratio;By maxima and minima in the training data before normalization
Difference is divided by the difference of maxima and minima after default normalization as the second ratio;It is equal with the second ratio according to the first ratio,
Training data after determining normalization.Normalized training data can be specifically calculated using the following equation:
Wherein, ymaxAnd yminThe maximum value and minimum value of training data, usually take 1 and -1 respectively after respectively normalizing,
xmaxAnd xminThe maximum value and minimum value of training data before normalizing, y are the training data after normalization.
Step S506 determines the parameter of nonlinear neural network model using normalized training data, so that it is determined that non-
Linear neural network model.
Nonlinear neural network model is, for example, NARX neural network, and network can have three layers altogether, respectively input layer, hidden
Layer and output layer.Input layer number can be historical speed instruction, historical speed value and subsequent time desired speed value
(i.e. present speed instruction).Hidden neuron number obtains being 8 by experience or experiment.Output layer number of nodes can be 1,
Represent the speed command that current time should provide.The order that is delayed can be 2.
Training stage other than training data being normalized, can also arrange at random each group training data
Sequence can increase the knowledge quantity of nonlinear neural network study in this way and improve the recognition capability to the following new data.Then will
Training data unbalanced input neural network model, is trained it because being pre-processed to training data, have compared with
High learning efficiency and training effect.Training process mainly obtains the parameter of nonlinear neural network model, parameter for example including
The corresponding weight of neuron and deviation etc. determine that these parameters have then determined nonlinear neural network model later.
The historical data that above-described embodiment acquires different operating conditions carries out nonlinear neural network model as training data
Training, can enable nonlinear neural network model simulate the non-linear relation of speed command and velocity amplitude in a variety of situations,
It further increases in use process for the accuracy of speed control and precision.In addition, being pre-processed to training data, have
There are higher learning efficiency and training effect.
The off-line training process to nonlinear neural network model is disclosed in above-described embodiment, in actual application
Nonlinear neural network model can also be updated in real time.It is described below with reference to Fig. 6.
Fig. 6 is the flow chart of another embodiment of method for control speed of the present invention.As shown in fig. 6, after step S306
Can also include:
Step S602 is right according to feeding back to the velocity amplitude of nonlinear neural network model in real time or every predetermined period
Nonlinear neural network model is modified.
Preferably, newly-generated speed command and corresponding velocity amplitude fed back in real time or every predetermined period non-thread
Nerve network model is added in training data using newly-generated speed command and corresponding velocity amplitude as historical data to non-thread
Nerve network model carries out on-line training, to obtain amendment nonlinear neural network model.
Above-described embodiment can carry out real-time adaptive update to nonlinear neural network model according to the data of generation, into
The precision and accuracy of one step raising speed control.
An application examples of the invention is described below with reference to Fig. 7.
As shown in fig. 7, Central Control Center t moment, which issues speed command, inputs NARX neural network model, while history
The speed command and velocity amplitude at t-1 moment and t-2 moment are inputted NARX neural network mould according to delay order by data logger
Type exports modified speed command by the operation of NARX neural network model, and inputs PID controller, if necessary to mould
Type is modified, it is also necessary to is modified according to the velocity amplitude of the last moment of feedback and speed command NARX neural network model
It calculates present speed again afterwards and instructs corresponding modified speed command, while PID controller also receives the velocity amplitude of last moment
Progress operation obtains rate controlling amount and exports to executing agency, and executing agency drives robot ambulation to obtain according to rate controlling amount
Values for actual speed, the values for actual speed can feed back to NARX neural network model and carry out the amendment of model, while feed back to PID control
Device processed is used for the speed control of subsequent time.
The present invention also provides a kind of speed control units, are described below with reference to Fig. 8.
Fig. 8 is the flow chart of speed control unit one embodiment of the present invention.As shown in figure 8, the device 80 includes:
Neural network module 802, when the historical speed for instructing present speed, in preset time instructs and is default
Interior historical speed instructs corresponding historical speed value unbalanced input neural network model.
Nonlinear neural network is, for example, NARX neural network;The hidden neuron of NARX neural network can be 8, prolong
When order can be 2.
Pid control module 804, the amendment corresponding with present speed instruction for exporting nonlinear neural network model
Speed command inputs proportional integral differential PID controller, so that PID controller controls speed according to erection rate instruction
System.
In one embodiment, neural network module 802, be also used to acquire under different operating conditions historical speed instruction and
Historical speed under different operating conditions instructs corresponding historical speed value as training data, and training data is normalized, benefit
The parameter of nonlinear neural network model is determined with normalized training data, so that it is determined that nonlinear neural network model.
Preferably, neural network module 802, the difference for minimum value in the training data and training data before normalizing
Divided by the difference of the training data after normalization and minimum value after default normalization as the first ratio, by the training number before normalization
According to the difference of middle maxima and minima divided by the difference of maxima and minima after default normalization as the second ratio, according to first
Ratio is equal with the second ratio, the training data after determining normalization.
In one embodiment, neural network module 802 are also used to non-according to feeding back in real time or every predetermined period
The speed command and velocity amplitude of linear neural network model, are modified nonlinear neural network model.
In one embodiment, pid control module 804, for being joined using preset scale parameter, integral parameter, differential
The velocity amplitude for the last moment that several pairs of erection rate instructions and feedback obtain carries out operation, rate controlling amount is determined, so as to right
Speed is controlled.
The present invention also provides a kind of computer readable storage mediums, are stored thereon with computer program, which is characterized in that should
The step of method for control speed in any one aforementioned embodiment is realized when program is executed by processor.
Those skilled in the art should be understood that the embodiment of the present invention can provide as method, system or computer journey
Sequence product.Therefore, complete hardware embodiment, complete software embodiment or combining software and hardware aspects can be used in the present invention
The form of embodiment.Moreover, it wherein includes the calculating of computer usable program code that the present invention, which can be used in one or more,
Machine can use the meter implemented in non-transient storage medium (including but not limited to magnetic disk storage, CD-ROM, optical memory etc.)
The form of calculation machine program product.
The present invention be referring to according to the method for the embodiment of the present invention, the process of equipment (system) and computer program product
Figure and/or block diagram describe.It is interpreted as to be realized by computer program instructions each in flowchart and/or the block diagram
The combination of process and/or box in process and/or box and flowchart and/or the block diagram.It can provide these computer journeys
Sequence instruct to general purpose computer, special purpose computer, Embedded Processor or other programmable data processing devices processor with
A machine is generated, so that the instruction generation executed by computer or the processor of other programmable data processing devices is used for
Realize the dress for the function of specifying in one or more flows of the flowchart and/or one or more blocks of the block diagram
It sets.
These computer program instructions, which may also be stored in, is able to guide computer or other programmable data processing devices with spy
Determine in the computer-readable memory that mode works, so that it includes referring to that instruction stored in the computer readable memory, which generates,
Enable the manufacture of device, the command device realize in one box of one or more flows of the flowchart and/or block diagram or
The function of being specified in multiple boxes.
These computer program instructions also can be loaded onto a computer or other programmable data processing device, so that counting
Series of operation steps are executed on calculation machine or other programmable devices to generate computer implemented processing, thus in computer or
The instruction executed on other programmable devices is provided for realizing in one or more flows of the flowchart and/or block diagram one
The step of function of being specified in a box or multiple boxes.
The foregoing is merely presently preferred embodiments of the present invention, is not intended to limit the invention, it is all in spirit of the invention and
Within principle, any modification, equivalent replacement, improvement and so on be should all be included in the protection scope of the present invention.