Как подключить flysky fs i6 к ардуино

Как настроить и установить Как настроить FS-iA6B и FS-iA10B в Betaflight

В этой статья я расскажу как настроить и установить FlySky FS-iA6B и FS-iA10B в Betaflight

Установка и настройка FlySky FS-iA6B и FS-iA10B

Betaflight поддерживает PWM-приемники, но я настоятельно рекомендую купить приемник, который работает по протоколу iBUS.
iBUS — это цифровой протокол, такой же как SBUS, но у него меньше задержки и более высокая точность сигнала управления, а также его немного легче установить, за счет минимального количества проводов.

В настоящее время на рынке есть два приемника FlySky, которые поддерживают iBUS:
FS-iA6B и FS-iA10 — этот приемник (ресивер) для полетов на гоночных квадрокоптерах. Они компактные, их легко можно установить в мелкий дрон, у них крепкий корпус, но антенные не съемные.

Отличие FS-iA6B от FS-iA10 лишь в том, что в первом 6 каналов связи, а во втором — 10 каналов. Для гоночного квадрокоптера будет достаточно 6 каналов (4 управление, 1 канал на переключался режимов полета и 1 канал на пищалку для поиска дрона в траве). 10 канальные приемники используют чаще на съемочных самосборных квадрокоптерах, либо, если на гоночный вешают ненужные для гоночного датчики, типа GPS и т.д. и чтобы их включать, нужны дополнительные каналы.

A8B — этот приемник имеет правый форм-фактор, и зато съемная. Эти приемники без корпуса и требуют защиты.

Приемник FS-iA6 и FS-iA10, который поставляется со многими аппаратурами FlySky i6 и i10, в настоящее время не поддерживает iBUS. Это исправят в ближайшем будущем с релизом новой версии Betaflight 3.1. Это потребует сделать небольшую модификацию приемника, но это стоит сэкономленных денег. Приемник подключается к порту UART на полетном контроллере, и кстати, его можно установить в любой UART, так как он не требует последовательности, в отличии от SBUS. Однако, вы не должны подключать ваш приемник IBUS к выходу с надписью «SBUS». В этой статье я буду подключать приемник к порту UART3.

Приемник X6B

FS-iA6B и FS-iA10B имеет два порта iBUS, расположенных на верхних шести контактах приемник. Слот «SENS» предназначен для подключения телеметрии в FS-iA6B и FS-iA6B. Телеметрия iBUS еще не поддерживается в Betaflight, но она есть. Слот «SERVO» — это выход iBUS от приемника, к которому подключается сервопровод, выходящий из полетного контроллера.

Здесь он стоит боком, но можно поставить и нормально, смотря сколько у вас там места есть.

Переплет и настройка переключателей режимов Прежде чем настраивать свое радио, вам нужно привязать к нему приемник FlySky. Для этого вам нужно включить питание вашего квадроцикла с подключенным штекером, вставленным в приемник. Сначала удалите реквизиты и подумайте о том, чтобы использовать устройство дымоудаления, если это первый раз, когда вы включаете квадроцикл.

Связывание FS-iA6B и FS-iA6B с пультом

На приемниках с штыревыми разъемами, имеющими порт «bind», вам нужно будет использовать подключаемый штекер, поставляемый с ресивером, чтобы TX и RX могли разговаривать друг с другом. При вставленном штепсельной вилке приемник загрузится быстро мигающим светом. Это означает, что он находится в режиме привязки. Чтобы связать свой FS-i6 и FS-iA10B с ним, включите TX, удерживая кнопку привязки. Процесс привязки произойдет немедленно, и RX (приемник) будет медленно мигать, показывая, что привязка успешно выполнена. В этот момент вы должны удалить свою привязку.

Подключение приемника

Прежде чем настраивать квадрокоптер, нужно привязать к нему приемник FlySky. Для этого подключите разъем приемника к полетному контроллеру и подключите аккумулятор к дрону. Не забудьте снять пропеллеры перед этими действиями! Если вы правильно подключили приемник к контроллеру, то на нем замигает светодиод. Теперь включите пульт. Пульт начнет пищать, сообщая о том, что сигнала нет, но через пару секунд перестанет, значит он поймал сигнал с приемника.

Также, если вы не знаете, как подключать провода от полетного контроллера к приемнику, посмотрите это видео:

Настройка каналов

Единственная настройка, которую нужно сделать, это привязать переключатели режимов на пульте к каналам 5 и 6. Я рекомендую сделать 1 канал на постановку и снятие с охраны дрона, а второй на переключение режимов полета (стабилизация или акро). Как это сделать, читаем ниже:

  1. Нажмите и удерживайте кнопку «ОК» на пульте.
  2. Выберите «Functions setup» и нажмите ок:
  3. Выбираем «Aux. channels»:
  4. Далее, нужно привязать определенные переключатели к каналам. 5 обычно используется для снятия/постановки с/на охрану дрона (ну или включение пищалки для поиска упавшего дрона, там уже с приходом опыта будете ставить как вам удобно и нужно), а 6 обычно делают для переключения режимов полета.
  5. Чтобы сохранить настройки, нажмите и удерживайте «Cancel».

Настройка iBus в Betaflight

В настройке нет ничего сложного. Для начала, всегда снимайте пропеллеры, зачем подкючаем по USB дрон к компьютеру, запускаем Betaflight и нажимаем Connect.

  1. Переходим во вкладку «Ports», там включаем Serial RX, на том порту (порты слева UART1,2,3), к которому вы подключили. Как это понять? Посмотрите схему вашего полетного контроллера, там все порты будут с подписями.
    Нажимаем Save and Reboot
  2. Переходим во вкладку «Configuration». Выбираем «RX_SERIAL» в блоке «Receiver Mode», а также выбираем «IBUS» в блоке «Serial Receiver Provider».
    Снова нажимаем Save and Reboot.
  3. Далее переходим во вкладку «Receiver». В блоке «Channel map» выбираем «Futaba» или «AETR1234». Это стандартные протоколы и их менять обычно не нужно.
    Жмем Save.
  4. Теперь убедитесь, что все переключатели работают (а также переключатели снятия с охраны и переключатели режимов полета), они должны быть на отметке 1500, кроме газа, газ должен быть на 1000, когда стик находится в нижнем положении. Подробнее, как сделать так, чтобы все значения были на отметке 1500, можете почитать в этой стать: Betaflight configurator, настройка на русском.

Настройка FailSafe

Важная функция — настройка того, что будет делать дрон, если произойдет потеря сигнала с аппаратуры управления.

Посмотрите на значение Receiver, какое там будет значение:

В нижнем положении стика Газ эта цифра не должна быть выше значения 1000. Если оно выше, читайте статью по ссылке выше или уменьшите это число через меню настроек в пульте.

Теперь нам нужно настроить пульт так, чтобы при выключении пульта или потери сигнала, приемник на дроне дал команду контроллеру на снижение оборотов двигателей. Заходим в меню пульта в «End Point», выбираем канал Ch3 и кнопкой ОК увеличиваем значение до 101%:

Нажимаем Cancel и удерживаем для сохранения настроек. Теперь идем в бетафлай и проверяем значение (раздел Receiver). Поднимаем до упора стик газа и опускаем до самого низа. Значение должно быть немного ниже 1000, например 996.

Теперь возвращаемся в меню «System Setup». Выбираем «RX Setup» и потом «Failsafe»:

Выбираем « Channel3″ с помощью кнопок Up и Down сделайте -101% как на картинке выше, нажимаем OK. Снова идем в бетафлай и проверяем, какие у нас там будут цифры. Если значение больше 1000, то в «End Point» увеличиваем значение до 102%.

Далее, в Betaflight Configurator нужно настроить сам режим FailSafe, для этого включаем режим эксперта, эта кнопка находится здесь:

Далее, переходим во вкладку «FailSafe», и в блоке «Valid Pulse Range Settings» ставим значение «996»:

Нажимаем Сохранить и перезагрузить.

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

Вот и все, вы настроили FailSafe. Теперь, при потере связи, дрон будет падать, либо опускаться, а не лететь дальше, пока аккумуляторы не сядут.

Если вы повредили антенны этого приемника и вам нужно их поменять, тогда прочитайте эту статью: Как поменять антенны приемника fs-ia6b и fs-ia10b

Источник

Radio Control – Use the Flysky FS-I6X with Arduino & Build an RC Car

Inexpensive radio controls are an ideal way to add reliable, long-distance remote control capability to your project. Today we’ll see how easy this is to accomplish.

These controllers have a wealth of features and can be used both with or without a microcontroller.

Introduction

Radio Control units, or RC Controllers, have been used by model airplane, helicopter, rover and boating enthusiasts for years. Indeed, many of these hobbies would not exist if it were not for the availability of inexpensive yet reliable radio control devices.

But these controllers are not limited to hobby vehicle control. They are equally suitable for use in controlling any electronic project that requires a full-featured wireless remote control.

Today, I’ll show you how to take a very common and inexpensive RC Controller and use it for a variety of purposes, both with and without a microcontroller. But before we get started, it would be a good idea to learn a little about RC Controllers and the terminology that is associated with them.

Radio Control Basics

Radio controllers typically consist of both a transmitter and receiver, and they generally operate on a radio frequency that does not require licensing for low-power transmitters. This frequency can vary depending on which country they are certified for use in .

Older transmitter/receiver combinations used frequencies in the MHz band, such as the 72MHz band for model aircraft and the 75MHz band for surface vehicles. Each of these frequency bands was divided into individual channels, and you needed to find an unused one to operate your aircraft or vehicle.

Nowadays, it is more common to use “spread-spectrum” radios in the 2.4GHz band. The use of spread-spectrum technology eliminates the need to select a channel.

Channels

Not to be confused with the individual RF frequency channels used in older devices, in this context “channels” refers to control channels. Each of these channels is tied to two things:

  • A switch, joystick, potentiometer, or display on the RC Controller.
  • An output or input on the receiver.

So a “6-channel” remote will have six corresponding outputs or inputs on the receiver, each one mapped to an element on the controller.

TX Modes

You’ll see this term used when describing an RC transmitter. The term “mode” generally applies to using the transmitter with an airplane, and it refers to how the transmitter is configured to control the airplane, i.e. which sticks operate which controls on the plane.

A standard transmitter has two sticks, each capable of both horizontal and vertical movement. Each stick, therefore, has two channels, one for horizontal movements and another for vertical ones.

There are four TX modes in total:

  • Mode 1 – Left stick operates elevator & rudder, right stick operates throttle & ailerons.
  • Mode 2 – Left stick operates throttle & rudder, right stick operates elevator & ailerons.
  • Mode 3 – Left stick operates elevator & ailerons, right stick operates throttle & rudder.
  • Mode 4 – Left stick operates throttle & ailerons, right stick operates elevator & rudder.

The most common configuration is Mode 2, and most new transmitters are configured this way.

Most transmitters have the facility to change modes. This is usually a pretty involved process that requires you to disassemble the transmitter and move the stick controls.

For our purposes, using the transmitter to control our projects, the mode is usually irrelevant.

Receivers

Of course, the other end of this remote control system is the receiver.

In most cases, the receiver is made by the same company that manufactured the transmitter, and it is often included with the transmitter. You can usually buy additional receivers, so you can use the same transmitter with a number of different projects.

In order for the receiver and transmitter to interact with one another, you’ll need to “bind” them. This is usually a pretty simple procedure, I’ll show you in a bit how to do it with the transmitter-receiver combination that I have. When you purchase a new transmitter with a receiver, they are usually bound to one another already.

Physically, the receiver is a small, lightweight box that has one or two wire antenna leads. The outputs are generally 3-pin connectors, which can be used directly with servo motors or electronic speed controls (ESC’s).

Many receivers also have additional outputs for a unique type of serial bus. Some receivers also have input connections, so you can monitor various aspects of your remote controlled vehicle.

RX Protocols

Once again, we have a term that can be used for two different aspects of the radio control system. While a “protocol” can refer to the method used to exchange data between the transmitter and receiver, in this context it refers to the ports on the receiver..

The most common protocol used on the receiver side is PWM (Pulse Width Modulation), and this is used almost universally to control servo motors and ESC’s.

Many receivers also have a serial interface, this allows the connection of several devices without a lot of cabling. The protocol used on this port varies between manufacturers.

Here is a partial list of the protocols used in some popular receivers:

  • PWM (universal)
  • PPM or CPPM (universal)
  • SBUS (Futaba, Frsky)
  • IBUS (Flysky)
  • XBUS (JR)
  • MSP (Multiwii)
  • CRSF (TBS Crossfire)
  • SPEKTRUM1024 (Spektrum DSM2)
  • SPEKTRUM2048 (Spektrum DSMX)
  • FPort (Frsky)
  • SPI_RX (universal)

The above list came from information on Oscar Liang’s excellent website , one of the best resources on the internet for radio control information.

Flysky FS-I6X

The transmitter/receiver I selected for my experiments is the popular Flysky FS-I6X. This is a 6-channel device that can be converted into a 10-channel unit with a firmware update.

This unit operates on the 2.4GHz band and permits bidirectional communication between transmitter and receiver. It uses “multi-channel hopping” to switch between 16 available channels between 2.408 and 2.475GHz.

It also supports the Flysky implementation of iBUS for both sending and receiving multi-channel data.

Receiver

The receiver included with the Flysky FS-I6X is a 6-channel unit, the FS-IA6B.

This device has two small wire antennas, seven 3-pin connectors for input/output devices, plus two additional 3-pin connectors used for the iBUS transmit and receive connections.

One of the seven 3-pin connectors on the side of the unit is used for both the power input and for binding the receiver to the transmitter. In normal operation, you apply 4-8 volts to the VCC and GND pins on this connector. When binding the receiver, you need to short the “signal” pin to ground.

Flysky provides a jumper that can be used to accomplish this.

Using an RC Controller on its own

By themselves, a receiver and transmitter pair is all you need to control a number of basic devices, such as servo motors and ESC’s.

If you’re using the Flysky FS-I6X, you will need to be sure that you power up the receiver AFTER the transmitter, this is true for many other RC Controllers as well. You’ll also need to have all the switches in the up position and the throttle control (left stick) down all the way. Both of these requirements are safety precautions to avoid an uncontrolled vehicle or one that starts with the motors running.

By default, the outputs of the transmitter are set as follows:

  • Channel 1 – Right Stick, Left/Right
  • Channel 2 – Right Stick, Up/Down
  • Channel 3 – Left Stick, Up/Down
  • Channel 4 – Left Stick, Left/Right
  • Channel 5 – Control VRA
  • Channel 6 – Control VRB

So, by connecting devices to these receiver channel outputs, you may control them with their associated control on the transmitter.

Give it a try. Hook it up as follows. You can use servo motors, continuous servo motors or ESC’s.

Now try moving the sticks and the two potentiometers to see how they can control each device.

If all you need for your project is a few servo motors, you might be able to get away without even using a microcontroller. However, by adding a microcontroller like an Arduino to the project you’ll be able to greatly expand upon the capabilities of your system

Using an RC Controller with a Microcontroller

While you can use just about any microcontroller with the remote receiver you do need to keep in mind that the outputs are at a 5-volt logic level, so if you use a microcontroller whose inputs are not 5-volt tolerant you’ll need to add in a level-converter.

Although adding a level-converter is pretty simple, I decided to just use older Arduino AVR boards, which use 5-volt logic.

I’ll show you two ways of using the receiver with a microcontroller:

  • Using the PWM outputs as microcontroller inputs.
  • Using the Flysky iBus output.

Before we get started, however, you’ll need to make a slight configuration change to your controller. Well technically you don’t need to make any changes, this “suggested” change will let you demonstrate the use of both the controls and switches on the Flysky controller.

Mapping a Switch to an Output

We have already looked at the default setup of the Flysky remote controller, all six channels are mapped to either a potentiometer or one aspect of a joystick. They all, therefore, give out a variable reading that is proportional to the position of the control.

But there are also four switches on the controller that, by default, are not mapped to any channel. So in order to use one of the switches, we will need to remove the mapping to one of the variable controls and then map that channel to one of the switches.

In my case, I decided to map switch SWA (the leftmost switch) to controller channel 6, which is normally used for the right potentiometer.

Here is how I did that with the Flysky FS-I6X:

  • Power on the transmitter, be sure to have all the controls in their default positions.
  • Hold the OK key down for a few seconds until you display a Menu
  • Use the Up and Down keys to select “Functions Setup”, the mode represented by a wrench.
  • Select Functions Setup using the OK key
  • Use the Up and Down controls to highlight Aux Channels
  • Select Aux Channels with the OK key.
  • You will be able to remap channels 5 and 6. Use the controls to select a channel, then cycle through the options for the controls you can attach to that channel.
  • When you find one you want, just leave it. Then hold the Cancel key down for a few seconds and release it. You will exit the channels page and be back in the Functions menu.
  • Choose Aux Channels again, just to be sure your setting was saved.

Use this technique to map channel 6 to switch SWA.

Using PWM Outputs – Arduino Uno

One way to work with the Flysky receiver is to read each individual channel output from the “servo” connector.

Remember, our controller outputs PWM, which by its own nature communicates by manipulating the width of a pulse. We can use a microcontroller, like an Arduino, to measure the pulse width and interpret that data.

It’s actually pretty easy to do.

Arduino Uno Hookup

We will need an Arduino Uno, or pretty well any 5-volt Arduino, for our experiment.

The hookup is pretty straightforward, the six outputs from the Flysky receiver are connected to six inputs on the Arduino.

We also connect the 5-volt output from the Arduino to the receiver’s VCC to power it. And, of course, we connect a Ground as well.

PWM Output Sketch

The sketch is actually pretty simple, thanks to a couple of functions I found on GitHub . This code, written by Ricardo Paiva, simplifies getting data from the RC channels.

All we are going to do in the sketch is read the values from each of the channels and print them on the Serial Monitor.

Источник

Adblock
detector