Yes, pretty much. For each vehicle subsystem, the “template” (that is 
parameterized model) is implemented in a class named Ch[SubsysName].  A 
concrete subsystem (that is an instantiation of that subsystem for a specific 
vehicle, obtained by giving actual numbers to the various subsystem parameters) 
will be in a class named [VehicleName]_[SubsysName].  Alternatively, there will 
be a class named simply [SubsystemName] which can read in a JSON file to 
instantiate the same subsystem for the same vehicle (in this case, the actual 
numbers are read from that JSON file).


  *   For a double wishbone suspension, the template is implemented in 
ChDoubleWishbone.h<https://github.com/projectchrono/chrono/blob/main/src/chrono_vehicle/wheeled_vehicle/suspension/ChDoubleWishbone.h>.
  *   The class implemented in 
DoubleWishbone.h<https://github.com/projectchrono/chrono/blob/main/src/chrono_vehicle/wheeled_vehicle/suspension/DoubleWishbone.h>
 will concretize a double wishbone suspension subsystem for a particular 
vehicle by reading a vehicle-specific JSON file. So, if you use this with the 
JSON file 
HMMWV_DoubleWishbone.json<https://github.com/projectchrono/chrono/blob/main/data/vehicle/hmmwv/suspension/HMMWV_DoubleWishboneFront.json>,
 you will get a model of the front suspension on a HMMWV vehicle.
  *   The exact same front HMMWV double wishbone subsystem can be implemented 
directly in a concrete class: 
HMMWV_DoubleWishboneFront<class%20CH_MODELS_API%20HMMWV_DoubleWishboneFront%20:%20public%20ChDoubleWishbone%20%7b>.

--Radu

From: '马浩楠' via ProjectChrono <[email protected]>
Sent: Monday, August 14, 2023 8:18 AM
To: ProjectChrono <[email protected]>
Subject: Re: [chrono] Re: Questions about the usage of the vehicle library


Thank you for your response. I understand your point now. For instance, if I 
want to find JSON definitions related to DoubleWishbone, I can locate them in 
DoubleWishbone.h, and the corresponding getter functions are the ones related 
to the definitions? If that's the case, then I believe my question has been 
resolved.
在2023年8月14日星期一 UTC+8 14:13:30<Radu Serban> 写道:
The *definitions* of those parameters are in the header files.
Actual values are specified in one of two places (there are two ways of 
specifying a concrete Chrono::Vehicle subsystem – see the papers, 
documentation, and demos):

  1.  in the implementation file for a concrete tire (for example, 
HMMWV_RigidTire.cpp)
All concrete tire models for a HMMWV are in: 
https://github.com/projectchrono/chrono/tree/main/src/chrono_models/vehicle/hmmwv/tire
  2.  in a JSON specification file (for example, HMMWV_RigidTire.json)
All concrete tire models for a HMMWV are in: 
https://github.com/projectchrono/chrono/tree/main/data/vehicle/hmmwv/tire

To begin with, consult the Chrono::Vehicle reference document 
(https://api.projectchrono.org/manual_vehicle.html). That will give you an idea 
of the architecture and design of this module. Then look over the relevant 
demos to understand how to use Chrono in general and Chrono::Vehicle in 
particular.

--Radu


From: '马浩楠' via ProjectChrono <[email protected]>
Sent: Monday, August 14, 2023 3:33 AM
To: ProjectChrono <[email protected]>
Subject: Re: [chrono] Re: Questions about the usage of the vehicle library

Thank you for your response. My current task involves simulating a tire. I want 
to define the specific parameters of this tire myself. For example, the demo 
provided by your Chrono library features a rigid tire with a radius of 0.5, but 
for my simulation, I would like a rigid tire with a radius of 0.5 and a weight 
of 10 kg. I couldn't find any definition related to weight in the rigid tire 
settings. Could you please inform me where I can find parameter definitions for 
tires (or other components) such as mass, radius, friction coefficient, etc.? 
Is it in the mentioned "chxxxxtire.h" header file?
在2023年8月11日星期五 UTC+8 20:03:05<Radu Serban> 写道:
There are several types of tire models implemented in Chrono::Vehicle:

  *   Rigid tire (simplest possible model) is based solely on rigid body 
contact. This “tire” model is defined by its geometry and contact material 
properties.
  *   FEA tires (arguably the most complex) are defined by their geometry (FEA 
mesh), elastic material properties, and contact material properties.
  *   Handling tires (also called “force element” tires in Chrono) depend on a 
large number of parameters, specific to the particular model implemented 
(Pacejka, Fiala, TMeasy, TMsimple).  Parameters for these models must be 
consistent and are typically obtained as a complete set for a particular tire. 
TMeasy provides some utility functions to estimate the model parameters based 
on a standard tire specification and tire type (passenger car or truck).  Best 
way to understand what parameters mean for these tire models is to look up the 
respective formulas online or in publications. Chrono::Vehicle uses variable 
names close to what you’ll find there.

In general, you can find out about the meaning and purpose of various model 
parameters (whether for tires or other Chrono::Vehicle subsystems) by looking 
at the comments in the implementation header files (for tires, these will be 
files with names Ch***Tire.h) or else looking at the JSON key names in the 
associated JSON specification files for a concrete subsystem (you will find 
examples of such JSON files in the Chrono data directory, under data/vehicle/)

--Radu



From: '马浩楠' via ProjectChrono <[email protected]>
Sent: Friday, August 11, 2023 10:49 AM
To: ProjectChrono <[email protected]>
Subject: [chrono] Re: Questions about the usage of the vehicle library

Thank you for your response.
I want to define this tire more specifically, not limited to just its radius 
and width. For example, attributes like the tire's mass should also be 
included. How extensive can this customization be?
在2023年8月11日星期五 UTC+8 15:07:16<[email protected]> 写道:
you can refer to demo_VEH_WheeledJSON.cpp, this is an example of how to use 
templated vehicle dynamics
在2023年8月11日星期五 UTC+8 14:47:36<[email protected]> 写道:
Hello, I'm a beginner and I've been using the vehicle library for about two 
days. I want to modify the JSON data for certain vehicles in the vehicle 
library, such as "Maximum Torque". However, I'm not familiar with cars and I 
don't know which JSON nodes correspond to specific value ranges. Is there any 
related development documentation available?
--
You received this message because you are subscribed to the Google Groups 
"ProjectChrono" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
To view this discussion on the web visit 
https://groups.google.com/d/msgid/projectchrono/669534d0-7ee3-4945-a5cb-60c60b7f0b88n%40googlegroups.com<https://groups.google.com/d/msgid/projectchrono/669534d0-7ee3-4945-a5cb-60c60b7f0b88n%40googlegroups.com?utm_medium=email&utm_source=footer>.
--
You received this message because you are subscribed to the Google Groups 
"ProjectChrono" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
To view this discussion on the web visit 
https://groups.google.com/d/msgid/projectchrono/e6760774-fc80-4a89-98f5-bee149116113n%40googlegroups.com<https://groups.google.com/d/msgid/projectchrono/e6760774-fc80-4a89-98f5-bee149116113n%40googlegroups.com?utm_medium=email&utm_source=footer>.
--
You received this message because you are subscribed to the Google Groups 
"ProjectChrono" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to 
[email protected]<mailto:[email protected]>.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/projectchrono/b51d94a4-6c85-4435-befe-13c2768d8202n%40googlegroups.com<https://groups.google.com/d/msgid/projectchrono/b51d94a4-6c85-4435-befe-13c2768d8202n%40googlegroups.com?utm_medium=email&utm_source=footer>.

-- 
You received this message because you are subscribed to the Google Groups 
"ProjectChrono" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
To view this discussion on the web visit 
https://groups.google.com/d/msgid/projectchrono/PH0PR06MB8237748462E96CEEBB71C42CA717A%40PH0PR06MB8237.namprd06.prod.outlook.com.

Reply via email to