Подписываемся на VK

Ежедневные новости, видео и приколы...

YouTube канал

Подбор моторов

TOP статьи

Вход




RC Магазины





Для удобства пользования форумом и поиска информации прошу придерживаться правила: 1 тема = 1 вопрос.

К примеру, если обсуждается настройка передатчика, а у вас вопрос про подключение такого же передатчика к симулятору или вопрос про другую модель передатчика - создавайте новую тему. Если вы новичок в авиамоделизме, рекомендуется прочитать статью Новичку и ссылки с нее.

Исключение только в разделе Вопросы и обсуждения по статьям

Как выложить фото, Как опубликовать видео

С уважением,

Константин.

Машинка + аппа HK-T6A

Машинка + аппа HK-T6A

Есть аппа HK-T6A и робот на гусеницах, решил соединить их вместе получив из автономного робота игрушку на РУ.
Робот управлялся с помощью МК Arduino mini (+5V)
Питание на приемник берем с ардуинки, а все каналы, с приемника RC, подключаем к аналоговым входам. Я использовал 2 канала (первый и второй), но можно задействовать все 6.
Ну в принципе и все, залил скетч и она поехала. Только мой скетч для гусениц, так что подправляйте под себя.

Изменено: fortekom
26-05-2017 17:55:44
fortekom
Владимир (СПБ)
Пилот
ranks
useravatar
Offline
621 Сообщений
Мужчина  Дата рождения 
Администратор отключил публичную отправку сообщений

Re: Машинка + аппа HK-T6A

Скетч :
/*
Пульт HobbyKing HK-T6A V2
*/
// Моторы подключаются к клеммам M1+,M1-,M2+,M2- 
// Motor shield использует четыре контакта 6,5,7,4 для управления моторами
#define SPEED_LEFT       6
#define SPEED_RIGHT      5
#define DIR_LEFT         7
#define DIR_RIGHT        4
// Скорость, с которой мы движемся вперёд (0-255)
#define SPEED            25

const int CH1 = A1; // вперед назад
const int CH2 = A2; // вправо влево

void setup()
{
        pinMode(4, OUTPUT);
        pinMode(5, OUTPUT);
        pinMode(6, OUTPUT);
        pinMode(7, OUTPUT);

  pinMode(CH1, INPUT);
  pinMode(CH2, INPUT);
}

void loop()
{
  int chVal1 = 0;
  int chVal2 = 0;
  int ch1 = 0;
  int ch2 = 0;

  chVal1 = pulseIn(CH2, true, 25000);
  chVal2 = pulseIn(CH1, true, 25000);
  chVal1 = chVal1 / 10; // Округляем
  chVal2 = chVal2 / 10; // Округляем

  if (chVal1 != 0 || chVal2 != 0)
  {
    if (chVal1 > 152)
    {
      ch1=(chVal1-150)*15;
      analogWrite(SPEED_LEFT, ch1);
      analogWrite(SPEED_RIGHT, ch1);
      digitalWrite(DIR_LEFT, LOW);
      digitalWrite(DIR_RIGHT, LOW);
    }
    if (chVal2 > 152)
    {
      ch2=(chVal2-150)*15;
      if (ch2>254) ch2 = 250;
      analogWrite(SPEED_LEFT, (255-ch2));
      analogWrite(SPEED_RIGHT, ch2);
      digitalWrite(DIR_LEFT, HIGH);
      digitalWrite(DIR_RIGHT, LOW);
    }
    if (chVal2 < 149)
    {
      ch2=(chVal2-133)*15;
      analogWrite(SPEED_LEFT, (255-ch2));
      analogWrite(SPEED_RIGHT, ch2);
      digitalWrite(DIR_LEFT, LOW);
      digitalWrite(DIR_RIGHT, HIGH);
    }
    if (chVal1 < 149)
    {
      ch1=(chVal1-133)*15;
      analogWrite(SPEED_LEFT, ch1);
      analogWrite(SPEED_RIGHT, ch1);
      digitalWrite(DIR_LEFT, HIGH);
      digitalWrite(DIR_RIGHT, HIGH);
    }
    if ((chVal1 > 149 && chVal1 < 152)&& (chVal2 > 149 && chVal2 < 152))
    {
      analogWrite(SPEED_LEFT, 0);
      analogWrite(SPEED_RIGHT, 0);
      digitalWrite(DIR_LEFT, 0);
      digitalWrite(DIR_RIGHT, 0);
    }

  }
 
}

fortekom
Владимир (СПБ)
Пилот
ranks
useravatar
Offline
621 Сообщений
Мужчина  Дата рождения 
Администратор отключил публичную отправку сообщений

Re: Машинка + аппа HK-T6A

Использовался МК ардуино мини и драйвер на 2А
Ну и фото :
http://fortekom.users.photofile.ru/photo/fortekom/200965411/219316017.jpg

fortekom
Владимир (СПБ)
Пилот
ranks
useravatar
Offline
621 Сообщений
Мужчина  Дата рождения 
Администратор отключил публичную отправку сообщений

Re: Машинка + аппа HK-T6A

P.S. К МК можно подключить любую аппу

fortekom
Владимир (СПБ)
Пилот
ranks
useravatar
Offline
621 Сообщений
Мужчина  Дата рождения 
Администратор отключил публичную отправку сообщений

Re: Машинка + аппа HK-T6A

fortekom,
Через RC приемник работает или свой аналайзер?

konst
Константин (Москва)
useravatar
Offline
28014 Сообщений
Мужчина  Дата рождения 
Администратор отключил публичную отправку сообщений

Re: Машинка + аппа HK-T6A

konst,
С RC приемника берется сигнальные выходы и подключается к аналоговым входам.
В моем случае подключены только два, но проверял все шесть, и все работали, только у 5 и 6 канала диапазон шире.
http://fortekom.users.photofile.ru/photo/fortekom/200965411/219316167.jpg

fortekom
Владимир (СПБ)
Пилот
ranks
useravatar
Offline
621 Сообщений
Мужчина  Дата рождения 
Администратор отключил публичную отправку сообщений

Re: Машинка + аппа HK-T6A

Вот скетч, для тех кто захочет по тестировать
Разницы нет какой фирмы приемник, смотрите на изменения значений.
Вам понадобятся эти значения для регулирования диапазона работы сервы.
Но помните, если на аппе стояли значения 50% и вы под них настроили, то переведя аппу больше % , то результат будет не предсказуем wink

З.Ы. Чуть не забыл, результат движения стика выводится на экран в этом скетче .

/*
Пульт HobbyKing HK-T6A V2
*/
#include <Serial.h>

const int CH1 = A1; // подключаем первый канал к входу А1

void setup()
{
  pinMode(CH1, INPUT);// задаем А1 на вход
  Serial.begin(9600);
}

void loop()
{
  int chVal = 0;

  chVal = pulseIn(CH1, true, 25000);
  chVal = chVal / 10; // Округляем

  if (chVal != 0)
  {
    Serial.print("chVal = ");
    Serial.println(chVal); // Смотрим изменения значений
  }
}

fortekom
Владимир (СПБ)
Пилот
ranks
useravatar
Offline
621 Сообщений
Мужчина  Дата рождения 
Администратор отключил публичную отправку сообщений

Re: Машинка + аппа HK-T6A

Случайно нашел машинку, вся перемотанная скотчем с отломанным задним мостом. Мост примотал изолентой wink
http://fortekom.users.photofile.ru/photo/fortekom/200965448/219318571.jpg
Электроника не в понятном состоянии, да ладно с ней. Решил подключить к аппе.
Подключил по той же схеме.
http://fortekom.users.photofile.ru/photo/fortekom/200965448/219318572.jpg
Только лишь первый мотор это вперед назад, а второй повороты.
Батарея была разряжена в ноль, но удалось её реанимировать, только на сколько будет хватать пока не знаю.

fortekom
Владимир (СПБ)
Пилот
ranks
useravatar
Offline
621 Сообщений
Мужчина  Дата рождения 
Администратор отключил публичную отправку сообщений

Re: Машинка + аппа HK-T6A

Скетч переделал, вот скетч для 2WD

/*
Пульт HobbyKing HK-T6A V2
*/
// Моторы подключаются к клеммам M1+,M1-,M2+,M2- 
// Motor shield использует четыре контакта 6,5,7,4 для управления моторами
#define M21      6 //мотор 2 +
#define M11      5 //мотор 1 +
#define M20      7 //мотор 2 -
#define M10      4 //мотор 1 -

const int CH1 = A1; // вперед назад
const int CH2 = A2; // вправо влево

void setup()
{
  pinMode(4, OUTPUT);
  pinMode(5, OUTPUT);
  pinMode(6, OUTPUT);
  pinMode(7, OUTPUT);

  pinMode(CH1, INPUT);
  pinMode(CH2, INPUT);
  Serial.begin(9600);
}

void loop()
{
  int chVal1 = 0;
  int chVal2 = 0;
  int ch11 = 0;//значение скорости от 0 до 254 для движения
  int ch22 = 0;//значение скорости от 0 до 254 для поворота

  chVal1 = pulseIn(CH2, true, 25000);
  chVal2 = pulseIn(CH1, true, 25000);
//  chVal1 = chVal1 / 3,7; // Округляем , значение влияет на плавность
//  chVal2 = chVal2 / 3,7; // Округляем

  if (chVal1 != 0 || chVal2 != 0)
  {
    if (chVal1 > 1550)
    {
      ch11=(chVal1-1550)*0.93;//результат должен быть от 0 до 254
      if (ch11>254) ch11 = 254;
      analogWrite(M11, ch11);
      digitalWrite(M10, LOW);
    }
    if (chVal2 > 1550)
    {
      ch22=(chVal2-1550)*0.82;
      if (ch22>254) ch22 = 254;
      analogWrite(M21, ch22);
      digitalWrite(M20, LOW);
    }
    if (chVal2 < 1450)
    {
      ch22=(chVal2-1150)*0.85;
      if (ch22<0) ch22 = 0;
      analogWrite(M21, ch22);
      digitalWrite(M20, HIGH);
    }
    if (chVal1 < 1450)
    {
      ch11=(chVal1-1210)*1.06;
      if (ch11<0) ch11 = 0;
      analogWrite(M11, ch11);
      digitalWrite(M10, HIGH);
    }
    if ((chVal1 > 1450 && chVal1 < 1550)&& (chVal2 > 1450 && chVal2 < 1550))
    {
      analogWrite(M11, 0);
      analogWrite(M21, 0);
      digitalWrite(M20, 0);
      digitalWrite(M10, 0);
    }
    Serial.print("chVal1 = ");
    Serial.print(chVal1); // Смотрим изменения значений
    Serial.print(" chVal2 = ");
    Serial.print(chVal2); // Смотрим изменения значений
    Serial.print("ch11 = ");
    Serial.print(ch11); // Смотрим изменения значений
    Serial.print(" ch22 = ");
    Serial.println(ch22); // Смотрим изменения значений

  }
 
}

fortekom
Владимир (СПБ)
Пилот
ranks
useravatar
Offline
621 Сообщений
Мужчина  Дата рождения 
Администратор отключил публичную отправку сообщений

Информация

Статистика форума:
 
Всего тем:
9938
Всего опросов:
79
Всего сообщений:
183133
Бездействующий:
Пользователи форума:
 
Всего пользователей:
10159
Последним зарегистрировался:
yoks
Пользователи онлайн:
0
Гостей онлайн:
357

Самые активные пользователи: 
konst, carpenter, kompmen, cnyx, Dragony, maks_dg, Goby, Student, alldn, nikolaypet
Онлайн: 
Нет пользователей онлайн
Последние сообщения форумаПоследние созданные темы
1) Перекличка - "Широка страна моя Родная"
2) Авиамодели на 3D принтере
3) Чертежи планеров и мотопланеров
4) Мои фантастические произведения
5) Чертежи радиоуправляемых бипланов
6) Чертежи плосколетов
7) Чертежи верхнепланов
8) Чертежи гидропланов
9) Чертежи авиамоделей полукопий
10) Авиамодели с ДВС от триммера и бензопил
1) Чертежи планеров и мотопланеров - радиоуправляемые модели планеров с мотором и без
2) Мои фантастические произведения - литературные произведения автора сайта
3) Чертежи радиоуправляемых бипланов - Авиамодели на радиоуправлении с парой крыльев
4) Чертежи летающих крыльев - Летающие крылья на радиоуправлении разных видов
5) Авиамодели на 3D принтере - Изготовление авиамоделей с помощью 3D печати
6) Чертежи верхнепланов - радиоуправляемые авиамодели с верхним расположением крыла
7) Чертежи свободнолетающих безмоторных планеров - простые планера из потолочки
8) Чертежи плосколетов - Простые в сборке авиамодели
9) Чертежи гидропланов - Обзор чертежей авиамоделей гидропланов
10) Радуга 10 (Р10РУ) - Продам модельный двигатель из СССР