Как управлять ардуино - я чайник в этом

hubll
Offline
Зарегистрирован: 08.03.2015

Всем приdет друзья, 2 дня читаю об управлении сервоприводом на ардуино. Понятно как записать на ардуино код и как подключить серво. Но не понятно как управлять серво без подключения к компьютеру. У меня есть радио пульт на 4 кнопки и приемник к нему на 4 реле, каждому реле своя кнопка. Куда нужно подключить контакты реле к ардуино, чтобы дистанционно управлять серво?  Заранее спасибо!

inspiritus
Offline
Зарегистрирован: 17.12.2012

Хм...

Как кушать слога? Для начала нарежте его на стэйки...

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

hubll
Offline
Зарегистрирован: 08.03.2015

inspiritus пишет:

Хм...

Как кушать слога? Для начала нарежте его на стэйки...

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

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

Coolerr
Offline
Зарегистрирован: 30.06.2014

Конечно программировать, а ты думал серва сама догадываться будет?

hubll
Offline
Зарегистрирован: 08.03.2015

Coolerr пишет:

Конечно программировать, а ты думал серва сама догадываться будет?

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

SU-27-16
SU-27-16 аватар
Offline
Зарегистрирован: 13.08.2012

с приёмника сразу на ардуину можно подавать команды, через реле - зачем ?

пришлите фоту-ссылку на ваш пульт и приёмник

Gippopotam
Gippopotam аватар
Offline
Зарегистрирован: 12.09.2014

hubll пишет:

Coolerr пишет:

Конечно программировать, а ты думал серва сама догадываться будет?

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

Ищите лучше учебник.

Я не стебаюсь.

hubll
Offline
Зарегистрирован: 08.03.2015

SU-27-16 пишет:

с приёмника сразу на ардуину можно подавать команды, через реле - зачем ?

пришлите фоту-ссылку на ваш пульт и приёмник

вот такое у меня http://www.ebay.com/itm/4-channel-wireless-relay-remote-control-switch-Smart-RF-Receiver-Transmitter-/271615427024?pt=LH_DefaultDomain_0&hash=item3f3d8a81d0

хотел на нем сделать лодку на пульту, но оказалось, что на сервопривод нужно подавать напряжение  изменяя частоту на желтом проводе,  поэтому решил делать на ардуино. Подскажите в каком направлении двигаться.

SU-27-16
SU-27-16 аватар
Offline
Зарегистрирован: 13.08.2012
#include <Servo.h>
#define ServoPin_1 9
#define ServoPin_2 10
#define BUT_1 4
#define BUT_2 5
#define BUT_3 6
#define BUT_4 7
#define SHAG 1
Servo myServo1;
Servo myServo2;
int angle_1 = 0;
int angle_2 = 0;
//=====================================================
void setup()
{
  myServo1.attach(ServoPin_1);
  myServo1.write(angle_1);
  myServo2.attach(ServoPin_2);
  myServo2.write(angle_2);
  pinMode(BUT_1,INPUT);
  digitalWrite( BUT_1,HIGH );
  pinMode(BUT_2,INPUT);
  digitalWrite( BUT_2,HIGH );
  pinMode(BUT_3,INPUT);
  digitalWrite( BUT_3,HIGH );
  pinMode(BUT_4,INPUT);
  digitalWrite( BUT_4,HIGH );
}
//=====================================================
void loop()
{
  if (!digitalRead(BUT_1))
  {
    angle_1 = angle_1 + SHAG;
    if (angle_1>180) angle_1 = 180;
  }
  if (!digitalRead(BUT_2))
  {
    angle_1 = angle_1 - SHAG;
    if (angle_1<0) angle_1 = 0;
  }
  myServo1.write(angle_1);


/* подправить - кнопки 3 и 4 , угол_2 , серво2
  if (!digitalRead(BUT_1))
  {
    angle_1 = angle_1 + SHAG;
    if (angle_1>180) angle_1 = 180;
  }
  if (!digitalRead(BUT_2))
  {
    angle_1 = angle_1 - SHAG;
    if (angle_1<0) angle_1 = 0;
  }
  myServo_1.write(angle_1);
*/


/* подправить - кнопки 5 и 6 , угол_3 , серво3        :)
  if (!digitalRead(BUT_1))
  {
    angle_1 = angle_1 + SHAG;
    if (angle_1>180) angle_1 = 180;
  }
  if (!digitalRead(BUT_2))
  {
    angle_1 = angle_1 - SHAG;
    if (angle_1<0) angle_1 = 0;
  }
  myServo_1.write(angle_1);
*/


  delay(300);
}
//=====================================================

вместо кнопок подключите ваши 4 реле - нормально замкнутые контакты один на GND, второй на пин вместо кнопки

hubll
Offline
Зарегистрирован: 08.03.2015

SU-27-16 пишет:

#include <Servo.h>
#define ServoPin_1 9
#define ServoPin_2 10
#define BUT_1 4
#define BUT_2 5
#define BUT_3 6
#define BUT_4 7
#define SHAG 1
Servo myServo1;
Servo myServo2;
int angle_1 = 0;
int angle_2 = 0;
//=====================================================
void setup()
{
  myServo1.attach(ServoPin_1);
  myServo1.write(angle_1);
  myServo2.attach(ServoPin_2);
  myServo2.write(angle_2);
  pinMode(BUT_1,INPUT);
  digitalWrite( BUT_1,HIGH );
  pinMode(BUT_2,INPUT);
  digitalWrite( BUT_2,HIGH );
  pinMode(BUT_3,INPUT);
  digitalWrite( BUT_3,HIGH );
  pinMode(BUT_4,INPUT);
  digitalWrite( BUT_4,HIGH );
}
//=====================================================
void loop()
{
  if (!digitalRead(BUT_1))
  {
    angle_1 = angle_1 + SHAG;
    if (angle_1>180) angle_1 = 180;
  }
  if (!digitalRead(BUT_2))
  {
    angle_1 = angle_1 - SHAG;
    if (angle_1<0) angle_1 = 0;
  }
  myServo1.write(angle_1);


/* подправить - кнопки 3 и 4 , угол_2 , серво2
  if (!digitalRead(BUT_1))
  {
    angle_1 = angle_1 + SHAG;
    if (angle_1>180) angle_1 = 180;
  }
  if (!digitalRead(BUT_2))
  {
    angle_1 = angle_1 - SHAG;
    if (angle_1<0) angle_1 = 0;
  }
  myServo_1.write(angle_1);
*/


/* подправить - кнопки 5 и 6 , угол_3 , серво3        :)
  if (!digitalRead(BUT_1))
  {
    angle_1 = angle_1 + SHAG;
    if (angle_1>180) angle_1 = 180;
  }
  if (!digitalRead(BUT_2))
  {
    angle_1 = angle_1 - SHAG;
    if (angle_1<0) angle_1 = 0;
  }
  myServo_1.write(angle_1);
*/


  delay(300);
}
//=====================================================

вместо кнопок подключите ваши 4 реле - нормально замкнутые контакты один на GND, второй на пин вместо кнопки

спасибо, буду так делать.

trembo
trembo аватар
Offline
Зарегистрирован: 08.04.2011

Или неплохой проект http://arduino.ru/forum/proekty/radioupravlyaemyi-kater-iz-potolochki

Или готовое и на будущее ( 500- 1000 метров) - уже на выходе сигналы для серв и безколлекторников, память на 8 моделей ( самолёты, вертолёты, коптеры, катера, машинки) с приёмником и передатчиком. Телеметрию можно добавить, есть альтернативные прошивки.

http://www.banggood.com/Wholesale-FlySky-Upgrade-FS-TH9X-FS-TH9XB-2_4G-9...

SU-27-16
SU-27-16 аватар
Offline
Зарегистрирован: 13.08.2012

код для другого человека, но задача примерно таже

и раз у вас такой модуль приёмника - то только так ( хотя это плохой способ ) - искать пупок приёмника на модуле вам ещё рано

есть пары брелок+приёмник без реле.....

hubll
Offline
Зарегистрирован: 08.03.2015

SU-27-16 пишет:

код для другого человека, но задача примерно таже

и раз у вас такой модуль приёмника - то только так ( хотя это плохой способ ) - искать пупок приёмника на модуле вам ещё рано

есть пары брелок+приёмник без реле.....

У меня есть и без реле, но там нужны транзисторы, или нет?

SU-27-16
SU-27-16 аватар
Offline
Зарегистрирован: 13.08.2012

а ссылку на другой комплект ?

hubll
Offline
Зарегистрирован: 08.03.2015

SU-27-16 пишет:

а ссылку на другой комплект ?

вот это она http://www.ebay.com/itm/201159288346?_trksid=p2060778.m2749.l2649&ssPageName=STRK%3AMEBIDX%3AIT

 

SU-27-16
SU-27-16 аватар
Offline
Зарегистрирован: 13.08.2012

у платы приёмника-дешифратора 7 ног

- питание - +5 V и GND

- 5 выходов - на четырёх +5 V появляется при нажатии на кнопки A,B,C,D соответственно , на пятом - при нажатии кнопки A,B,C,D любой ( для испытаний - 5 светодиодов и 5 резисторов по 220 ом )

выходы приёмника-дешифратора подайте на цифровые пины ардуины ( можно и на аналоговые ) и пишите код ( подтяжку пинов ардуины включать не надо ! )

hubll
Offline
Зарегистрирован: 08.03.2015

SU-27-16 пишет:

у платы приёмника-дешифратора 7 ног

- питание - +5 V и GND

- 5 выходов - на четырёх +5 V появляется при нажатии на кнопки A,B,C,D соответственно , на пятом - при нажатии кнопки A,B,C,D любой ( для испытаний - 5 светодиодов и 5 резисторов по 220 ом )

выходы приёмника-дешифратора подайте на цифровые пины ардуины ( можно и на аналоговые ) и пишите код ( подтяжку пинов ардуины включать не надо ! )

А почему подтяжку пинов ардуины включать не надо?

SU-27-16
SU-27-16 аватар
Offline
Зарегистрирован: 13.08.2012

у дешифратора выходы работают с TTL уровнями, пин ардуины не может оказаться в воздухе ( никуда не подключенным )....
на пине всегда будет или 0, или 1 ( LOW или HIGH )

hubll
Offline
Зарегистрирован: 08.03.2015

Здравствуйте, я сделал кораблик на пульту (с вашим кодом), посмотрите тут https://youtu.be/6qz_Lq0uVyE думаю Вам будет интересно.

SU-27-16
SU-27-16 аватар
Offline
Зарегистрирован: 13.08.2012

:) - но надо иттить к пропорциональному управлению... ждём успехов ! :)-

hubll
Offline
Зарегистрирован: 08.03.2015

там пульты стоят дорого. а какой пульт можете посоветовать?

SU-27-16
SU-27-16 аватар
Offline
Зарегистрирован: 13.08.2012

свой !
2 х потенциометра- вперёд/назад/быстрее/медленнее и кнопки.... любые.... ардуина и nRF24 на пульте и ардуина и nRF24 на приёмнике....
...про это  всё знает Жека_ТМ ( спалил ? ) , у него спроси.....