Рубрики
Схемы на Arduino

Как сделать компас с помощью Arduino и Processing IDE

В этом проекте мы рассмотрим как можно сделать этот круто выглядящий компас, используя плату Arduino, магнитометр MEMS и Processing IDE. Визуально компас будет отображать данные на экране вашего компьютера, но если вы хотите изготовить компас в «готовом» виде, то советуем посмотреть этот проект цифрового компаса на основе Arduino и магнитометра HMC5883L.

Все, что нам нужно для этого проекта, — это MEMS магнитометр для измерения магнитного поля Земли, плата Arduino и соединительные провода. В качестве примера мы будем использовать HMC5883L, 3-осевой магнитометр, встроенный в коммутационную плату GY-80, работу с которым мы рассматривали в этой статье про подключение датчиков MEMS к плате Arduino. Но также можно использовать и отдельный модуль магнитометра HMC5883L (купить на AliExpress).

Как работает компас

Часть Ардуино

Сначала нам нужно получить данные от датчика с помощью платы Arduino по протоколу I2C. Затем, используя значения оси X и оси Y датчика, мы рассчитаем курс и отправим его значение в Processing IDE через последовательный порт. Следующий код выполнит эту работу:

Часть Processing IDE

Processing’ представляет собой программное обеспечение с открытым исходным кодом, которое часто используется энтузиастами в графическом дизайне. На нашем сайте мы уже рассматривали достаточно много проектов с использованием Processing IDE, которые можно посмотреть по следующей ссылке, наиболее популярными из них являются:

Также вы можете прочитать отдельное подробное руководство про взаимодействие Arduino и Processing, которое поможет вам лучше понять этот проект цифрового компаса.

В этом проекте нам сначала нужно получить значения заголовков, поступающие из последовательного порта. 

Компас на самом деле представляет собой изображение, точнее, он состоит из нескольких прозрачных изображений, загруженных в Processing IDE. Изображения должны располагаться в рабочей папке эскиза. После определения объектов изображений в разделе draw() с помощью функции image() мы загружаем фоновое изображение (это необязательно, вы можете использовать простой цвет для фона). Затем загружается изображение компаса, которое с помощью функции RotateZ() поворачивается в соответствии со значениями заголовка. Поверх них загружается изображение стрелки компаса.

Вот код Processing IDE:

Также все файлы, необходимые для данного проекта, вы можете скачать по следующей ссылке.

Видео, демонстрирующее работу проекта

2 ответа к “Как сделать компас с помощью Arduino и Processing IDE”

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *