От нечего делать решил попробовать сделать что-то наподобие автопилота, для удержания вертолета в одной точке. Моя программа должна получать команды перемещения в ввиде Х-У координат ну и соостветственно координаты для коррекции положения вертолета тоже выдает как Х-У. Изобретать велосипед не хочется, поэтому вопрос: поделитесь формулой пересчета положения ручек газа, Х, У в положения сервомашинок автомата перекоса CCPM 120.
Elservo1=(X)+Шаг,ALservo2=(-Y+X/2)+Шаг,ALservo3=(+Y+X/2)+Шаг
Реверсы от расположения!
Суважением Сергей!
Столкнуся с небольшой проблеммой, а как правильно учитывать g при определении наклона ? А то пока все не двигается , угол наклона корректируется нормально, а стоит только подвигать вертолет в любом из направлений, сервы начинают дергаться. Куда прилепить компенсацию g - пока не придумал.
Кстати, длину вектора (т.е. g) я правильно посчитал ? g=sqrt(XX*XX+YY*YY+ZZ*ZZ) XX,YY,ZZ - это проекции силы на соответствующие оси или то что выдают акселометры.
XYZ гироскопы пока не задействовал. Чесно говоря я незнаю, обязательно ли они нужны ? Планируется вертолет держать горизонтально а при наличии горизонтальных перемещений, погасить их небольшим наклоном в противоположную сторону. Высоту контролировать - датчиком давления, а горизонтальную скорость - при помощи GPS. Что я не учел ?
Не с того наверно начинаете!
Надо ознакомится с системами балансинга
Теорией PID
А также неплохо бы было использовать Калмана(впрочем это не обязательно но желательно)
Столкнуся с небольшой проблеммой, а как правильно учитывать g при определении наклона ? А то пока все не двигается , угол наклона корректируется нормально, а стоит только подвигать вертолет в любом из направлений, сервы начинают дергаться. Куда прилепить компенсацию g - пока не придумал.
Кстати, длину вектора (т.е. g) я правильно посчитал ? g=sqrt(XX*XX+YY*YY+ZZ*ZZ) XX,YY,ZZ - это проекции силы на соответствующие оси или то что выдают акселометры.
XYZ гироскопы пока не задействовал. Чесно говоря я незнаю, обязательно ли они нужны ? Планируется вертолет держать горизонтально а при наличии горизонтальных перемещений, погасить их небольшим наклоном в противоположную сторону. Высоту контролировать - датчиком давления, а горизонтальную скорость - при помощи GPS. Что я не учел ?
Осталось всего ничего - сделать инерциальную систему навигации и
на прицеп к автомобилю. “Велосипед” давно изобретен - инфы полны форумы!
Успехов!
А, что тема накрылась?
{"assets_hash":"a8b26fa7f6e768b07a72c8c9aadb9422","page_data":{"users":{"3dab48383df95500777973cd":{"_id":"3dab48383df95500777973cd","hid":805,"name":"botvoed","nick":"botvoed","avatar_id":null,"css":""},"452f5a043df95500777888c2":{"_id":"452f5a043df95500777888c2","hid":17488,"name":"YAN=","nick":"YAN=","avatar_id":null,"css":""},"476e2e083df955007777f099":{"_id":"476e2e083df955007777f099","hid":30108,"name":"digi","nick":"digi","avatar_id":null,"css":""},"486104e83df9550077779a17":{"_id":"486104e83df9550077779a17","hid":35846,"name":"PilotPVO","nick":"PilotPVO","avatar_id":null,"css":""}},"settings":{"can_see_ip":false,"can_report_abuse":false,"can_see_hellbanned":false,"forum_can_view":true,"forum_can_reply":false,"forum_edit_max_time":30,"forum_can_close_topic":false,"forum_show_ignored":false,"forum_mod_can_delete_topics":false,"forum_mod_can_hard_delete_topics":false,"forum_mod_can_see_hard_deleted_topics":false,"forum_mod_can_edit_posts":false,"forum_mod_can_pin_topic":false,"forum_mod_can_edit_titles":false,"forum_mod_can_close_topic":false,"can_vote":false,"forum_mod_can_add_infractions":false,"forum_topic_title_min_length":10,"forum_reply_old_post_threshold":30,"votes_add_max_time":168,"forum_show_post_interval":7,"can_see_deleted_users":false},"section":{"_id":"61c9a54c3df9550077bb5141","hid":65,"title":"Аппаратура, гироскопы, гувернеры, электроника","parent":"61c9a54c3df9550077bb5129","description":"Вертолётная аппаратура радиоуправления и бортовая электроника.","is_category":false,"is_votable":true,"is_writable":true,"cache":{"topic_count":2493,"post_count":58135,"last_post":"662112c5c68e4ffcbc03594f","last_topic":"60578d413df9550077bcdddd","last_topic_hid":564262,"last_topic_title":"Futaba CGY760R совместимость с передатчиками Futaba","last_ts":"2024-04-18T12:32:05.438Z","last_user":"63f37a5e6371a12da97d4b90"}},"topic":{"_id":"4984a5fd3df9550077a116d6","hid":129766,"title":"Делаю автопилот. Конвертнуть газ+X+Y->CCPM120","views_count":1195,"last_post_counter":6,"cache":{"post_count":6,"first_post":"4984a5fd3df9550077a11e38","first_ts":"2009-01-31T19:26:53.000Z","first_user":"476e2e083df955007777f099","last_post":"49aaafbc3df9550077a11e42","last_post_hid":6,"last_ts":"2009-03-01T15:54:36.000Z","last_user":"452f5a043df95500777888c2"},"st":1,"section":"61c9a54c3df9550077bb5141"},"subscription":null,"pagination":{"total":6,"per_page":25,"chunk_offset":0},"posts_list_before_post":["paginator","datediff"]},"locale":"en-US","user_id":"000000000000000000000000","user_hid":0,"user_name":"","user_nick":"","user_avatar":null,"is_member":false,"settings":{"can_access_acp":false,"can_use_dialogs":false,"hide_heavy_content":false},"unread_dialogs":false,"footer":{"rules":{"to":"common.rules"},"contacts":{"to":"rco-nodeca.contacts"}},"navbar":{"tracker":{"to":"users.tracker","autoselect":false,"priority":10},"forum":{"to":"forum.index"},"blogs":{"to":"blogs.index"},"clubs":{"to":"clubs.index"},"market":{"to":"market.index.buy"}},"recaptcha":{"public_key":"6LcyTs0dAAAAADW_1wxPfl0IHuXxBG7vMSSX26Z4"},"layout":"common.layout"}