Closed srmainwaring closed 5 months ago
Looks great. My issue is that it needs a high end PC to work with the waves. That is a pity because you will lose a lot of potential users, who after getting through the installation hurdles, will then find that it locks up their PC. Maybe add another "world" where there are no waves? ( I will try to do that but will take a while!) Also wonder about chopping wind vane ( and its spar) from the rig and attaching to the front of the pod, which may be a more normal ardupilot config. Currently anyway it doesnt seem to function. I do prefer a wind vane ( and perhaps a cup anemometer) to the ultrasonic one because the visual is dynamic.
Did you increase the rig size or is that just the view. Bigger rig will of course pitchpole more easily. We could just make the hulls closer together to get it flying a hull, then less likely to pitchpole. Ideally width between hulls would be adjustable as well. Anyway it looks fantastic in the gazebo sim
Other thing I was wondering about was making a simpler version of the hulls (and everything else) with less mesh points. Could use 1/2 the number of hull stations maybe and just simple flat plate foils, and remove complexity from the rig. Could also just use a normal mast rather than the z bend one. Not sure if that would help to speed up the sim on slow pc?
m
not mm
../meshes
subfolder you'll see separate STL files for the collisions. The vertex count for each is:
Sailing Catamaran designed by Andy Little (@kwikius)
Usage
Gazebo and the plugins should be installed as per the ArduPilot Gazebo Plugin instructions.
Update the
GZ_SIM_RESOURCE_PATH
to include these models:Waves model
The model is configured to work with the hydrodynamics plugin from the wave sim package. Follow the package instructions to set up the marine simulation.
Sail, foil, wind sensor and wind plugins
A number of additional plugins are required to support sailing vessels. These can be found at asv_sim. Installation instructions are in the repository README.
Run Gazebo
Run ArduPilot SITL
Wave and wind settings
To run the simulation in calm seas modify the wave settings in
asv_wave_sim/gz-waves-models/world_models/waves/model.sdf
. There are two occurrences of the parameter block:Update both blocks when making changes (one is for the physics, one for the visuals).
<wind_speed>
to 0 for calm seas.<cell_count>
to 4 to reduce the compute load if waves are not required.The
catamaran_waves.sdf
world file is configured to load a wind plugin that responds to service requests to set the wind. For ease of gyro and accelerometer calibration the wind is initially set to zero. Once the vehicle is initialised and armed the wind can be set using:where
{wind_vel_x}
and{wind_vel_y}
should be replaced by the desired components of the wind velocity inm/s
. A good choice is"x:0, y:5, z:0"
to get the boat moving, then once out of irons switch to"x:5.5, y:5.5, z:0"
The sail module in MAVProxy is useful for determining the current true and apparent wind direction.