Эксперт
Регистрация: 17.04.2014
Адрес: Южное Подмосковье
Сообщений: 1,814
Репутация: 792
|
Цитата:
Он пишет: Цитата:
Есть емкостный датчик с логарифмической зависимостью емкости от угла поворота. Емкость датчика определяет частоту RC генератора. В положении минимальной емкости частота составляет 16000 в относительных единицах (в герцы не пересчитывать нет надобности, просто количество подсчитанных счетчиком импульсов за время измерительного интервала), при максимальной емкости 750.
С уважением... |
||
Оценка
|
Новичок
|
Извиняюсь, даже не понял, тема о датчике СО, просит прикрутить МК, а вопрос по RC генератору.
__________________
Глаза боятся, руки делают! |
||
Оценка
|
Знаток
Регистрация: 07.10.2009
Адрес: А кому интересно?
Сообщений: 378
Репутация: 71
|
Цитата:
С помощью АЦП замеряете напряжение на датчике Uizm. Нужно знать основание. Если в датчике функция десятичного логарифма lg - основание 10, то расчет будет таким Uantlg = 10 ^ Uizm.
Если функция натурального логарифма ln - основание e, то расчет такой Uantlg = e ^ Uizm. Бывает произвольное основание log n - основание n, тогда Uantlg = n ^ Uizm. Здесь, подбирая n можно получить нужную функцию, как бы n подстроечный резистор. Нет, это я извиняюсь, невнятно выразил свою проблему. А так, разницы вроде нет что приводить к линейному виду, данные с АЦП или со счетчика частотомера. |
||
Оценка
|
Знаток
Регистрация: 07.10.2009
Адрес: А кому интересно?
Сообщений: 378
Репутация: 71
|
Цитата:
Все номиналы компонентов в RC цепи привести не могу. Потому что вместо R у меня два источника тока внутри генератора, который в свою очередь замурован в микроконтроллер. Снаружи только C, емкость которого изменяется от 82 до 780 пФ. Были трудности с составлением графика зависимости емкости от угла поворота. Собственно, датчик, это КПЕ в каком-то редукторе непонятно откуда, с двигателем постоянного тока ватт на 100 и редуктором. КПЕ стоит в отдельной секции картера редуктора и приводится во вращение через несколько шестеренок (вал редуктора вращается почти на 360, а ротор КПЕ при этом на 180 градусов. На что-то подстроечное от радиостанции непохоже, уж больно мощный движок и выходной вал редуктора. Скорее всего КПЕ был датчиком угла поворота какого-то механизма, в каковой роли я его и собираюсь задействовать. Какая нелегкая заставила конструктора поставить туда нелинейный датчик, тут я совсем без понятия. Возможно, нужна была разная точность позиционирования вала в начальном и конечном положениях вала. Пришлось повозится снимая график зависимости C от угла поворота выходного вала редуктора. Для удобства график составлял не в градусах и минутах, а в процентах от полного поворота КПЕ на 180 градусов. На рисунке то, что у меня получилось: |
||
Оценка
|
Знаток
Регистрация: 07.10.2009
Адрес: А кому интересно?
Сообщений: 378
Репутация: 71
|
По оси X угол поворота в процентах, по оси Y частота генератора в килогерцах. Отношение максимальной и минимальной частоты равно 6,53. Отношение значений функции между соседними точками по оси X (например, между 3 и 4 или 8 и 9) равняется 1,21 и сохраняется на всех участках от начала до конца оси X.
Программа в которой рисовал график зависимости вроде как умеет проводить регрессионный анализ, и она мне выдала мне несколько возможных вариантов функций. Это были: 1. экспоненциальная функция 18.9740146*exp(0.1870702*x) 2. показательная функция 18.9740146*1.205712^x 3. полиноминальная функция 1.0508159*x^2-0.3136131*x+22.2076923 Теперь бы разобраться еще чего мне с этим всем делать, так чтобы получить на выходе программы в МК значения линейно зависящие от угла поворота. Скажем, с этим вот: 18.9740146*1.205712^x. Вижу, что нужно извлечь из чего-то корень и поделить что-то на что-то, но что и на что не соображу. Понимаю, что это примитив, но уже мозги устали, целую неделю ковырялся с редуктором, генератором и частотомером в МК, теперь еще это... Аж нервы стали подводить, матерюсь второй день листая справочник по математике. Смотрю в книгу, вижу фигу... |
||
Оценка
|
Эксперт
Регистрация: 08.11.2009
Сообщений: 2,310
Репутация: 639
|
Цитата:
По оси X угол поворота в процентах, по оси Y частота генератора в килогерцах. Отношение максимальной и минимальной частоты равно 6,53. Отношение значений функции между соседними точками по оси X (например, между 3 и 4 или 8 и 9) равняется 1,21 и сохраняется на всех участках от начала до конца оси X.
КМК граф должен быть перевернут , на сколько я понимаю по оси Х откладывается известная величина , оная у тебя частота измеренная МК , по У у тебя должен быть угол поворота КПЕ или нет? |
||
Оценка
|
Специалист
Регистрация: 21.05.2007
Адрес: Москва
Сообщений: 475
Репутация: 212
|
Элементарно, Ватсон! Показательные уравнения решаются где-то в 7-м классе. Нужно логарифмировать обе части уравнения, после чего показательное уравнение превращается в арифметическое (умножение превращается в сложение, возведение в степень - в умножение).
Тянуть "дикие" хвосты чисел также нет смысла - вряд ли генератор имеет стабильность больше 0.1%. Это вообще квадратное уравнение. Лет 10 назад про дискриминанты знал почти каждый.
Последний раз редактировалось AMC; 07.03.2018 в 01:36.
|
||
Оценка
|
Специалист
Регистрация: 21.05.2007
Адрес: Москва
Сообщений: 475
Репутация: 212
|
Кстати, хотите математический ужастик на ночь? Классная книга, читается почти на одном дыхании "Дядя Петрос и проблема Гольдбаха". Ссылку не привожу по известным причинам. Там числа становятся почти живыми, а в конце... не буду раскрывать интригу. И никакой мистики, даже очень похоже, что книга написана на основе реальных событий.
|
||
Оценка
|
Новичок
|
Проще всего вам забить значения 11 точек в массив, а если значение будем между точек, сделать математическую аппроксимацию. Есть второй вариант, почитать решение уравнения методом Гаусса. В Excel рассчитать 11 коэффициентов для ваших точек, занести их в массив (МК) и делать расчет любой точки с помощью этих коэффициентов. Когда-то была задача рассчитать остойчивость судна, нужно было танки с жидкость забить в таблицы через тонну. Танков тьма. Я сделал это с помощью Гаусса, по одиннадцать коэффициентов на танк. Вот для примера демка, восстанавливает синусоиду по 11 коэффициентам и пример библиотеки для Delphi (Pascal). Пробовал на атмеге8, даже она справляется.
__________________
Глаза боятся, руки делают! |
||
Оценка
|
Специалист
Регистрация: 21.05.2007
Адрес: Москва
Сообщений: 475
Репутация: 212
|
Что-то ваша демка какая-то мутная голословная - "как видно из графика". Ни СКО, ни максимальной ошибки. Что там видно? Что верхняя синусоида ровная, а нижняя приплюснутая? Что за аппроксимация? Линейная? Сплайнами?
Похвально, что вы знаете метод Гаусса, но для получения хорошей точности нужно искать не "cтроку с максимальным элементом в k-ом столбце", а ведущий элемент и переставлять не только строки, но и столбцы (учитывая при этом, что последовательность корней тоже изменится). |
||
Оценка
|
Обратная связь РадиоЛоцман Вверх |