Найти в Дзене
KulibinLab

Подключение Arduino к приемнику FrSky X8R

Оглавление

Всем доброго времени суток!

Задача — подключение #Arduino к приемнику #FrSky X8R. Подключим используя протокол SBUS. По аналогии с автомобильной шиной CAN, S.Bus позволяет избавиться от прокладки большого количества проводов: от приемника к каждому сервоприводу. Под эту технологию выпущены специальные приемники, приводы, гироскопы и прочее оборудование. Это не что иное как протокол передачи команд сервоприводам по цифровому последовательному порту. В случае использования с микроконтроллерами S.Bus позволяет полностью избавиться от работы с ШИМ (PWM и PPM сигналы), переложив это на аппаратную часть. Как следствие – упрощение кода, уменьшение загрузки микроконтроллера и увеличение быстродействия.

Проблемы. Протокол SBUS — это инвертированный сигнал, который использует UART для последовательной передачи данных. Для подключения Arduino нужен внешний инвертор, либо не инвертированный сигнал.

Решение задачи

Выбрал сложный путь, без внешнего инвертора, т.е. возьмем не инвертированный сигнал из недр приемника X8R.

  1. Разбираем приемник.
Разобранный FrSky X8R
Разобранный FrSky X8R

2. Аккуратно выпаиваем верхнюю плату передатчика. Плата на тонком текстолите, тут нельзя ее перегреть. Добраться надо до инвертора, он как раз под верхней платой выделен красным. Красной точкой помечен вывод инвертора куда надо подпаять провод. Этот будет сигнал SBUS не инвертированный, который поймет Arduino.

Разобранный FrSky X8R с отпаянной платой передатчика
Разобранный FrSky X8R с отпаянной платой передатчика

3. Обрезать дорожки вокруг вывода SBUS. Если не хотите портить, выводите на внешний разъем.

Обрезанные дорожки вокруг вывода
Обрезанные дорожки вокруг вывода

5.Паяем провод как на фото ниже.

-4

6. Можно запаивать верхнюю плату на место.

7. Собираем корпус.

Прошивка Arduino

На тестах использую Arduino Nano (она используется в контроллере Горыныча).

Схема подключения

Схема подключения
Схема подключения

Тестовый скетч

Библиотека

Скачать ее можно тут.
Во время прошивки необходимо отключить SBUS от Arduino Nano в противном случает не будет прошиваться.  Прошили подключаем обратно провод SBUS и наслаждаемся.

Мной опробована работа также на Arduino Mega 2560, на ней лучше играться чем на Nano. У МЕГИ не один UART и поэтому можно выводить данные в порт. С Nano так не получится с данной библиотекой, т.к. UART занят шиной SBUS.

Видео процесса тестирования

Если понравилась статья ставь палец вверх и подписывайся на мой канал KulibinLab