[image]

Кобра III

 
1 9 10 11 12 13 78
UA Non-conformist #16.03.2009 22:59  @Non-conformist#16.03.2009 22:52
+
-
edit
 

Non-conformist

аксакал

Non-conformist> А линейность выхода мы добыли подробно описанными выше способами - либо сравнением экспериментальных кривых с чистыми, теоретическими синусоидами (VMK), либо сравнением "пиявки" с чистой, теоретической прямой (твоим).
Ты посмотри на графики - VMK и свои. Там же ВИЗУАЛЬНО видно, что распределение величин поправочных коэффициентов (расстояния между идеальными и экспериментальными кривыми) совершенно одинаково. Во всяком случае визуально ОЧЕНЬ похоже...
   

-VMK-

опытный

Serge77> ты предполагаешь такое управление, при котором двигатель может быть либо точно вдоль оси ракеты, либо упёртый в крайне отклонённое положение (в стенку)?

В таблицата на N-C има всички данни за всякакви ъгли със стъпка 5 градуса. Данните от един ред в таблицата се отнасят за крайно положение. Но данни от различни редове на таблицата определят точка вътре в кръга (както е на приложената картинка). В примера допускаме че вектора е в положение 1 - ще има данни X1,Y1, когато се премести в положение 2, ще има данни X2,Y2...

Правилно ли съм разбрал ?
Прикреплённые файлы:
 
   7.07.0
UA Non-conformist #16.03.2009 23:07  @-VMK-#16.03.2009 23:03
+
-
edit
 

Non-conformist

аксакал

-VMK-> Правилно ли съм разбрал ?
Во-во. Вот тебе и "направление плоской стрелки" и ее "длина".
   

Serge77

модератор

-VMK-> В таблицата на N-C има всички данни за всякакви ъгли със стъпка 5 градуса

Конечно есть, я об этом уже несколько раз написал.
   3.03.0
+
-
edit
 

Serge77

модератор

В моём представлении управление выглядит так.
Располагаем ось z вдоль оси ракеты. Оси x, y - точно по осям кардана. Солнечный датчик располагаем так, чтобы одна пара диагонально противоположных фотоэлементов чувствовала поворот ракеты только вокруг оси х, а вторая пара - вокруг оси у.

Таким образом получаем два независимых канала управления. Получаем сигнал от одной пары солнечных фотосенсоров, если есть отклонение, расчитываем нужное отклонение двигателя по соответствующей оси (по одной конкретной оси), как можно быстрее поворачиваем двигатель одним соответствующим актуатором. В следующий момент делаем то же самое, только начиная с сигнала со второго фотосенсора. Дальше сначала по циклу.

Для такого алгоритма нужно знать зависимость отклика фотодатчика каждой оси кардана от угла поворота соответствующей оси кардана, для того, чтобы знать, довернули ли мы эту конкретную ось до нужного угла. Вот поэтому я и строю зависимость сигнала от угла поворота кардана, а не часовой стрелки.

Если у тебя другой алгоритм, тогда может быть нужны другие зависимости.
   3.03.0
UA Non-conformist #17.03.2009 10:07  @Serge77#17.03.2009 00:06
+
-
edit
 

Non-conformist

аксакал

Serge77> Располагаем ось z вдоль оси ракеты. Оси x, y - точно по осям кардана. Солнечный датчик располагаем так, чтобы одна пара диагонально противоположных фотоэлементов чувствовала поворот ракеты только вокруг оси х, а вторая пара - вокруг оси у.

Это условность. Никаких осей "Х" и "У" не существует в природе. Есть две оси кардана, с двумя датчиками, сидящими на них, и две оптические оси солнечного датчика. Вот ЭТИ ДВЕ ПАРЫ осей должны лежать строго в двух плоскостях, ПОПАРНО: "одна ось датчика положения - одна ось солнечного датчика" и "вторая, перпендикулярная первой, ось датчика положения - вторая, перпендикулярная первой, ось солнечного датчика". ДВЕ ПАРЫ. Если ты об этом, то я с тобой полностью согласен.

Serge77> Таким образом получаем два независимых канала управления. Получаем сигнал от одной пары солнечных фотосенсоров, если есть отклонение, расчитываем нужное отклонение двигателя по соответствующей оси (по одной конкретной оси), как можно быстрее поворачиваем двигатель одним соответствующим актуатором. В следующий момент делаем то же самое, только начиная с сигнала со второго фотосенсора. Дальше сначала по циклу.
Именно.

Serge77> Для такого алгоритма нужно знать зависимость отклика фотодатчика каждой оси кардана от угла поворота соответствующей оси кардана, для того, чтобы знать, довернули ли мы эту конкретную ось до нужного угла.
Именно.

> Вот поэтому я и строю зависимость сигнала от угла поворота кардана, а не часовой стрелки.
Мы оба получаем одну и ту же градуировочную характеристику датчика. Ты - через дополнительный график, я - напрямую из развертки окружности. Не веришь - посчитай конкретно, сколько милливольт у тебя приходится на один градус отклонения оси. У меня получится ТО ЖЕ САМОЕ ЧИСЛО. Оно просто не может быть другим, поскольку исходные данные одни и те же. Косвенное этому доказательство - идентичность распределения поправочных коэффициентов вдоль диапазона изменения углов. Посмотри на картинку ниже - это же ОДИН И ТОТ ЖЕ ГРАФИК, только как бы на разных проекциях. С той только разницей, что на графике VMK информации содержится в два раза больше, она отражает весь диапазон отклонения углов для каждой из осей. А у тебя - видимо, только половину. Сравни красные и зеленые штриховки, и ты увидишь, что это одно и то же яйцо, только в двух разных проекциях.

Serge77> Если у тебя другой алгоритм, тогда может быть нужны другие зависимости.
Нет у меня другого алгоритма. И других зависимостей тоже нет. У меня есть линейный датчик с градуировочной характеристикой вида "Х мВ/один градус поворота оси".
Прикреплённые файлы:
 
   
UA Serge77 #17.03.2009 14:33  @Non-conformist#17.03.2009 10:07
+
-
edit
 

Serge77

модератор

Non-conformist> Если ты об этом, то я с тобой полностью согласен.

О, отлично ;^))

Non-conformist> Мы оба получаем одну и ту же градуировочную характеристику датчика. Ты - через дополнительный график, я - напрямую из развертки окружности.

Вот тут я тебя не понимаю. Когда мне нужно выяснить зависимость Х от У, то я строю график именно Х от У, а не какой-то другой. Это намного полезней, например на моём графике виден гистерезис (видимо из-за люфтов), а на твоём не виден.

Non-conformist> на графике VMK информации содержится в два раза больше, она отражает весь диапазон отклонения углов для каждой из осей. А у тебя - видимо, только половину. Сравни красные и зеленые штриховки, и ты увидишь, что это одно и то же яйцо, только в двух разных проекциях.

На моём графике - данные только одного датчика, но все его данные, все 72 точки. Я об этом писал.
А красные и зелёные линии на моём графике - это показатель гистерезиса, а не поправки для разных датчиков, как на твоём графике.
   3.03.0
+
-
edit
 

Serge77

модератор

Кстати, красные и зелёные линии нужно проводить строго вертикально, это же погрешность по оси У.
   3.03.0
UA Non-conformist #17.03.2009 17:05  @Serge77#17.03.2009 14:33
+
-
edit
 

Non-conformist

аксакал

Лед тронулся, как я понимаю. Двигаем дальше.

Serge77> На моём графике - данные только одного датчика, но все его данные, все 72 точки. Я об этом писал.
Виноват - в этом я ошибся. Ты прав.

Serge77> А красные и зелёные линии на моём графике - это показатель гистерезиса, а не поправки для разных датчиков, как на твоём графике.
А вот в этом вопросе ошибаешься ТЫ. Красные и зеленые линии - это ИМЕННО, самые что ни на есть, поправочные "зазоры", которые могут и ДОЛЖНЫ быть использованы для приведения показаний датчика к линейному закону. Это никакой не гистерезис, его там просто нет и быть не может - датчик бесконтактный, ОПТИЧЕСКИЙ, а электрического гистерезиса я туда не вводил. Да и не смог бы, даже если бы и захотел - это не триггерная схема, здесь ничего не переключается, сигнал НЕПРЕРЫВНЫЙ.

Люфты же действительно присутствуют, и "ступенька" на картинке ниже - как раз от них. Это проверено экспериментально, несколько раз, путем приложения к кардану небольших знакопеременных осевых нагрузок, которые выбирали эти люфты сначала в одну, потом в другую сторону. Пятно лазера на мишени при этом стремились оставить неподвижным (насколько это было возможно) - показания тестеров ВОСПРОИЗВОДИМО изменялись. Я об этом писал выше, в ответ на сообщение участника Ckona, и даже приводил процент погрешности, который вносят эти люфты - около 2%. Понятно, в глаза эта "ступенька" не бросается, но тем не менее при растягивании графика по горизонтали она просматривается вполне нормально...

Кстати, вопрос VMK: а почему ИДЕАЛЬНАЯ окружность получилась тоже НЕзамкнутой? И концы синусоиды "Ideal "Y" расположены НЕ на одном уровне - левый конец (точка "1") на отметке "1384", а правый (точка "72") - на отметке "1333". Насколько я понимаю, они должны быть на одном уровне по оси "У"? И еще один вопрос: где на экспериментальных синусоидах можно найти упомянутую выше "ступеньку"?
Прикреплённые файлы:
 
   
UA Serge77 #17.03.2009 17:28  @Non-conformist#17.03.2009 17:05
+
-
edit
 

Serge77

модератор

Non-conformist> Красные и зеленые линии - это ИМЕННО, самые что ни на есть, поправочные "зазоры"

Да, зазоры. Но одному значению Х соответствует два значения У, а значит и два зазора. Какой зазор выбрать?

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

Причина может быть такая: несовпадение вертикальной оси мишени и вертикальной оси кардана (в смысле одной из осей кардана, которая должна была стоять точно вертикально). Сейчас попробую это проверить.
   3.03.0

-VMK-

опытный

Non-conformist> Кстати, вопрос VMK: а почему ИДЕАЛЬНАЯ окружность получилась тоже НЕзамкнутой?

По моему това е нормално, поради разликата в данните "min" и "max" по X и по Y. Т.е. ако "min_X"="min_Y" и "max_X"="max_Y" то окръжността ще бъде геометрически точна и затворена. Но системата може да е идеална (линейна) и при разлика в диапазона данни по X и Y, тогава "ideal_X" и "ideal_Y" няма изобразяват геометрически правилна и затворена окръжност.
   3.0.73.0.7
+
-
edit
 

Serge77

модератор

Если диапазон Х не равен диапазону У, то окружность не становится незамкнутой. Она становится овалом, но замкнутым.
   3.03.0
UA Non-conformist #17.03.2009 17:39  @Non-conformist#17.03.2009 17:05
+
-
edit
 

Non-conformist

аксакал

Non-conformist> А вот в этом вопросе ошибаешься ТЫ.
Виноват. Гистерезис может возникнуть не только в контактных механических датчиках, но и в бесконтактных, которые регистрируют перемещение механических частей. Более того - он возникает не только при осевых люфтах кардана, но и при его РАДИАЛЬНЫХ люфтах (осевых люфтах его КОЛЕЦ). Осевые люфты колец более-менее точно измерены, и равны примерно 0,2 мм. При упоре "заглушки РДТТ" о внутреннюю поверхность трубы корпуса, и при прохождении таким образом всего периметра трубы, эти люфты безусловно выбирались, причем знакопеременно - и в одну, и в другую сторону. В этом ты прав. Но пока я вижу, что только в этом. Гистерезис есть, но есть и поправочные коэффициенты, которые необходимо использовать для приведения градуировочной характеристики датчиков к линейному закону.

Что на твоем графике (с моими пометками) есть гистерезис? Это РАЗНОСТЬ длин зеленых и красных штрихов. А поправки на линейность - это переменные зазоры ОТ маркерных кривых ДО желтой прямой. И тут у твоего графика явная проблема - как вычислить эти поправки для прохождения всего диапазона углов? На синусоидах все ясно - там наглядно видно, где находится заглушка, и на какую величину ее положение в данный момент не совпадает с идеальным. Берем поправку - поправляем. А что с твоим графиком? Ты можешь каким-то образом увязать его с синусоидами? Хотя ты скажешь, что тебе незачем увязывать его с какими-то синусоидами, это понятно...

Кстати, на синусоидах ТОЖЕ виден гистерезис - зазоры там тоже НЕодинаковы. Хотя это и не так бросается в глаза, как на твоем графике.
   

-VMK-

опытный

-VMK-> По моему това е нормално...
Serge77> Если диапазон Х не равен диапазону У, то окружность не становится незамкнутой

Хм, друга причина - диапазона данни е с начало 5градуса до 360градуса. т.е. за да е вярно: данни No:1 = данни No:72, то началния и крайния ъгъл трябва да са еднакви: от 0градуса до 360градуса ;-)
   3.0.73.0.7
UA Non-conformist #17.03.2009 17:50  @Serge77#17.03.2009 17:28
+
-
edit
 

Non-conformist

аксакал

Serge77> Причина может быть такая: несовпадение вертикальной оси мишени и вертикальной оси кардана (в смысле одной из осей кардана, которая должна была стоять точно вертикально). Сейчас попробую это проверить.
Да, вертикальная ось кардана выставлялась чисто "на глаз". При ее длине 100 мм о какой-то точной вертикальности говорить не приходится. С мишенью чуть проще - диаметр окружности около 600 мм, но и ее я по отвесу не выставлял. В следующий раз обращу на это особое внимание.
   
UA Non-conformist #17.03.2009 17:54  @-VMK-#17.03.2009 17:46
+
-
edit
 

Non-conformist

аксакал

-VMK-> ... 5градуса до 360градуса ... 0градуса до 360градуса
Судя по всему, так оно и есть. Но что надо сделать ПРАКТИЧЕСКИ для того, чтобы окружность замкнулась, а концы синусоиды выровнялись?
   
UA Serge77 #17.03.2009 17:55  @Non-conformist#17.03.2009 17:39
+
-
edit
 

Serge77

модератор

Non-conformist> Что на твоем графике (с моими пометками) есть гистерезис? Это РАЗНОСТЬ длин зеленых и красных штрихов.

Согласен. Только если провести штрихи вертикально, так правильно.

Non-conformist> А поправки на линейность - это переменные зазоры ОТ маркерных кривых ДО желтой прямой.

Согласен. Эти зазоры - это и есть зелёные и красные штрихи. Только если провести штрихи вертикально, так правильно.
Только в каждой точке поправка должна быть одна, а зазора два из-за гистерезиса.

Non-conformist> И тут у твоего графика явная проблема - как вычислить эти поправки для прохождения всего диапазона углов?

Так же, как на твоём графике - провести вертикальные штрихи и измерить из высоту. Правда я не знаю, что будет означать длина этого штриха на твоём графике. А на моём это будет как раз искомая поправка.

Только учти, что на моём графике в принципе не может быть диапазона углов в 360 градусов, потому что у меня градусы - это градусы поворота оси кардана, а твои градусы - это градусы поворота часовой стрелки.

Ещё раз напомню, что на моём графике диапазон углов в ±60 градусов условен, его нужно отмасштабировать до реального (градусов 10-20 кажется).
   3.03.0
+
-
edit
 

Serge77

модератор

Если повернуть ось мишени на 4 градуса, то гистерезис почти исчезает. Остаётся наверно только гистерезис из-за люфта.
Прикреплённые файлы:
 
   3.03.0
UA Non-conformist #17.03.2009 18:04  @Serge77#17.03.2009 17:55
+
-
edit
 

Non-conformist

аксакал

Я не понимаю, как ты получаешьсвои кривые. Будь добр, объясни еще раз с САМОГО начала. Что у тебя по осям, каким боком там прислоняются мои экспериментальные данные... Я запутался.
   

-VMK-

опытный

-VMK-> ... 5градуса до 360градуса ... 0градуса до 360градуса
Non-conformist> Но что надо сделать ПРАКТИЧЕСКИ для того, чтобы окружность замкнулась, а концы синусоиды выровнялись?

Добави стъпка(шаг) 0 - оградуса. Практически стъпка 0 е еднаква с стъпка72:
Прикреплённые файлы:
 
   3.0.73.0.7
UA Non-conformist #17.03.2009 18:28  @-VMK-#17.03.2009 18:18
+
-
edit
 

Non-conformist

аксакал

-VMK-> Добави стъпка(шаг) 0 - оградуса. Практически стъпка 0 е еднаква с стъпка72:
Недаром программеры с нуля считают. :) Спасибо.
   
UA Non-conformist #17.03.2009 18:47  @Serge77#17.03.2009 17:55
+
-
edit
 

Non-conformist

аксакал

Serge77> Так же, как на твоём графике - провести вертикальные штрихи и измерить из высоту. Правда я не знаю, что будет означать длина этого штриха на твоём графике. А на моём это будет как раз искомая поправка.
А какое мнение на этот счет будет у -VMK-?

Serge77> Только учти, что на моём графике в принципе не может быть диапазона углов в 360 градусов, потому что у меня градусы - это градусы поворота оси кардана, а твои градусы - это градусы поворота часовой стрелки.
Градусы поворота часовой стрелки (а не минутной ли?) на графике с синусоидами отложены по оси "Х". Семьдесят два шага по пять градусов, всего триста шестьдесят - полный "циферблат", будь он неладен. Но у меня же не только ось "Х" на графике нарисована? Что же тогда по-твоему изображают синусоиды?
   
UA Serge77 #17.03.2009 18:56  @Non-conformist#17.03.2009 18:47
+
-
edit
 

Serge77

модератор

Non-conformist> Что же тогда по-твоему изображают синусоиды?

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

Сейчас напишу, как я строю графики.
   3.03.0
+
-
edit
 

Serge77

модератор

Загрузи файл.
Вторая колонка - твои данные, угол стрелки.
Пятая колонка - твои данные, сигнал с одной оси кардана.

Вычисляем угол поворота кардана из угла стрелки.
Колонка 3 - переводим градусы из второй колонки в радианы и берём синус, получаем угол кардана в радианах.
Колонка 4 - переводим угол кардана из радиан в градусы, просто для удобства.

Строим график - зависимость угла поворота кардана от сигнала датчика этого кардана.
Видим большой гистерезис, решаем что он из-за несовмещённости вертикали мишени и оси кардана.
Пробуем вращать ось мишени. Для этого в ячейке А1 изменяем число от 0 до тех пор, пока гистерезис на глаз станет минимальным. Это примерно 4 градуса.

Ещё раз напомню, что на моём графике диапазон углов в ±60 градусов условен, его нужно отмасштабировать до реального. Например, если реальный угол поворота кардана максимум 20 градусов, тогда все значения углов нужно уменьшить в 3 раза.

Для того, чтобы построить такой же график для второго кардана, нужно сделать то же самое, только взять косинус, а не синус.
Прикреплённые файлы:
 
   3.03.0
AD Реклама Google — средство выживания форумов :)
UA Non-conformist #17.03.2009 19:24  @Serge77#17.03.2009 19:08
+
-
edit
 

Non-conformist

аксакал

1. Зачем радианы?
2. Почему нулевая горизонтальная линия делит кривую не точно надвое, причем сильно неточно? Погрешность эксперимента?
   
1 9 10 11 12 13 78

в начало страницы | новое
 
Поиск
Настройки
Твиттер сайта
Статистика
Рейтинг@Mail.ru