CN114872782B - Four-wheel omni-directional chassis control method and system - Google Patents

Four-wheel omni-directional chassis control method and system Download PDF

Info

Publication number
CN114872782B
CN114872782B CN202210460697.5A CN202210460697A CN114872782B CN 114872782 B CN114872782 B CN 114872782B CN 202210460697 A CN202210460697 A CN 202210460697A CN 114872782 B CN114872782 B CN 114872782B
Authority
CN
China
Prior art keywords
wheel
cost
rpm
motor
current
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.)
Active
Application number
CN202210460697.5A
Other languages
Chinese (zh)
Other versions
CN114872782A (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.)
Shanghai Jingwu Trade Technology Development Co Ltd
Original Assignee
Shanghai Jingwu Trade Technology Development 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 Shanghai Jingwu Trade Technology Development Co Ltd filed Critical Shanghai Jingwu Trade Technology Development Co Ltd
Priority to CN202210460697.5A priority Critical patent/CN114872782B/en
Publication of CN114872782A publication Critical patent/CN114872782A/en
Application granted granted Critical
Publication of CN114872782B publication Critical patent/CN114872782B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • BPERFORMING OPERATIONS; TRANSPORTING
    • B62LAND VEHICLES FOR TRAVELLING OTHERWISE THAN ON RAILS
    • B62DMOTOR VEHICLES; TRAILERS
    • B62D5/00Power-assisted or power-driven steering
    • B62D5/04Power-assisted or power-driven steering electrical, e.g. using an electric servo-motor connected to, or forming part of, the steering gear
    • B62D5/0418Electric motor acting on road wheel carriers
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B60VEHICLES IN GENERAL
    • B60KARRANGEMENT OR MOUNTING OF PROPULSION UNITS OR OF TRANSMISSIONS IN VEHICLES; ARRANGEMENT OR MOUNTING OF PLURAL DIVERSE PRIME-MOVERS IN VEHICLES; AUXILIARY DRIVES FOR VEHICLES; INSTRUMENTATION OR DASHBOARDS FOR VEHICLES; ARRANGEMENTS IN CONNECTION WITH COOLING, AIR INTAKE, GAS EXHAUST OR FUEL SUPPLY OF PROPULSION UNITS IN VEHICLES
    • B60K7/00Disposition of motor in, or adjacent to, traction wheel
    • B60K7/0007Disposition of motor in, or adjacent to, traction wheel the motor being electric
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B60VEHICLES IN GENERAL
    • B60LPROPULSION OF ELECTRICALLY-PROPELLED VEHICLES; SUPPLYING ELECTRIC POWER FOR AUXILIARY EQUIPMENT OF ELECTRICALLY-PROPELLED VEHICLES; ELECTRODYNAMIC BRAKE SYSTEMS FOR VEHICLES IN GENERAL; MAGNETIC SUSPENSION OR LEVITATION FOR VEHICLES; MONITORING OPERATING VARIABLES OF ELECTRICALLY-PROPELLED VEHICLES; ELECTRIC SAFETY DEVICES FOR ELECTRICALLY-PROPELLED VEHICLES
    • B60L15/00Methods, circuits, or devices for controlling the traction-motor speed of electrically-propelled vehicles
    • B60L15/20Methods, circuits, or devices for controlling the traction-motor speed of electrically-propelled vehicles for control of the vehicle or its driving motor to achieve a desired performance, e.g. speed, torque, programmed variation of speed
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B60VEHICLES IN GENERAL
    • B60LPROPULSION OF ELECTRICALLY-PROPELLED VEHICLES; SUPPLYING ELECTRIC POWER FOR AUXILIARY EQUIPMENT OF ELECTRICALLY-PROPELLED VEHICLES; ELECTRODYNAMIC BRAKE SYSTEMS FOR VEHICLES IN GENERAL; MAGNETIC SUSPENSION OR LEVITATION FOR VEHICLES; MONITORING OPERATING VARIABLES OF ELECTRICALLY-PROPELLED VEHICLES; ELECTRIC SAFETY DEVICES FOR ELECTRICALLY-PROPELLED VEHICLES
    • B60L15/00Methods, circuits, or devices for controlling the traction-motor speed of electrically-propelled vehicles
    • B60L15/32Control or regulation of multiple-unit electrically-propelled vehicles
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B62LAND VEHICLES FOR TRAVELLING OTHERWISE THAN ON RAILS
    • B62DMOTOR VEHICLES; TRAILERS
    • B62D5/00Power-assisted or power-driven steering
    • B62D5/04Power-assisted or power-driven steering electrical, e.g. using an electric servo-motor connected to, or forming part of, the steering gear
    • B62D5/0457Power-assisted or power-driven steering electrical, e.g. using an electric servo-motor connected to, or forming part of, the steering gear characterised by control features of the drive means as such
    • B62D5/046Controlling the motor
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B60VEHICLES IN GENERAL
    • B60LPROPULSION OF ELECTRICALLY-PROPELLED VEHICLES; SUPPLYING ELECTRIC POWER FOR AUXILIARY EQUIPMENT OF ELECTRICALLY-PROPELLED VEHICLES; ELECTRODYNAMIC BRAKE SYSTEMS FOR VEHICLES IN GENERAL; MAGNETIC SUSPENSION OR LEVITATION FOR VEHICLES; MONITORING OPERATING VARIABLES OF ELECTRICALLY-PROPELLED VEHICLES; ELECTRIC SAFETY DEVICES FOR ELECTRICALLY-PROPELLED VEHICLES
    • B60L2240/00Control parameters of input or output; Target parameters
    • B60L2240/40Drive Train control parameters
    • B60L2240/42Drive Train control parameters related to electric machines
    • B60L2240/421Speed
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02TCLIMATE CHANGE MITIGATION TECHNOLOGIES RELATED TO TRANSPORTATION
    • Y02T10/00Road transport of goods or passengers
    • Y02T10/60Other road transportation technologies with climate change mitigation effect
    • Y02T10/72Electric energy management in electromobility

Landscapes

  • Engineering & Computer Science (AREA)
  • Transportation (AREA)
  • Mechanical Engineering (AREA)
  • Chemical & Material Sciences (AREA)
  • Combustion & Propulsion (AREA)
  • Power Engineering (AREA)
  • Arrangement And Driving Of Transmission Devices (AREA)
  • Steering Control In Accordance With Driving Conditions (AREA)

Abstract

The application provides a four-wheel omni-directional chassis control method and a four-wheel omni-directional chassis control system, comprising the following steps: step S1: setting chassis parameters; step S2: receiving control of the speed of the chassis; step S3: calculating the pose of the four steering engines and the speeds of the four straight motors according to the speeds; step S4: and reading the cost configuration with minimum calculation cost of the current position of the steering engine and the current speed of the straight motor, and outputting the pose of the steering engine and the speed of the motor. The application provides a motion resolving mode of a universal four-wheel four-steering engine omnidirectional chassis; the application provides a self-adaptive steering engine angle and motor speed control method, which improves the motor control smoothness from multiple configurations and prevents steering engine shake caused by speed abrupt change.

Description

Four-wheel omni-directional chassis control method and system
Technical Field
The application relates to the technical field of automatic control, in particular to a four-wheel omni-directional chassis control method and system.
Background
The four-wheel chassis similar to Ackerman cannot meet the movement in a narrow environment and cannot meet obstacle crossing conditions, so that the four-wheel four-steering engine moving chassis is required. Because of the same control speed multi-configuration problem existing in the steering direction of the straight motor and the steering engine direction, the traditional control algorithm has the conditions that the steering engine and the straight motor jump greatly, and influences the control smoothness and the service life of the motor.
Patent document CN107600221B, application (patent) No. 201710750897.3 provides an intelligent omnidirectional AGV trolley and a control method, comprising a driving device, an ultrasonic sensor unit (2), a movement indicator lamp unit (5), a navigation sensor unit (7), a main control unit (8) and a carriage (9), wherein the carriage (9) is a box body with a certain height, the chassis of the carriage (9) is a cube with four corners removed, the driving device comprises an omnidirectional wheel unit (1), a motor driving unit (3) and a motor unit (4), the driving device is arranged on the chassis of the carriage (9), the main control unit (8) is arranged in the carriage (9), and the ultrasonic sensor unit (2) is 4. According to the application, through the structural design of the AGV trolley, the AGV trolley can rotate in place in a narrow space or even at zero radius, and through giving different x, y and theta, the movement of the AGV trolley in a specified direction can be realized. But in the application, a 4-omni wheel is adopted; the 4 steering wheel 4 straight motor that adopts in this patent.
The patent document CN104216406B, application (patent) No. 201310219764.5 provides a control device and a control method of a four-wheel drive omnidirectional chassis, which are suitable for the field of robot chassis movement control, wherein a wireless serial communication module is used for receiving an instruction from a wireless serial communication module connected with a computer, instruction information comprises a position value and an attitude angle value of a target point to which the four-wheel drive omnidirectional chassis is to be moved, and the received instruction is transmitted to an upper computer ARM; the FPGA fuses the counting circuit and the information acquisition circuit, the FPGA acquires and processes the data of the code wheel counting module, the data is transmitted to the ARM through the universal I/O interface, and meanwhile, the FPGA is also used as an interface circuit to transmit the control instruction of the ARM to the direct current motor control module, so that the control of the rotating speed and the direction of the direct current motor is completed; ARM is the core control module of whole controlling means, is used for carrying out the fusion to the data received, realizes carrying out real-time settlement to the position appearance of four wheel drive qxcomm technology chassis, accomplishes the real-time control to four direct current motor. However, the application adopts 4 omni wheels, and the different points of the application from the comparison 1 are four-wheel installation positions; the 4 steering wheel 4 straight motor that adopts in this patent.
Patent document WO2019000436A1 (application number PCT/CN 2017/091282) discloses a four-wheel chassis, a two-wheel chassis, an assembly and a control method, the four-wheel chassis comprising: a vehicle body (1), a front wheel module (2) and a rear wheel module (3); the front wheel module (2) and the rear wheel module (3) are respectively detachably connected with the vehicle body (1); the front wheel module (2) or the rear wheel module (3) is detached from the vehicle body (1) and then independently moves as a two-wheel chassis. But in the application, a 4-omni wheel is adopted; the 4 steering wheel 4 straight motor that adopts in this patent.
Disclosure of Invention
Aiming at the defects in the prior art, the application aims to provide a four-wheel omni-directional chassis control method and system.
The four-wheel omni-directional chassis control method provided by the application comprises the following steps:
step S1: setting chassis parameters;
step S2: receiving control of the speed of the chassis;
step S3: calculating the pose of the four steering engines and the speeds of the four straight motors according to the speeds;
step S4: and reading the cost configuration with minimum calculation cost of the current position of the steering engine and the current speed of the straight motor, and outputting the pose of the steering engine and the speed of the motor.
Preferably, in said step S1:
setting chassis parameters includes: straight wheel diameter r, front and rear wheel tread base_x, left and right wheel tread base_y, steering engine rotating speed sero_w.
Preferably, in said step S3:
step S3.1: calculating the chassis linear velocity v_b:
v_b=sqrt((x^2+y^2))
x is the x-direction linear velocity, y is the y-direction linear velocity;
step S3.2, calculating a chassis rotation radius turn_r:
turning_r=v_b/w
w is the angular velocity;
under the command of speed v [ x, y, w ], the chassis moves at running speed with o as rotation center and turn_r as rotation radius and v_b as running radius;
step S3.3: calculating a steering engine position th_i of the inner wheel and an inner wheel rotation radius turn_r_inner:
th_i=atan(y_track/2,turning_r-(x_wheel/2))
turning_r_inner=sqrt((turning_r-x_wheel/2)^2+(y_track_/2)^2))
y_track is the left-right track, and x_wheel is the front-rear track;
step S3.4, calculating steering engine position th_o of the outer side wheel and outer side wheel rotation radius turn_r_outer:
th_o=atan(y_track_/2,turning_radius+(x_wheel_base_/2))
turning_r_outer=sqrt((turning_r+x_wheel/2)^2+(y_track_/2)^2))
y_track is left and right wheel track, x_wire_base is front and rear wheel track, and turn_radius is radius of rotation;
step S3.5: calculating an inner wheel straight motor speed rpm_inner and an outer wheel straight motor speed rpm_outer:
rpm_inner=w*turning_r_inner
rpm_outer=w*turning_r_outer
step S3.6: determining medial direction
If v_b is w >0, the inner side is left, and if v_b is w less than or equal to 0, the inner side is right;
and step S3.7, if the inner side is the left side, the control for issuing the 4 straight motor and the 4 steering wheel is as follows:
left front steering engine: th_i
Left rear steering engine: -th_i
Steering wheel before right: th_o
Steering wheel behind right: -th_o
Left front motor: rpm_inner
Left rear motor: rpm_inner
Right front motor: rpm_outer
Right rear motor: rpm_outer
If the inner side is the right side, the control for issuing the 4 straight motor and the 4 steering wheel is as follows:
left front steering wheel rotation angle: th_o
Left rear steering wheel rotation angle: -th_o
Steering wheel rotation angle before right: th_i
Steering wheel rotation angle behind right: -th_i
Left front motor speed: rpm_outer
Left rear motor speed: rpm_outer
Right front motor speed rpm_inner
Right rear motor speed: rpm_inner
Preferably, in said step S4:
reading the current speeds of four steering engine current positions current_sevo_1, current_sevo_2, current_sevo_3, current_sevo_4 and 4 straight motors to current_wheel_1, current_wheel_2, current_wheel_3 and current_wheel_4, wherein the data are fed back by a chassis; and calculating the cost configurations of the target_service and the target_Wheel with minimum cost according to a cost calculation formula, and outputting the pose of the rudder and the motor speed.
Preferably, step S4.1: defining cost values cost_servo and cost_Wheel, wherein cost_servo represents cost values required by steering engine changes, and cost_Wheel represents cost values required by wheel changes;
step S4.2: setting a steering engine angle th_i and a motor speed rpm_i for each steering engine and motor, and obtaining a current steering engine angle th_c and motor speed and rpm_c;
step S4.3: calculating cost values p1_cost and p2_cost for two configurations
p1_cost=fabs(th_i-th_c)*cost_servo+fabs(rpm_i-rpm_c)*cost_wheel
p2_cost=fabs((th_i+180)%180-th_c)*cost_servo+fabs(-rpm_i-rpm_c)*cost_wheel
Step S4.4: and the corresponding configuration with the smallest cost value is selected from the p1 cost and the p2 cost and is output to the motor control.
The four-wheel omni-directional chassis control system provided by the application comprises:
module M1: setting chassis parameters;
module M2: receiving control of the speed of the chassis;
module M3: calculating the pose of the four steering engines and the speeds of the four straight motors according to the speeds;
module M4: and reading the cost configuration with minimum calculation cost of the current position of the steering engine and the current speed of the straight motor, and outputting the pose of the steering engine and the speed of the motor.
Preferably, in said module M1:
setting chassis parameters includes: straight wheel diameter r, front and rear wheel tread base_x, left and right wheel tread base_y, steering engine rotating speed sero_w.
Preferably, in said module M3:
module M3.1: calculating the chassis linear velocity v_b:
v_b=sqrt((x^2+y^2))
x is the x-direction linear velocity, y is the y-direction linear velocity;
the module M3.2 calculates the chassis radius of rotation turn_r:
turning_r=v_b/w
w is the angular velocity;
under the command of speed v [ x, y, w ], the chassis moves at running speed with o as rotation center and turn_r as rotation radius and v_b as running radius;
module M3.3: calculating a steering engine position th_i of the inner wheel and an inner wheel rotation radius turn_r_inner:
th_i=atan(y_track/2,turning_r-(x_wheel/2))
turning_r_inner=sqrt((turning_r-x_wheel/2)^2+(y_track_/2)^2))
y_track is the left-right track, and x_wheel is the front-rear track;
module M3.4 calculates steering engine position th_o of the outboard wheel and outboard wheel turning radius r_outer:
th_o=atan(y_track_/2,turning_radius+(x_wheel_base_/2))
turning_r_outer=sqrt((turning_r+x_wheel/2)^2+(y_track_/2)^2))
y_track is left and right wheel track, x_wire_base is front and rear wheel track, and turn_radius is radius of rotation;
module M3.5: calculating an inner wheel straight motor speed rpm_inner and an outer wheel straight motor speed rpm_outer:
rpm_inner=w*turning_r_inner
rpm_outer=w*turning_r_outer
module M3.6: determining medial direction
If v_b is w >0, the inner side is left, and if v_b is w less than or equal to 0, the inner side is right;
if the inner side of the module M3.7 is the left side, the control for issuing the 4 straight motor and the 4 steering wheel is as follows:
left front steering engine: th_i
Left rear steering engine: -th_i
Steering wheel before right: th_o
Steering wheel behind right: -th_o
Left front motor: rpm_inner
Left rear motor: rpm_inner
Right front motor: rpm_outer
Right rear motor: rpm_outer
If the inner side is the right side, the control for issuing the 4 straight motor and the 4 steering wheel is as follows:
left front steering wheel rotation angle: th_o
Left rear steering wheel rotation angle: -th_o
Steering wheel rotation angle before right: th_i
Steering wheel rotation angle behind right: -th_i
Left front motor speed: rpm_outer
Left rear motor speed: rpm_outer
Right front motor speed rpm_inner
Right rear motor speed: rpm_inner
Preferably, in said module M4:
reading the current speeds of four steering engine current positions current_sevo_1, current_sevo_2, current_sevo_3, current_sevo_4 and 4 straight motors to current_wheel_1, current_wheel_2, current_wheel_3 and current_wheel_4, wherein the data are fed back by a chassis; and calculating the cost configurations of the target_service and the target_Wheel with minimum cost according to a cost calculation formula, and outputting the pose of the rudder and the motor speed.
Preferably, module M4.1: defining cost values cost_servo and cost_Wheel, wherein cost_servo represents cost values required by steering engine changes, and cost_Wheel represents cost values required by wheel changes;
module M4.2: setting a steering engine angle th_i and a motor speed rpm_i for each steering engine and motor, and obtaining a current steering engine angle th_c and motor speed and rpm_c;
module M4.3: calculating cost values p1_cost and p2_cost for two configurations
p1_cost=fabs(th_i-th_c)*cost_servo+fabs(rpm_i-rpm_c)*cost_wheel
p2_cost=fabs((th_i+180)%180-th_c)*cost_servo+fabs(-rpm_i-rpm_c)*cost_wheel
Module M4.4: and the corresponding configuration with the smallest cost value is selected from the p1 cost and the p2 cost and is output to the motor control.
Compared with the prior art, the application has the following beneficial effects:
1. the application provides a motion resolving mode of a universal four-wheel four-steering engine omnidirectional chassis;
2. the application provides a self-adaptive steering engine angle and motor speed control method, which improves the motor control smoothness from multiple configurations and prevents steering engine shake caused by speed abrupt change.
Drawings
Other features, objects and advantages of the present application will become more apparent upon reading of the detailed description of non-limiting embodiments, given with reference to the accompanying drawings in which:
FIG. 1 is a schematic diagram of a four-wheel chassis;
FIG. 2 is a diagram of a four-wheel chassis motion model;
fig. 3 is a graph of the same speed multiple configuration.
Detailed Description
The present application will be described in detail with reference to specific examples. The following examples will assist those skilled in the art in further understanding the present application, but are not intended to limit the application in any way. It should be noted that variations and modifications could be made by those skilled in the art without departing from the inventive concept. These are all within the scope of the present application.
Example 1:
according to the application, as shown in fig. 1-3, the four-wheel omni-directional chassis control method comprises the following steps:
step S1: setting chassis parameters;
step S2: receiving control of the speed of the chassis;
step S3: calculating the pose of the four steering engines and the speeds of the four straight motors according to the speeds;
step S4: and reading the cost configuration with minimum calculation cost of the current position of the steering engine and the current speed of the straight motor, and outputting the pose of the steering engine and the speed of the motor.
Specifically, in the step S1:
setting chassis parameters includes: straight wheel diameter r, front and rear wheel tread base_x, left and right wheel tread base_y, steering engine rotating speed sero_w.
Specifically, in the step S3:
step S3.1: calculating the chassis linear velocity v_b:
v_b=sqrt((x^2+y^2))
x is the x-direction linear velocity, y is the y-direction linear velocity;
step S3.2, calculating a chassis rotation radius turn_r:
turning_r=v_b/w
w is the angular velocity;
under the command of speed v [ x, y, w ], the chassis moves at running speed with o as rotation center and turn_r as rotation radius and v_b as running radius;
step S3.3: calculating a steering engine position th_i of the inner wheel and an inner wheel rotation radius turn_r_inner:
th_i=atan(y_track/2,turning_r-(x_wheel/2))
turning_r_inner=sqrt((turning_r-x_wheel/2)^2+(y_track_/2)^2))
y_track is the left-right track, and x_wheel is the front-rear track;
step S3.4, calculating steering engine position th_o of the outer side wheel and outer side wheel rotation radius turn_r_outer:
th_o=atan(y_track_/2,turning_radius+(x_wheel_base_/2))
turning_r_outer=sqrt((turning_r+x_wheel/2)^2+(y_track_/2)^2))
y_track is left and right wheel track, x_wire_base is front and rear wheel track, and turn_radius is radius of rotation;
step S3.5: calculating an inner wheel straight motor speed rpm_inner and an outer wheel straight motor speed rpm_outer:
rpm_inner=w*turning_r_inner
rpm_outer=w*turning_r_outer
step S3.6: determining medial direction
If v_b is w >0, the inner side is left, and if v_b is w less than or equal to 0, the inner side is right;
and step S3.7, if the inner side is the left side, the control for issuing the 4 straight motor and the 4 steering wheel is as follows:
left front steering engine: th_i
Left rear steering engine: -th_i
Steering wheel before right: th_o
Steering wheel behind right: -th_o
Left front motor: rpm_inner
Left rear motor: rpm_inner
Right front motor: rpm_outer
Right rear motor: rpm_outer
If the inner side is the right side, the control for issuing the 4 straight motor and the 4 steering wheel is as follows:
left front steering wheel rotation angle: th_o
Left rear steering wheel rotation angle: -th_o
Steering wheel rotation angle before right: th_i
Steering wheel rotation angle behind right: -th_i
Left front motor speed: rpm_outer
Left rear motor speed: rpm_outer
Right front motor speed rpm_inner
Right rear motor speed: rpm_inner
Specifically, in the step S4:
reading the current speeds of four steering engine current positions current_sevo_1, current_sevo_2, current_sevo_3, current_sevo_4 and 4 straight motors to current_wheel_1, current_wheel_2, current_wheel_3 and current_wheel_4, wherein the data are fed back by a chassis; and calculating the cost configurations of the target_service and the target_Wheel with minimum cost according to a cost calculation formula, and outputting the pose of the rudder and the motor speed.
Specifically, step S4.1: defining cost values cost_servo and cost_Wheel, wherein cost_servo represents cost values required by steering engine changes, and cost_Wheel represents cost values required by wheel changes;
step S4.2: setting a steering engine angle th_i and a motor speed rpm_i for each steering engine and motor, and obtaining a current steering engine angle th_c and motor speed and rpm_c;
step S4.3: calculating cost values p1_cost and p2_cost for two configurations
p1_cost=fabs(th_i-th_c)*cost_servo+fabs(rpm_i-rpm_c)*cost_wheelp2_cost=fabs((th_i+180)%180-th_c)*cost_servo+fabs(-rpm_i-rpm_c)*cost_wheel
Step S4.4: and the corresponding configuration with the smallest cost value is selected from the p1 cost and the p2 cost and is output to the motor control.
Example 2:
example 2 is a preferable example of example 1 to more specifically explain the present application.
Those skilled in the art can understand the four-wheel omni-directional chassis control method provided by the present application as a specific implementation manner of the four-wheel omni-directional chassis control system, that is, the four-wheel omni-directional chassis control system can be implemented by executing the step flow of the four-wheel omni-directional chassis control method.
The four-wheel omni-directional chassis control system provided by the application comprises:
module M1: setting chassis parameters;
module M2: receiving control of the speed of the chassis;
module M3: calculating the pose of the four steering engines and the speeds of the four straight motors according to the speeds;
module M4: and reading the cost configuration with minimum calculation cost of the current position of the steering engine and the current speed of the straight motor, and outputting the pose of the steering engine and the speed of the motor.
Specifically, in the module M1:
setting chassis parameters includes: straight wheel diameter r, front and rear wheel tread base_x, left and right wheel tread base_y, steering engine rotating speed sero_w.
Specifically, in the module M3:
module M3.1: calculating the chassis linear velocity v_b:
v_b=sqrt((x^2+y^2))
x is the x-direction linear velocity, y is the y-direction linear velocity;
the module M3.2 calculates the chassis radius of rotation turn_r:
turning_r=v_b/w
w is the angular velocity;
under the command of speed v [ x, y, w ], the chassis moves at running speed with o as rotation center and turn_r as rotation radius and v_b as running radius;
module M3.3: calculating a steering engine position th_i of the inner wheel and an inner wheel rotation radius turn_r_inner:
th_i=atan(y_track/2,turning_r-(x_wheel/2))
turning_r_inner=sqrt((turning_r-x_wheel/2)^2+(y_track_/2)^2))
y_track is the left-right track, and x_wheel is the front-rear track;
module M3.4 calculates steering engine position th_o of the outboard wheel and outboard wheel turning radius r_outer:
th_o=atan(y_track_/2,turning_radius+(x_wheel_base_/2))
turning_r_outer=sqrt((turning_r+x_wheel/2)^2+(y_track_/2)^2))
y_track is left and right wheel track, x_wire_base is front and rear wheel track, and turn_radius is radius of rotation;
module M3.5: calculating an inner wheel straight motor speed rpm_inner and an outer wheel straight motor speed rpm_outer:
rpm_inner=w*turning_r_inner
rpm_outer=w*turning_r_outer
module M3.6: determining medial direction
If v_b is w >0, the inner side is left, and if v_b is w less than or equal to 0, the inner side is right;
if the inner side of the module M3.7 is the left side, the control for issuing the 4 straight motor and the 4 steering wheel is as follows:
left front steering engine: th_i
Left rear steering engine: -th_i
Steering wheel before right: th_o
Steering wheel behind right: -th_o
Left front motor: rpm_inner
Left rear motor: rpm_inner
Right front motor: rpm_outer
Right rear motor: rpm_outer
If the inner side is the right side, the control for issuing the 4 straight motor and the 4 steering wheel is as follows:
left front steering wheel rotation angle: th_o
Left rear steering wheel rotation angle: -th_o
Steering wheel rotation angle before right: th_i
Steering wheel rotation angle behind right: -th_i
Left front motor speed: rpm_outer
Left rear motor speed: rpm_outer
Right front motor speed rpm_inner
Right rear motor speed: rpm_inner
Specifically, in the module M4:
reading the current speeds of four steering engine current positions current_sevo_1, current_sevo_2, current_sevo_3, current_sevo_4 and 4 straight motors to current_wheel_1, current_wheel_2, current_wheel_3 and current_wheel_4, wherein the data are fed back by a chassis; and calculating the cost configurations of the target_service and the target_Wheel with minimum cost according to a cost calculation formula, and outputting the pose of the rudder and the motor speed.
Specifically, module M4.1: defining cost values cost_servo and cost_Wheel, wherein cost_servo represents cost values required by steering engine changes, and cost_Wheel represents cost values required by wheel changes;
module M4.2: setting a steering engine angle th_i and a motor speed rpm_i for each steering engine and motor, and obtaining a current steering engine angle th_c and motor speed and rpm_c;
module M4.3: calculating cost values p1_cost and p2_cost for two configurations
p1_cost=fabs(th_i-th_c)*cost_servo+fabs(rpm_i-rpm_c)*cost_wheelp2_cost=fabs((th_i+180)%180-th_c)*cost_servo+fabs(-rpm_i-rpm_c)*cost_wheel
Module M4.4: and the corresponding configuration with the smallest cost value is selected from the p1 cost and the p2 cost and is output to the motor control.
Example 3:
example 3 is a preferable example of example 1 to more specifically explain the present application.
In view of the above-mentioned drawbacks of the prior art, the technical problem to be solved by the present application is embodied in the following points:
1) A smooth and general four-wheel four-steering engine control algorithm is provided, which is suitable for the chassis similar to the chassis of FIG. 1
2) A cost calculation method is provided for selecting the smoothest motor steering and steering engine direction configuration
The method comprises the following steps:
step 1: setting chassis related parameters including straight wheel diameter r, front and rear wheel track base_x, left and right wheel track base_y and steering engine rotating speed sevo_w
Step 2: receiving the speed v [ x, y, w ] of the control chassis;
x represents an x-direction linear velocity, y represents a y-direction linear velocity, and w represents an angular velocity;
step 3: calculating the poses of 4 steering engines according to the speed v, namely, recording the poses as target_i_service_1-4, and the speeds of 4 straight-line motors to target_i_wavelet_1-4, wherein a motion model diagram is shown in fig. 2, and two configurations are formed at the moment, namely, i is 0 or 1, so that the problem of double configurations is shown in fig. 3;
step 4: reading the current speeds of the current positions current_service_1-4 and the current speeds of 4 straight motors of the four steering engines to current_wavelet_1-4, and feeding back data by a chassis; and calculating the target_service and target_Wheel cost configurations with the minimum cost according to a cost calculation formula, namely, finally outputting the pose of the rudder and the motor speed.
Step 3 includes the following steps, see the motion model of fig. 2 for details:
step 3.1 calculating the linear speed of the chassis
v_b=sqrt((x^2+y^2))
Step 3.2 calculating the radius of rotation of the chassis
turning_r=v_b/w
I.e. the chassis is required to move at the speed v x, y, w with o as the centre of rotation, turn_r as the radius of rotation and v_b as the speed of travel.
Step 3.3 calculating the steering engine position of the inner side wheel and the rotation radius of the inner side wheel
th_i=atan(y_track/2,turning_r-(x_wheel/2))
turning_r_inner=sqrt((turning_r-x_wheel/2)^2+(y_track_/2)^2))
Step 3.4, calculating the steering engine position of the outside wheel and the rotation radius of the outside wheel
th_o=atan(y_track_/2,turning_radius+(x_wheel_base_/2))
turning_r_outer=sqrt((turning_r+x_wheel/2)^2+(y_track_/2)^2))
Step 3.5 calculating the straight motor speeds of the inner and outer wheels
rpm_inner=w*turning_r_inner;
rpm_outer=w*turning_r_outer;
Step 3.6 determining medial direction, left or right
If v_b > w >0 then the inner side is left, otherwise on the right side
Step 3.7 if the inner side is left side, controlling the 4 straight motor and the 4 steering wheel to issue
Left front steering engine Left rear steering engine Right front steering engine Right rear steering engine
th_i -th_i th_o -th_o
Left front motor Left rear motor Right front motor Right rear motor
rpm_inner rpm_inner rpm_outer rpm_outer
Step 4 comprises the following steps:
step 4.1 defines cost values cost_service and cost_Wheel, which represent cost values required for steering engine changes and wheel changes, respectively.
And 4.2, setting the control steering engine angle th_i and the motor speed rpm_i obtained in the step 3 for each steering engine and each motor, and obtaining the current steering engine angle th_c, the motor speed and rpmc.
Step 4.3 calculating cost values p1_cost and p2_cost for both configurations
p1_cost=fabs(th_i-th_c)*cost_servo+fabs(rpm_i-rpm_c)*cost_wheel;
p2_cost=fabs((th_i+180)%180-th_c)*cost_servo+fabs(-rpm_i-rpm_c)*cost_wheel;
And 4.4p1_cost and p2_cost are selected from the corresponding configuration with the smallest cost value and output to the motor control.
Those skilled in the art will appreciate that the systems, apparatus, and their respective modules provided herein may be implemented entirely by logic programming of method steps such that the systems, apparatus, and their respective modules are implemented as logic gates, switches, application specific integrated circuits, programmable logic controllers, embedded microcontrollers, etc., in addition to the systems, apparatus, and their respective modules being implemented as pure computer readable program code. Therefore, the system, the apparatus, and the respective modules thereof provided by the present application may be regarded as one hardware component, and the modules included therein for implementing various programs may also be regarded as structures within the hardware component; modules for implementing various functions may also be regarded as being either software programs for implementing the methods or structures within hardware components.
The foregoing describes specific embodiments of the present application. It is to be understood that the application is not limited to the particular embodiments described above, and that various changes or modifications may be made by those skilled in the art within the scope of the appended claims without affecting the spirit of the application. The embodiments of the application and the features of the embodiments may be combined with each other arbitrarily without conflict.

Claims (6)

1. The four-wheel omni-directional chassis control method is characterized by comprising the following steps of:
step S1: setting chassis parameters;
step S2: receiving control of the speed of the chassis;
step S3: calculating the pose of the four steering engines and the speeds of the four straight motors according to the speeds;
step S4: reading a cost model with minimum calculation cost of the current position of the steering engine and the current speed of the straight motor, and outputting the pose of the steering engine and the speed of the motor;
in the step S4:
reading the current speeds of four steering engine current positions current_sevo_1, current_sevo_2, current_sevo_3, current_sevo_4 and 4 straight motors to current_wheel_1, current_wheel_2, current_wheel_3 and current_wheel_4, wherein the data are fed back by a chassis; calculating a target_service and a target_Wheel cost model with minimum cost according to a cost calculation formula, and outputting the pose of the rudder and the motor speed;
step S4.1: defining cost values cost_servo and cost_Wheel, wherein cost_servo represents cost values required by steering engine changes, and cost_Wheel represents cost values required by wheel changes;
step S4.2: setting a steering engine angle th_i and a motor speed rpm_i for each steering engine and motor, and obtaining a current steering engine angle th_c and motor speed and rpm_c;
step S4.3: calculating cost values p1_cost and p2_cost for two configurations
p1_cost=fast (th_i-th_c) ×cost_servo+fast (rpm_i-rpm_c) ×cost_wavelet p2_cost=fast ((th_i+180)% 180-th_c) ×cost_servo+fast (-rpm_i-rpm_c) ×cost_wavelet step S4.4: and the corresponding configuration with the smallest cost value is selected from the p1 cost and the p2 cost and is output to the motor control.
2. The four-wheel omni-directional chassis control method according to claim 1, wherein in the step S1:
setting chassis parameters includes: straight wheel diameter r, front and rear wheel tread base_x, left and right wheel tread base_y, steering engine rotating speed sero_w.
3. The four-wheel omni-directional chassis control method according to claim 1, wherein in the step S3:
step S3.1: calculating the chassis linear velocity v_b:
v_b=sqrt((x^2+y^2))
x is the x-direction linear velocity, y is the y-direction linear velocity;
step S3.2, calculating a chassis rotation radius turn_r:
turning_r=v_b/w
w is the angular velocity;
under the command of the speed v, the chassis moves at the running speed with o as a rotation center, turning_r as a rotation radius and v_b as a running speed;
step S3.3: calculating a steering engine position th_i of the inner wheel and an inner wheel rotation radius turn_r_inner:
th_i=atan(y_track/2,turning_r-(x_wheel/2))
turning_r_inner=sqrt((turning_r-x_wheel/2)^2+(y_track/2)^2))
y_track is the left-right track, and x_wheel is the front-rear track;
step S3.4, calculating steering engine position th_o of the outer side wheel and outer side wheel rotation radius turn_r_outer:
th_o=atan(y_track/2,turning_r+(x_wheel_/2))
turning_r_outer=sqrt((turning_r+x_wheel/2)^2+(y_track/2)^2))
y_track is left and right wheel track, x_wheel is front and rear wheel track, and turn_r is rotation radius;
step S3.5: calculating an inner wheel straight motor speed rpm_inner and an outer wheel straight motor speed rpm_outer:
rpm_inner=w*turning_r_inner
rpm_outer=w*turning_r_outer
step S3.6: determining medial direction
If v_b is w >0, the inner side is left, and if v_b is w less than or equal to 0, the inner side is right;
and step S3.7, if the inner side is the left side, the control for issuing the 4 straight motor and the 4 steering wheel is as follows:
left front steering engine: th_i
Left rear steering engine: -th_i
Steering wheel before right: th_o
Steering wheel behind right: -th_o
Left front motor: rpm_inner
Left rear motor: rpm_inner
Right front motor: rpm_outer
Right rear motor: rpm_outer
If the inner side is the right side, the control for issuing the 4 straight motor and the 4 steering wheel is as follows:
left front steering wheel rotation angle: th_o
Left rear steering wheel rotation angle: -th_o
Steering wheel rotation angle before right: th_i
Steering wheel rotation angle behind right: -th_i
Left front motor speed: rpm_outer
Left rear motor speed: rpm_outer
Right front motor speed rpm_inner
Right rear motor speed: rpm_inner.
4. A four-wheel omni-directional chassis control system, comprising:
module M1: setting chassis parameters;
module M2: receiving control of the speed of the chassis;
module M3: calculating the pose of the four steering engines and the speeds of the four straight motors according to the speeds;
module M4: reading a cost model with minimum calculation cost of the current position of the steering engine and the current speed of the straight motor, and outputting the pose of the steering engine and the speed of the motor;
in the module M4:
reading the current speeds of four steering engine current positions current_sevo_1, current_sevo_2, current_sevo_3, current_sevo_4 and 4 straight motors to current_wheel_1, current_wheel_2, current_wheel_3 and current_wheel_4, wherein the data are fed back by a chassis; calculating a target_service and a target_Wheel cost model with minimum cost according to a cost calculation formula, and outputting the pose of the rudder and the motor speed;
module M4.1: defining cost values cost_servo and cost_Wheel, wherein cost_servo represents cost values required by steering engine changes, and cost_Wheel represents cost values required by wheel changes;
module M4.2: setting a steering engine angle th_i and a motor speed rpm_i for each steering engine and motor, and obtaining a current steering engine angle th_c and motor speed and rpm_c;
module M4.3: calculating cost values p1_cost and p2_cost for two configurations
p1_cost=fast (th_i-th_c) ×cost_servo+fast (rpm_i-rpm_c) ×cost_write p2_cost=fast ((th_i+180)% 180-th_c) ×cost_servo+fast (-rpm_i-rpm_c) ×cost_write module M4.4: and the corresponding configuration with the smallest cost value is selected from the p1 cost and the p2 cost and is output to the motor control.
5. The four-wheel omni-directional chassis control system of claim 4, wherein in the module M1:
setting chassis parameters includes: straight wheel diameter r, front and rear wheel tread base_x, left and right wheel tread base_y, steering engine rotating speed sero_w.
6. The four-wheel omni-directional chassis control system of claim 4, wherein in the module M3:
module M3.1: calculating the chassis linear velocity v_b:
v_b=sqrt((x^2+y^2))
x is the x-direction linear velocity, y is the y-direction linear velocity;
the module M3.2 calculates the chassis radius of rotation turn_r:
turning_r=v_b/w
w is the angular velocity;
under the command of the speed v, the chassis moves at the running speed with o as a rotation center, turning_r as a rotation radius and v_b as a running speed;
module M3.3: calculating a steering engine position th_i of the inner wheel and an inner wheel rotation radius turn_r_inner:
th_i=atan(y_track/2,turning_r-(x_wheel/2))
turning_r_inner=sqrt((turning_r-x_wheel/2)^2+(y_track/2)^2))
y_track is the left-right track, and x_wheel is the front-rear track;
module M3.4 calculates steering engine position th_o of the outboard wheel and outboard wheel turning radius r_outer:
th_o=atan(y_track/2,turning_r+(x_wheel_/2))
turning_r_outer=sqrt((turning_r+x_wheel/2)^2+(y_track/2)^2))
y_track is left and right wheel track, x_wheel is front and rear wheel track, and turn_r is rotation radius;
module M3.5: calculating an inner wheel straight motor speed rpm_inner and an outer wheel straight motor speed rpm_outer:
rpm_inner=w*turning_r_inner
rpm_outer=w*turning_r_outer
module M3.6: determining medial direction
If v_b is w >0, the inner side is left, and if v_b is w less than or equal to 0, the inner side is right;
if the inner side of the module M3.7 is the left side, the control for issuing the 4 straight motor and the 4 steering wheel is as follows:
left front steering engine: th_i
Left rear steering engine: -th_i
Steering wheel before right: th_o
Steering wheel behind right: -th_o
Left front motor: rpm_inner
Left rear motor: rpm_inner
Right front motor: rpm_outer
Right rear motor: rpm_outer
If the inner side is the right side, the control for issuing the 4 straight motor and the 4 steering wheel is as follows:
left front steering wheel rotation angle: th_o
Left rear steering wheel rotation angle: -th_o
Steering wheel rotation angle before right: th_i
Steering wheel rotation angle behind right: -th_i
Left front motor speed: rpm_outer
Left rear motor speed: rpm_outer
Right front motor speed rpm_inner
Right rear motor speed: rpm_inner.
CN202210460697.5A 2022-04-28 2022-04-28 Four-wheel omni-directional chassis control method and system Active CN114872782B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202210460697.5A CN114872782B (en) 2022-04-28 2022-04-28 Four-wheel omni-directional chassis control method and system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202210460697.5A CN114872782B (en) 2022-04-28 2022-04-28 Four-wheel omni-directional chassis control method and system

Publications (2)

Publication Number Publication Date
CN114872782A CN114872782A (en) 2022-08-09
CN114872782B true CN114872782B (en) 2023-09-01

Family

ID=82671495

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202210460697.5A Active CN114872782B (en) 2022-04-28 2022-04-28 Four-wheel omni-directional chassis control method and system

Country Status (1)

Country Link
CN (1) CN114872782B (en)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116176583B (en) * 2022-12-08 2024-01-16 深圳市先发智能有限公司 Four-wheel chassis control method, device, medium and computer equipment

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008009664A (en) * 2006-06-29 2008-01-17 Nippon Sharyo Seizo Kaisha Ltd Steering control method for four-wheel steering automatic guided vehicle
JP2012255686A (en) * 2011-06-08 2012-12-27 Mitsubishi Electric Corp Vehicular position/attitude measuring apparatus
CN112078659A (en) * 2020-09-28 2020-12-15 中国农业大学 Multi-wheel independent drive double-axle hinged chassis steering control method
CN114194178A (en) * 2021-12-06 2022-03-18 浙江天尚元科技有限公司 Four-wheel steering four-wheel driving intelligent chassis stability control method

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008009664A (en) * 2006-06-29 2008-01-17 Nippon Sharyo Seizo Kaisha Ltd Steering control method for four-wheel steering automatic guided vehicle
JP2012255686A (en) * 2011-06-08 2012-12-27 Mitsubishi Electric Corp Vehicular position/attitude measuring apparatus
CN112078659A (en) * 2020-09-28 2020-12-15 中国农业大学 Multi-wheel independent drive double-axle hinged chassis steering control method
CN114194178A (en) * 2021-12-06 2022-03-18 浙江天尚元科技有限公司 Four-wheel steering four-wheel driving intelligent chassis stability control method

Also Published As

Publication number Publication date
CN114872782A (en) 2022-08-09

Similar Documents

Publication Publication Date Title
CN110979305B (en) Vehicle abnormal lane change control method, device and system
Laugier et al. Sensor-based control architecture for a car-like vehicle
WO2018176593A1 (en) Local obstacle avoidance path planning method for unmanned bicycle
CN110928297A (en) Intelligent bus route planning method based on multi-objective dynamic particle swarm optimization
Chen et al. An autonomous T-intersection driving strategy considering oncoming vehicles based on connected vehicle technology
CN107505941B (en) Centralized-distributed control system of four-wheel independent drive and independent steering electric vehicle
CN112937555A (en) Parallel parking trajectory planning method based on vehicle kinematics model
CN112068574A (en) Control method and system for unmanned vehicle in dynamic complex environment
CN114872782B (en) Four-wheel omni-directional chassis control method and system
CN110096748A (en) A kind of people-the Che based on vehicle kinematics model-road model modelling approach
Yongzhe et al. A practical study of time-elastic-band planning method for driverless vehicle for auto-parking
US20220266903A1 (en) Vehicle control method, vehicle control system, and vehicle
CN110962874B (en) Connector for connecting trailers in mobile robot apparatus and control method thereof
CN111679676A (en) AGV movement track control method
CN111169470B (en) Automatic parking method and device and electronic equipment
CN110362088B (en) Tracking control system and method suitable for unmanned straddle carrier
CN114995465B (en) Multi-unmanned vehicle motion planning method and system considering vehicle motion capability
CN114291117B (en) Four-wheel steering unmanned vehicle track tracking control method
CN115571036A (en) Motion control method for low-speed dispensing robot
Chen et al. Research and application of improved pure pursuit algorithm in low-speed driverless vehicle system
CN115576310A (en) Motion control method and system for double-rudder wheel type autonomous mobile equipment and program product
Wu et al. An improved small-scale connected autonomous vehicle platform
CN101417667A (en) Electric automobile using joystick to operate running direction
US11932308B1 (en) Four wheel steering angle constraints
CN110375751A (en) A kind of automatic Pilot real-time navigation system framework

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