A kind of robot controller of module dynamic dispatching
Technical field
The present invention relates to a kind of robot controller, the machine of a kind of module dynamic dispatching
People's controller.
Background technology
The universal motion controller of robot control field, is along realizing motor control from pure hardware and calculates
The Road Development that method realizes to pure software, within each different time period, motion controller is respectively provided with
Than sharper characteristic.In earliest period, motion controller is built by analog circuit purely, after
Apply motor control special chip, thus achieve real time kinematics and control card plus general purpose computer
The entire motion controller constituted, further, motion control chip is more general digital signal
Processor is replaced.
Currently, the high-performance of universal computing platform is had benefited from so that pure software realizes popular motion control
Become possibility.But, this quasi-controller the most most, by more complicated, coupling
Stronger huge software sharing, even uses the mode of multiple operating system cooperation to realize, such as China
Patent CN1867895B, so that operation and maintenance becomes extremely difficult.Simultaneously as this fortune
The ability that movement controller must have and outside uncertain environment is mutual, this just makes controller be received
Information there is suitable randomness, and system close-coupled is together, once occurs to make mistakes alternately,
Whole system will be caused to collapse, thus cause danger.Finally, such coupled system cannot be distinguished by respectively
Individual functional module, in order to keep the stability of system, runs control and must occupy substantial amounts of calculating for a long time
Resource, this will have a strong impact on the response of system external portion event, simultaneously also to hardware computing resource
A kind of waste.
Summary of the invention
In order to solve the problems referred to above, improving the motion controller that existing pure software realizes, the present invention carries
For the robot controller of a kind of module dynamic dispatching, it includes controller motherboard, at controller motherboard
On be provided with central processing unit and memory element, this central processing unit is that the core on controller motherboard is hard
Part device, additionally, be additionally provided with external fixture hardware interface on controller motherboard, wherein, in
Being provided with multiple separate processing units in central processor, each processing unit configures bound different
Software module is for transferring program.
Preferably, the quantity of separate processing units is four, and wherein three separate processing units are respectively
Bind with motion-control module, communications resource manager module, external equipment uniform management module, and
Real-Time Scheduling module, Programmadle logic module and utility program module and the 4th separate processing units collection
Becoming binding, wherein, Real-Time Scheduling module 5 configuration ground, for dynamically loading, unloads and dispatches machine
Modules in people's controller, these modules all need to be registered in advance in Real-Time Scheduling module, in real time
Scheduler module can also the state of all hardware resource in query monitor current controller in real time, including
The running status of modules, these hardware resources not only include all separate processing units, also include
Central processing unit, memory element and external fixture hardware interface, Real-Time Scheduling module can also configure ground
Occupied for dynamically dischargeing, the most idle resource of a period of time, then needs are used
The module schedules of these resources enters and uses.
Preferably, the quantity of separate processing units is more than or equal to six, wherein, motion-control module,
Communications resource manager module, external equipment uniform management module, Real-Time Scheduling module, can edit and patrol
Collect module to bind mutually with single separate processing units respectively with utility program module.
Preferably, external equipment uniform management module configuration ground is used for and external fixture hardware interface phase
Connecting and communicate, external fixture hardware interface is described robot controller and external hardware device
The exchange channels connected, all of external equipment all accesses described machine by this external fixture hardware interface
Device people's controller, and carry out integrated management information exchange by external equipment uniform management module.Work as use
During described external equipment, first the external equipment that robot controller is had is registered in outside this and sets
In standby uniform management module, provide and this device-dependent essential information, the unified pipe of external equipment simultaneously
Reason module utilizes these essential informations to be respectively these external equipments and writes independent underlying device driving,
Then these drivings are packaged together, and provide standardized handling function to external users, real
The now unification to all hardware is abstract and normalizing operation.
Preferably, described external equipment is to control the equipment that must have of robot, it include numeral and
Analog input and output interface, robot demonstrator.
Preferably, communications resource manager module configuration ground is used for managing the communication between each module,
And for obtaining the movement locus of robot, such track is by robot teaching, to machine
Device people's LISP program LISP resolves acquisition, and wherein movement locus includes joint space or the flute card of robot
The positional information in youngster space, additionally, communications resource manager module can also obtain the true of current robot
Real joint position, communications resource manager module is at the controller of unified coordination and administration robot controller
In the communication between each software module in motherboard, it makes use of very fast high-bandwidth real-time embedded always
Line transmission interactive information, it is ensured that the stability of communication, and for different current objects in this bus
Having carried out special structure Protocol Design, communications resource manager module also has elementary data and calculates
And transfer capability, it is possible to perform some simple data processing tasks, ensure the height that module is run simultaneously
Speed and real-time, additionally it is possible to source data is carried out form conversion, enable the data after conversion at quilt
Directly use after passing to subsequent module.
Preferably, special structure Protocol Design includes, for high speed real-time character type data, adopting
With directly transmission without the mode of inspection;For low speed important information, receiving-transmitting sides holds Handshake Protocol;
For the blocks of data that quantity of information is bigger, after using data-block cache, concentrate the mode of transmitting-receiving.
Preferably, motion-control module is with certain periodic duty, and its configuration ground is first from communication money
Robot motion's track is obtained at source manager module, then will be according to given speed command, to fortune
Dynamic track carries out sampling and interpolation calculates to obtain the target location of robot servo's level, then by solving
Calculate robot kinematics and obtain the correspondence position of robot each joint shaft corresponding against solution mode, as machine
Device people's servosystem must accept target control order, the most also need to be calculated robot in joint
Speed in space and cartesian space and accekeration, use for servosystem, finally will be counted
Calculate result and pass to external equipment uniform management module again by communications resource manager module, thus drive
Dynamic actual physical equipment, this module also obtains current machine at communications resource manager module simultaneously
The real joint position of people, obtains robot location's information by resolving Method of Calculation of Robotic Movements mode,
Running status with supervisory-controlled robot.
Preferably, universal logic module is Collaborative Control motion planning and robot control task and outer
The core cell of portion's event, it is with a priority lower than motor control, and cycle of operation is also than motion control
The long an order of magnitude of task processed.This module configuration ground is for coordinating external event and the motion in controller
Control task, external event signal will be routed to this Logic control module, thus by these events with
Motion planning and robot control task requires to be synchronized in robot program according to user program, additionally, because of
This is in the periphery of this module, arranges multiple safe link, each is physically entered output and carries out in real time
Monitoring.
Preferably, application program module configuration ground is for loading and the application program of user's direct interaction
In robot controller, described application program is practical art auxiliary program, these application program moulds
Block runs as un-real time job, after completing appointed task, will be unloaded out from robot controller,
The shared resource of release, additionally, after interim task completes, controller can be loaded into again,
Performing manufacturability task, final driven machine people completes appointed task.
The core of the present invention be by robot system included in core frame content in modular form
Extract, user's manufacturability program is also configured as standalone module simultaneously, to facilitate scheduling unit to adjust
Degree, especially the specialized designs module schedules unit of a kind of specific use, it can obtain current each
The running status of individual CPU and resources occupation situation, thus realize by module design task reasonably
Distribute to the processing unit being suitable for, substantially by vacant for hardware resource out, mutual appoint for unknown
Business provides maximized resource, to improve stability and the robustness of system.
Accompanying drawing explanation
Fig. 1 is the structural representation of the robot controller according in present invention representative embodiment.
Detailed description of the invention
Wherein:
1-controller motherboard;2-central processing unit;3-external fixture hardware interface;4-processing unit;5-
Real-Time Scheduling module;6-motion-control module;7-programmed logical module;8-communications resource manager mould
Block;9-external equipment uniform management module;10-utility program module;11-numeral and analog input are defeated
Outgoing interface;12-robot demonstrator;15-memory element.
Detailed description of the invention
In 1 couple of present invention, a detailed representative embodiment is described below with reference to the accompanying drawings.
Fig. 1 is a preferred reality of the robot controller of a kind of module dynamic dispatching of the present invention
Executing example, in this embodiment, robot controller includes controller motherboard 1, this controller motherboard 1
General industry main board of computer can be utilized to set up, controller motherboard 1 is provided with central authorities' process
Device 2 and memory element 15, this central processing unit 2 is the hardcore device on controller motherboard 1,
Additionally, be additionally provided with external fixture hardware interface 3 on controller motherboard 1.In order to realize robot
Control, in central processing unit 2, be provided with multiple independent processing unit 4, the most so-called " solely
Vertical ", it is simply that can on a computing unit 4 independent operating unique user thread or program, to ensure
Higher processing speed and process energy, for the robot that the present invention relates to and robot controller,
Being not requirement to the transformation arranging processing unit on central processing unit 2, basic principle is
In the case of ensureing enough usefulness, configure such separate processing units as much as possible, but right
There is definite requirement in this numerical lower limits, need the such independent process of at least four in general
Unit 4, in the present embodiment, in order to safeguard stability and the high efficiency of system, at central processing unit 2
On four separate processing units 4 are set, each processing unit configure bound different software module with
For transferring program, specifically, motor control is bound respectively on three separate processing units 4 wherein
Module 6, communications resource manager module 8 and external equipment uniform management module 9, these three module
It is to maintain module necessary to system stable operation, other task modules remaining, such as Real-Time Scheduling
Module 5, programmed logical module 7 and utility program module 10 can will be dynamically scheduled the 4th
On processing unit, in more preferred embodiment, if the quantity of separate processing units 4 is more than six
Individual, then can guarantee that each operation module so can be able to make with single separate processing units binding
These task modules obtain more and independent calculating and hardware resource, and more abundant hardware configuration is
Solution the most direct, efficient can be brought.
The module below central processing unit 2 specifically introduced in above-mentioned robot controller carried with
And the working method between each module, wherein:
External equipment uniform management module 9 configuration ground is for being connected also with external fixture hardware interface 3
Communicating, external fixture hardware interface 3 is the friendship that robot controller is connected with external hardware device
Passage mutually, all of external equipment all accesses robot controller by this external fixture hardware interface 3,
And carrying out integrated management information exchange by external equipment uniform management module 9, these external equipments include
Some control the equipment that robot must have, such as numeral and analog input and output interface 11, machine
People's demonstrator 12 etc..It is pointed out that some external equipment can also be by the form of switching here
Being linked into inside controller, wherein robot demonstrator is exactly a typical representative.Specifically,
When using these external equipments, first the external equipment that robot controller is connected is registered in this
In external equipment uniform management module 9, provide and these more device-dependent essential informations, example simultaneously
As: hardware firmware information, the particularly important is hardware interrupts number etc., utilize these information, outside sets
Standby uniform management module 9 is respectively these external equipments and writes independent underlying device driving, then will
These drivings are packaged together, and provide standardized handling function to external users, it is achieved to institute
There is the unification of hardware abstract and operational standardization.
Communications resource manager module 8 configuration ground is for managing the communication between each module, and is used for
Obtaining the movement locus of robot, such track is by robot teaching, to robot language
Program resolves acquisition, which includes the joint space of robot or the position letter of cartesian space
Breath, moreover it is possible to obtain the real joint position of current robot.Additionally, communications resource manager module 8
Configuration ground each software module in the controller motherboard 1 of unified coordination and administration robot controller
Between communication, it makes use of the real-time embedded bus transmission interactive information of very fast high-bandwidth, it is ensured that logical
The stability of letter.Additionally, the agreement constructed in this bus is carried out for different current objects
Special design, such as, for high speed real-time character type data, use directly transmission without the side of inspection
Formula, for low speed important information, receiving-transmitting sides must have Handshake Protocol, for the block that quantity of information is bigger
Data, concentrate the mode of transmitting-receiving after using data-block cache.Communications resource manager module 8 also has
Some elementary data calculate and transfer capability, it is possible to perform some simple data processing tasks, with
Time ensure module run high speed and real-time, it is also possible to source data is carried out form conversion, make turn
Data after changing directly can use after being delivered to subsequent module.
Motion-control module 6 is one of nucleus module in whole robot controller, with certain week
Phase is run, and first it obtain robot motion's track at communications resource manager module 8, then wants
According to given speed command, movement locus is sampled and interpolation calculates to obtain robot servo
The target location of level, then obtain robot each joint corresponding by resolving robot Inverse Kinematics Solution
The correspondence position of axle, as robot servo's system must accept target control order, the most also need
It is calculated robot speed in joint space and cartesian space and accekeration, for servo
System uses, and finally by communications resource manager module 8, institute's result of calculation is passed to outside again and sets
Standby uniform management module 9, thus drive the physical equipment of reality, such as: robot servo motors, machine
People's decelerators etc., this module also obtains current robot at communications resource manager module 8 simultaneously
Real joint position, obtains robot location's information by resolving Method of Calculation of Robotic Movements mode, with
The running status of supervisory-controlled robot.
Universal logic module 7 is Collaborative Control motion planning and robot control task and external event
Core cell, it is with a priority lower than motor control, and cycle of operation is also long than motor control task
An order of magnitude.The main merit of this module is to coordinate external event to appoint with the motor control in controller
Business.The external event signal obtained will be routed to this Logic control module 7, thus by these events with
Motion planning and robot control task requires to be synchronized in robot program according to user program.Write
Such program, is once downloaded in controller, just will take over the dynamic of whole robot physical system
Make logic, will result in serious consequence if there is improper, therefore in the periphery of this software module, arrange
Multiple safe links, are physically entered output to each and carry out real-time monitoring.
By the above-mentioned description to robot controller it is seen that, the core of whole robot controller
Part is to realize by software or its module carried, the various Core Features in robot controller
By the most abstract out after realize in modular form in the controller, simultaneously in order to make machine
The function of device people more optimizes, and devises multiple user's manufacturability practicality program and integrated is embodied as reality
By program module 10, for using and dispatching.
Real-Time Scheduling module 5 configuration ground is for dynamically loading, in unloading and dispatch robot controller
Each architecture module and application program module.These architecture module and application program modules
All need to be registered in advance in Real-Time Scheduling module 5, Real-Time Scheduling module 5 can also inquire about prison in real time
The state of all hardware resource in control current controller, including the running status of modules, wherein this
A little hardware resources not only include all separate processing units, also include central processing unit 2, memory element
15, external fixture hardware interface 3 and other hardware.Real-Time Scheduling module 5 is not only able to basis frame
Outside three key modules in frame are loaded on three separate processing units, moreover it is possible to dynamically discharge
Some are occupied, the most idle resource of a period of time, then will need to use the mould of these resources
Block dispatching enters and uses, and some high priorities use the module design task of resource period length, it is also possible to quilt
It is tied to some special resources, especially calculates resource, thus ensure the stability of its task run.
Utility program module 10 configuration ground is for loading the application program with user's direct interaction to robot
In controller, these application programs can be practical art auxiliary program, and embodies with modular form,
E.g. robot welding technical module, Control During Paint Spraying by Robot technical module, robotic asssembly module etc..
Only run previous work at robot controller owing to these application program modules are general, therefore complete
After appointed task, robot controller can be unloaded out from, the shared resource of release.In interim work
After task completes, can be loaded again such as controller, perform manufacturability task, final driven machine people is complete
Become appointed task.In a robot controller framework, can derive and multiple there is professional lead
To special machine people's controller, save Robot controller hardware's development cost, heighten exploitation flexibility
And efficiency.
One representative embodiment of the present invention has obtained detailed description referring to the drawings.These are detailed
Describe and only further believe content to those skilled in the art, for implementing the excellent of the present invention
Select aspect, and the scope of the present invention will not be limited.Only have claim to be used for determining this
Bright protection domain.Therefore, the combination of the feature in foregoing detailed description and step is dispensable
For implementing the present invention, and the most only the most detailed to the present invention in the broadest scope
The representative embodiment described provides teaching.Additionally, use embodiment to obtain being attached with of the present invention,
The various different feature providing teaching in the description can combine in several ways, but these sides
Formula is not enumerated out especially.