Designing an Arduino-controlled autopiloted sailboat

Jack Edwards, a mechanical engineer and loom builder, recently built a functioning Arduino-based autopilot system for the Wile E. Coyote, his 1983 Robert Perry Nordic 40 sailboat.

According to The Marine Installer Rant, the system successfully piloted Jack’s boat over 400 miles this past summer using both heading and GPS track mode with cross track error correction.

As the HackADay crew notes, the system is built around two Arduino Mega boards (Atmel ATmega1280).

“One is solely for the GPS, and the other controls everything else. Jack’s autopilot has three modes. In the one he calls knob steering, a potentiometer drives the existing hydraulic pump, which he controls with a Polulu Qik serial DC motor controller,” explains HackADay’s Kristina Panos.

“In compass steering mode, a Pololu IMU locks in the heading to steer (HTS). [Meanwhile], GPS mode uses a predetermined waypoint and sets the course to steer (CTS) to the same bearing as the waypoint.”

Jack’s autopilot system also employs cross track error (XTE) correction to calculate a new HTS when necessary.

Interested in learning more? You can check out extensive coverage of the project by The Marine Installer Rant here, HackADay’s write up here, as well as the relevant Fritzing and Arduino files here. Previous stories about marine-based autopilots featured on Atmel’s Bits & Pieces include “This Sailboat Autopilot has Arduino Under the Hood” and “Building a Compass Guided Kayak.”

Leave a Reply

Fill in your details below or click an icon to log in: Logo

You are commenting using your account. Log Out /  Change )

Google photo

You are commenting using your Google account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s