Ardupilot Research and Design - Dylan Haley Entry #3

Our USV requires autonomous driving capabilities so myself and Nikolas have been tasked with researching into Ardupilot as a possible option for this. Ardupilot is an open source autopilot system which supports multiple vehicle types. After my initial research Ardupilot seemed like a likely possibility for our project. 

Ardupilot on Raspberry Pi

Initially we wanted to see if it would work if we ran Ardupilots software in the loop (SIL) application on a raspberry pi to simulate the environment in order to test the path planning capabilities. After attempting to install and setup the application on my raspberry pi I came across the following issues:

  • The documentation provided was confusing at times.
  • The installation process was long.
  • The Ardupilot mission planner software works natively on windows a lot easier.
  • My Ardupilot SIL application crashed whenever I tried to start it.
Luckily Nikolas was able to get Ardupilot SIL working on his laptop using Ubuntu. He was able to demonstrate the path planner capabilities however there were still errors. 


Ardupilot on Windows

After a meeting with Jason we have decided to put a pin in using Ardupilot on a raspberry pi or any linux machine. This led me to investigate how to install and setup Ardupilot on a windows machine. I only looked into setting up Ardupilot on windows briefly but it does seem easier than on Linux. More research needs to be put into this if we are planning on using windows to run our Ardupilot.


Ardupilot Hardware and Structure

After looking into the structure of Ardupilot it became obvious a piece of hardware was necessary and we will have to purchase a Pixhawk or similar equivalent in order to control our USV with Ardupilot. Below is an image of the structure of Ardupilot:

 


Based on the above image we can see how everything communicates with each other and in what order they communicate. This gives us a good basis to plan our structure and make decisions and what hardware and software to use. 


My Design Proposal 

Based on my research I have come up with a design which I believe to be the best solution to our USV autopilot requirement. 

Software

I believe Ardupilot is out best option of software to use as it provides the functionality needed to guide our drone in a simple way. It is also compatible with box Linux and windows which gives us some flexibility when choosing what hardware to use. Ardupilot is reliable and has plenty of support pages and even projects similar to ours which can help us get the most benefit out of it.  


Hardware

A piece of hardware is needed to connect the motors and sensors of our drone to device running Ardupilot. After some research the most common one used in practice is the Pixhawk. As the Pixhawk is relatively cheap I would choose this hardware over others due to its popularity as there appears to be more support for it online. It also has all the features we need to include our autopilot option into our project. 

Finally a device running Ardupilot is needed such as a windows or Linux device. There are many options to choose from but ideally we would have the most efficient and compact device as well as easiest to setup for simplicity. Due to the troubles I had with the Raspberry Pi I would refrain from using this as Ardupilot runs better on windows. One option we could use is called The Cube. The Cube is specifically designed to run Ardupilot and connects to the Pixhawk. It is compact and offers plug and play connectivity for an autopilot system. There are different types of cubes offering different features, the cube orange is the standard set and would be able to do everything we need for our project. However The Cube does come in at a price of around €300. After some more research on using a windows device such as the one we have in the lab I found a lot of people having issues connected there Pixhawk to a windows device due to a driver issue. However the issues I found can be solved but it may add extra unnecessary work to the project. If this driver issue isn't a problem though we could use the windows device we have to connect to the Pixhawk as a cheaper alternative to the Cube.   

 

Comments

Popular posts from this blog

How to: Tello drone to micro bit - Victor Alikberov, Blog#1

Colour Tracking With OpenCV - Jack Pender, Blog #4

Tello and OpenCV - Jack Pender, Blog #3