CN108656110A - Picking robot controller and framework method based on finite-state automata framework - Google Patents
Picking robot controller and framework method based on finite-state automata framework Download PDFInfo
- Publication number
- CN108656110A CN108656110A CN201810457799.5A CN201810457799A CN108656110A CN 108656110 A CN108656110 A CN 108656110A CN 201810457799 A CN201810457799 A CN 201810457799A CN 108656110 A CN108656110 A CN 108656110A
- Authority
- CN
- China
- Prior art keywords
- axis
- module
- target
- picking
- sends
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Classifications
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B25—HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
- B25J—MANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
- B25J9/00—Programme-controlled manipulators
- B25J9/16—Programme controls
- B25J9/1602—Programme controls characterised by the control system, structure, architecture
-
- A—HUMAN NECESSITIES
- A01—AGRICULTURE; FORESTRY; ANIMAL HUSBANDRY; HUNTING; TRAPPING; FISHING
- A01D—HARVESTING; MOWING
- A01D46/00—Picking of fruits, vegetables, hops, or the like; Devices for shaking trees or shrubs
- A01D46/30—Robotic devices for individually picking crops
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B25—HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
- B25J—MANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
- B25J9/00—Programme-controlled manipulators
- B25J9/16—Programme controls
- B25J9/1656—Programme controls characterised by programming, planning systems for manipulators
- B25J9/1669—Programme controls characterised by programming, planning systems for manipulators characterised by special application, e.g. multi-arm co-operation, assembly, grasping
Landscapes
- Engineering & Computer Science (AREA)
- Robotics (AREA)
- Mechanical Engineering (AREA)
- Life Sciences & Earth Sciences (AREA)
- Environmental Sciences (AREA)
- Automation & Control Theory (AREA)
- Control Of Position Or Direction (AREA)
- Numerical Control (AREA)
Abstract
The invention belongs to technical field of robot control, more particularly to a kind of picking robot controller and framework method based on finite-state automata framework.The present invention provides a kind of new picking robot controller and framework method based on finite-state automata framework, the picking robot controller and framework method realize the rapid picking to target based on finite-state automata, when work, system is initialized first, then target is scanned, be aligned, captured, and controlled each axis after the completion of crawl and revert to record point;The setting according to current pattern and corresponding condition and action come be scanned, be aligned, capture, the switching between Regression Model, lower target can fast and accurately be picked by the conversion of this pattern so that versatile, scalability is high.
Description
Technical field
The invention belongs to technical field of robot control, more particularly to a kind of picking based on finite-state automata framework
Robot controller and framework method.
Background technology
Picking robot is one of the important equipment of 21 century precision agriculture, is the development side of the following Intelligent agricultural machinery
To picking robot is made of manipulator, end effector, mobile mechanism, vision system and control system etc., wherein controlling
System solves target positioning and the target picking of picking robot, is the core and key of entire robot system.Japan exists
It is walked in the forefront in the world in terms of agricultural robot research, successfully has developed watermelon picking robot at present, orange picks machine
People, grafting robot etc..The U.S. has developed solar energy weed-eradicating robot, in addition, China also has in the research of agricultural robot
Intelligent combine harvester etc. has been completed in certain development, Shanghai Communications University's robot research.
Existing picking robot control system includes pc controls, and the control of robot is also carried out based on neural network, but
It is that the control of robot of the existing technology has the following defects:Existing control system poor universality, scalability is not high,
Lower target can not fast and accurately be picked.
Invention content
In view of the above-mentioned problems, the present invention provides a kind of new picking robot control based on finite-state automata framework
Device and framework method, the picking robot controller and framework method based on finite-state automata framework are versatile, can
Autgmentability is high, and can fast and accurately pick lower target by the conversion of state.
Specific technical solution of the present invention is as follows:
The present invention provides a kind of picking robot controller based on finite-state automata framework, the controller packet
It includes:
Initialization module:For being initialized to system, and judge whether initialization is completed, and initialization package contains two kinds
State, i.e. initial state initialize S1 and next state initializes S1 ';
Scan pattern module:For after the completion of system initialization, being scanned to picking target, and judge whether there is mesh
Mark exists, and scan pattern includes two states, i.e. initial state scan pattern S2 and next state scan pattern S2 ';
Alignment pattern module:In the presence of being based on target, control picking point judges whether to touch close to picking target
And target, and alignment pattern includes two states, i.e. initial state alignment pattern S3 and next state alignment pattern S3 ';
Grasp mode module:When touching picking target for being based on picking point, control picking point cuts target, grasp mode
Including two states, i.e. initial state grasp mode S4 and next state grasp mode S4';
Regression Model module:For entering Regression Model, controls each axis and return record point, Regression Model includes two kinds of shapes
The crawl of state, i.e. initial state Regression Model S5 and next state returns S5 '.
It is further to improve, the initialization module, the scan pattern module, alignment pattern module, the crawl mould
Formula module and Regression Model module shift the switching that formula carries out pattern according to state:
State shifts formula:
Wherein, E indicates that condition, A expressions action, E1 indicate that initialization is completed, and E2 indicates that no target, E3 indicate there is mesh in frame
Mark, E4 indicate target there are picking error, and E5 expressions touch target, and E6 indicates that target is lost, and E7 indicates that target is cut, E8
Expression has returned record point, and target occur in E9 expressions, and E10 expressions do not return record point, and A1, which indicates to send, obtains target frame, A2
It indicates to preserve current location, A3 indicates comparing calculation error and controls picking point close to target, and A4 indicates that target, A5 are cut in control
It indicates to return record point, A6 expressions return to record position, and A7 indicates to return record point.
Further to improve, the initialization module includes total initialization module and small change mode module, described total initial
Changing module includes:
Communication initialization module:For being communicated with host computer, and carry out host computer communication module initialization, and judge be
Whether system initialization is completed;
Return to module:When not completed for being based on system initialization, Returning communication initialization module;
Management module:When being completed for being based on system initialization, the initialization of global variable is carried out, it is initial in global variable
After the completion of change, sends and instruct to small change mode module.
Further to improve, the small change mode module includes:
First judgment module:For detecting whether that the zero mark of X-axis, Y-axis or Z axis generates in real time, if had, to
First jump module sends instruction, if do not had there are one axis, sends and instructs on off state judgment module;
On off state judgment module:For judging whether to receive X-axis, Y-axis or the corresponding switching signal of Z axis, if connect
Switching signal is received, sends and instructs to the first setup module, if not receiving switching signal, judge mould to anti-zero campaign signs
Block sends instruction;
First setup module:Anti- zero campaign signs for generating X-axis, Y-axis or Z axis, and sent to X-axis, Y-axis or Z axis
The order of anti-zero direction movement, while the anti-zero motor unit pulse of X-axis, Y-axis or Z axis is set, then judge mould on off state
Block sends instruction;
Anti- zero campaign signs judgment module:For judging whether X-axis, Y-axis or anti-zero campaign signs of Z axis generate, if instead
Zero campaign signs generate, and send and instruct to third setup module, if anti-zero campaign signs do not generate, are sent out to the 4th setup module
Send instruction;
4th setup module:For sending the order moved to zero direction, setting X-axis, Y-axis or Z to X-axis, Y-axis or Z axis
Axis sends instruction to zero motor unit pulse, and to the first judgment module;
Third setup module:Instruction for sending stop motion to X-axis, Y-axis or Z axis;Obtain X-axis, Y-axis or Z axis electricity
The current PRF point of machine, current PRF point are the zero value of X-axis, Y-axis or Z axis, and X-axis, Y-axis or Z axis zero mark generate, and to
First judgment module sends instruction;
First jump module:It is instructed for being sent to scan pattern module.
Further to improve, scan pattern module includes:
First acquisition module:The movable information of zero value and Z axis for obtaining Z axis, target existence information, institute
The minimum point and peak that movable information includes Z axis movement are stated, the target existence information includes that target has mark, mesh
Cursor position coordinate;
Second judgment module:For judging whether that target has mark, if it does, being sent to the second jump module
Instruction instructs if it does not, being sent to the first management module;
Second jump module:It for recording current time Z axis position, and generates target and there is mark, to alignment pattern mould
Block sends instruction;
First management module:For obtaining Z axis relative position, it is set for scanning lattice angle value, and Z axis is set in unit week
The distance passed by phase;
Third judgment module:For judging the Z axis direction of motion according to scanning lattice angle value and the zero value of Z axis, when for zero
It when movement, sends and instructs to the first computing module, when for anti-zero movement, send and instruct to the second computing module;
First computing module:For calculate scanning lattice angle value and Z axis pass by unit period at a distance from difference;
5th judgment module:Judge whether to reach the minimum of Z axis movement for the difference obtained by the first computing module
Point sends to the second management module and instructs if reaching the minimum point of Z axis movement, if not reaching the minimum point of Z axis movement,
It sends and instructs to the first acquisition module;
Second management module:Traffic direction for Z axis to be arranged is anti-zero direction, and refers to the transmission of the first acquisition module
It enables;
Second computing module:For calculate scanning lattice angle value and Z axis pass by unit period at a distance from and value;
5th judgment module:Judge whether the highest of arrival Z axis movement for obtained by the second computing module and value
Point sends to third management module and instructs if reaching the peak of Z axis movement, if not reaching the peak of Z axis movement,
It sends and instructs to the first acquisition module;
Third management module:Traffic direction for Z axis to be arranged is to refer to zero direction, and to the transmission of the first acquisition module
It enables.
Further to improve, alignment pattern module includes:
4th setup module:For X-axis error threshold and Z axis error threshold to be arranged;
Second acquisition module:Range value for obtaining target existence information and X-axis, Y-axis and Z axis, institute
It includes that target has mark, target location coordinate to state target existence information, calculates target location coordinate and second and redirects mould
X differences between the position coordinates that block determines and Z differences;
6th judgment module:For judging target, whether there are marks to generate, if there are marks not to generate for target, to return
Return mode module to send instruction, if target has mark and generates, sends and instruct to the 7th judgment module;
7th judgment module:For judging whether X-axis, Y-axis and Z axis reach the range value of respective shaft, if so,
It sends and instructs to Regression Model module, instructed if it is not, being sent to the 8th judgment module;
8th judgment module:For judging whether X differences, Z differences are less than corresponding X-axis error threshold, Z axis error threshold
Value sends to the 4th management module and instructs if there is a difference is more than error threshold, is corresponded to if X differences, Z differences are respectively less than
X-axis error threshold, Z axis error threshold, to the 5th management module send instruct;
4th management module:For corresponding to axis deviation umber of pulse according to X differences or Z mathematic interpolations, sent to X-axis or Z axis
With the instruction that X-axis deviation umber of pulse or Z axis deviation umber of pulse are run, and sends and instruct to the second acquisition module;
5th management module:For sending the instruction of stop motion to X-axis or Z axis, while Y-axis deviation umber of pulse is set,
And the instruction run with Y-axis deviation umber of pulse is sent to Y-axis;
6th management module:For judging whether to receive the signal for touching target, if receiving the letter for touching target
Number, it sends and instructs to grasp mode module, if not receiving the signal for touching target, send and instruct to the second acquisition module.
Further to improve, grasp mode module includes:
First control module:For sending turn-on command to the solenoid valve of scissors;
Timing module:For starting timing in solenoid valve conduction;
Second control module:For when timing module is recorded the time and reaches the predetermined time, being sent out to the solenoid valve of scissors
Out code is sent, and jumps to Regression Model module.
Further to improve, Regression Model module includes:
6th setup module:Midstroke for X-axis to be arranged is record point, and Y-axis zero value is record point, and second redirects
The Z axis position of module record is the record point of Z axis, and X-axis, Y-axis, the range error threshold value of Z axis is arranged;
Third acquisition module:There is mark for obtaining target, and in the absence of target exists and indicates, obtains X-axis, Y
Axis, the position buffer value of Z axis and record point, position buffer value is the stroke value between current location and record point, and is calculated back
X range errors value, Y range errors value, Z range error values between position after returning and record point;
Regression block:For based on X-axis, Y-axis, the position buffer value of Z axis, being sent to X-axis, Y-axis, Z axis return note respectively
Record the instruction of point;
Tenth judgment module:It is corresponded to for judging whether X range errors value, Y range errors value, Z range errors value are less than
X-axis range error threshold value, the range error threshold value of Y-axis, the range error threshold value of Z axis, if so, to scan pattern module
Instruction is sent, if there is a range error value is not less than range error threshold value, sends and instructs to the 7th management module;
7th management module:Recurrence velocity pulse number for X-axis, Y-axis or Z axis to be arranged is sent to X-axis, Y-axis or Z axis
To return the instruction of velocity pulse number operation, and sends and instruct to third acquisition module.
A kind of framework method based on finite-state automata framework, the framework method include the following steps:
S1:System is initialized by initialization module, and judges whether initialization is completed;
S2:By scan pattern module after the completion of system initialization, picking target is scanned, and judges whether there is
Target exists;
S3:It is based in the presence of having target by alignment pattern module, control picking point judges whether close to picking target
Touch target;
S4:When touching picking target based on picking point by grasp mode module, control picking point cuts target;
S5:Enter Regression Model by Regression Model module, controls each axis and return record point.
Beneficial effects of the present invention are as follows:
The present invention provides a kind of new picking robot controller and framework method based on finite-state automata framework,
The picking robot controller and framework method realize the rapid picking to target based on finite-state automata, first when work
First system is initialized, then target is scanned, be aligned, is captured, and controls each axis after the completion of crawl and revert to
Record point;The setting according to current pattern and corresponding condition and action come be scanned, be aligned, capture, Regression Model
Between switching, lower target can fast and accurately be picked by the conversion of this pattern so that versatile, scalability
It is high.
Description of the drawings
Fig. 1 is picking robot controller of the embodiment 1 based on finite-state automata framework
Structure diagram;
Fig. 2 is the structure diagram of 3 initialization module of embodiment;
Fig. 3 is the structure diagram of 3 small change mode module of embodiment;
Fig. 4 is the structure diagram of 3 scan pattern module of embodiment;
Fig. 5 is the structure diagram that 3 alignment pattern of embodiment manages module;
Fig. 6 is the structure diagram of 3 grasp mode module of embodiment;
Fig. 7 is the structure diagram of 3 Regression Model module of embodiment;
Fig. 8 is the flow chart of framework method of the embodiment 4 based on finite-state automata framework.
Specific implementation mode
Invention is further described in detail with following embodiment below in conjunction with the accompanying drawings.
Embodiment 1
The embodiment of the present invention 1 provides a kind of picking robot controller based on finite-state automata framework, such as Fig. 1 institutes
Show, the controller includes:
Initialization module 1:For being initialized to system, and judge whether initialization is completed, and initialization package contains two
Kind state, i.e. initial state initialization S1 and next state initialize S1 ';
Scan pattern module 2:For after the completion of system initialization, being scanned to picking target, and judge whether there is
Target exists, and scan pattern includes two states, i.e. initial state scan pattern S2 and next state scan pattern S2 ';
Alignment pattern module 3:In the presence of being based on target, control picking point judges whether close to picking target
Target is touched, and alignment pattern includes two states, i.e. initial state alignment pattern S3 and next state alignment pattern S3 ';
Grasp mode module 4:When touching picking target for being based on picking point, control picking point cuts target, captures mould
Formula includes two states, i.e. initial state grasp mode S4 and next state grasp mode S4 ';
Regression Model module 5:For entering Regression Model, controls each axis and return record point, Regression Model includes two kinds of shapes
The crawl of state, i.e. initial state Regression Model S5 and next state returns S5 '.
The present invention provides a kind of new picking robot controller based on finite-state automata framework, the picking machine
People's controller realized based on finite-state automata to the rapid picking of target, when work, is initialized, is connect to system first
It and target is scanned, is aligned, is captured, and control each axis after the completion of crawl and revert to record point;The setting is according to current
Pattern and corresponding condition and action come be scanned, be aligned, capture, the switching between Regression Model, pass through this mould
The conversion of formula can fast and accurately pick lower target so that versatile, scalability is high.
Embodiment 2
The picking robot controller and embodiment 1 based on finite-state automata framework that the embodiment of the present invention 2 provides
It is essentially identical, unlike, the initialization module 1, the scan pattern module 2, alignment pattern module 3, the crawl mould
Formula module 4 and Regression Model module 5 shift the switching that formula carries out pattern according to state:
State shifts formula:
Wherein, E indicates condition, A expressions action.
State-transition table
Formula is shifted in the present invention by state to clearly show based on present mode and condition and action progress
Switching between pattern can achieve the purpose that quick and precisely to pick target by the switching between this pattern, state transfer
Formula can be used with mated condition transfer table, and it is how to be cut that in this way can more clearly represent between various patterns
It changes, and how lower target is picked by this switching.
Embodiment 3
The picking robot controller and embodiment 1 based on finite-state automata framework that the embodiment of the present invention 3 provides
It is essentially identical, unlike, as shown in Fig. 2, the initialization module 1 includes total initialization module 10 and small change mode module
20, total initialization module 10 includes:
Communication initialization module 101:For being communicated with host computer, and the communication module initialization of host computer is carried out, and sentenced
Whether disconnected system initialization is completed;
Return to module 102:When not completed for being based on system initialization, Returning communication initialization module 101;
Management module 103:When being completed for being based on system initialization, the initialization of global variable is carried out, in global variable
After the completion of initialization, sends and instruct to small change mode module 20.
As shown in figure 3, small change mode module described in the present embodiment 20 includes:
First judgment module 201:For detecting whether that the zero mark of X-axis, Y-axis or Z axis generates in real time, if
Have, send and instruct to the first jump module 207, if do not had there are one axis, sends and instruct on off state judgment module 202;
On off state judgment module 202:For judging whether to receive X-axis, Y-axis or the corresponding switching signal of Z axis, if
Switching signal is received, sends and instructs to the first setup module 203, if not receiving switching signal, to anti-zero campaign signs
Judgment module 204 sends instruction;
First setup module 203:Anti- zero campaign signs for generating X-axis, Y-axis or Z axis, and sent out to X-axis, Y-axis or Z axis
The order of anti-zero direction movement is sent, while the anti-zero motor unit pulse of X-axis, Y-axis or Z axis is set, then is judged on off state
Module 202 sends instruction;
Anti- zero campaign signs judgment module 204:For judging whether X-axis, Y-axis or anti-zero campaign signs of Z axis generate, if
Anti- zero campaign signs generate, and send and instruct to third setup module 206, if anti-zero campaign signs do not generate, to the 4th setting
Module 31 sends instruction;
4th setup module 205:For sending the order moved to zero direction, setting X-axis, Y-axis to X-axis, Y-axis or Z axis
Or Z axis to zero motor unit pulse, and to the first judgment module 201 send instruct;
Third setup module 206:Instruction for sending stop motion to X-axis, Y-axis or Z axis;Obtain X-axis, Y-axis or Z axis
The current PRF point of motor, current PRF point are the zero value of X-axis, Y-axis or Z axis, and X-axis, Y-axis or Z axis zero mark generate, and
It sends and instructs to the first judgment module 201;
First jump module 207:It is instructed for being sent to scan pattern module 2.
As shown in figure 4, scan pattern module 2 includes in the present embodiment:
First acquisition module 21:The movable information of zero value and Z axis for obtaining Z axis, target existence information,
The movable information include Z axis movement minimum point and peak, the target existence information include target exist mark,
Target location coordinate;
Second judgment module 22:For judging whether that target has mark, if it does, to the second jump module 23
Instruction is sent, is instructed if it does not, being sent to the first management module 24;
Second jump module 23:It for recording current time Z axis position, and generates target and there is mark, to alignment pattern
Module 3 sends instruction;
First management module 24:For obtaining Z axis relative position, it is set for scanning lattice angle value, and Z axis is set in unit
The distance passed by period;
Third judgment module 25:For judging the Z axis direction of motion according to scanning lattice angle value and the zero value of Z axis, when for
It when zero movement, sends and instructs to the first computing module 26, when for anti-zero movement, send and instruct to the second computing module 29;
First computing module 26:For calculate scanning lattice angle value and Z axis pass by unit period at a distance from difference;
4th judgment module 27:For judging whether to reach Z axis movement according to the difference of 26 gained of the first computing module
Minimum point sends to the second management module 28 and instructs if reaching the minimum point of Z axis movement, if not reaching Z axis movement most
Low spot sends to the first acquisition module 21 and instructs;
Second management module 28:Traffic direction for Z axis to be arranged is anti-zero direction, and is sent to the first acquisition module 21
Instruction;
Second computing module 29:For calculate scanning lattice angle value and Z axis pass by unit period at a distance from and value;
5th judgment module 30:For being judged whether to reach Z axis movement with value according to 29 gained of the second computing module
Peak sends to third management module 301 and instructs if reaching the peak of Z axis movement, if not reaching Z axis movement
Peak sends to the first acquisition module 21 and instructs;
Third management module 301:Traffic direction for Z axis to be arranged is to be sent out to zero direction, and to the first acquisition module 21
Send instruction.
As shown in figure 5, alignment pattern module 3 includes in the present embodiment:
5th setup module 31:For X-axis error threshold and Z axis error threshold to be arranged;
Second acquisition module 32:Range value for obtaining target existence information and X-axis, Y-axis and Z axis,
The target existence information includes that target has mark, target location coordinate, calculates target location coordinate and second and redirects
X differences between the position coordinates that module 23 determines and Z differences;
6th judgment module 33:For judging target, whether there are marks to generate, if there are marks not to generate for target, to
Regression Model module 5 sends instruction, if target has mark and generates, sends and instructs to the 7th judgment module 34;
7th judgment module 34:For judging whether X-axis, Y-axis and Z axis reach the range value of respective shaft, if
It is to send and instruct to Regression Model module 5, is instructed if it is not, being sent to the 8th judgment module 35;
8th judgment module 35:For judging whether X differences, Z differences are less than corresponding X-axis error threshold, Z axis error threshold
Value, if there is a difference be more than error threshold, to the 4th management module 36 send instruct, if X differences, Z differences be respectively less than pair
X-axis error threshold, the Z axis error threshold answered send to the 5th management module 37 and instruct;
4th management module 36:For corresponding to axis deviation umber of pulse according to X differences or Z mathematic interpolations, sent out to X-axis or Z axis
The instruction with X-axis deviation umber of pulse or the operation of Z axis deviation umber of pulse is sent, and sends and instructs to the second acquisition module 32;
5th management module 37:For sending the instruction of stop motion to X-axis or Z axis, while Y-axis deviation pulse is set
Number, and the instruction run with Y-axis deviation umber of pulse is sent to Y-axis;
6th management module 38:For judging whether to receive the signal for touching target, target is touched if received
Signal sends to grasp mode module 4 and instructs, if not receiving the signal for touching target, is sent to the second acquisition module 32
Instruction.
As shown in fig. 6, grasp mode module 4 includes in the present embodiment:
First control module 41:For sending turn-on command to the solenoid valve of scissors;
Timing module 42:For starting timing in solenoid valve conduction;
Second control module 43:For timing module 42 be recorded the time reach the predetermined time when, to the electromagnetism of scissors
Valve sends out code, and jumps to Regression Model module 5.
As shown in fig. 7, Regression Model module 5 includes in the present embodiment:
6th setup module 51:Midstroke for X-axis to be arranged is record point, and Y-axis zero value is record point, and second jumps
The Z axis position that revolving die block 23 records is the record point of Z axis, and X-axis, Y-axis, the range error threshold value of Z axis is arranged;
Third acquisition module 52:There is mark for obtaining target, and in the absence of target exists and indicates, acquisition X-axis,
Y-axis, the position buffer value of Z axis and record point, position buffer value is the stroke value between current location and record point, and is calculated back
X range errors value, Y range errors value, Z range error values between position after returning and record point;
Regression block 53:For based on X-axis, Y-axis, the position buffer value of Z axis, sending return to X-axis, Y-axis, Z axis respectively
Record the instruction of point;
Tenth judgment module 54:For judge X range errors value, Y range errors value, Z range errors value whether be less than pair
The range error threshold value for the X-axis answered, the range error threshold value of Y-axis, the range error threshold value of Z axis, if so, to scan pattern mould
Block 2 sends instruction, if there is a range error value is not less than range error threshold value, sends and instructs to the 7th management module 55;
7th management module 55:Recurrence velocity pulse number for X-axis, Y-axis or Z axis to be arranged is sent out to X-axis, Y-axis or Z axis
It send to return the instruction of velocity pulse number operation, and sends and instruct to third acquisition module 52.
To initialization pattern module, scan pattern module, alignment pattern module, grasp mode module, recurrence in the present invention
Mode module has carried out specific restriction, and can be clearly understood that how the controller is by the particular content of each module
Work, and recognize and how to achieve the purpose that fast and accurately to pick target by the switching between pattern.
Initialization module includes total initialization module and small change mode module in the present invention, and total initialization module is used for controlling
When device processed is opened, system is initialized, after the completion of initialization, each axis starts small change, only after each axis finds zero
Scan pattern module could be entered, and the small change of X-axis, Y-axis, Z axis can be carried out at the same time, it can also be after the completion of an axis small change
Stop motion carries out the small change of next axis again;Scan pattern module is used for being scanned the target of picking, and is finding mesh
Enter alignment pattern after mark, alignment pattern is used for controlling each axis alignment picking target, and after alignment target, and grasp mode is by mesh
Mark is taken, and then Regression Model controls each axis and revert to record point, then proceeds by the scanning of target, between this each pattern
Switching and cycle may be implemented quick and precisely to pick the purpose of lower target.
Picking robot in the present invention is provided with scissors in Y-axis, and the electromagnetism of control scissors work is connected on scissors
Valve, after alignment pattern controls each axis alignment target, grasp mode control scissors cuts target.
Embodiment 4
The framework method based on finite-state automata framework that the embodiment of the present invention 4 provides, as shown in figure 8, the frame
Structure method includes the following steps:
S1:System is initialized by initialization module 1, and judges whether initialization is completed;
S2:By scan pattern module 2 after the completion of system initialization, picking target is scanned, and judges whether
With the presence of target;
S3:It is based in the presence of having target by alignment pattern module 3, control picking point is close to picking target, and judgement is
It is no to touch target;
S4:When touching picking target based on picking point by grasp mode module 4, control picking point cuts target;
S5:Enter Regression Model by Regression Model module 5, controls each axis and return record point.
The present invention provides a kind of new framework method based on finite-state automata framework, which is based on limited
State automata realizes to the rapid picking of target, when work, initializes to system, is then swept to target first
It retouches, be aligned, capture, and control each axis after the completion of crawl and revert to record point;The setting is according to current pattern and accordingly
Condition and action come be scanned, be aligned, capture, the switching between Regression Model, can be fast by the conversion of this pattern
The fast lower target of accurately picking so that versatile, scalability is high.
Embodiment described above is only that the preferred embodiment of the present invention is described, not to the scope of the present invention into
Row limits, and under the premise of not departing from design spirit of the present invention, those of ordinary skill in the art make technical scheme of the present invention
The various modifications gone out and improvement should all be fallen into the protection domain of claims of the present invention determination.
Claims (9)
1. a kind of picking robot controller based on finite-state automata framework, which is characterized in that the controller includes:
Initialization module (1):For being initialized to system, and judge whether initialization is completed, and initialization package contains two kinds
State, i.e. initial state initialize S1 and next state initializes S1 ';
Scan pattern module (2):For after the completion of system initialization, being scanned to picking target, and judge whether there is mesh
Mark exists, and scan pattern includes two states, i.e. initial state scan pattern S2 and next state scan pattern S2 ';
Alignment pattern module (3):In the presence of being based on target, control picking point judges whether to touch close to picking target
And target, and alignment pattern includes two states, i.e. initial state alignment pattern S3 and next state alignment pattern S3 ';
Grasp mode module (4):When touching picking target for being based on picking point, control picking point cuts target, grasp mode
Including two states, i.e. initial state grasp mode S4 and next state grasp mode S4 ';
Regression Model module (5):For entering Regression Model, controlling each axis and return record point, Regression Model includes two states,
That is initial state Regression Model S5 and next state crawl return S5 '.
2. the picking robot controller according to claim 1 based on finite-state automata framework, which is characterized in that
The initialization module (1), the scan pattern module (2), alignment pattern module (3), the grasp mode module (4) and
Regression Model module (5) shifts the switching that formula carries out pattern according to state:
State shifts formula:
Wherein, E indicates that condition, A expressions action, E1 indicate that initialization is completed, and E2 indicates that no target, E3 indicate there is target in frame,
E4 indicates target there are picking error, and E5 expressions touch target, and E6 indicates that target is lost, and E7 indicates that target is cut, E8 tables
Show and returned record point, target occur in E9 expressions, and E10 expressions do not return record point, and A1, which indicates to send, obtains target frame, A2 tables
Show and preserve current location, A3 indicates comparing calculation error and controls picking point close to target, and A4 indicates that target, A5 tables are cut in control
Show that recurrence record point, A6 expressions return to record position, A7 indicates to return record point.
3. the picking robot controller according to claim 1 based on finite-state automata framework, which is characterized in that
The initialization module (1) includes total initialization module (10) and small change mode module (20), total initialization module (10)
Including:
Communication initialization module (101):For being communicated with host computer, and the communication module initialization of host computer is carried out, and judged
Whether system initialization is completed;
Return to module (102):When not completed for being based on system initialization, Returning communication initialization module (101);
Management module (103):When being completed for being based on system initialization, the initialization of global variable is carried out, at the beginning of global variable
After the completion of beginningization, sends and instruct to small change mode module (20).
4. the picking robot controller according to claim 3 based on finite-state automata framework, which is characterized in that
The small change mode module (20) includes:
First judgment module (201):For detecting whether that the zero mark of X-axis, Y-axis or Z axis generates in real time, if had,
It sends and instructs to the first jump module (207), if do not had there are one axis, send and instruct on off state judgment module (202);
On off state judgment module (202):For judging whether to receive X-axis, Y-axis or the corresponding switching signal of Z axis, if connect
Switching signal is received, sends and instructs to the first setup module (203), if not receiving switching signal, to anti-zero campaign signs
Judgment module (204) sends instruction;
First setup module (203):Anti- zero campaign signs for generating X-axis, Y-axis or Z axis, and sent to X-axis, Y-axis or Z axis
The order of anti-zero direction movement, while the anti-zero motor unit pulse of X-axis, Y-axis or Z axis is set, then judge mould on off state
Block (202) sends instruction;
Anti- zero campaign signs judgment module (204):For judging whether X-axis, Y-axis or anti-zero campaign signs of Z axis generate, if instead
Zero campaign signs generate, and send and instruct to third setup module (206), if anti-zero campaign signs do not generate, to the 4th setting
Module (205) sends instruction;
4th setup module (205):For sending the order moved to zero direction, setting X-axis, Y-axis or Z to X-axis, Y-axis or Z axis
Axis sends instruction to zero motor unit pulse, and to the first judgment module (201);
Third setup module (206):Instruction for sending stop motion to X-axis, Y-axis or Z axis;Obtain X-axis, Y-axis or Z axis electricity
The current PRF point of machine, current PRF point are the zero value of X-axis, Y-axis or Z axis, and X-axis, Y-axis or Z axis zero mark generate, and to
First judgment module (201) sends instruction;
First jump module (207):It is instructed for being sent to scan pattern module (2).
5. the picking robot controller according to claim 4 based on finite-state automata framework, which is characterized in that
Scan pattern module (2) includes:
First acquisition module (21):The movable information of zero value and Z axis for obtaining Z axis, target existence information, institute
The minimum point and peak that movable information includes Z axis movement are stated, the target existence information includes that target has mark, mesh
Cursor position coordinate;
Second judgment module (22):For judging whether that target has mark, if it does, to the second jump module (23)
Instruction is sent, is instructed if it does not, being sent to the first management module (24);
Second jump module (23):It for recording current time Z axis position, and generates target and there is mark, to alignment pattern mould
Block (3) sends instruction;
First management module (24):For obtaining Z axis relative position, it is set for scanning lattice angle value, and Z axis is set in unit week
The distance passed by phase;
Third judgment module (25):For judging the Z axis direction of motion according to scanning lattice angle value and the zero value of Z axis, when for zero
It when movement, sends and instructs to the first computing module (26), when for anti-zero movement, send and instruct to the second computing module (29);
First computing module (26):For calculate scanning lattice angle value and Z axis pass by unit period at a distance from difference;
4th judgment module (27):Judge whether to reach Z axis movement for the difference obtained by the first computing module (26)
Minimum point sends to the second management module (28) and instructs if reaching the minimum point of Z axis movement, if not reaching Z axis movement
Minimum point sends to the first acquisition module (21) and instructs;
Second management module (28):Traffic direction for Z axis to be arranged is anti-zero direction, and is sent to the first acquisition module (21)
Instruction;
Second computing module (29):For calculate scanning lattice angle value and Z axis pass by unit period at a distance from and value;
5th judgment module (30):Judge whether to reach Z axis movement for obtained by the second computing module (29) and value
Peak sends to third management module (301) and instructs if reaching the peak of Z axis movement, if not reaching Z axis movement
Peak, to the first acquisition module (21) send instruct;
Third management module (301):Traffic direction for Z axis to be arranged is to be sent out to zero direction, and to the first acquisition module (21)
Send instruction.
6. the picking robot controller according to claim 5 based on finite-state automata framework, which is characterized in that
Alignment pattern module (3) includes:
5th setup module (31):For X-axis error threshold and Z axis error threshold to be arranged;
Second acquisition module (32):Range value for obtaining target existence information and X-axis, Y-axis and Z axis, institute
It includes that target has mark, target location coordinate to state target existence information, calculates target location coordinate and second and redirects mould
X differences between the position coordinates that block (23) determines and Z differences;
6th judgment module (33):For judging target, whether there are marks to generate, if there are marks not to generate for target, to return
Return mode module (5) to send instruction, if target has mark and generates, sends and instruct to the 7th judgment module (34);
7th judgment module (34):For judging whether X-axis, Y-axis and Z axis reach the range value of respective shaft, if so,
It sends and instructs to Regression Model module (5), instructed if it is not, being sent to the 8th judgment module (35);
8th judgment module (35):For judging whether X differences, Z differences are less than corresponding X-axis error threshold, Z axis error threshold
Value sends to the 4th management module (36) and instructs, if X differences, Z differences are respectively less than if there is a difference is more than error threshold
Corresponding X-axis error threshold, Z axis error threshold send to the 5th management module (37) and instruct;
4th management module (36):For corresponding to axis deviation umber of pulse according to X differences or Z mathematic interpolations, sent to X-axis or Z axis
With the instruction that X-axis deviation umber of pulse or Z axis deviation umber of pulse are run, and sends and instruct to the second acquisition module (32);
5th management module (37):For sending the instruction of stop motion to X-axis or Z axis, while Y-axis deviation umber of pulse is set,
And the instruction run with Y-axis deviation umber of pulse is sent to Y-axis;
6th management module (38):For judging whether to receive the signal for touching target, if receiving the letter for touching target
Number, it sends and instructs to grasp mode module (4), if not receiving the signal for touching target, sent out to the second acquisition module (32)
Send instruction.
7. the picking robot controller according to claim 6 based on finite-state automata framework, which is characterized in that
Grasp mode module (4) includes:
First control module (41):For sending turn-on command to the solenoid valve of scissors;
Timing module (42):For starting timing in solenoid valve conduction;
Second control module (43):For timing module (42) be recorded the time reach the predetermined time when, to the electromagnetism of scissors
Valve sends out code, and jumps to Regression Model module (5).
8. the picking robot controller according to claim 7 based on finite-state automata framework, which is characterized in that
Regression Model module (5) includes:
6th setup module (51):Midstroke for X-axis to be arranged is record point, and Y-axis zero value is record point, and second redirects
The Z axis position of module (23) record is the record point of Z axis, and X-axis, Y-axis, the range error threshold value of Z axis is arranged;
Third acquisition module (52):There is mark for obtaining target, and in the absence of target exists and indicates, obtains X-axis, Y
Axis, the position buffer value of Z axis and record point, position buffer value is the stroke value between current location and record point, and is calculated back
X range errors value, Y range errors value, Z range error values between position after returning and record point;
Regression block (53):For based on X-axis, Y-axis, the position buffer value of Z axis, being sent to X-axis, Y-axis, Z axis return note respectively
Record the instruction of point;
Tenth judgment module (54):It is corresponded to for judging whether X range errors value, Y range errors value, Z range errors value are less than
X-axis range error threshold value, the range error threshold value of Y-axis, the range error threshold value of Z axis, if so, to scan pattern module
(2) instruction is sent, if there is a range error value is not less than range error threshold value, sends and instructs to the 7th management module (55);
7th management module (55):Recurrence velocity pulse number for X-axis, Y-axis or Z axis to be arranged is sent to X-axis, Y-axis or Z axis
To return the instruction of velocity pulse number operation, and sends and instruct to third acquisition module (52).
9. a kind of framework method based on finite-state automata framework, which is characterized in that the framework method includes following step
Suddenly:
S1:System is initialized by initialization module (1), and judges whether initialization is completed;
S2:By scan pattern module (2) after the completion of system initialization, picking target is scanned, and judges whether there is
Target exists;
S3:It is based in the presence of having target by alignment pattern module (3), control picking point judges whether close to picking target
Touch target;
S4:When touching picking target based on picking point by grasp mode module (4), control picking point cuts target;
S5:Enter Regression Model by Regression Model module (5), controls each axis and return record point.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810457799.5A CN108656110B (en) | 2018-05-14 | 2018-05-14 | Picking robot controller based on finite state automata architecture and architecture method |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810457799.5A CN108656110B (en) | 2018-05-14 | 2018-05-14 | Picking robot controller based on finite state automata architecture and architecture method |
Publications (2)
Publication Number | Publication Date |
---|---|
CN108656110A true CN108656110A (en) | 2018-10-16 |
CN108656110B CN108656110B (en) | 2020-07-28 |
Family
ID=63779436
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201810457799.5A Active CN108656110B (en) | 2018-05-14 | 2018-05-14 | Picking robot controller based on finite state automata architecture and architecture method |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN108656110B (en) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111113421A (en) * | 2019-12-30 | 2020-05-08 | 上海燊星机器人科技有限公司 | Robot intelligence snatchs sequencing system |
CN113287421A (en) * | 2021-07-02 | 2021-08-24 | 王小平 | Intelligent tea leaf collector |
Citations (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101683037A (en) * | 2008-09-26 | 2010-03-31 | 中国农业大学 | Controller for fruit picking robot |
CN102339060A (en) * | 2011-05-24 | 2012-02-01 | 北京工业大学 | Dance motion planning method for desktop type two-wheeled robot |
CN103115565A (en) * | 2012-12-28 | 2013-05-22 | 长春大正博凯汽车设备有限公司 | Laser measuring system and laser measuring method thereof |
CN103273164A (en) * | 2012-12-28 | 2013-09-04 | 长春大正博凯汽车设备有限公司 | Arc welding system and arc welding method thereof |
US20140336818A1 (en) * | 2013-05-10 | 2014-11-13 | Cnh Industrial America Llc | Control architecture for multi-robot system |
CN104699122A (en) * | 2015-02-12 | 2015-06-10 | 哈尔滨工业大学 | Robot motion control system |
CN105027834A (en) * | 2015-07-10 | 2015-11-11 | 平顶山工业职业技术学院 | Vegetable and fruit picking robot and control method thereof |
CN107139182A (en) * | 2017-06-05 | 2017-09-08 | 重庆理工大学 | A kind of citrus picking robot system and its control method |
CN107589719A (en) * | 2017-07-21 | 2018-01-16 | 珠海格力节能环保制冷技术研究中心有限公司 | A kind of origin apparatus resetting method and device |
WO2018068231A1 (en) * | 2016-10-12 | 2018-04-19 | Abb Schweiz Ag | Apparatus and method for controlling robot |
-
2018
- 2018-05-14 CN CN201810457799.5A patent/CN108656110B/en active Active
Patent Citations (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101683037A (en) * | 2008-09-26 | 2010-03-31 | 中国农业大学 | Controller for fruit picking robot |
CN102339060A (en) * | 2011-05-24 | 2012-02-01 | 北京工业大学 | Dance motion planning method for desktop type two-wheeled robot |
CN103115565A (en) * | 2012-12-28 | 2013-05-22 | 长春大正博凯汽车设备有限公司 | Laser measuring system and laser measuring method thereof |
CN103273164A (en) * | 2012-12-28 | 2013-09-04 | 长春大正博凯汽车设备有限公司 | Arc welding system and arc welding method thereof |
US20140336818A1 (en) * | 2013-05-10 | 2014-11-13 | Cnh Industrial America Llc | Control architecture for multi-robot system |
CN104699122A (en) * | 2015-02-12 | 2015-06-10 | 哈尔滨工业大学 | Robot motion control system |
CN105027834A (en) * | 2015-07-10 | 2015-11-11 | 平顶山工业职业技术学院 | Vegetable and fruit picking robot and control method thereof |
WO2018068231A1 (en) * | 2016-10-12 | 2018-04-19 | Abb Schweiz Ag | Apparatus and method for controlling robot |
CN107139182A (en) * | 2017-06-05 | 2017-09-08 | 重庆理工大学 | A kind of citrus picking robot system and its control method |
CN107589719A (en) * | 2017-07-21 | 2018-01-16 | 珠海格力节能环保制冷技术研究中心有限公司 | A kind of origin apparatus resetting method and device |
Non-Patent Citations (2)
Title |
---|
中国人工智能学会: "《中国工人智能学会第11届全国学术年会论文集 (下册) 中国人工智能进展》", 31 October 2005, 北京邮电大学出版社 * |
陈小琴等: ""状态机原理在控制程序设计中的应用"", 《制造业自动化》 * |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111113421A (en) * | 2019-12-30 | 2020-05-08 | 上海燊星机器人科技有限公司 | Robot intelligence snatchs sequencing system |
CN113287421A (en) * | 2021-07-02 | 2021-08-24 | 王小平 | Intelligent tea leaf collector |
Also Published As
Publication number | Publication date |
---|---|
CN108656110B (en) | 2020-07-28 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN102698429B (en) | Chess playing robot | |
CN103659838B (en) | The apparatus and method of bulk product are taken out with robot | |
CN203266633U (en) | Space coordinate positioning grabbing mechanical arm | |
CN109626002A (en) | Automatic stacking machine people and its control method | |
CN104570938B (en) | A kind of control method inserting the two arm robot system in production | |
CN108656110A (en) | Picking robot controller and framework method based on finite-state automata framework | |
CN106584093A (en) | Self-assembly system and method for industrial robots | |
CN108340374B (en) | Control system and control method for picking manipulator | |
CN110302981A (en) | A kind of solid waste sorts online grasping means and system | |
Zhang et al. | Design and development of a high speed sorting system based on machine vision guiding | |
CN108541458A (en) | A kind of Robot Fuzzy picking method | |
CN108227711A (en) | Left the right or normal track the crusing robot and control method of algorithm based on electric cam | |
CN109676633B (en) | Fixed-point control system and method for three-axis mechanical arm | |
CN110480636A (en) | A kind of mechanical arm control system based on 3D vision | |
Chang et al. | Design of mobile garbage collection robot based on visual recognition | |
CN109343541A (en) | A kind of AGV and its application method based on ROS | |
CN107962546A (en) | A kind of image recognition element follows pickup robot | |
CN204819554U (en) | Rail mounted manipulator | |
CN110681614A (en) | Robot palletizer sorting device based on computer vision | |
CN207408790U (en) | A kind of copline cricket experimental system based on image procossing | |
CN209583061U (en) | Automatic stacking machine people | |
CN208811670U (en) | Reciprocating processing machine and mechanical arm pick and place integration system | |
CN110587598A (en) | Stacking robot path optimization algorithm based on single-chip microcomputer | |
CN114906004A (en) | Intelligence agricultural machinery is with trading power station control system | |
CN100410031C (en) | Equipment and mthod of industrial robot possessing ability of recognizing color image |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |