выбор сервотестера
наконец - то сравнил, как шеволятся аналоговая и цифровая серва и поставил рядом графики.
Любопытно то, что аналоговая серва не так уж и плоха - по этому тесту как будто бы никаких проблем не видно - ну да, она чуть медленнее, но - минимально.
Небольшая проблема - только с ее остановкой, она выраженно более пологая.
На графиках - 3 сервы - аналоговый емакс, цифровой емакс, и турнига 306.
Ось X - миллисекунды, ось Y - градусы поворота.
дописал в сервотестер фичу, определяющую параметры входящих импульсов.
Надоело для этих целей подключать осциллограф. Точность измерения - плюс - минус несколько микросекунд, что для довольно тормознутого контроллера, кмк - очень неплохо.
Осталось дописать, чтобы частота импульсов бы выводилась в герцах. и чтобы все это немного бы усреднялось - чтобы цифры не прыгали бы.
на фото образцовые импульсы сервотестер сам же и генерит 😃
Точность измерения - плюс - минус несколько микросекунд
Ммм… чёт не очень. Это даёт примерно 300 различных позиций, качалки, которые прибор различает. Я забыл что там за контроллер у Вас, Input Capture у него есть? Чисто софтово трудно добиться результата лучше, чем у Вас, я пробовал. Особенно если контроллер ещё что-то делает в это время. Я сейчас на stm32 делаю всякие вещи, там куча каналов таймеров с Input Capture.
ничего такого в контроллере нету, чтобы хоть такая точность бы была, приходится извращаться. Я еще не измерял точно, какая погрешность, может не так все и плохо. Надо сначала усреднялку написать. Тактовая частота контроллера - 8 мГц. Длина импульса считается аппаратно, т.е. для этого используется внутренний таймер. Но детект положительного и отрицательного фронтов делается аппаратно. Софтварно считать наверное бесполезно - будет неточно.
stm32 - это хорошо. Я его еще не начал ковырять - погода пока позволяет летать. Перестанет позволять - засяду за писательство. Оно уже не за горами…
И всё-таки, что у Вас за контроллер? Не нашёл в теме.
128атмега
128атмега
Two Expanded 16-bit Timer/Counters with Separate Prescaler, Compare Mode and Capture
Mode
Вот, 2 канала есть в этом контроллере. Попробуйте их заиспользовать. И усреднение не придётся делать.
Так не получится. Те ножки, от которых эта функция будет работать, заняты. А сигнал подается на PF2. Есть уже разведенная плата и я исхожу из нее. Я сегодня, если получится, напишу усреднение и посмотрю как это заработает. Тогда и буду решать, хватит ли такой точности или нет.
Посмотрел - 8 кратное усреднение, и точность будет плюс - минус 1-2мкс ( скорее 1 чем 2 ). Мой осциллограф неособо способен померять точнее 😃.
все сделал. Теперь работает с частотами до 333 Гц ( проверял от 50 до 333 ), но на коротких импульсах немного подвирает с частотой рефреша импульса ( пишет 348 Гц вместо 333 Гц, саму длину импульса определяет правильно ) - не хватает скорости.
В остальном - плюс - минус 1 мС. Такую точность считаю для своих целей удовлетворительной. Теперь я могу ентот прибор юзать для своих целей вместо осциллографа, если надо посмотреть параметры импульса. Одно нехорошо: я вывел датчик импульсов туда, где подключается внешний потенциометр. На этом же разъеме есть питание потенциометра. Соответственно, подключая тупо все 3 провода, можно чтонить спалить.
Осталось дописать тест для пробега серв, т.е. чтобы она делала бы энное задаваемое количество циклов, пересмотреть все, включая интерфейс, и концептуально прибор можно считать завершенным.
заказал себе bluetooth to rs232 tranceiver. Хочу пощупать, каков он. Если понравится, тогда решится вопрос с тем, какой делать интерфейс с логгером.
Надо бы больше информации, может мануалы там есть? Сервы управляются импульсами определённой ширины. Есть 2 основных вида: “обычные”, с шириной импульса в центре 1520 (1500) мкс и “хвостовые”, с шириной импульса в центре 760 мкс. Судя по картинке, “очень дешёвый” не может работать с “хвостовыми”, потому что нигде не видно, как переключается ширина импулься.
Вся инфа, что по ним есть:
Для дешевого:
Данный цифровой тестер имеет 4 выхода для сервоприводов или регуляторов скорости.
Три режима тестирования, и три разных режима выходного сигнала.
Информация о режиме выводится на цифровой LED индикатор.Режимы работы
S-1 ручной режим
S-2 нейтральное положение сервопривода
S-3 автоматический режимКнопка изменения пульсации сигнала
50H аналоговый серво сигнал циклом в 20мс и частатой 50Hz
125H цифровой сигнал циклом в 8мс и частотой 125Hz
250H цифровой сигнал циклом в 4мс и частотой 250HzХарактеристики
Входящее напряжение: DC 5~6V
Ширина выходного сигнала: 800~2200мс
Для очень дешевого:
Сервотестер имеет выход на три канала и один на вход.
Может так же использоваться для генерации сигнала для ESC регулятора скорости не на полную мощность.
Присутствует три режима тестирования:
Manual - ручной режим, где положение регулируется полностью через регулятор
Neutral - переводит сервопривод в нейтральное положение
Auto - автоматический циклический режим медленно вращает сервопривод туда и обратно.Характеристики: 4.8-6 Вольт
Ну, хвостовые сервы значит они оба не умеют. Цифровой кажется удобнее тем, что явно показывает текущую ширину импульса. Иногда полезно.
“Иногда” - ключевая фраза к выбору покупки 😃 Спасибо!
“очень дешёвый” не может работать с “хвостовыми”, потому что нигде не видно, как переключается ширина импулься.
это по факту - кусок гавнища на микросхеме 555. Стабильность импульса - на нуле, частота - около 50 Гц, зависит от чего угодно - температуры, напряжения блока питания и т.д.
Какие там 760 uS? 😃 Собственно, у меня такой имеется. Про второй ничего не скажу.