Народ, ищу совета по такому вопросу:
Есть аналоговый джойстик, который, как известно, принимает значение 0-1023.
Есть две проблемы.
Первая, которую я уже частично решил - джойстик не стоит точно по середине и середина не равна 512.
Это частично решается мёртвой зоной, а также замером реального центрального положения при старте.
Вторая проблема - из-за особенностей конструкции концы также не доходят до крайних значений.
Ну, плюс к этому также есть и люфт потенциометра относительно корпуса - но это решается каплей термоклея.
Из-за двух этих проблем не получается нормально контролировать положение сервопривода.
Собственно, может ли кто-то подсказать что-то по этому поводу?
Как подобное считывание осуществляется на разных радиопультах от квадрокоптеров и прочих игрушек?
Ведь там на программном уровне требуются крайне точные положения ручек управления - вышли за пределы сигнала и тут же активируется т.н. failsafe. То бишь необходимо жестко получать показания 0-512-1023.
Буду благодарен любому совету...
Спасибо.
Есть аналоговый джойстик, который, как известно, принимает значение 0-1023.
Есть две проблемы.
Первая, которую я уже частично решил - джойстик не стоит точно по середине и середина не равна 512.
Это частично решается мёртвой зоной, а также замером реального центрального положения при старте.
Вторая проблема - из-за особенностей конструкции концы также не доходят до крайних значений.
Ну, плюс к этому также есть и люфт потенциометра относительно корпуса - но это решается каплей термоклея.
Из-за двух этих проблем не получается нормально контролировать положение сервопривода.
Собственно, может ли кто-то подсказать что-то по этому поводу?
Как подобное считывание осуществляется на разных радиопультах от квадрокоптеров и прочих игрушек?
Ведь там на программном уровне требуются крайне точные положения ручек управления - вышли за пределы сигнала и тут же активируется т.н. failsafe. То бишь необходимо жестко получать показания 0-512-1023.
Буду благодарен любому совету...
Спасибо.