Apollo 10.0
自动驾驶开放平台
apollo::control::DemoControlTask类 参考

DemoControlTask: Set the acceleration to 2 when the vehicle acceleration is less than 3. 更多...

#include <demo_control_task.h>

类 apollo::control::DemoControlTask 继承关系图:
apollo::control::DemoControlTask 的协作图:

Public 成员函数

 DemoControlTask ()
 constructor
 
virtual ~DemoControlTask ()
 destructor
 
common::Status Init (std::shared_ptr< DependencyInjector > injector) override
 initialize DemoControlTask
 
common::Status ComputeControlCommand (const localization::LocalizationEstimate *localization, const canbus::Chassis *chassis, const planning::ADCTrajectory *trajectory, control::ControlCommand *cmd) override
 compute brake / throttle values based on current vehicle status and target trajectory
 
void Stop () override
 stop DemoControlTask
 
common::Status Reset () override
 reset demo control task
 
std::string Name () const override
 DemoControlTask name
 
- Public 成员函数 继承自 apollo::control::ControlTask
 ControlTask ()=default
 constructor
 
virtual ~ControlTask ()=default
 destructor
 

Protected 属性

std::shared_ptr< DependencyInjectorinjector_
 

额外继承的成员函数

- Protected 成员函数 继承自 apollo::control::ControlTask
template<typename T >
bool LoadConfig (T *config)
 
bool LoadCalibrationTable (calibration_table *calibration_table_conf)
 

详细描述

DemoControlTask: Set the acceleration to 2 when the vehicle acceleration is less than 3.

在文件 demo_control_task.h47 行定义.

构造及析构函数说明

◆ DemoControlTask()

apollo::control::DemoControlTask::DemoControlTask ( )

constructor

在文件 demo_control_task.cc31 行定义.

31 : name_("demo control task") {
32 AINFO << "Using " << name_;
33}
#define AINFO
Definition log.h:42

◆ ~DemoControlTask()

apollo::control::DemoControlTask::~DemoControlTask ( )
virtual

destructor

在文件 demo_control_task.cc35 行定义.

35{}

成员函数说明

◆ ComputeControlCommand()

Status apollo::control::DemoControlTask::ComputeControlCommand ( const localization::LocalizationEstimate localization,
const canbus::Chassis chassis,
const planning::ADCTrajectory trajectory,
control::ControlCommand cmd 
)
overridevirtual

compute brake / throttle values based on current vehicle status and target trajectory

参数
localizationvehicle location
chassisvehicle status e.g., speed, acceleration
trajectorytrajectory generated by planning
cmdcontrol command
返回
Status computation status

实现了 apollo::control::ControlTask.

在文件 demo_control_task.cc55 行定义.

59 {
60 auto debug = cmd->mutable_debug()->mutable_simple_lon_debug();
61
62 double controller_calculate_acceleration = cmd->acceleration();
63 double command_acceleration =
64 abs(controller_calculate_acceleration) < low_bound_acceleration_
65 ? controller_calculate_acceleration /
66 abs(controller_calculate_acceleration) * low_bound_acceleration_
67 : controller_calculate_acceleration;
68
69 cmd->set_acceleration(command_acceleration);
70 debug->set_acceleration_cmd(command_acceleration);
71
72 return Status::OK();
73}
static Status OK()
generate a success status.
Definition status.h:60

◆ Init()

Status apollo::control::DemoControlTask::Init ( std::shared_ptr< DependencyInjector injector)
overridevirtual

initialize DemoControlTask

返回
Status initialization status

实现了 apollo::control::ControlTask.

在文件 demo_control_task.cc37 行定义.

37 {
38 if (!ControlTask::LoadConfig<DemoControlTaskConf>(&demo_control_task_conf_)) {
39 AERROR << "failed to load control conf";
40 return Status(ErrorCode::CONTROL_INIT_ERROR,
41 "failed to load lat control_conf");
42 }
43
44 injector_ = injector;
45 low_bound_acceleration_ = demo_control_task_conf_.bound_acc();
46 return Status::OK();
47}
std::shared_ptr< DependencyInjector > injector_
#define AERROR
Definition log.h:44

◆ Name()

std::string apollo::control::DemoControlTask::Name ( ) const
overridevirtual

DemoControlTask name

返回
string controller name in string

实现了 apollo::control::ControlTask.

在文件 demo_control_task.cc53 行定义.

53{ return name_; }

◆ Reset()

Status apollo::control::DemoControlTask::Reset ( )
overridevirtual

reset demo control task

返回
Status reset status

实现了 apollo::control::ControlTask.

在文件 demo_control_task.cc51 行定义.

51{ return Status::OK(); }

◆ Stop()

void apollo::control::DemoControlTask::Stop ( )
overridevirtual

stop DemoControlTask

实现了 apollo::control::ControlTask.

在文件 demo_control_task.cc49 行定义.

49{}

类成员变量说明

◆ injector_

std::shared_ptr<DependencyInjector> apollo::control::DemoControlTask::injector_
protected

在文件 demo_control_task.h97 行定义.


该类的文档由以下文件生成: