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 PDF

Info

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
Application number
CN201810457799.5A
Other languages
Chinese (zh)
Other versions
CN108656110B (en
Inventor
毕松
张潞
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Beijing Haze Square Circle Intelligent Technology Co Ltd
Original Assignee
Beijing Haze Square Circle Intelligent Technology Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Beijing Haze Square Circle Intelligent Technology Co Ltd filed Critical Beijing Haze Square Circle Intelligent Technology Co Ltd
Priority to CN201810457799.5A priority Critical patent/CN108656110B/en
Publication of CN108656110A publication Critical patent/CN108656110A/en
Application granted granted Critical
Publication of CN108656110B publication Critical patent/CN108656110B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1602Programme controls characterised by the control system, structure, architecture
    • AHUMAN NECESSITIES
    • A01AGRICULTURE; FORESTRY; ANIMAL HUSBANDRY; HUNTING; TRAPPING; FISHING
    • A01DHARVESTING; MOWING
    • A01D46/00Picking of fruits, vegetables, hops, or the like; Devices for shaking trees or shrubs
    • A01D46/30Robotic devices for individually picking crops
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1656Programme controls characterised by programming, planning systems for manipulators
    • B25J9/1669Programme 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

Picking robot controller and framework method based on finite-state automata framework
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:
S1×E1→S2' (S2-A1)×E2→S2' (S2-A2)×E3→S3' (S3-A3)×E4→S3' (S3-A4)×E5→S4' (S3-A5)×E6→S5' (S4-A6)×E7→S5' (S5-A7)×E10→S5' S5×E8→S2' S5×E9→S3'
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.
CN201810457799.5A 2018-05-14 2018-05-14 Picking robot controller based on finite state automata architecture and architecture method Active CN108656110B (en)

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)

* Cited by examiner, † Cited by third party
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)

* Cited by examiner, † Cited by third party
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

Patent Citations (10)

* Cited by examiner, † Cited by third party
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)

* Cited by examiner, † Cited by third party
Title
中国人工智能学会: "《中国工人智能学会第11届全国学术年会论文集 (下册) 中国人工智能进展》", 31 October 2005, 北京邮电大学出版社 *
陈小琴等: ""状态机原理在控制程序设计中的应用"", 《制造业自动化》 *

Cited By (2)

* Cited by examiner, † Cited by third party
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