RapyutaSimulationPlugins
TurtlebotBurgerBase.h
Go to the documentation of this file.
1 
13 #pragma once
14 
15 
16 
17 // UE
18 
19 #include "CoreMinimal.h"
20 
21 #include "PhysicsEngine/PhysicsConstraintComponent.h"
22 
23 
24 
25 // RapyutaSimulationPlugins
26 
27 #include "Robots/RRBaseRobot.h"
28 
30 
32 
33 
34 
35 #include "TurtlebotBurgerBase.generated.h"
36 
37 
38 
39 DECLARE_LOG_CATEGORY_EXTERN(LogTurtlebotBurger, Log, All);
40 
41 
42 
54 class RAPYUTASIMULATIONPLUGINS_API ATurtlebotBurgerBase : public ARRBaseRobot
55 
56 {
57 
58 
59 
60 public:
61 
72  ATurtlebotBurgerBase(const FObjectInitializer& ObjectInitializer);
73 
74 
75 
76 protected:
77 
86  virtual void PostInitializeComponents() override;
87 
88 
89 
103  virtual bool SetupBody();
104 
105 
106 
107 
112  UStaticMeshComponent* Base = nullptr;
113 
114 
115 
116 
121  UStaticMeshComponent* LidarSensor = nullptr;
122 
123 
124 
125 
130  URR2DLidarComponent* LidarComponent = nullptr;
131 
132 
133 
134 
139  UStaticMeshComponent* WheelLeft = nullptr;
140 
141 
142 
143 
148  UStaticMeshComponent* WheelRight = nullptr;
149 
150 
151 
152 
157  UStaticMeshComponent* CasterBack = nullptr;
158 
159 
160 
161 
166  UPhysicsConstraintComponent* Base_LidarSensor = nullptr;
167 
168 
169 
170 
175  UPhysicsConstraintComponent* Base_CasterBack = nullptr;
176 
177 
178 
179 
184  float MaxForce = 1000.f;
185 
186 
187 
188 
193  UMaterial* VehicleMaterial = nullptr;
194 
195 
196 
197 
202  UMaterial* BallMaterial = nullptr;
203 
204 
205 
206 
212 
213 
214 
228  virtual bool SetupConstraintsAndPhysics();
229 
230 
231 
245  virtual void SetupWheelDrives();
246 
247 
248 
250 
252 
253 
258  float WheelRadius = 3.3f;
259 
260 
261 
263 
265 
266 
271  float WheelSeparationHalf = 7.9f;
272 
273 };
274 
URR2DLidarComponent
ROS 2 2D lidar components.
Definition: RR2DLidarComponent.h:74
DECLARE_LOG_CATEGORY_EXTERN
DECLARE_LOG_CATEGORY_EXTERN(LogTurtlebotBurger, Log, All)
ATurtlebotBurgerBase
Example of child class of ARRBaseRobot and base class for TurtlebotBurger.
Definition: TurtlebotBurgerBase.h:54
RRBaseRobot.h
Base Robot class. Other robot class can inherit from this class.
ARRBaseRobot::PostInitializeComponents
virtual void PostInitializeComponents() override
Post Initialization process of actor. Initialize RobotVehicleMoveComponent by calling InitMoveCompone...
RRTurtlebotROS2Interface.h
Example of URRRobotROS2Interface's child class.
RR2DLidarComponent.h
ROS 2 2D lidar components.
ATurtlebotBurgerBase::bBodyComponentsCreated
uint8 bBodyComponentsCreated
Definition: TurtlebotBurgerBase.h:211
ARRBaseRobot
Base Robot class. Other robot class should inherit from this class.
Definition: RRBaseRobot.h:161