RC.ПЕРМЬ.РУ > Клуб FPV

Чем снимаем с воздуха. Все про наши и не наши камеры.

<< < (52/80) > >>

emax:

--- Цитировать (выделенное) ---а тут просвети немного. это как?
--- Конец цитаты ---
Многим будет, наверное, неинтересно, отправил в личку.
Добавлено 26 Марта 2016, 12:39:43

--- Цитата: Ilya от 26 Марта 2016, 11:43:04 ---Пара лишних энкодеров PWM-PPM от пиксхавков лежит на складе, может из  них сделать?
--- Конец цитаты ---
Не пойдет, у них только один выход - PPM, а нужно 7.

master.x:

--- Цитата: argut от 26 Марта 2016, 11:12:07 ---так что сперва нужно схемотехнику выстроить - потом порграммы писать
а то получится что бы управлять торчащими проводками (замыкая их на землю) нужно "выходардуины - транзисторный ключ - релешка" - что нифига не красиво.
--- Конец цитаты ---
это конечно правильно, но если подумать кнопки скорее всего комутируют сигнальный вольтаж, а то и просто сигнал низкого уровня. так или иначе атмега позволяет пропускать и выдавать сигнал низкого и высокого уровня. А если по токам то можно поставить мосфет 6680 или транзистор дарлингтона UHL2003 миниатюрные размеры. Но вольтаж на холостом надо померить.
Добавлено [time]26 Марта 2016, 13:33:47[/time]
Думаю для нас схемотехника будет проще чем написать код. если с атмегой не справимся тогда на PIC контролллер и к Стасу.
Добавлено [time]26 Марта 2016, 18:10:46[/time]
вот в таком примерно виде уже должно работать. пару мелочей надо будет подредактировать, типа установлено чтение шим чётко в 1100 и 1900 а не менее и более какогото уровня. ну чтение входов надо провериь читают ли цифровые входы ШИМ.

скетч исправлен и заливается надо проверять работоспособность.

/*9 канал: 1500 фокус 1900 и фокус, и спуск
10 канал: 1100 зум+ 1900 зум+
11 канал: 1100 вклвыкл 1900 видео
по значению ШИМ на входе 12-14 выход логический 0 на пин 5-11*/
int focus = 5;
int shot = 6;
int ch9 = 12;
int ch10 = 13;
int ch11 = 14;

void setup() { //задаём значения пин
  pinMode(5, OUTPUT);
  pinMode(6, OUTPUT);
  pinMode(7, OUTPUT);
  pinMode(8, OUTPUT);
  pinMode(9, OUTPUT);
  pinMode(10, OUTPUT);
  pinMode(11, OUTPUT);
  pinMode(12, INPUT);
  pinMode(13, INPUT);
  pinMode(14, INPUT);
}
void loop(){
  if (analogRead(ch9) == 500-800 )
  {
  //читаем положение ШИМ на входе
  //9 канал: 1500 фокус 1900 и фокус, и спуск
  //если 127 то фокус если 255 фокус спуск
    digitalWrite(focus, LOW);
  } else if (analogRead(ch9) >= 1000 )
  {
  digitalWrite(shot, LOW);
}

 
  if (analogRead(ch10) <= 100 ) {
  //10 канал: 1100 зум+ 1900 зум+
  digitalWrite(7, LOW);} else if (analogRead(ch10) >= 1000 ){
  digitalWrite(8, LOW);}
 
  if (analogRead(ch11) <= 10 ){
  //11 канал: 1100 вклвыкл 1900 видео
  digitalWrite(9, LOW);} else if (analogRead(ch11) >= 240 ){
  digitalWrite(10, LOW);}
}
   
 

argut:
а у кого-то есть железки ардуино про мини. ждать не охота. в товарах прикамья сука 500 рублей. тоже хочу попробовать. пошить. покодить. ну и помочь проекту. ну и опыт пригодится для повседневных задач.

Ilya:

--- Цитата: argut от 27 Марта 2016, 08:54:56 ---а у кого-то есть железки ардуино про мини. ждать не охота. в товарах прикамья сука 500 рублей. тоже хочу попробовать. пошить. покодить. ну и помочь проекту. ну и опыт пригодится для повседневных задач.

--- Конец цитаты ---

Тут идею подкинули - задействовать атмеги из сгоревших мавлинков. Их у меня богато...

emax:

--- Цитата: master.x от 26 Марта 2016, 13:32:16 --- ...... if (analogRead(ch9) == 500-800 ).....
--- Конец цитаты ---

По моему analogRead здесь не прокатит, это для измерения аналогового напряжения на пине, а не длительности.
Хотя я плохо знаю этот недоязык скетчей. Использую asm или С.

Навигация

[0] Главная страница сообщений

[#] Следующая страница

[*] Предыдущая страница

Перейти к полной версии