Самодельный передатчик (часть 2)

МаркАнтоний

Всем добрый вечер.
Разобрался я с контрастностью, оказывается Дело было не в бабине, …
В общем проблемма была в следующем: Когда я отрезал лишние части от прозрачной подложки дисплея, был не аккуратен и зацепил контакты, в результате чего они стали болтаться и чтоб экран работал эти контакты необходимо было поджимать. И как сегодня выяснилось, просто сильно прижимал. Ослабил прижим и всё стало отлично с той прошивкой что выложенна на страничке dollop.
Так же хотел узнать. У меня аппаратура донор на 2.4Ггц. Поэтому индикатор Ток антенны мне не нужен. Может есть прошивки для не оригинальных дисплеев 3310 (не перевернутых) без этого индикатора. В принципе конечно он и не мешает, но всё же.
Ещё я не знаю, где должны стоять какие тумблеры. Это критично или как кому удобно так и ставят?

Вроде пока всё.

EagleB3
МаркАнтоний:

аппаратура донор на 2.4Ггц. Поэтому индикатор Ток антенны мне не нужен. Может есть прошивки без этого индикатора. В принципе конечно он и не мешает, но всё же.
Ещё я не знаю, где должны стоять какие тумблеры. Это критично или как кому удобно так и ставят?

Вроде пока всё.

Это можно и самому сделать. Работы там чуть-чуть, как раз подходяще чтобы овладеть основами CVAVR. За пару вечеров наверняка сделаешь. Зато потом (если еще немножко поднатореешь) будешь кум королю - что захочешь в аппе, то и сделаешь.

Поищи в моих исходниках текст AntennaCtrlUse.
Потом возьми исходники dollop’а, с которых компилировалась твоя перевернутая прошивка и наведи в них аналогичную красоту. Или просто удали из них места, которые у меня взяты в условную компиляцию. Это вот такие конструкции:
#ifdef AntennaCtrlUse
unsigned int cur_Power;
unsigned int cur_Antenna;

#endif
(текст шрифтом “Италик” из исходников - удалить).

Ещё я не знаю, где должны стоять какие тумблеры. Это критично или как кому удобно так и ставят?

Кому как удобно. Если у тебя (вдруг…) есть на примете аппа, которая тебе нравится, то полистай ее мануал или поговори с владельцами. Поставь ручки так же. Если потом сменишь самокодер на свою мечту - не придется перепривыкать.

МаркАнтоний

Дмитрий, Вы конечно всё правильно говорите. Разобраться бы в этом деле былоб замечательно! Но я просто на той же страничке dollop а видел фотку на которой чётко видно, что этого индикатора нет на экране. Поэтому и спрашиваю. Вот картинка.
…googlegroups.com/…/P4080041.jpg?attachauth=ANoY7c…

Andr_2

Всем добрый вечер! To DENN огромное спасибо за Ваше разъяснение по данной теме.
И чем больше узнаешь, тем больше возникает вопросов. А в частности: какой диапазон перекрываемых частот? Какой шаг сетки? По приемникам ознакомился. И дело в том, что хотелось бы в дальнейшем иметь один кодер на несколько приемников. А также ни кому не открою Америку, что LMX2306 способна работать до 550 мГц. Но сам я не программист и увязать программно все это с кодером на более высокие частоты у меня не получится. Были ли продуктивные, похожие проекты с этим кодером?
С уважением Андрей.

Aleksey_Gorelikov
Andr_2:

И чем больше узнаешь, тем больше возникает вопросов. А в частности: …? …? … способна работать до 550 мГц. Но сам я не программист и увязать программно все это с кодером на более высокие частоты у меня не получится.

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

Шаг сетки - в общем случае кратен частоте сравнения. Ее - вы выбираете сами, проектируя синтезатор. Я не смотрел как у Сергея, но уверен, что шаг 5 (для совместимости азиатских и европейских сеток) или 10 (для одной из сеток) кГц. Диаппазон же - полностью зависит от используемого вами ГУНа (а в частности схемы гуна, его варикапа и т.д.). На свои вопросы - вы сами уже отвечать должны, не как программист, а как схемотехник. Управление синтезатором со стороны кодера сводится только к загрузке числа в регистр ДПКД. Программировать - не придется. Лишь это число под свою схему и частоту изменить.

ubd

И дело в том, что хотелось бы в дальнейшем иметь один кодер на несколько приемников.

В таком случае проще и может быть дешевле, иметь одинаковые кварцы на всех приёмниках, и фиксированную частоту у передатчика. И не париться. У меня как раз так.
То же раньше хотел делать передатчик с сентизатором частот, но потом понял что нет смысла. Просто купил 3 кварца на одну частоту и всё. У меня все приёмники самодельные, делал по этой схеме: ivan.bmstu.ru/avia_site/r_main/HWR/…/sev_rc.html

Andr_2

“Начну с обратного: Переделать кодер на другие частоты - всего лишь поменять пару циферок в текстовом файле. Программистом быть не обязательно. Если опишите, чего хотите - скажу где.” Где эти заветные циферки поменять?Вот ссылка на двух диапазонный модуль синтезатора 144\430MHZ http://www.qrz.ru/schemes/contribute/constr/s2b-2007 собран на LMX2316.Частота выше,антенна короче,эфир чище(нет мощных вещалок) Да и приемник можно выполнить на двух платах.Уф,что-то размечтался надо сначала зто сделать. а потом и помечтать не вредно.

Aleksey_Gorelikov
Andr_2:

Где эти заветные циферки поменять?

Файл: LMX2306.h :

В нем есть определения:
//-------------------------------------------------------------
#define PLL_FreqOSC 4000 // in kHz
#define PLL_FreqBand 35010 // in kHz
#define PLL_FreqStep 10 // in kHz
#define PLL_CountChannel 20
#define PLL_OffDisplNCh 61
//-------------------------------------------------------------

Затем не помешает посмотреть файл LMX2306.с , даташиты на 2306 и 2316. Найти отличия, (если есть) и поправить процедурку:

void PLL_SetFreq(unsigned char num_freq)
{
unsigned long data;
unsigned int k;

//if(num_freq>=PLL_CountChannel) return; // на всякий…
#asm(“cli”)
// F_Reg
PLL_send(0xd2L, 21);
// R_Reg
data=PLL_FreqOSC; data/=PLL_FreqStep; data<<=2;
PLL_send(data, 21);
// N_Reg
k=num_freq; k*=PLL_FreqStep; k+=PLL_FreqBand; // freq
k/=PLL_FreqStep;
data=(k>>3); // Bcount
data<<=5;
data|=(k & 0x7); // Acount
data<<=2;
data|=0x1;
PLL_send(data, 21);
#asm(“sei”)
}

Хотя, мне кажется, коэф. делителей аналогично считаются. Но это ваша работа. 😃

Ссылка на выбранный вами синтезатор у меня не открылась…

Будут конкретные вопросы - задавайте.

v61

Мне кажется, что не совсем целесообразно самому изобретать радиомодуль, есть уже готовые (и недорогие), например RFM22B ( в Терре стоит порядка 300 рублей).
Вот только скрестить кодер с таким модулем сам не осилю:)
Можно конечно попытаться повторить этот проект www.1slon.ru/rc24868.htm , но как-то не совсем правильно преобразование цифра-аналог-цифра.
Наверное было-бы идеально совсем избавиться от PPM в передатчике…

Думаю, что такая модернизация существующего мега-проекта была-бы многим интересна.

P.S. Повторил кодер в 2-х экземплярах: один с модулем на 35 МГц, второй - на 2.4

Aleksey_Gorelikov
v61:

Наверное было-бы идеально совсем избавиться от PPM в передатчике…

Если есть желание - повторите кодер в корпусе от Спектрум ДХ-5. Триммеры там уже с кнопками, место - достаточно. Модуль - по УАРТу, ну и прелесть, что спектрумовский. Антенка и прочее - в компелкте. Вроде бы пластик корпуса неплохой. Почти супер-современный ДХ-8 получится 😃

v61
Aleksey_Gorelikov:

Если есть желание - повторите кодер в корпусе от Спектрум ДХ-5.

Я больше склоняюсь к диапазону 800 МГЦ (с прицелом на FPV)
А управление мне удобнее джоем от SONY PS, сейчас как раз собираю кодер в этом корпусе www.dealextreme.com/details.dx/sku.28930

Aleksey_Gorelikov
v61:

А управление мне удобнее джоем от SONY PS

Хм… А зачем вам кодер в этом корпусе, если не секрет? Нет, конечно, личные предпочтения - это дело каждого, но… Взял я у ребенка джойстик такой, воткнул в комп. Запустил реалфлай… Летать - невозможно. Вот танком управлять - да, получится. А летать - я не представляю как!

v61
Aleksey_Gorelikov:

Хм… А зачем вам кодер в этом корпусе, если не секрет?

Ну, ради спортивного интереса попробую…

JT_UA
v61:

Ну, ради спортивного интереса попробую…

Желание это хорошо
НО как собираешся калибровать переменики а это уже мне интерестно

dollop

В джое от PS стоит два “джойстика” с двумя переменными резисторами каждый. Так что все нормально откалибруется и центры надет. Вот только летать на нем не удобно по той причине, что плечи у джоев маленькие и точности никакой в управлении не будет. Нужно ставить расходы на минимум и включать экспоненту.
Народ же как-то и на дискретной аппе умудряется летать. Извращение конечно, но факт.
Я из джойстиков от PS делал аппу для микро (на ИК) - там точности управления точно хватает, но стики удлиннял

v61
dollop:

Я из джойстиков от PS делал аппу для микро (на ИК) - там точности управления точно хватает, но стики удлиннял

Насчет удлинения стиков тоже мысли были, но посмотрим как получится
А пульт такой планируется для складного квадрокоптера (типовой не входит в заданный объем кейса;))

leprud

Еще раз (в рамках этой темы) вопрошу о настройке CCPM на 120 градусов.
Какие правильные коэффициенты должны быть?
100-50 (как в документации от 29.05.2010 на сайте “самокодер”) или 60-60 как в этой теме ранее упоминалось?
У меня при любых этих настройках вылетает за 120 единиц канал управления при определенных движениях стиков…

Aleksey_Gorelikov

Для трикоптера настраиваете? 😃 Вот тут rcopen.com/blogs/50021/9239 г-н Хакер выкладывал прожку- эмулятор ССПМ. Можно по ней коэф. подобрать. А вобще - там ж геометрия условно простая. Просто потом коэф. нормализовать надо, чтобы за 100 не результат не выходил (ну или за 120).

Aleksey_Gorelikov

Прикинул на бумажке. Чтобы получалось максимум - 100, надо все поделить к примеру на 2. А вобще - тут зависит от того, расходы по чему вас больше интересуют. Хотя, расход - весма относительное понятие. Ну да ладно, приступим:
Пусть, канал один - это ротор по ходу движения вашего трикоптера), а второй и третий - “боковые”. Тогда:
ch1 = 50% газ + 50% выстота.
ch2 = 50% газ - 25% высота + 25% крен
ch3 = 50% газ - 25% высота - 25% крен.
Нетрудно догадаться, что в сумме все весовые коэф.ты максимум дадут 100 %, и если расходы не выходят за 100% то и на выходе должно получиться не больше 100. Где-то так, наверное. Пробуйте. Ну если что плюсы с минусами поменять местами.

Единственное, у нас получился 50% расход по газу, 50% по высоте и 25" по крену. Ну можно поиграться для получения более равномерного управления. По логике - надо бы поставить +\-50% на крен, но тогда выскочите за пределы 100% расходов. Всетаки не хватает в кодере новомодной функции “виртуального кольца”. Имейте ввиду, что по рулю высоты отношения переднего ротора и пары боковых 1/2. Т.е. если захотите расходы по высоте уменьшить, а по крену увеличить, то будет примерно так:
ch1 = 50% газ + 40% выстота.
ch2 = 50% газ - 20% высота + 30% крен
ch3 = 50% газ - 20% высота - 30% крен.
Т.е. тут мы уменьшили чувствительность по высоте до 40 и увеличили по крену до 30, не изменяя при этом общих границ максимальных перемещений. Можно за счет уменьшения диаппазона газа добавить еще управляемости по крену:
ch1 = 40% газ + 40% выстота.
ch2 = 40% газ - 20% высота + 40% крен
ch3 = 40% газ - 20% высота - 40% крен.

Ну и так далее… 😃

Кстати, а где у трикоптера " перед" ??? Я коэф.-ты расставлял, имея ввиду, что перед - это ротор. А если ротор, это хвост - то с точностью до наоборот. 😃 Инвертировать руль высоты. Только не в меню ченалс!!! Это инвертирует весь канал (рулевую машинку), а нам надо влияние ручек - т.е. только коэфициенты в “микшеры” напротив органов управления “руль высоты”. Коэф.-ты указывают, какое влияние вносит стик (орган управления) в конструируемый нами канал. Сумма коэф-тов канала - - максимально допустимый его “расход”.

msv
Aleksey_Gorelikov:

Всетаки не хватает в кодере новомодной функции “виртуального кольца”.

Не в курсе новомодных функций, но напомню что есть Normalize. Это не то?