Телеметрия (часть 1)

idono
maloii:

Выложите пожалуйста кто ни будь схему подключения камеры к меге, тоесть вход выход сигнала.

в схеме smalltim’а все нарисовано. Камеру к меге подключать не нужно, нужно всего лишь подцепить “видеовыход” схемы к проводу “камера-видеопередатчик” паралельно

maloii

А есть где почетать про алгоритм генерации изображения в PAL сигнал, на примере генерации букв или точек?

Dikoy

Вкину свои 5 капель.
Для датчика скорости лучше подойдёт MPX5004. Шкала уже, дискретность меньше.
В своих поделках я использовал АЦП AD7799 о 24 битах. Удобна она тем, что имеет 3 канала с диф входами (я мерил две оси компаса и алитиметр/спидометр через коммутатор), отлычный PGA с усилением до 128 и аппаратный филтр скользящего среднего. Работает превосходно - чистые 16 бит с соответстсвующим разрешением.

Насчёт GPS, не надо искать диносавров а-ля лассены!!!
Отличный модуль: LEA-4H! Имеет UART, USB, афигительную чувствительность и много фичей. Продаёт www.efo.ru , сам ю-блокс: www.u-blox.com/shop/index.html .

Ещё стоит обратить внимание на 5 серию, хоть она и дороже в 2 раза:
LEA-5H - www.u-blox.com/products/lea_5h.html
NEO-5Q - www.u-blox.com/products/neo_5q.html

Серия NEO, это вообще песня в плане массо-габарита. Есть нео 4 серии 😉

Антену лучше брать пассивную спиральную. Плоские тяжелы, массивны и… требуют под собой полигона земляного 55-75 см квадратных 😃
Вот примеры антен:
GeoHelix-SMP - http://shop.efo.ru/cgi-bin/shop.pl?categor…p;mh=50&a=1

Активная: GeoHelix-S – http://shop.efo.ru/cgi-bin/shop.pl?categor…p;mh=50&a=1
Хотя для самолёта пассивная за глаза и за уши…

LowAmper:

Спасибо! А чем, кроме цены, отличаются MPXV5010DP PBF и MPXV5010DP? В ЧипДипе они 910 и 550р соответсвенно.

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

А вообще, нафига чиподип? Заходим на фрискейл и, потратив гиг траффика на их скоростном сайте, оформляем запрос сампла на требуемы датчики (в тех корпусах, что нужны нам, а не есть). Датчики обойдутся бесплатно, потребуется только оплатьть 22 бакса за пересылку федексом. Через неделю-две посылку припрёт курьер надом.
И того, за цену 1 датчика вы получаете 4, в нужных корпусах и непосредственно от производителя.

LowAmper
Dikoy:

Через неделю-две посылку припрёт курьер надом.

Через неделю-две начнется гемор с таможней, которая расположена в аэропорту в 50км от города: “Бесплатно?! А ну-ка дай десять справок и напиши десять заявлений и заплати пошлину, сумму мы счас придумаем.”
Увы, живу я в заповеднике коммунизма. Но это тема не для этой ветки. Спасибо за оригинальную идею. Вы её уже осуществили на практике?

Dikoy
LowAmper:

Спасибо за оригинальную идею. Вы её уже осуществили на практике?

Это про что?

Про коммунизм сочувствую… У нас только с упсом могу быть проблемы. Федекс проходит всегда без проблем.

Dikoy

to All
Почитал сайт папарацци. Интересная штука.
И возникла идея - а почему бы не замутить аналогичный проект, только в россии и открытый?
Я не разделяю некоторые решения, которые они применили. Например, пирометры. Нафига было извращаться с аналоговыыми по 18 баксов, когда за 25 можно купить цифровые и тарированные?..
Радиоканал у них никакой…

У меня есть опыт в построении оборудования для самолётиков. Миниатюрные дуплексные радиоканалы на 4 км., куча кодов обработки GPS и вычислений нав. параметров. То есть часть, которая работает с GPS и отвечает за управление, у меня есть.
Пирометры приделать не проблема.
Видеокамеры тут уже побороли.

То есть сделать ИК аппаратуру управления самолётом по камере проблемы не составляет. Я сваяю блок управления, кто-то блок наложения картинки, связь по UART.

Если есть желающие поучаствовать, можно сделать. Один я этим заниматься не буду.
Так же у меня нет возможности тестить, по этому могу генерить только платы/схемы/коды. проверять придётся кому то другому 😎
Есть желающие? Эта железяка кому-нибудь нужна?

foxfly

[quote=Dikoy;750270]
to All
Почитал сайт папарацци. Интересная штука.
И возникла идея - а почему бы не замутить аналогичный проект, только в россии и открытый?

Скажите: а где можно увидеть что- то из “наваянного” Вами?
Вот Smallltim- никого не призывал на подвиги, а взял да и сделал телеметрию (простенькую, но со вкусом) и выложил ее на форуме…
А Ваши благие намерения чем то подкреплены?
Народ- сумлевается 😦

smalltim

>То есть часть, которая работает с GPS и отвечает за управление, у меня есть.

Было бы здорово сделать добавочную платку к моей телеметрии: на добавочной плате на Атмеге - математика GPS, навигация и т.д., а вывод на экран и датчики скорости-высоты-батареек-температуры с их математикой - на существующей платке. Интерфейс между платами - какой угодно, у Атмег полно протоколов общения.
Только вот я сейчас на две недели паузу беру. На работе загрузка сильная.

Dikoy

[quote=foxfly;750346]
[quote=Dikoy;750270]
to All
Почитал сайт папарацци. Интересная штука.
И возникла идея - а почему бы не замутить аналогичный проект, только в россии и открытый?

Скажите: а где можно увидеть что- то из “наваянного” Вами?

Нами, например, тут: dikoy44.narod.ru
Авионики там нет, т.к. все проекты были коммерческими.

Вот Smallltim- никого не призывал на подвиги, а взял да и сделал телеметрию (простенькую, но со вкусом) и выложил ее на форуме…

А я предлагаю сделать то же самое, но предупреждаю, что один не справлюсь. Да и нет у меня интереса делать то, что никому не нужно. Если интерес у людей будет, имеет смысл тратить на это время. А ничто не укрепляет веру в интерес так, как реальная помощь 😉

А Ваши благие намерения чем то подкреплены?

Интересом разобраться с пирометрами. Я с ними дела не имел, но прочитав статью www.eganfamily.id.au/…/TaylorBristol2003.pdf загорелся.
По мотивам парацци подобрал даже пирометр - MLX90614 от www.melexis.com

Dikoy
smalltim:

Было бы здорово сделать добавочную платку к моей телеметрии: на добавочной плате на Атмеге - математика GPS, навигация и т.д., а вывод на экран и датчики скорости-высоты-батареек-температуры с их математикой - на существующей платке. Интерфейс между платами - какой угодно, у Атмег полно протоколов общения.
Только вот я сейчас на две недели паузу беру. На работе загрузка сильная.

Я так и думал. У моей меги свободен один UART, могу передавать данные либо в АНСИ, либо цифрами - как удобно. Вы выводите из в видеосигнал.

Насчёт времени - я с пирометрами быстрее не разберусь, а покупать их ещё дольше. Так что, 2 недели терпит 😃
Главное не пропадайте, чтобы не получилось так, что я сделаю несовместимо с вами.

foxfly

Нами, например, тут: dikoy44.narod.ru
Авионики там нет, т.к. все проекты были коммерческими.

Ну, насчет “коммерческими”- это явно крутовато 😃
Пищалка, которая гудит при открывании двери если включены габариты- это 1 корпус 561ЛА7, плюс пара диодов и пара сопротивлений…
До авионики оттуда настолько далеко, что и не видно.
Кстати: датчики у Папаррацев стоЯт- DST60, да и не делают они сами эти платы- у FMA-Direct покупают.
А вы себе представляете сумму, в которую выливается разработка подобной системы?
Если учесть, что цены на ДПЛА начинаются от 40000$?
Я то все это уже сделал, поэтому несколько удивлен таким оптимизмом 😦

Dikoy

Ну, насчет “коммерческими”- это явно крутовато

Простите, вы не представились. Могу я увидеть Ваши труды?

Пищалка, которая гудит при открывании двери если включены габариты- это 1 корпус 561ЛА7, плюс пара диодов и пара сопротивлений…

Это 1 диод и одно реле. Как сделано у нексии. А ещё можно посадить китайца, который одновременно будет выполнять функции АКПП. Но вот беда… Небыло в коробушке китайца, из того, что было пришлось делать.
+У 561 серии нет защитных диодов по входам 😦 Да и одним оставшимся элементом ЗП-19 не раскачаешь. Нужна пара, а лучше 4, причём ЛН2.
Такая штука работает на инжекторной девятке. На тазиках сей аппарат дохнет. Точнее дох, пока я не поставил 7809 и стабилитроны по входам.
Плюс, никогда небыло страсти к китайской технике. Предпочитаю делать заведомо рабочие вещи и не загонять элементы в пределы по токам и напряжениям. 70 вольт 561 серия не держит, к сожалению.

Кстати: датчики у Папаррацев стоЯт- DST60,

Они предлагают варианты, в т.ч. и MLX90247.

А вы себе представляете сумму, в которую выливается разработка подобной системы?

Представьте себе, да. А вы представляете рыночную стоимость разработкти пищалки при открывании дверей?

Если учесть, что цены на ДПЛА начинаются от 40000$?

Автору статьи это не помешало смастерить пироавтопилот для статьи. А футабе сделать оптику за 50 долларей. Или вы не понимаете разницы между коммерческим продуктом с сопровождением и домашней поделкой?

Вот по этому я не люблю писать свой возраст в форумах. Уж слишком много сверхчеловеков на него выползает.

idono

Почитал про сложную обработку данных по высоте у smalltim и других создателей телеметрий, почитал про “плавающие окна”, про хитрые форумлы и т.п. Не понял ни слова 😦
У меня такой вопрос - к чему такие сложности? В своих экспериментах я тупо опрашивал АЦП 20 раз, суммировал результат и делил на 20, после чего выводил на экран 😃 После устранения нескольких багов в коде, альтиметр с разрешением 1 метр показывает высоту четко, без шумов вообще. Вариометр с разрешением 0.5 м/c вел себя так же

Dikoy
idono:

Почитал про сложную обработку данных по высоте у smalltim и других создателей телеметрий, почитал про “плавающие окна”, про хитрые форумлы и т.п. Не понял ни слова 😦
У меня такой вопрос - к чему такие сложности? В своих экспериментах я тупо опрашивал АЦП 20 раз, суммировал результат и делил на 20, после чего выводил на экран 😃 После устранения нескольких багов в коде, альтиметр с разрешением 1 метр показывает высоту четко, без шумов вообще. Вариометр с разрешением 0.5 м/c вел себя так же

С плавающим окном ты бы имел то же самое, но получал данные в 20 раз быстрее. то есть не терял бы 20 выборок.

А реализация проста. В цикле забиваешь массив выборками, когда забил - суммируешь. Потом следующую выборку записываешь в нулевой элемент. Суммиирование. Следующая - в первый элемент. Суммирование.
То есть последовательно перезаливаешь массив, с каждым элементом делая новую сумму. Частота получения данных равна частоте выборке АЦП, качество подавления шумов выше чем у простой суммы. Единственное неудобство - надо сначала залить массив и тллько потом получать данные.
Так работают сигиа-жельта АЦП кстати.

Ещё его называют алгоритмом скользящего среднего.

ReGet

Спасибо, после вашего объяснения все стало понятно!
(это я под другим аккаунтом заходил)

maloii
idono:

в схеме smalltim’а все нарисовано. Камеру к меге подключать не нужно, нужно всего лишь подцепить “видеовыход” схемы к проводу “камера-видеопередатчик” паралельно

Можно чучуть поподробней. У меня камера KX171 c rangvideo.com www.rangevideo.com/index.php?main_page=product_inf…

на неё идёт 12 вольт и жолтый провод сигнала. Если я правлено понял то мне нужно ноль от схемы кинуть на минус а сигнал на жолтый провод. Ещё вопрос, какое напряжение должно быть на выходе сигнала, тоесть если я тестером замерю, ноль это минус а сигнал плюс. Я понимаю что это аналоговый сигнал, просто осциллографа у меня нет а сровнять каскады как то нужно. Таким способом я померел выход с приёмника от rangevideo там примерно 3 вольта, а у меня 1,5 с платы выходит 😃 . А если на камере мерю, тоесть минус на минус, а плюс на сигнал, то вообще 0 вольт кажет, хотя камера работает нармуль 😵

maloii

Вот ещё, поправьте если я неправильно понимаю (просто разобраться охото во всём). Я цепляю сигнал на разъём V-IN чипа LM1881N (как я понял прошивать его не надо он сразу всё умеет). Выходы HSYNC и VSYNC кидаю на ноги Atmega8. Этот LM1881N раскладывает сигнал на вертикальные и горизонтальные составляющие и дёргает эти ноги по достижению переходов по линиям или точкам линии. В программе Atmega8 описываю прерывания этих ног на которые я подал HSYNC и VSYNC. Ввожу переменные строки и точки в строке, отсчитываю нужную мне точку и на некую ножку кидаю 1. Эту ножку на которую выкидываю 1 я соединяю на выход PAL. В итоге вход и выход это один провод, разделяются только сопротивлениями, на вход 510 ом и кодёр на 0,1 микро фарад, на выход 120 ом. В итоге сверху на сигнал накладываю белые пиксели.

Dikoy

2All
Народ, а насколько необходимо отображать в телеметрии потребляемый от акков ток?..
ИМХО вполне достаточно знать напряжения силового и аппаратурного акка (ну либо одного общего).
А то мне тут советуют датчик тока сделать… Но это ж шунт лепить на плату, и всё равно точность ±лапоть, не считая нагрева… 😕 Проводов, опять же, больше. Что скажете?

smalltim
Dikoy:

2All
Народ, а насколько необходимо отображать в телеметрии потребляемый от акков ток?..
ИМХО вполне достаточно знать напряжения силового и аппаратурного акка (ну либо одного общего).
А то мне тут советуют датчик тока сделать… Но это ж шунт лепить на плату, и всё равно точность ±лапоть, не считая нагрева… 😕 Проводов, опять же, больше. Что скажете?

Я не стал связываться, знать ток, конечно, интересно, но индикации напряжения и так достаточно.

maloii:

Ага, всё так, только прерывания от лм1881 - не точки и строки, а моменты перехода к новому кадру/новой строке.

maloii

Ох, не выходит чтото каменный цветок. Подскажите гуру, где я неправильно что сделал.

Подключил всё как у smalltim. Диод только свето поставил. Прошиваю, всё ок, пробую, эран немного тускнеет, делаю в строчке заместо 1 на PORTD.7 ставлю 0, экран светлеет обратно и вообще как бы ничего и не происходило. А по сути должна линия белая показаться как я понимаю.

попробовал прошить прошивкой smalltim, но у меня датчики не подключенны к меге, стали белые полоски прыгать по экрану 😵 .

#incl*ude <mega8.h>
#incl*ude <delay.h>


int i=0;

// External Interrupt 0 service routine
interrupt [EXT_INT0] void ext_int0_isr(void)
{
		if(i>100 && i<200){
				PORTD.7 = 1;
		}
		i++;
}

// External Interrupt 1 service routine
interrupt [EXT_INT1] void ext_int1_isr(void)
{
		i=0;
}

// Declare your global variables here

void main(void)
{
// Declare your local variables here

// Input/Output Ports initialization
// Port B initialization
// Func7=In Func6=In Func5=In Func4=In Func3=In Func2=In Func1=In Func0=In
// State7=T State6=T State5=T State4=T State3=T State2=T State1=T State0=T
PORTB=0x00;
DDRB=0x00;

// Port C initialization
// Func6=In Func5=In Func4=In Func3=In Func2=In Func1=In Func0=In
// State6=T State5=T State4=T State3=T State2=T State1=T State0=T
PORTC=0x00;
DDRC=0x00;

// Port D initialization
// Func7=Out Func6=In Func5=In Func4=In Func3=In Func2=In Func1=In Func0=In
// State7=1 State6=T State5=T State4=T State3=T State2=T State1=T State0=T
PORTD=0x80;
DDRD=0x80;

// Timer/Counter 0 initialization
// Clock source: System Clock
// Clock value: Timer 0 Stopped
TCCR0=0x00;
TCNT0=0x00;

// Timer/Counter 1 initialization
// Clock source: System Clock
// Clock value: Timer 1 Stopped
// Mode: Normal top=FFFFh
// OC1A output: Discon.
// OC1B output: Discon.
// Noise Canceler: Off
// Input Capture on Falling Edge
// Timer 1 Overflow Interrupt: Off
// Input Capture Interrupt: Off
// Compare A Match Interrupt: Off
// Compare B Match Interrupt: Off
TCCR1A=0x00;
TCCR1B=0x00;
TCNT1H=0x00;
TCNT1L=0x00;
ICR1H=0x00;
ICR1L=0x00;
OCR1AH=0x00;
OCR1AL=0x00;
OCR1BH=0x00;
OCR1BL=0x00;

// Timer/Counter 2 initialization
// Clock source: System Clock
// Clock value: Timer 2 Stopped
// Mode: Normal top=FFh
// OC2 output: Disconnected
ASSR=0x00;
TCCR2=0x00;
TCNT2=0x00;
OCR2=0x00;

// External Interrupt(s) initialization
// INT0: On
// INT0 Mode: Any change
// INT1: On
// INT1 Mode: Any change
GICR|=0xC0;
MCUCR=0x05;
GIFR=0xC0;

// Timer(s)/Counter(s) Interrupt(s) initialization
TIMSK=0x00;

// Analog Comparator initialization
// Analog Comparator: Off
// Analog Comparator Input Capture by Timer/Counter 1: Off
ACSR=0x80;
SFIOR=0x00;

// Global enable interrupts
#asm("sei")

while (1)
	  {
	  // Place your code here

	  };
}
РД00
maloii:

А по сути должна линия белая показаться как я понимаю.

Забыли обнуление PORTD.7.