Технический форум по робототехнике.
snailmaster » 04 янв 2012, 17:34
Люди помогите разобратся . Стоит задача подключить регулятор хода с безколекторным двигателем от авио модели к Ардуино Уно.
Не могу чтото сообразить как это зделать . С обычным колекторным двигателем разобрался а с этим чтото не вкурю. Вот и прошу вашей помощи.
Есть Ардуино Уно на нем стоит мотор шилд V3 и вот к нему пытаюсь подключить. Как это зделать?????
=DeaD= » 04 янв 2012, 17:45
Регулятором хода рулят как обычной сервой. Вот и весь секрет
snailmaster » 04 янв 2012, 18:06
=DeaD= писал(а):Регулятором хода рулят как обычной сервой. Вот и весь секрет
ОК , попробывал загрузить стандартную программу пример в ардуино , подключил регулятор с мотором , но он крутится процентов на 20 от всей мошности , а на максимум как его запустить. А в программе для примера можно чтото привезти????
вот то что было загружено
#include <Servo.h>
Servo myservo;
int potpin = 0;
int val;
void setup()
{
myservo.attach(9);
}
void loop()
{
val = analogRead(100);
val = map(val, 0, 1023, 0, 179);
myservo.write(val);
delay(15);
}
noonv » 04 янв 2012, 18:44
попробуйте подобрать максимальное и минимальное значения (см
attach)
cjA » 04 янв 2012, 22:00
дайте пожалуйста схему. и модель безколекторника.
(фишка в том что у них можно в резонанс войти и выкачать 200%кпд (правда акк сядет за десять минут) - не думаю что принцип работы сервы тут уместен, разве с удаленными датчиками)
Частоты подбирайте, это асинхронник, у него одна своя резонансная (кстати зависит от нагрузки), и еще куча псевдорезонансных. На этих частотах они почти не греют атмосферу.
(не нужно наезжать на меня за 200%кпд, это мгновенные значения, в сумме за десять минут он выкачает энергии не больше чем есть в акке, я и сам знаю)
snailmaster » 04 янв 2012, 22:31
cjA писал(а):дайте пожалуйста схему. и модель безколекторника.
(фишка в том что у них можно в резонанс войти и выкачать 200%кпд (правда акк сядет за десять минут) - не думаю что принцип работы сервы тут уместен, разве с удаленными датчиками)
Частоты подбирайте, это асинхронник, у него одна своя резонансная (кстати зависит от нагрузки), и еще куча псевдорезонансных. На этих частотах они почти не греют атмосферу.
(не нужно наезжать на меня за 200%кпд, это мгновенные значения, в сумме за десять минут он выкачает энергии не больше чем есть в акке, я и сам знаю)
На моторе значит написано следующее TURNIGY C2830-1050 схемы мотора нету , но суть я так понял в написании программы.
одним словом какой бы угол не вписал , мотор пищит и дергается
Duhas » 05 янв 2012, 00:01
cja, сами вы.. асинхронник.. честное слово, учите матчасть!
boez » 05 янв 2012, 00:55
Советую прочитать руководство к регулятору. Там обычно описаны некие действия, которые надо проделать с ручкой газа, чтобы регулятор работал так, как надо - там часто бывает некая автоподстройка нуля, может это она влияет?
cjA » 05 янв 2012, 02:27
какого еще газа-фуяза? это электрический двигатель. безколлекторник. управляется частотой.
snailmaster, правильно?
(ну duhas как всегда где то в своем мире)
"суть я понял из написания программы"
Ну давайте тогда и жигули по руководству баунти заводить, глядишь и поедет.
Если вы хотите запустить свой (не знаю что ,геликоптер, да?) на этом моторе, то уж будьте любезны этот мотор изучить. Ему нужны другие драйверы. Управляющию логику (ардуино) можно пока оставить.
Duhas » 05 янв 2012, 02:36
ТС, меня в вашем коде смущает вот это
- Код: Выделить всё • Развернуть
val = analogRead(100);
val = map(val, 0, 1023, 0, 179);
myservo.write(val);
попробуйте сами фиксированное значение подавать... ступеньками.. через паузы..
и подумайте над советом boez
ПС чукча не читатель..
cjA » 05 янв 2012, 02:48
ох!
перебиритете все частоты какие можите и меряйте ток. ()
ну и тогда сами увидете где у него оптимул. Ну и там на мосфет посадите и - "досвидания наш ласковый Миша, отправляйся в свой сказочный лес"
Добавлено спустя 2 минуты 41 секунду:
duhas
листинг того что вы предложили вы видели?
Michael_K » 05 янв 2012, 04:02
А что такое аналогрид(100)?
Это номер канала такой красивый?
Duhas » 05 янв 2012, 11:55
cja, давайте не будем тут дискутировать.. это я не предложил, а процитировал код ТС..
snailmaster » 05 янв 2012, 22:16
cjA писал(а):какого еще газа-фуяза? это электрический двигатель. безколлекторник. управляется частотой.
snailmaster, правильно?
(ну duhas как всегда где то в своем мире)
"суть я понял из написания программы"
Ну давайте тогда и жигули по руководству баунти заводить, глядишь и поедет.
Если вы хотите запустить свой (не знаю что ,геликоптер, да?) на этом моторе, то уж будьте любезны этот мотор изучить. Ему нужны другие драйверы. Управляющию логику (ардуино) можно пока оставить.
да это обычный безколекторник , управление частотой от 1 милисек до 2 милисек , как в серве
я значит вот что зделал , подключил потенцеометр , все как в примере с серво , но вместо серво подключил регулятор хода, и вывел значения на ком порт , значит вот что получилось
значения в терминале:
20 - писк и моторчик дергается
34 - мотор 0%
37 - вращение 1%
40 - вращение 5%
и т.д.
120 - вращение 50%
179 - вращение 100%
как прописать , чтоб эти все действия выполнялись автоматически без патенциометра????
nsk-racer » 05 янв 2012, 22:25
- Код: Выделить всё • Развернуть
:cry: // Sweep
// by BARRAGAN <http://barraganstudio.com>
// This example code is in the public domain.
#include <Servo.h>
Servo myservo; // create servo object to control a servo
// a maximum of eight servo objects can be created
int pos = 0; // variable to store the servo position
void setup()
{
myservo.attach(9); // attaches the servo on pin 9 to the servo object
}
void loop()
{
for(pos = 0; pos < 180; pos += 1) // goes from 0 degrees to 180 degrees
{ // in steps of 1 degree
myservo.write(pos); // tell servo to go to position in variable 'pos'
delay(15); // waits 15ms for the servo to reach the position
}
for(pos = 180; pos>=1; pos-=1) // goes from 180 degrees to 0 degrees
{
myservo.write(pos); // tell servo to go to position in variable 'pos'
delay(15); // waits 15ms for the servo to reach the position
}
}
попробуй этот