RapyutaSimulationPlugins
|
Base Robot ROS controller class. Other robot controller class should inherit from this class. More...
#include <RRAIRobotROSController.h>
Public Member Functions | |
virtual bool | SetSpeed (const float InSpeed) |
Set Speed to UFloatingPawnMovement or UCharacterMovementComponent. More... | |
virtual bool | SetRotationRate (const float InRotationRate) |
Set RotationRate toUCharacterMovementComponent. More... | |
virtual bool | SetAcceleration (const float InAcceleration) |
Set Acceleration to UFloatingPawnMovement. More... | |
virtual FTransform | GetOrigin () |
Return origin transform from OriginActor or Origin. More... | |
bool | InitPropertiesFromJSON () |
Init propertiese from JSON which is used when pawn is spawned from ROS2 spawn entity service. More... | |
Public Attributes | |
bool | bDebug = false |
debug flat More... | |
float | OrientationTolerance = 5.f |
[degree] tolerance for orientation control More... | |
float | LinearMotionTolerance = 10.f |
FRotator | OrientationTarget = FRotator::ZeroRotator |
Orientation target in ERRAIRobotMode::ROTATING. More... | |
FVector | LinearMotionTarget = FVector::ZeroVector |
Linear motion target in ERRAIRobotMode::LINEAR_MOVING. More... | |
bool | bTeleportOnFail = true |
Teleport to target pose if robot can't reach target pose. More... | |
TObjectPtr< UROS2Publisher > | NavStatusPublisher = nullptr |
Publisher of ERRAIRobotNavStatus. More... | |
float | NavStatusPublicationFrequencyHz = 1 |
FString | SetSpeedTopicName = TEXT("set_speed") |
FString | SetAngularVelTopicName = TEXT("set_angular_vel") |
FString | SetModeTopicName = TEXT("set_mode") |
FString | NavStatusTopicName = TEXT("nav_status") |
FString | PoseGoalTopicName = TEXT("pose_goal") |
FString | ActorGoalTopicName = TEXT("actor_goal") |
ERRAIRobotMode | Mode = ERRAIRobotMode::MANUAL |
FVector | RandomMoveBoundingBox = FVector::OneVector |
Bounding box for random move. This is used when Mode is ERRAIRobotMode::RANDOM_AREA. More... | |
TArray< FTransform > | GoalSequence |
Goal sequence. This is used when Mode is ERRAIRobotMode::SEQUENCE and ERRAIRobotMode::RANDOM_SEQUENCE. More... | |
AActor * | OriginActor = nullptr |
Origin actor for move. This is used when Mode is ERRAIRobotMode::RANDOM_AREA, ERRAIRobotMode::SEQUENCE and ERRAIRobotMode::RANDOM_SEQUENCE. More... | |
FTransform | Origin = FTransform::Identity |
Origin transform for move. This is used when Mode is ERRAIRobotMode::RANDOM_AREA, ERRAIRobotMode::SEQUENCE and ERRAIRobotMode::RANDOM_SEQUENCE. More... | |
Protected Member Functions | |
virtual void | OnPossess (APawn *InPawn) override |
Initialize robot pawn by calling ARRBaseRobot::InitROS2Interface. More... | |
virtual void | OnUnPossess () override |
Deinitialize robot pawn by calling ARRBaseRobot::DeInitROS2Interface. More... | |
virtual void | OnMoveCompleted (FAIRequestID RequestID, const FPathFollowingResult &Result) override |
virtual void | SetDelegates (const FMoveCompleteCallback &InOnSuccess, const FMoveCompleteCallback &InOnFail, const float InLinearMotionToleranc=-1.0, const float InOrientationTolerance=-1.0, const float InTimeOut=-1.0f, const bool Verbose=false) |
Set Delegates for move to target. More... | |
virtual EPathFollowingRequestResult::Type | MoveToActorWithDelegates (AActor *Goal, const FMoveCompleteCallback &InOnSuccess, const FMoveCompleteCallback &InOnFail, float AcceptanceRadius=-1, bool bStopOnOverlap=true, bool bUsePathfinding=true, bool bCanStrafe=true, TSubclassOf< UNavigationQueryFilter > FilterClass=NULL, bool bAllowPartialPath=true, const float InOrientationTolerance=-1.0, const float InTimeOut=-1.0) |
Rotate after AAIController::MoveToActor is completed and call InOnSuccess or InOnFail. More... | |
virtual EPathFollowingRequestResult::Type | MoveToLocationWithDelegates (const FVector &Dest, const FRotator &DestRotator, const FMoveCompleteCallback &InOnSuccess, const FMoveCompleteCallback &InOnFail, float AcceptanceRadius=-1, bool bStopOnOverlap=true, bool bUsePathfinding=true, bool bProjectDestinationToNavigation=false, bool bCanStrafe=true, TSubclassOf< UNavigationQueryFilter > FilterClass=NULL, bool bAllowPartialPath=true, const float InOrientationTolerance=-1.0, const float InTimeOut=-1.0, const FVector &InOriginPosition=FVector::ZeroVector, const FRotator &InOriginRotator=FRotator::ZeroRotator) |
Rotate after AAIController::MoveToLocation is completed and call InOnSuccess or InOnFail. More... | |
virtual bool | LinearMoveToLocationWithDelegates (const FVector &Dest, const FRotator &DestRotator, const FMoveCompleteCallback &InOnSuccess, const FMoveCompleteCallback &InOnFail, float AcceptanceRadius=-1, const float InOrientationTolerance=-1.0, const float InTimeOut=-1.0, const FVector &InOriginPosition=FVector::ZeroVector, const FRotator &InOriginRotator=FRotator::ZeroRotator) |
1)Rotate, 2) Move forward to Dest, 3) Rotate to DestRotator and call InOnSuccess or InOnFail. This does not use AIMove in UE but just rotate and linear movement. More... | |
virtual bool | HasReachedOrientationTarget (const float InOrientationTolerance=-1.0) |
Check orientation reach the target orientation and call InOnSuccess or InOnFail if it reach target. More... | |
virtual bool | HasReachedOrientationTarget (const FRotator InOrientationTarget, const float InOrientationTolerance=-1.0) |
Check orientation reach the target orientation. More... | |
virtual bool | OrientationEquals (const FRotator InOrientationTarget1, const FRotator InOrientationTarget2, const float InOrientationTolerance=-1.0) |
Check InOrientationTarget1 and InOrientationTarget2 are equal. More... | |
virtual bool | HasReachedLinearMotionTarget (const float InLinearMotionTolerance=-1.0) |
Check location reach the target location and call InOnSuccess or InOnFail if it reach target. More... | |
virtual bool | HasReachedLinearMotionTarget (const FVector InLinearMotionTarget, const float InLinearMotionTolerance=-1.0) |
Check location reach the target location. More... | |
virtual bool | PositionEquals (const FVector InLinearMotionTarget1, const FVector InLinearMotionTarget2, const float InLinearMotionTolerance=-1.0) |
Check InLinearMotionTarget1 and InLinearMotionTarget2 are equal. More... | |
virtual bool | SetOrientationTarget (const FRotator &InOrientation, const bool InReset=true, const FRotator &InOriginRotator=FRotator::ZeroRotator) |
Set the Orientation Target and start rotating. More... | |
virtual bool | AddLocalOrientationOffset (const FRotator &InOrientation, const bool InReset=true) |
Set the relative Orientation Target from current location and start rotating. More... | |
virtual bool | SetOrientationTargetWthDelegates (const FRotator &InOrientation, const FMoveCompleteCallback &InOnSuccess, const FMoveCompleteCallback &InOnFail, const float InOrientationTolerance=-1.0, const float InTimeOut=-1.0, const FRotator &InOriginRotator=FRotator::ZeroRotator) |
Set the Orientation Target and start rotating. InOnSuccess or InOnFail is called when it completed. More... | |
virtual bool | AddLocalOrientationOffsetWthDelegates (const FRotator &InOrientation, const FMoveCompleteCallback &InOnSuccess, const FMoveCompleteCallback &InOnFail, const float InOrientationTolerance=-1.0, const float InTimeOut=-1.0) |
Set the relative Orientation Target from current location and start rotating. InOnSuccess or InOnFail is called when it completed. More... | |
virtual bool | SetLinearMotionTarget (const FVector &InPosition, const bool InReset=true, const FVector &InOriginPosition=FVector::ZeroVector, const FRotator &InOriginRotator=FRotator::ZeroRotator) |
Set the Linear Motion Target and start moving. More... | |
virtual bool | AddLocalLinearMotionOffset (const FVector &InPosition, const bool InReset=true) |
Set the relative Linear Motion Target from current location and start moving. More... | |
virtual bool | SetLinearMotionTargetWthDelegates (const FVector &InPosition, const FMoveCompleteCallback &InOnSuccess, const FMoveCompleteCallback &InOnFail, const float InLinearMotionTolerancee=-1.0, const float InTimeOut=-1.0, const FVector &InOriginPosition=FVector::ZeroVector, const FRotator &InOriginRotator=FRotator::ZeroRotator) |
Set the Linear Motion Target and start moving. InOnSuccess or InOnFail is called when it completed. More... | |
virtual bool | AddLocalLinearMotionOffsetWthDelegates (const FVector &InPosition, const FMoveCompleteCallback &InOnSuccess, const FMoveCompleteCallback &InOnFail, const float InLinearMotionTolerancee=-1.0, const float InTimeOut=-1.0) |
Set the relative Linear Motion Target from current location and start moving. InOnSuccess or InOnFail is called when it completed. More... | |
virtual void | Tick (float DeltaSeconds) override |
virtual void | UpdateControl (float DeltaSeconds) |
UpdateRotation and UpdateLinearMotion More... | |
virtual void | UpdateRotation (float DeltaSeconds) |
Update oorientation motion when NavStatus is ERRAIRobotNavStatus::ROTATING. More... | |
virtual void | UpdateLinearMotion (float DeltaSeconds) |
Update linear motion when NavStatus is ERRAIRobotNavStatus::LINEAR_MOVING. More... | |
virtual void | ResetControl () |
Unbind delegates and reset status. More... | |
virtual bool | InProgress () |
is NavStatus IDLE or not More... | |
void | InitROS2Interface () |
Initialize Parameter and start timer to call InitROS2InterfaceImpl. More... | |
bool | InitROS2InterfaceImpl () |
Create publishers and subscribers. More... | |
void | UpdateNavStatus (UROS2GenericMsg *InMessage) |
Update NavStatus msg before publishing. More... | |
void | PoseGoalCallback (const UROS2GenericMsg *Msg) |
Call MoveToLocationWithDelegates with given msg. More... | |
void | ActorGoalCallback (const UROS2GenericMsg *Msg) |
Call MoveToActorWithDelegates with given msg. More... | |
void | SetSpeedCallback (const UROS2GenericMsg *Msg) |
Call SetSpeed with given msg. More... | |
void | SetAngularVelCallback (const UROS2GenericMsg *Msg) |
Call SetRotationRate with given msg. More... | |
void | SetModeCallback (const UROS2GenericMsg *Msg) |
Call SetMode with given msg. More... | |
bool | UpdateGoalSequenceIndex (FTransform &OutGoal) |
Increment GoalIndex. More... | |
bool | RandomUpdateGoalSequenceIndex (FTransform &OutGoal) |
Update GoalIndex randomly. More... | |
virtual void | ModeUpdate () |
Mode transition function. This is called in Tick. More... | |
Static Protected Member Functions | |
static ARRAIRobotROSController * | CheckController (APawn *TargetPawn) |
Check controller is child class of ARRAIRobotROSController or not. More... | |
Protected Attributes | |
FVector | AIMovePositionTarget |
Target position for AI movement. More... | |
float | RotationRate = 90.f |
float | LinearSpeed = 100.f |
FVector | AngularVelocity = FVector::ZeroVector |
ERRAIRobotNavStatus | NavStatus = ERRAIRobotNavStatus::IDLE |
FMoveCompleteCallback | OnSuccess |
Delegate which is called when joint reach target vel/pose. More... | |
FMoveCompleteCallbackStatic | OnSuccessInternal |
Delegate which is called on action completed internally. More... | |
FMoveCompleteCallback | OnFail |
Delegate which is called whenjoint failed to reach target vel/pose. More... | |
Category = "AI|Navigation" | |
Rotate after AAIController::MoveToActor is completed and call InOnSuccess or InOnFail. More... | |
meta | |
1)Rotate, 2) Move forward to Dest, 3) Rotate to DestRotator and call InOnSuccess or InOnFail. This does not use AIMove in UE but just rotate and linear movement. More... | |
float | MoveStartTime = 0.f |
time when target pose/vel are set. More... | |
float | MoveTimeout = -1.0f |
timeout. If Pawn can't reach target in this duration, OnFail should be called. More... | |
FTimerHandle | ROS2InitTimer |
Timer to call InitROS2Interface. More... | |
int | GoalIndex = 0 |
Current goal index in GoalSequence used in ERRAIRobotMode::SEQUENCE and ERRAIRobotMode::RANDOM_SEQUENCE. More... | |
bool | bModeUpdate = true |
Mode transition in Tick. More... | |
Protected Attributes inherited from ARRBaseRobotROSController | |
URRBaseROS2Interface * | ROS2Interface = nullptr |
Base Robot ROS controller class. Other robot controller class should inherit from this class.
This class has authority to start ROS 2 Component in pausses robot.
UCLASS(ClassGroup = (Custom), meta = (BlueprintSpawnableComponent))
Base class for ROS controllers of ARR robots.
This class provides common functionality and properties for controlling ARR robots using ROS.
It inherits from ARRBaseRobotROSController and adds additional properties and functions specific to ROS control.
|
protected |
|
protectedvirtual |
Set the relative Linear Motion Target from current location and start moving.
InPosition | |
InReset |
|
protectedvirtual |
Set the relative Linear Motion Target from current location and start moving. InOnSuccess or InOnFail is called when it completed.
InPosition | |
InOnSuccess | |
InOnFail | |
InLinearMotionTolerancee | |
InTimeOut |
|
protectedvirtual |
Set the relative Orientation Target from current location and start rotating.
InOrientation | |
InReset |
|
protectedvirtual |
Set the relative Orientation Target from current location and start rotating. InOnSuccess or InOnFail is called when it completed.
InOrientation | |
InOnSuccess | |
InOnFail | |
InOrientationTolerance | |
InTimeOut |
|
staticprotected |
Check controller is child class of ARRAIRobotROSController or not.
TargetPawn |
|
virtual |
Return origin transform from OriginActor or Origin.
|
protectedvirtual |
Check location reach the target location and call InOnSuccess or InOnFail if it reach target.
InLinearMotionTolerance | If minus values are given, LinearMotionTolerance will be used. |
|
protectedvirtual |
Check location reach the target location.
InLinearMotionTarget | |
InLinearMotionTolerance | If minus values are given, LinearMotionTolerance will be used. |
|
protectedvirtual |
Check orientation reach the target orientation and call InOnSuccess or InOnFail if it reach target.
InOrientationTolerance | If minus values are given, OrientationTolerance will be used. |
|
protectedvirtual |
Check orientation reach the target orientation.
InOrientationTarget | |
InOrientationTolerance | If minus values are given, OrientationTolerance will be used. |
bool ARRAIRobotROSController::InitPropertiesFromJSON | ( | ) |
Init propertiese from JSON which is used when pawn is spawned from ROS2 spawn entity service.
|
protected |
Initialize Parameter and start timer to call InitROS2InterfaceImpl.
|
protected |
Create publishers and subscribers.
|
protectedvirtual |
|
protectedvirtual |
1)Rotate, 2) Move forward to Dest, 3) Rotate to DestRotator and call InOnSuccess or InOnFail. This does not use AIMove in UE but just rotate and linear movement.
Dest | |
DestRotator | |
InOnSuccess | |
InOnFail | |
AcceptanceRadius | |
InOrientationTolerance | |
InTimeOut | |
InOriginPosition | |
InOriginRotator |
|
protectedvirtual |
Mode transition function. This is called in Tick.
|
protectedvirtual |
Rotate after AAIController::MoveToActor is completed and call InOnSuccess or InOnFail.
Goal | |
InOnSuccess | |
InOnFail | |
AcceptanceRadius | |
bStopOnOverlap | |
bUsePathfinding | |
bCanStrafe | |
FilterClass | |
bAllowPartialPath | |
InOrientationTolerance | |
InTimeOut |
|
protectedvirtual |
Rotate after AAIController::MoveToLocation is completed and call InOnSuccess or InOnFail.
Dest | |
DestRotator | |
InOnSuccess | |
InOnFail | |
AcceptanceRadius | |
bStopOnOverlap | |
bUsePathfinding | |
bProjectDestinationToNavigation | |
bCanStrafe | |
FilterClass | |
bAllowPartialPath | |
InOrientationTolerance | |
InTimeOut | |
InOriginPosition | |
InOriginRotator |
|
overrideprotectedvirtual |
|
overrideprotectedvirtual |
Initialize robot pawn by calling ARRBaseRobot::InitROS2Interface.
InPawn |
Reimplemented from ARRBaseRobotROSController.
|
overrideprotectedvirtual |
Deinitialize robot pawn by calling ARRBaseRobot::DeInitROS2Interface.
Reimplemented from ARRBaseRobotROSController.
|
protectedvirtual |
Check InOrientationTarget1 and InOrientationTarget2 are equal.
InOrientationTarget1 | |
InOrientationTarget2 | |
InOrientationTolerance | If minus values are given, OrientationTolerance will be used. |
|
protected |
|
protectedvirtual |
Check InLinearMotionTarget1 and InLinearMotionTarget2 are equal.
InLinearMotionTarget1 | |
InLinearMotionTarget2 | |
InLinearMotionTolerance | If minus values are given, LinearMotionTolerance will be used. |
|
protected |
Update GoalIndex randomly.
|
protectedvirtual |
Unbind delegates and reset status.
|
virtual |
Set Acceleration to UFloatingPawnMovement.
|
protected |
|
protectedvirtual |
Set Delegates for move to target.
InOnControlSuccessDelegate | called when move to target success |
InOnControlFailDelegate | called when move to target fail |
InPositionTolerance | update #PositionTolerance if this is set >= 0. |
InOrientationTolerance | update OrientationTolerance if this is set >= 0. |
InTimeOut | if this is set less than 0, timeout won't happen. |
|
protectedvirtual |
Set the Linear Motion Target and start moving.
InPosition | |
InReset | |
InOriginPosition | |
InOriginRotator |
|
protectedvirtual |
Set the Linear Motion Target and start moving. InOnSuccess or InOnFail is called when it completed.
InPosition | |
InOnSuccess | |
InOnFail | |
InLinearMotionTolerancee | |
InTimeOut | |
InOriginPosition | |
InOriginRotator |
|
protected |
Call SetMode with given msg.
Msg |
|
protectedvirtual |
Set the Orientation Target and start rotating.
InOrientation | |
InReset | |
InOriginRotator |
|
protectedvirtual |
Set the Orientation Target and start rotating. InOnSuccess or InOnFail is called when it completed.
InOrientation | |
InOnSuccess | |
InOnFail | |
InOrientationTolerance | |
InTimeOut | |
InOriginRotator |
|
virtual |
Set RotationRate toUCharacterMovementComponent.
|
virtual |
Set Speed to UFloatingPawnMovement or UCharacterMovementComponent.
|
protected |
|
overrideprotectedvirtual |
|
protectedvirtual |
UpdateRotation and UpdateLinearMotion
DeltaSeconds |
|
protected |
|
protectedvirtual |
Update linear motion when NavStatus is ERRAIRobotNavStatus::LINEAR_MOVING.
DeltaSeconds |
|
protected |
|
protectedvirtual |
Update oorientation motion when NavStatus is ERRAIRobotNavStatus::ROTATING.
DeltaSeconds |
FString ARRAIRobotROSController::ActorGoalTopicName = TEXT("actor_goal") |
|
protected |
Target position for AI movement.
|
protected |
bool ARRAIRobotROSController::bDebug = false |
debug flat
|
protected |
Mode transition in Tick.
bool ARRAIRobotROSController::bTeleportOnFail = true |
Teleport to target pose if robot can't reach target pose.
|
protected |
Rotate after AAIController::MoveToActor is completed and call InOnSuccess or InOnFail.
TargetPawn | |
Goal | |
InOnSuccess | |
InOnFail | |
AcceptanceRadius | |
bStopOnOverlap | |
bUsePathfinding | |
bCanStrafe | |
FilterClass | |
bAllowPartialPath | |
InOrientationTolerance | |
InTimeOut |
|
protected |
Current goal index in GoalSequence used in ERRAIRobotMode::SEQUENCE and ERRAIRobotMode::RANDOM_SEQUENCE.
TArray<FTransform> ARRAIRobotROSController::GoalSequence |
Goal sequence. This is used when Mode is ERRAIRobotMode::SEQUENCE and ERRAIRobotMode::RANDOM_SEQUENCE.
FVector ARRAIRobotROSController::LinearMotionTarget = FVector::ZeroVector |
Linear motion target in ERRAIRobotMode::LINEAR_MOVING.
float ARRAIRobotROSController::LinearMotionTolerance = 10.f |
|
protected |
|
protected |
1)Rotate, 2) Move forward to Dest, 3) Rotate to DestRotator and call InOnSuccess or InOnFail. This does not use AIMove in UE but just rotate and linear movement.
Set the relative Linear Motion Target from current location and start moving. InOnSuccess or InOnFail is called when it completed.
Set the Linear Motion Target and start moving. InOnSuccess or InOnFail is called when it completed.
Set the relative Linear Motion Target from current location and start moving.
Set the Linear Motion Target and start moving.
Set the relative Orientation Target from current location and start rotating. InOnSuccess or InOnFail is called when it completed.
Set the Orientation Target and start rotating. InOnSuccess or InOnFail is called when it completed.
Set the relative Orientation Target from current location and start rotating.
Set the Orientation Target and start rotating.
TargetPawn | |
Dest | |
DestRotator | |
InOnSuccess | |
InOnFail | |
AcceptanceRadius | |
InOrientationTolerance | |
InTimeOut | |
InOriginPosition | |
InOriginRotator |
TargetPawn | |
InOrientation | |
InReset | |
InOriginRotator |
TargetPawn | |
InOrientation | |
InReset |
TargetPawn | |
InOrientation | |
InOnSuccess | |
InOnFail | |
InOrientationTolerance | |
InTimeOut | |
InOriginRotator |
TargetPawn | |
InOrientation | |
InOnSuccess | |
InOnFail | |
InOrientationTolerance | |
InTimeOut |
TargetPawn | |
InPosition | |
InReset | |
InOriginPosition | |
InOriginRotator |
TargetPawn | |
InPosition | |
InReset |
TargetPawn | |
InPosition | |
InOnSuccess | |
InOnFail | |
InLinearMotionTolerancee | |
InTimeOut | |
InOriginPosition | |
InOriginRotator |
TargetPawn | |
InPosition | |
InOnSuccess | |
InOnFail | |
InLinearMotionTolerancee | |
InTimeOut |
ERRAIRobotMode ARRAIRobotROSController::Mode = ERRAIRobotMode::MANUAL |
|
protected |
time when target pose/vel are set.
|
protected |
timeout. If Pawn can't reach target in this duration, OnFail should be called.
used only with #SetPoseTargetWithDelegate if this is set less than 0, timeout won't happen.
|
protected |
float ARRAIRobotROSController::NavStatusPublicationFrequencyHz = 1 |
TObjectPtr<UROS2Publisher> ARRAIRobotROSController::NavStatusPublisher = nullptr |
Publisher of ERRAIRobotNavStatus.
FString ARRAIRobotROSController::NavStatusTopicName = TEXT("nav_status") |
|
protected |
Delegate which is called whenjoint failed to reach target vel/pose.
|
protected |
Delegate which is called when joint reach target vel/pose.
|
protected |
Delegate which is called on action completed internally.
FRotator ARRAIRobotROSController::OrientationTarget = FRotator::ZeroRotator |
Orientation target in ERRAIRobotMode::ROTATING.
float ARRAIRobotROSController::OrientationTolerance = 5.f |
[degree] tolerance for orientation control
FTransform ARRAIRobotROSController::Origin = FTransform::Identity |
Origin transform for move. This is used when Mode is ERRAIRobotMode::RANDOM_AREA, ERRAIRobotMode::SEQUENCE and ERRAIRobotMode::RANDOM_SEQUENCE.
AActor* ARRAIRobotROSController::OriginActor = nullptr |
Origin actor for move. This is used when Mode is ERRAIRobotMode::RANDOM_AREA, ERRAIRobotMode::SEQUENCE and ERRAIRobotMode::RANDOM_SEQUENCE.
FString ARRAIRobotROSController::PoseGoalTopicName = TEXT("pose_goal") |
FVector ARRAIRobotROSController::RandomMoveBoundingBox = FVector::OneVector |
Bounding box for random move. This is used when Mode is ERRAIRobotMode::RANDOM_AREA.
|
protected |
Timer to call InitROS2Interface.
|
protected |
FString ARRAIRobotROSController::SetAngularVelTopicName = TEXT("set_angular_vel") |
FString ARRAIRobotROSController::SetModeTopicName = TEXT("set_mode") |
FString ARRAIRobotROSController::SetSpeedTopicName = TEXT("set_speed") |