Подписываемся на 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
2894 Сообщений
Мужчина  Дата рождения 
Администратор отключил публичную отправку сообщений

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
2894 Сообщений
Мужчина  Дата рождения 
Администратор отключил публичную отправку сообщений

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

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

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

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

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

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

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

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

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
2894 Сообщений
Мужчина  Дата рождения 
Администратор отключил публичную отправку сообщений

Информация

Статистика форума:
 
Всего тем:
9974
Всего опросов:
79
Всего сообщений:
183086
Сообщений на этой неделе:
1
Пользователи форума:
 
Всего пользователей:
10096
Последним зарегистрировался:
IL2Sturm
Пользователи онлайн:
0
Гостей онлайн:
1865

Самые активные пользователи: 
konst, carpenter, kompmen, cnyx, Dragony, maks_dg, Goby, Student, alldn, nikolaypet
Онлайн: 
Нет пользователей онлайн
Последние сообщения форумаПоследние созданные темы
1) Модель с ДВС. Проектируем и строим
2) МИГ 3 с размазом 1300мм
3) Питание борта за 15 минут на кренке 7805
4) Расчет фюзеляжа
5) Аппа "Wensheng WS 6" нужна помощь
6) Расчет эффективного пропеллера вертолета, самолета
7) Зажигание на датчике холла
8) Аккумуляторная батарея LiPo HRB 14,8 4S 2200mA/h
9) На что заменить полетник на Iflight Protek25
10) Юлиус Пердана и SHURIK-1960
1) МИГ 3 с размазом 1300мм - У Юлиуса Перданы больше интересных для меня моделей пока нет
2) Аппа "Wensheng WS 6" нужна помощь - Нужна помощь по аппаратуре управления
3) Расчет эффективного пропеллера вертолета, самолета - Как сделать пропеллер эффективным
4) Аккумуляторная батарея LiPo HRB 14,8 4S 2200mA/h
5) На что заменить полетник на Iflight Protek25 - сгорел полетник. ищу замену
6) Зажигание на датчике холла
7) Сервомотор ведет себя не адекватно - элероны
8) Помогите пожалуйста с вертолетом (управление) - Помогите пожалуйста с вертолетом (управление)
9) Вопрос по ПК - ПК фоксер ф722 v4, рагуль 1202 от fpv. Из этого сделать ЛК?
10) Продажа комплекта деталей для авиамоделирования - Здрaвcтвуйтe! Пpодaю кoмплект деталей для aвиамoделиpoвания