Ardupilot Ship

0 views
Skip to first unread message

Azucena Jewels

unread,
Aug 3, 2024, 4:32:20 PM8/3/24
to unenniukac

the beacon can be offset from the actual landing location. The beacon should be placed for optimal radio performance, then the instructions below can be used to setup the actual landing location relative to the beacon.

Note that you will need to refresh parameters and reboot for these to all take effect. The SHIP_ENABLE, SHIP_LAND_ANGLE and SHIP_AUTO_OFS_n parameters will appear when the script is running correctly.

You can choose the approach angle of the aircraft to the ship. The default is SHIP_LAND_ANGLE = 0 which means land from behind the ship. A value of 90 will mean that the aircraft approaches the ship from the left-hand side. A value of -90 means it approaches from the right-hand side. A value of 180 means the aircraft will approach the landing from the front of the ship.

You should choose a SHIP_LAND_ANGLE value to avoid obstructions on the ship, for example masts. The angle should also be chosen such that if you need to abort the landing, flying straight ahead will leave plenty of clearance to obstacles.

It is important to set the correct values for FOLL_OFS_X, FOLL_OFS_Y and FOLL_OFS_Z on the aircraft for the landing point relative to the beacon. These values are in meters, in front-right-down format.The easiest way to set these is to place the aircraft in the correct landing location with the beacon working and then set the parameter SHIP_AUTO_OFS to 1. When this parameter is set to 1 then the ship landing lua script will calculate the right offset values and set them in the FOLL_OFS_X, FOLL_OFS_Y and FOLL_OFS_Z values.

When the beacon is active you should see the HOME icon on the GCS move to match the landing position. The HOME position is continuously updated while you are flying which gives you a good way to ensure that the beacon is working properly before you land.

It is recommended that the method of setting SHIP_AUTO_OFS = 1 is used to get the location before each flight. Look carefully at the message it gives when this parameter is set(use the Messages tab in MissionPlanner):

That message confirms that the X, Y and Z offset has calculated. Check that they are reasonable, paying close attention to the Z offset. If you get a bad Z offset (ie. a long way off from the actual height difference between the beacon and the aircraft) then you may need to reboot the beacon and/or aircraft to cope with GPS altitude drift.

When SHIP_ENABLE = 1 and the beacon is visible to the aircraft then an AUTO VTOL takeoff will use velocity matching, so the aircraft will hold its velocity relative to the beacon while ascending. This velocity matching is only done for VTOL takeoff as a mission item in AUTO mode.

SHIP_LAND_ANGLE parameter, which controls the angle that the aircraft will approach the ship for landing. A value of zero means to approach from behind the ship. The hold-off loiter position will be setup so that the tangent of the circle intercepts the beacon landing point.

When you are ready to land you can switch the vehicle to RTL mode. When in RTL mode the aircraft will fly towards the landing location (you can see this location before you land from the HOME icon on the GCS, which moves with the beacon).

The description below will assume that SHIP_LAND_ANGLE = 0 which means landing happens from behind the beacon. The approach and landing is rotated by the value of this parameter in degrees.With SHIP_LAND_ANGLE = 0, the hold-off position will be behind and above the beacon. The distance depends on the beacon speed, wind speed and the Q_TRANS_DECEL parameter (which controls the deceleration of the aircraft).

Once the aircraft arrives at the hold-off position it will circle until the throttle stick is lowered below 40%. The throttle stick on the transmitter is used to control the landing sequence and also to abort the landing.

Throttle below 40% and above 10% means to descend while loitering to the approach altitude. The approach altitude is giving by Q_RTL_ALT in meters above the beacon. A good value for testing may be 40 meters.

Once the landing descent has started can still abort the landing. To do this, the Q_OPTIONS bit 15 must be set to enable ThrLandControl. When that option is set you can raise the throttle momentarily above 70% to enable throttle control for climb and descent rate. You can use this to slow the descent or climb back up. If you climb up past the Q_RTL_ALT approach altitude then the aircraft will go back to loitering at the hold-off location at Q_RTL_ALT.

You may also want to enable horizontal repositioning with the Q_OPTIONS bit 17(EnableLandResponsition). If that is enabled then you can manually reposition the aircraft horizontally while landing to account for any GPS position errors.

The simplest mission would be a single VTOL_TAKEOFF waypoint. Once the takeoff is complete the aircraft will immediately switch to RTL mode and go to the hold-off location. You should have the throttle stick above 40% to keep the aircraft circling at the hold-off location. This very simple mission is good for ship operations as it does not have specific latitude/longitude, so will work wherever the ship is.

The ArduPilot worked very well and the speed, size and the operation range were satisfying. But the propulsion nozzle turned out to be very sensitive to sea plants. And in windy conditions with waves and in curves, it was rolling quite a lot. I measured a big lake with it as you can see in the Google Earth picture on the bottom of this page, but I decided to build a more stable boat.

The new boat should be able to carry more batteries, be more stable in the water, be faster and not be too much bigger. So I decided to build a small trimaran. I started to plan it with DELFTship which is for free and easy to use.

Before letting the boat into the lakes I wanted to be able to find it after its work under any circumstance so I included an XBee 900 pro for a GPS-data link. Also I wanted to be able to manipulate the track of the boat by a joystick with the XBee, so I printed a case for a small remote control to include the XBee, a thumbstick, a small Arduino and other switches.

After improving the ArduPilot parameters the trimaran performed very well. I could switch the boat on, put it into the water and have breakfast at home, before picking it up after several hours and it was always there. If the wind had blown it away, I could track it via the XBee and with the Earth Bridge, I could watch its position live on Google Earth.

How did you get the model from delftship into reality? So you had a delftship model and inserted section plans. Then you printed these section plans. My first question is: How did add the section plans into your model with delftship? Would it be possible to get the files? How did you get this section plans from the screen into reality, you used a laser to cut it, right? Is it possible to cut these manually? How would one proceed if there is no fancy laser cutter availalbe? Print it on paper or just draw specific measured dots on the wood and cut it then manually?

Hi BurkHard,

I found Pyhum a couple of months ago, but I forgot about this post. I haven't done any programming in python, but I wondering if you have checked it out. Just curious if you've heard about this.

-usgs/PyHum

I'm looking to start a similar project, but with the specific purpose of doing smaller areas with photo realistic sonar by implementing side imaging. Have done any research on using a side scanning type of sonar, and if so could you direct me or provide me with any basic research and suggestions? Thank you very much for any help you could provide.

Awesome project! Where did you find the specification on the intelliducer? I am looking for at similar sonar unit for seafloor mapping around wrecks, but a resolution of 1m below 10m in simply not sufficient. Does the unit output digits below 10m?

You know what's cool? Unmanned self-driving vehicles. They are so cool in fact that we (my uni colleagues and me) started to build one ourselves back in 2018. That is also why I set out this year to finally finish it in my free time.

In this Instructable I want to share this project with you and get you into building your own self-driving vehicle. I also made a little YouTube Video that scratches the surface of the project and gives you a quick rundown of all the mishaps along the way. This Instructable is the correlating guide that explains how this thing actually works.

This Instructable actually has two purposes. First and foremost, I want to share what I have built and learned and get you guys interested in building self driving vehicles. The secondary purpose is to document the project and most of it's details so the next student group at my old university, that picks up the project knows whats up.

If you are just here for fun, you can ignore details like parameter lists and precise wiring diagrams. I'll try to keep the steps very generic in the beginning, so they can be applied to any ArduPilot RC boat and put the details at the end.

The project was finished in two parts and the Instructable follows the same structure. I'm going to refer to the first part as the "muscles" as it includes all of the power electronics and the boats hull. Then I'm going to go over the "Brain" which is a little box on top of the boat, that contains the main controller and all of the receiver transmitter stuff.

Allright, here ist the backstory to this project, if you haven't heard it in the video already. This project started in 2018 when I was still in university. We were at the end of the 4th semester going towards the 5th. At our university you get to do a team project for about 6 months. You can either choose from a list of prepared projects (good chance of a good grade) or start your own project (no one ever did this before to my knowledge). You also get 12 Credit points for this project, which makes it worth as much as the bachelors thesis. This way failing can really make a difference in your overall grade.

When we thought of an idea for the project, we thought about doing something drone related because drones are just the coolest thing ever. However normal flying drones are already a thing and we wanted to build something more novel. So we decided to build a drone boat. We got this idea because of a nearby lake.

c80f0f1006
Reply all
Reply to author
Forward
0 new messages