MultiWii
Сегодня хоббикинг анонсировал hobbyking.com/…/__24723__Hobbyking_KK2_0_Multi_rot…
забавная штука но там нет поддержки GPS.
Кроме цены, ничего забавного, Multiwii лучше и гораздо более гибкий в использовании 😉 Но народ падок на халяву, эти КК2 уже за день в бэкордере.
Имею wp+ пиленый и чак пиленый аналоговое подключение, после залития прошивке до калибровке все каряво выглядит но на наклоны коптер ведет себя нормально, наклонил его в сторону и он обратно не возвращается, но после калибровке когда наклоняешь коптер он наклоняется и обратно возвращается не замирает, как до калибровке. Прошивке пробовал 1.9 и 2.0 одинаково.
Второй вопрос когда подключаю приемник GUI сходит сума все стики начинают прыгать в пределах 300 и на пульте когда отклоняешь не реагирует, когда газ на всю цикл тайм подскакивает до 10000 и все подвисает. В чем может быть дело?
Коза у вас где-то завелась, ищите в районе контактов идущих на приемник.
провода сантиметров 8 на разьемах но я новые провода уже сделал
почему-то не хочет работать когда подаешь питание на ножку (5V) (VIN)
У мну работает.
Странно
Вобщем сделал я мини USB штырек, мозг работает но как то странно.
Включаю от компа конфигуратор с длинным удлиннителем чтоб коптер летал с проводом все нормально акселерометр калибруется.
Включаю самостоятельно акселерометр уходит на -22 -22 по х у координатам. и пытается с нуля жоско стартануть в бок, тутже подключаю в конфиг и вижу что акселерометр сам себя откудато откалибровал, где искать ошибку?
версия 1.9.а1 акселерометр аналогово подключен на 1 2 3 порта А
pаметил в посленей DEV прошивке упоминание про wii-ESC регули с расширенным диапазоном
/**************************************************************************************/
/******** special ESC (wii-ESC) with extended range ********************/
/**************************************************************************************/
//#define MINCOMMAND 1000
//#define MINTHROTTLE 1080
//#define MAXTHROTTLE 2000
//#define EXT_MOTOR_RANGE
это относится к саймоновской прошивке или нет?
это относится к саймоновской прошивке или нет?
Нет, есть отдельный код, с кучей настроек, компилить прошивку нужно самому. wii-esc.googlecode.com
SVN Транк wii-esc.googlecode.com/svn/trunk/
Сейчас залил в LS20031 данные AGPS, и приемник выдал 3D-fix по 8-и спутникам 😃 До этого и три с трудом находил.
Какие-то жуткие координаты стал приемник после этого выдавать 😦 Как будто я около Северной Америки в океане плаваю 😃
акселерометр аналогово подключен на 1 2 3 порта А
ошибка тут 😃 я когда по аналогу подключал аксель давным давно, тож самое получил… причина проста АЦП ардуины работает от опорного напряжения (питания наверно)… от УСБ это 4.7- 4.8в, а при подключении например о БЕК регуля ровно 5в…, вот и разность в оцифровке… просто когда коптер автономен (без подключения по УСБ т.е.) сделайте калибровку акселя с пульта еще раз…
быстрее выкидаыте свой пиленный чак! )) сейчас сенсоры приличные уже копейки стоят, а ни как год назад ))
www.rctimer.com/index.php?gOo=goods_details.dwt&go…
www.rctimer.com/index.php?gOo=goods_details.dwt&go…
ошибка тут 😃 я когда по аналогу подключал аксель давным давно, тож самое получил… причина проста АЦП ардуины работает от опорного напряжения (питания наверно)… от УСБ это 4.7- 4.8в, а при подключении например о БЕК регуля ровно 5в…, вот и разность в оцифровке… просто когда коптер автономен (без подключения по УСБ т.е.) сделайте калибровку акселя с пульта еще раз…
Да кстати верное замечание, от USB у меня 4.8 выходит со шнурка проходя шоттки падает до 4.6 там это все идет как я понял на LDO после которого на 3.3V на самом деле становится 3.2 и отсюда видимо и есть этот уход напряжения = полностью согласен.
быстрее выкидаыте свой пиленный чак! )) сейчас сенсоры приличные уже копейки стоят, а ни как год назад ))
www.rctimer.com/index.php?gOo=goods_details.dwt&go…
www.rctimer.com/index.php?gOo=goods_details.dwt&go…
Еслиб они стоили так в апреле взял бы не задумываясь уже просто время ушло, мне комплект обошелся в 15баксов ардуина и датчики оба в 14баксов почти вобщем тоже самое только пилить ничего не надо.
Кстати все платы разные пришли заказывал по паре моушнов и нунчаков, в диалэкстримовском очень похож по корпусу на ADXL345 или как он там не помню. гиры одинаковые только платки отличаются.
Пытался по IIC подключать аксель гонит какуюто ерунду.
к вечеру вобщем залил ваше вроде как творение 2.0.а0 покрутил стикки по кругу и о чудо… получилось с неотцентрованным коптером взлететь и повисеть секунд 5 пока он плавненько в стену не сместился…
Программка от Немца конфигуратор под винду прикольная штука, альтиметр клёво нарисовал он.
Выводы вобщем у меня такие, запитать платку отдельным напряжением когда подключена к компу в обход USB и калибрануть.
У меня цель в июле полетать с камерой, комплект весь есть для FPV. Щас подвес осталось склепать.
У меня цель в июле полетать с камерой, комплект весь есть для FPV. Щас подвес осталось склепать.
камеру прилепите и срочно летать! )) лето пройдет быстро! да и если просто полетать для фана, а не снимать, народ пишет что без подвеса даже удобнее… понятней где горизонт ))
камеру прилепите и срочно летать! )) лето пройдет быстро! да и если просто полетать для фана, а не снимать, народ пишет что без подвеса даже удобнее… понятней где горизонт ))
я имел ввиду что у меня щас покачто голая рама + собранное на коленке без ножек.
Выводы вобщем у меня такие, запитать платку отдельным напряжением когда подключена к компу в обход USB и калибрануть.
чтобы аксель калибрануть, плату к компу подключать не обязательно:
…googlecode.com/…/MultiWii-StickConfiguration-18_v…
это можно с передатчика сделать.
Кто использовал датчик LSM330DLC поделитесь, пожалуйста, функциями инициализации и чтения данных.
Кто использовал датчик LSM330DLC поделитесь, пожалуйста, функциями инициализации и чтения данных.
// ************************************************************************
// LSM303DLHC I2C Accelerometer
// ************************************************************************
#if defined(LSM303DLHC_ACC)
#define LSM303DLHC_ADDRESS 0x19 // 0x32 (8bit) 0x19 (7bit)
void ACC_init(){
delay(10);
i2c_writeReg(LSM303DLHC_ADDRESS ,0x20 ,0x47 ); // CTRL_REG1_A 0100 0111 Pwr on, 50Hz
delay(5);
i2c_writeReg(LSM303DLHC_ADDRESS ,0x23 ,0xA8 ); // 1010 1000 8g hr
acc_1G = 256;
}
void ACC_getADC(){
TWBR = ((16000000L / 400000L) - 16) / 2; // change the I2C clock rate to 400kHz
i2c_getSixRawADC(LSM303DLHC_ADDRESS,0x28+0x80); // Start multiple read at reg 0x28
ACC_ORIENTATION( ((rawADC[1]<<8) | rawADC[0])/16 ,
((rawADC[3]<<8) | rawADC[2])/16 ,
((rawADC[5]<<8) | rawADC[4])/16 );
ACC_Common();
}
#endif
// ************************************************************************************************************
// I2C Compass LSM303DLHC
// I2C adress: 0x3C
// ************************************************************************************************************
#if defined(LSM303DLHC_MAG)
#define LSM303DLHCMA 0x1E // 0x3C (8 bit) 0x1E (7 bit)
void Mag_init() {
i2c_writeReg(LSM303DLHCMA,0x00,0x10); //CRA_REG_M 15hz data refresh
i2c_writeReg(LSM303DLHCMA,0x01,0x60); //CRB_REG_M +/- 2.5Ga
i2c_writeReg(LSM303DLHCMA,0x02,0x00); //MR_REG_M Continous conversion mode
magInit = 1;
}
void Device_Mag_getADC() {
i2c_getSixRawADC(LSM303DLHCMA,0x03);
MAG_ORIENTATION( ((rawADC[0]<<8) | rawADC[1]) ,
((rawADC[4]<<8) | rawADC[5]) ,
((rawADC[2]<<8) | rawADC[3]) );
}
#endif
Спасибо. Но мне для датчика LSM330DLC.
А никто не пробовал arduino pro mini 16 mHz (и ей подобных), запускать от 3.3 вольта с внешним стабилизатором?
приемник и регули запустились и работали, ардуину я похоже подпалил, ошибся при подключении в итоге мигала светодиодом как при пустой прошивке. А прошить не могу у нее serial тоже убиенный 😃)
Не понятно стоит дальше пробовать или нет.
Смысл упражнения сэкономить 2 грамма веса на мелколете.
Запустил датчики сам. В полете еще не пробовал. Может кому пригодится.
// ************************************************************************************************************
// I2C ACC+GYRO LSM330DLC
// ************************************************************************************************************
#if defined(LSM330DLC)
//ACCELEROMETR
void ACC_init () {
delay(10);
i2c_writeReg(0x19,0x20,0x37);
i2c_writeReg(0x19,0x23,0x10);
acc_1G = 256;
}
void ACC_getADC () {
TWBR = ((F_CPU / 400000L) - 16) / 2;
i2c_getSixRawADC(0x19,0x28|0x80);
ACC_ORIENTATION( ((rawADC[1]<<8) | rawADC[0])/16 ,
((rawADC[3]<<8) | rawADC[2])/16 ,
((rawADC[5]<<8) | rawADC[4])/16 );
ACC_Common();
}
// GYROSCOPE
void Gyro_init () {
delay(10);
i2c_writeReg(0x6B, 0x20, 0xBF);
}
void Gyro_getADC () {
TWBR = ((F_CPU / 400000L) - 16) / 2;
i2c_getSixRawADC(0x6B,0x28|0x80);
GYRO_ORIENTATION( ((rawADC[1]<<8) | rawADC[0])/20 ,
((rawADC[3]<<8) | rawADC[2])/20 ,
((rawADC[5]<<8) | rawADC[4])/20 );
GYRO_Common();
}
#endif
Всетаки подохла одна из серв (тупо прокручивается где то шестеренка, до этого похрустывала, хотя на вид всё хорошо), поставил цифровую серву с трикоптера и получил вот такой странный косяк
www.youtube.com/watch?v=OimcU4twZiI
при подключении аналоговой - никаких дерганий нет… куда копать?