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

EagleB3

Любое отклонение от размеров и расстояний = увеличение нелинейности. И только.
Кстати, кроме даташитов на сами датчики там есть много интереснейших аппнотов, Наример “AN5000_20 (Extended_programming_features)” или “AN 5043-10 (AS5043 Application examples)”. В последнем из них, на странице 6 раздел 4.3 - ровно то, что нам (КМК) и надо - линейный rail-to-rail с углом поворота 75градусов. Таксзать, “от производителя”.
“Наливай, да пей”…

…За эти пределы (0.5 до 1.8 мм) выйти - надо сильно постараться. Конструкция с продольным люфтом даже 1,3 мм - это уже не потенциометр, а паровозный шатун какой-то. Даже при переделке заводского потенциометра это ни разу не вопрос.
Для обработки вал зажимается в цанговом патроне, обрезается до нужной длины. Засверливается “изнутри” по оси “дупло” диаметром 2,9мм (сам вал в этом месте диам.5мм, материал = алюминий). Из алюминия изготавливается “чашка” под магнит внутренний диаметр 6мм, наружный - 7…8мм, глубина 2…2,5мм, толщина дна как можно меньше, желательно не более 1мм. Из дна наружу торчит “пень” диаметром 2,9мм с допуском в плюс под посадку с натягом в “дупло”. Вал вставляем в корпус снаружи, внутрь дальше необходимого не даст вдвинуться толстая часть вала (с гранью под соединение с подвижной частью джойстика), ее диаметр 6мм. Смазка - силиконовый жир. Не высыхает, не вытекает, оргазм при каждом повороте грантирован. В чашку запрессовывается магнит (ориентация безразлична). “Пень” чашки запрессовывается в “дупло” вала. Выдвинуть вал наружу не дает чашка. Люфт обеспечивается/выбирается фторопластовыми (а еще лучше - капролоновыми) шайбами и/или стальными (бронзовыми) упругими седловидными шайбами. По любому люфт не больше, чем разница длин корпуса и участка между чашкой и 6-тимиллиметровым валом.
Посадка “чашки” в вал с натягом даст возможность в процессе сборки повернуть “чашку” относительно вала и выставить магнит на начало рабочего участка приблизительно. Точно выставлять магнит лучше все же доворачивая корпус резистора.
На магнит или на корпус датчика перед окончательной сборкой можно наклеить кусок пластика толщиной 0,6мм (0,5мм?)- это даст гарантированный минимальный зазор в процессе сборки.

Токарь, у которого в хозяйстве есть малогабаритный станок и набор цанг, проделает это все (вытачивание чашки и укорачивание-сверление вала) минут за 20 не напрягаясь.

Конструкция лишь чуть-чуть сложнее, а соосность “Вал-магнит” гораздо точнее, чем в статье, на которую я ссылался. Надежность и точность выдерживания продольного люфта у той конструкции и у предлагаемой мной даже сравнивать, КМК, смешно…

Если же точить все с нуля, то можно сделать еще лучше. Вал сделать весь диаметром 6мм, “чашку” под магнит точить прямо на валу за одну установку, защита от вваливания вала “внутрь” - разрезным кольцом или штифтом; Корпусу обеспечить вращение на 360 градусов; дно в корпус вворачивать на резьбе (обеспечивая требуемый зазор между магнитом и датчиком. На дне сделать центрирующий “пень” диам. 1мм для платы, тоже за одну установку. В плате - соответственно отверстие под “пень”. Соосность будет такая, что…
Более толстый вал (6мм против 5мм) можно лучше (точнее) обработать. Корпус будет сидеть прямо в стенке джойстика (без посадочного триммирующего кольца) - уменьшится количество деталей, уменьшатся люфты, увеличится место (сейчас его чрезвычайно мало!). Больше диаметр посадочных поясков - точнее посадка, меньше нагрузка на пластик корпуса джойстика.

Pav_13
EagleB3:

Мне бы поконкретнее…

Извини! Поконкретнее не смогу - я перечитал на “Сухом”(и не только) все темы про самодельные (и переделки фабричных) джойстики, сохранил заинтересовавшие меня фотки и схемы и хорошо запомнил не раз высказанную там мысль о необходимости точной механики для полной реализации преимуществ датчиков Холла… Но в какой именно теме и кем это было сказано - не вспомню! Но не доверять тамошним конструкторам оснований нет, ибо, как ты сам заметил - народ там рукастый!
Желаю успеха в осуществлении идеи и с нетерпением буду ждать отчета о положительном результате! 😉

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 это убедительно показал снятыми осциллограммами, но в живую такую фишку еще никто не делал/не публиковал.