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

EagleB3

Ну, точная механика еще никому не вредила!

Если вдруг где с кем речь о таких погрешностях зайдет - у Филлипса есть интересный аппнот “AN98097 (Contactless Angle Measurement using
KMZ41 and UZZ9000)”. Очень подробно изложена методология погрешностей конструкций на двухосных магниторезистивных мостах.
Основные факторы:

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

(предвидя вопросы: для AS50xx это расстояние порядка 4мм).

Или, если проще: обеспечив соосность 0,25мм и поставив рекомендованный магнит мы на датчике AS50xx получим обещанную производителем точность. Я думаю, ты и сам вполне можешь прикинуть: сложно ли в подшипнике скольжения длиной целых 9мм (именно такую длину имеет нарезанный нос потенциометра + толщина передней его стенки) обеспечить такую соосность.

А насчет успеха в осуществлении - постараюсь по мере сил. 😊
А то ить, как в народе говорят “языком молоть - не мешки ворочать!”…

msv

Че-то запарил меня маленько этот невинный фикс… Стал заливать “лошадкой”, в этот момент коллега отправила на мой расшаренный принтер документ на печать… Сначала ошибка верификации, потом как-то не сразу прошла очистка, потом запись началась и повисла… В общем проц лапки все “свесил” и ни гу-гу… Побежал, нашел генератор 200кгц (больше не нашлось с уровнями 5в) воткнул внешнюю синхронизацию с него. С 10-го раза прошла команда очистки (может слишком низкая тактовая частота?). С 20-го удалось считать конфигурацию (конечно все что можно установлено, значит внешний клокинг), с 40-го получилось залить конфигурацию и все завелось… Но пару тыщ нервных клеток восстановлению не подлежат… 😃 Что-то до конца так и не понял, что это было… По идее винда не должна дать доступ спулеру печати ( точнее драйверу принтера?) к порту, открытым другим приложением… Но на всякий случай имейте ввиду…
Кстати вспомнил, что включенный передатчик в момент “шитья”, тоже может давать весьма неприятные эффекты (я пробовал… 😃)…
Ну и собственно фикс:
narod.ru/disk/20737641000/3310_1_9_1.rar.html

  1. Исправлено - некорректное представление дискретных каналов через виртуальные. ( благодарность Denn )
  2. Исправлено - неточное определение мин. газа, разрешающий старт кодера. ( благодарность EagleB3 )
  3. Добавлено подзвучивание средней точки триммеров. ( благодарность druksel )
    Что еще вроде делал, не помню…
    Все исправления по 1-му пункту в функции Calc() coder.c, думаю без проблем найдете…
Lordik5

Доброе утро!На днях потерял верт,еле нашёл по шороху серв.Господа,не поделитесь схемкой PPM-ключа с выходом на сирену\мигалку?Хочу задействовать свободный канал кодера,чтоб впредь такого не повторилось…

EagleB3

Готовой схемы нет, но, КМК, должен там стоять обычный накопитель на емкости, подшунтированный резистором и компаратор. Если время сигнала будет такое, что накапливаться будет быстрее, чем стекать - то когда-нибудь накопится достаточно для включения компратора. И лучше с инвертором - чтобы _как пропадет_ - так включится. И с независимым питанием - в тихом месте даже невесомая пищщалка от музыкальной открытки шумит довольно громко.

А еще лучше (ну понятно… “Чем мех лучше, тем мех дороже!”) - поставить радиоконтроллер борта, который разработал Хвост Слона. Насколько я помню, эта штука может использоваться как маяк+пеленгатор на место падения модели.
В моем архиве ссылок по данной тематике:
Радиомаяк “Хвост Слона II”
Радиомаяк “Хвост Слона”
Тема на Форуме по “Слоновьему маяку”
Поисковая сирена от Виталия Пузрина (в аккурат то, что ты ищешь! Но на PIC’е… Зато с исходниками…)

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

Доброе утро!На днях потерял верт,еле нашёл по шороху серв.Господа,не поделитесь схемкой PPM-ключа с выходом на сирену\мигалку?Хочу задействовать свободный канал кодера,чтоб впредь такого не повторилось…

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

Denn

для MSV
Сергей , а можно добавить звуковой сигнал при копировании режимов модели и самих моделей. Я имею ввиду сразу при нажатии кнопки ОК. А то было так, что копирую режим, а бывает, что не копируется. Причём сигнал то есть, то нет.

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

А можно использовать электронику от сервы, а вместо обмотки моторчика подсоеденить

…А при каких условиях она будет _не пищщать_? 😉

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

…А при каких условиях она будет _не пищщать_? 😉

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

EagleB3
Denn:

а можно добавить звуковой сигнал при копировании режимов модели и самих моделей.Я имею ввиду сразу при нажатии кнопки ОК. А то было так, что копирую режим, а бывает, что не копируется. Причём сигнал то есть, то нет.

Рыть, КМК, следует в направлении “то есть, то нет”. Вот функция, запускающаяся в режиме копирования модели при нажатии кнопки “вправо”:

                        if(_RIGHT) {
                            if(pos[2]<2) { f_edit=1; BEEP; break; }
                            BEEP1;
                            MODEL_copy(T[0],T[1]);
                            MODEL_init(cur_model_ind);
                            list_ini(menuT0L, pos[1]-1); pos[1]=0;
                            break;
                        };

Проверка if(pos[2]<2) - находится ли курсор в это время на “OK”.
Если нет - управляем режимом выбора источника/назначения и задается выдача сигнала BEEP.
Если да - то задается выдача сигнала BEEP1 и копируется модель.
Так что сигнал предусмотрен при нажатии кнопки “Вправо” в любом случае, это будет либо BEEP, либо BEEP1 (различный тип сигнала).

Но функция beep_work заставит пищщать зуммер только только при одновременном выполнении двух условий:

  1. если есть задание на писк;
  2. если в настройках звук включен.

Если модель “то копируется, то нет”, то где-то баг, ибо в приведенном выше алгоритме деваться некуда…

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

Когда рулевая машинка находится в покои, напряжение на обмотку моторчика не идёт.

Угу… На бумаге - оно гладко… 😎

Машинка считает, что она находится в покое, когда сигнал с потенциометра обратной связи соответствует длительности управляющего сигнала. А длительность управляющего сигнала зависит много от чего (в первую очередь - от назначенного расхода; во вторую - от EPA. Если, например, у тебя EPA такой, что он просто не позволяет сигналу “дотянуться” до положения резистора - пищщать будет всегда!). Так что “сдвинуть в одну из сторон переменный резистор” - маловато будет. Надо будет для каждой модели согласовать сигнал “этого края” с положением резистора. Муторно весьма…
Тогда уж проще взять нормальную дешевенькую легенькую машинку и ее качалкой замыкать контактную группу (магнит к геркону подносить, скажем). 😒

Нет, механику сюда пристегивать - это ненужный лишний вес и хлопоты; = глубокое IMHO.

Aleksey_Gorelikov
EagleB3:

Машинка считает, что она … Если, например, у тебя EPA такой, что он просто не позволяет сигналу “дотянуться” до положения резистора - пищщать будет всегда!). Так что “сдвинуть в одну из сторон переменный резистор” - маловато будет.

Не совсем так. Резистор достаточно оставить по центру. При одном крайнем положении стика (тумблера и т.д.) моторчик будет крутиться в одну сторону, при противоположном - в другую. Чтобы сделать пищалку - подсоединяйте ее вместо моторчика через диод. В одну сторону он пропустит, в другую - нет. Соответвенно будет либо пищать либо нет. Все просто.

Lordik5

Благодарю всех за помощь!Идея с компаратором-это первое,что пришло мне в голову.А с платкой от сервы-тут всё не так однозначно.С лампочкой накаливания такая штука работать точно будет,с пищалками появятся проблемы…Я думал,есть что-нить готовое типа PIC12F629+КТ315.Сам я даже такие простенькие прошивки писать пока не умею:o

jonison
Lordik5:

Благодарю всех за помощь!Идея с компаратором-это первое,что пришло мне в голову.А с платкой от сервы-тут всё не так однозначно.С лампочкой накаливания такая штука работать точно будет,с пищалками появятся проблемы…Я думал,есть что-нить готовое типа PIC12F629+КТ315.Сам я даже такие простенькие прошивки писать пока не умею:o

Как раз платка от сервы самое простое решение тока паралельно пищалке поставь емкость на 47-100мкф.

МаркАнтоний

Я вообще считаю, что электроника от сервы это самое что ненаесть простое! jonison правильно говорит, электролит надо поставить обязательно, а излучатели со встроенным генератором (пищалки) (“Вот например Название XCMS12C2305PX”) полярные тоесть плюс надо подавать на плюс, а минус соответственно на минус. А если включить наоборот, то она будет молчать.
Но решать конечно Вам самому.

Denn

Для MSV
Попробовал исправленную прошивку, стало значительно лучше.
Но есть маленькие вопросики:
Виртуальный канал от SW2 на Руль Высоты. При изменении Rate Вирт Кан РВ реагирует на изменение Rate при любом положении SW2 , хотя , КМК, должен только в крайних положениях, и только раздельно, т.е. каждый Rate только в своём положении SW2 ( правда, не помню, может у меня кривая была задана хитрая ?..)
Про кривую: в крайних положениях регулировка работает в крайних положениях SW2 , всё замечательно, но в среднем положении SW2 наверное должна регулировать центральная точка кривой, а она не регулирует.
Сейчас меня всё устраивает, всё можно настроить, но устаканить алгоритм работы - наверное надо.
Сергей, спасибо ещё раз!

Lordik5

Да,пожалуй электроника от сервы-самый быстрый и простой вариант.Тем более кучка дешёвых полудохлых серв присутствует.И на выход встречно-параллельно пищаль и мощный светодиод через диоды.В “0” SW2 всё молчит,в “1” загорается светодиод,в “-1” верещит пищаль.Летом стрёкот кузнечиков, можно и не услышать звуковой сигнал.

oskar

На днях появилась необходимость проверить дальность апи а помочь было некому , воздможно ли зделать такую функцию ?

ubd

А при чём тут кодер и проверка дальности аппы?
Со сложенной антенной, если у вас 35 или 40 мгц, должно брать метров 50 - 100, всё зависит от типа приёмника и мощности передатчика. С разложенной антенной дальность будет больше километра в воздухе.

EagleB3

+1
Проверка дальности действия - это в первую очередь функционал передатчика.
А уж смотря по тому как в нем включается режим проверки дальности - может быть можно и кодер такой фишкой снабдить.

Ежели, скажем, используется Футабовский модуль от 6EX, то в нем вроде как можно. PigTail это убедительно показал снятыми осциллограммами, но в живую такую фишку еще никто не делал/не публиковал.

DCat

Доброго дня всем. Хочу собрать обсуждаемый кодер. В качестве вч модуля хочу применить ВЧ модуль 40 MHz WFLY RF MODULE Type WFTRF01-FM. Подскажите может кто знает какое напряжение кушает этот модуль? какой лучше камулятор применить для питания всего фарша передатчика? На 7 или на 11в с учетом указанного вч модуля.

msv

2Denn Денис, постарайтесь локализовать проблему. Т.е. как по возможности минимальным изменением в конфигурации модели от дефолтовой, получить то, что Вам кажется ( а может и не кажется 😃 ) является проблемой или некорректной математикой. И дайте мне эти настройки в цифрах конфигурации и значений каналов в мониторе. Я пока не вижу неожиданностей, и возможно Ваши отличия ожидания реакции каналов от того, что получается, можно объяснить. Ну или еще пока неведомый мне косячок притаился… 😃
2Lordik5 Интегратор+компаратор, первое что приходит в голову, на самом деле не столь хорошо, сколько плохо… Относительное изменение периода ppm-канала весьма незначительно по сравнению с периодом, поэтому имхо возможны проблемы со стабильностью ( в первую очередь температурной) у простейшей аналоговой схемки. Можно накрутить цифровой автомат на жесткой логике, но в наш век МК это будет неоправдано даже по цене. Платка от неисправной сервы плюс диод - самое простое решение ( если нагрузка не боится что может пойти шим). На а самое грамотное - МК.
Тут, кстати, в соседней ветки про телеметрию я жалуюсь на недостаточное кол-во дискретных команд… Честно говоря проблема у меня там надуманная, больше из “любви к искуству”, тк. каналов пока хватает в избытке, но хочется более грамотного решения, а не из пушки (каналом ppm) по воробью (одной дискретной команде). Зреет желание добавить в кодер большое кол-во (ну скажем 8) дискретных независимых команд, в один канал. Увы, но это потребует заметной измененения схемы кодера… Самое неприятное декодировать эти команды обычный приемник не сможет… Те. ему на один из каналов прийдется сажать доп. декодер (скажем на пик или меге8) расширяющий его до 8 дискретных. Вообще это здорово- можно ракеты пускать, сирены включать, БАНО мигать, щелкать фотиком, флаги на флагштоках поднимать, итд., итп… Но… Мне декодер не нужен, у меня он есть в моей OSD-телеметрии, и там могу навоять все что захочу ( тем более там уже по схеме заложено 8 дискретных выходов ).
В общем прошу высказываться надо/не надо… Ну и может кто возьмется за декодер? С протоколом договоримся…