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

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

YouTube канал

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

TOP статьи

Вход




RC Магазины





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

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

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

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

С уважением,

Константин.

Имитатор звука мотора

Re: Имитатор звука мотора

http://modelist-konstruktor.com/samsebe … uka-motora простой имитатор двигателя
и типа такой схемы чтоб при обороте двигателя звук менялся на высокие и низкие частоты
http://file-up.net/big_fc7bf3a78831e2a4da20131129100531.jpg

dirliht
dirliht
Пилот
ranks
useravatar
Offline
1250 Сообщений
Мужчина  Дата рождения 
Администратор отключил публичную отправку сообщений

Re: Имитатор звука мотора

Есть у меня товарищ который разбирается в avr программировании буду его мучать схему собрал буду пробовать запускать как звук

Dima_I
Ученик пилота
ranks
useravatar
Offline
77 Сообщений
Дата рождения 
Администратор отключил публичную отправку сообщений

Re: Имитатор звука мотора

Доброго Дня!
помогите разобраться с кодом arduino
http://radikall.com/images/2014/01/21/Qnbo0.th.jpg
http://radikall.com/images/2014/01/21/DiY0O.th.jpg

при запуски инициализирует положение стика и запускает мелодию при дальнейшем изменеии нет реакции пока мелодия не доиграет до конца
Скетч
int PPMin1 = 8;  // connect the desired channel (PPM signal) from your RC receiver to analog pin 0 (pin 14) on Arduino.
#include <Wtv020sd16p.h>
int resetPin = 2;  // The pin number of the reset pin.
int clockPin = 3;  // The pin number of the clock pin.
int dataPin = 4;  // The pin number of the data pin.
int busyPin = 5;  // The pin number of the busy pin.
int RCval1;  // store RC signal pulse length
int adj_val1;  // map that value to be between 0-255
Wtv020sd16p wtv020sd16p(resetPin,clockPin,dataPin,busyPin);

void setup()
{
  Serial.begin(9600); //serial library start
  wtv020sd16p.reset();
  pinMode(PPMin1, INPUT); //вход с rc 8
}


void loop()
{
  RCval1 = pulseIn(PPMin1, HIGH, 20000);      //read RC channel 1
  adj_val1 = map(RCval1, 630, 1125, 0, 255);  // my observed RC values are between 630-1125.. these might need to be changed, depending on your RC system.

  if (RCval1 < 1500)
  {
    wtv020sd16p.playVoice(1);
  }
  else
  {
    wtv020sd16p.stopVoice();
  }
if (RCval1 > 1500)
  {
    wtv020sd16p.playVoice(0);
  }
  else
  {
    wtv020sd16p.stopVoice();
  }
  Serial.print ("val1: ");
  Serial.print (RCval1);  // if you turn on your serial monitor you can see the readings.
  Serial.print ("       ");
  Serial.print ("adjusted:  ");
  Serial.print (adj_val1);
  Serial.println ("  ");
   }

Модуль для воспроизведения НЕ РЕКЛАМА http://geek.kg/mp3module/

Dima_I
Ученик пилота
ranks
useravatar
Offline
77 Сообщений
Дата рождения 
Администратор отключил публичную отправку сообщений

Re: Имитатор звука мотора

dirliht написал(а):

http://modelist-konstruktor.com/samsebeelektrik/imitator-zvuka-motora простой имитатор двигателя
и типа такой схемы чтоб при обороте двигателя звук менялся на высокие и низкие частоты
http://file-up.net/big_fc7bf3a78831e2a4da20131129100531.jpg

а не проще с одного из проводов двигателя снимать сигнал?

К тому же геркон на таких оборотах я сомневаюсь, что хорошо будет работать. Может вместо геркон тогда уж датчик холла?

Goby
Алексей
Пилот
ranks
useravatar
Offline
2892 Сообщений
Мужчина  Дата рождения 
Администратор отключил публичную отправку сообщений

Re: Имитатор звука мотора

У вас void setup() отличается от примера, нет строчки: wtv020sd16p.asyncPlayVoice(0);
Возможно это не важно, но проверьте описание модуля.

И почему вместо CASE конструкции используете  IF ELSE? Вы уверене,что программа выполняется так как вы думаете она должна выполняться?

В примере, в начале цикла здоровый кусок кода отслеживающий нажатие и отпускание кнопки, а как работает RCval1 = pulseIn(PPMin1, HIGH, 20000);      //read RC channel 1 ?

gsagr
Александр
Пилот
ranks
useravatar
Offline
354 Сообщений
Мужчина  Дата рождения 
Администратор отключил публичную отправку сообщений

Re: Имитатор звука мотора

Геркон действительно встанет на больших оборотах. Логика его работы ограничена отсутствием или наличием рядом магнита. И потом с балансировкой мотора не возникнут вопросы? Зато магниты мотора хорошо будут взаимодействовать с датчиком Холла (можно "наковырять" в старых 3,5" дисководах).
Тут стоит подумать о датчике Холла. Ну или оптическая пара как вариант.

Grig26
Григорий
Ученик пилота
ranks
useravatar
Offline
97 Сообщений
Мужчина  Дата рождения 
Администратор отключил публичную отправку сообщений

Re: Имитатор звука мотора

я в программирование полный ноль
прошу более подробнее разжувать CASE

Dima_I
Ученик пилота
ranks
useravatar
Offline
77 Сообщений
Дата рождения 
Администратор отключил публичную отправку сообщений

Re: Имитатор звука мотора

Dima_I написал(а):

я в программирование полный ноль
прошу более подробнее разжувать CASE

Можно и без CASE. У Вас всего три условия и я бы их написал бы так:
==========================================
if (RCval1 > 1500) // обороты больше 1500
  {
    wtv020sd16p.playVoice(0);
  }
else if (RCval1 > 0) // обороты от 1 до 1500
  {
    wtv020sd16p.playVoice(1);
  }
  else // обороты ноль
  {
    wtv020sd16p.stopVoice();
  }
===========================================
если " else if " или например может быть без пробела " elseif " не понимается компилятором, то:

===========================================
if (RCval1 > 1500) // обороты больше 1500
  {
    wtv020sd16p.playVoice(0);
  }
else
{
    if (RCval1 > 0) // обороты от 1 до 1500
    {
       wtv020sd16p.playVoice(1);
     }
     else // обороты ноль
     {
        wtv020sd16p.stopVoice();
     }
}

Goby
Алексей
Пилот
ranks
useravatar
Offline
2892 Сообщений
Мужчина  Дата рождения 
Администратор отключил публичную отправку сообщений

Re: Имитатор звука мотора

закачал
результат
в каком положении стик та и мелодия играет на передвижение не реагирует
если передвинуть стик в другое положение и дождаться конца мелодии то в этом случаи мелодия сменится

Dima_I
Ученик пилота
ranks
useravatar
Offline
77 Сообщений
Дата рождения 
Администратор отключил публичную отправку сообщений

Re: Имитатор звука мотора

Dima_I написал(а):

закачал
результат
в каком положении стик та и мелодия играет на передвижение не реагирует
если передвинуть стик в другое положение и дождаться конца мелодии то в этом случаи мелодия сменится

а если перед условием  wtv020sd16p.stopVoice();  поставить? Тогда что произойдет, loop сработает на событие, далее wtv020sd16p.stopVoice(); принудительно останавливает звук и условие запускает его снова, в соответствии с оборотами. Если прокатит, последние условие с  wtv020sd16p.stopVoice() можно совсем убрать.

Goby
Алексей
Пилот
ranks
useravatar
Offline
2892 Сообщений
Мужчина  Дата рождения 
Администратор отключил публичную отправку сообщений

Re: Имитатор звука мотора

тоже самое

void loop()
{
  RCval1 = pulseIn(PPMin1, HIGH, 20000);      //read RC channel 1
  adj_val1 = map(RCval1, 630, 1125, 0, 255);  // my observed RC values are between 630-1125.. these might need to be changed, depending on your RC system.
  wtv020sd16p.stopVoice();
  delay(1000);
 
if (RCval1 > 1500) // обороты больше 1500
  {
    wtv020sd16p.playVoice(0);
  }
else if (RCval1 > 0) // обороты от 1 до 1500
  {
    wtv020sd16p.playVoice(1);
   
  }

Dima_I
Ученик пилота
ranks
useravatar
Offline
77 Сообщений
Дата рождения 
Администратор отключил публичную отправку сообщений

Re: Имитатор звука мотора

delay(1000); закомментируй или удали, вроде секундная задержка нам совсем не нужна.

еще как вариант .playVoice замени на .asyncPlayVoice

и что последняя цифра в pulseIn означает?

Goby
Алексей
Пилот
ranks
useravatar
Offline
2892 Сообщений
Мужчина  Дата рождения 
Администратор отключил публичную отправку сообщений

Информация

Статистика форума:
 
Всего тем:
9948
Всего опросов:
79
Всего сообщений:
183174
Сообщений на этой неделе:
31
Пользователи форума:
 
Всего пользователей:
10173
Последним зарегистрировался:
urus_vp
Пользователи онлайн:
0
Гостей онлайн:
1074

Самые активные пользователи: 
konst, carpenter, kompmen, cnyx, Dragony, maks_dg, Goby, Student, alldn, nikolaypet
Онлайн: 
Нет пользователей онлайн
Последние сообщения форумаПоследние созданные темы
1) Полетник Matek MATEKSYS F405-SE не выдает сигнал на Vbat
2) Чертежи плосколетов
3) Акб для Pilotage Junior Fighter
4) DroneDrive - ModelDrive
5) Гироскопический момент
6) Стабильность полета крыла без вертикальных стабилизаторов
7) Подскажите, подойдет ли пульт от коптера для самолета?
8) Чертежи скоростных авиамоделей
9) Крыло без элеронов, но с 2Д поворотом мотора
10) Чертежи планеров и мотопланеров
1) Полетник Matek MATEKSYS F405-SE не выдает сигнал на Vbat
2) Акб для Pilotage Junior Fighter
3) Подскажите, подойдет ли пульт от коптера для самолета?
4) Чертежи скоростных авиамоделей - радиоуправляемые самолеты для скоростных полетов
5) Гироскопический момент
6) Стабильность полета крыла без вертикальных стабилизаторов - а так можно?
7) Здравствуйте, вопрос про настройку пульта.
8) DroneDrive - ModelDrive - Техническая секция для детей (авто/авиа/дроны)
9) Крыло без элеронов, но с 2Д поворотом мотора - Хочу сделать такое, и хотел бы почитать кто уже такое делал
10) Требуются программисты и мастера. - Поиск умельцев.