реклама на сайте
подробности

 
 
3 страниц V  < 1 2 3  
Reply to this topicStart new topic
> Головоломка: емкостной датчик угла 0..359`, Проблема краевого эффекта
Rostislav
сообщение Nov 4 2010, 11:57
Сообщение #31


Частый гость
**

Группа: Участник
Сообщений: 127
Регистрация: 6-07-08
Из: Москва
Пользователь №: 38 765



Цитата(xemul @ Nov 4 2010, 13:03) *
измерительный сигнал подаётся на подвижную обкладку


В моем случае это именно так. На подвижную (общую) обкладку подаю синус амплитудой порядка 20В. smile.gif
Go to the top of the page
 
+Quote Post
Deka
сообщение Nov 4 2010, 17:49
Сообщение #32


Местный
***

Группа: Свой
Сообщений: 248
Регистрация: 18-07-06
Из: Сочи
Пользователь №: 18 890



А если границы секторов сделать не вдоль радиусов, а вдоль некой спирали? Может быть это поможет? Помница народ как-то боролся с краевым эффектом в емкостных датчиках уровня. Там по идее ваше-же задача, только там подвижный электрод - жидкость. ИМХО Вам надо посмотреть чего и какими силами они добились.
Go to the top of the page
 
+Quote Post
xemul
сообщение Nov 4 2010, 20:32
Сообщение #33



*****

Группа: Свой
Сообщений: 1 928
Регистрация: 11-07-06
Пользователь №: 18 731



Цитата(Rostislav @ Nov 4 2010, 14:57) *
В моем случае это именно так. На подвижную (общую) обкладку подаю синус амплитудой порядка 20В. smile.gif

Осталось добавить умножители или синхронные детекторы.
Go to the top of the page
 
+Quote Post
rudy_b
сообщение Nov 6 2010, 18:58
Сообщение #34


Знающий
****

Группа: Свой
Сообщений: 888
Регистрация: 25-09-08
Из: Питер
Пользователь №: 40 458



Берется генератор, у которого есть 4 выхода:
1. Синус
2. Синус, задержанный на 90* (косинус)
3. Инверсный синус (синус, задержанный на 180*)
4. Инверсный косинус (синус, задержанный на 270*)

На круглой плате нарезается 4 сектора по 90*. Нумеруем их по часовой стрелке и подаем на сектора соответствующие сигналы с 4-х выходов генератора.

Измерительный электрод выполняется в форме такого-же сектора. При его повороте на него будут преимущественно поступать сигналы с соответствующего сектора. Они идут на два синхронных детектора, которые выделяют синусную и косинусную компоненты - дальше простая математика дает угол поворота.

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

Цитата(xemul @ Nov 4 2010, 14:03) *
Ни то, ни другое не спасает от механических погрешностей.

Ессно, зато нет никаких перескоков.


Go to the top of the page
 
+Quote Post
Rostislav
сообщение Nov 6 2010, 22:31
Сообщение #35


Частый гость
**

Группа: Участник
Сообщений: 127
Регистрация: 6-07-08
Из: Москва
Пользователь №: 38 765



Цитата(rudy_b @ Nov 6 2010, 21:58) *
дальше простая математика дает угол поворота


У Вас есть ссылочка на математику? smile.gif Спасибо!
Go to the top of the page
 
+Quote Post
rudy_b
сообщение Nov 7 2010, 01:00
Сообщение #36


Знающий
****

Группа: Свой
Сообщений: 888
Регистрация: 25-09-08
Из: Питер
Пользователь №: 40 458



Цитата(Rostislav @ Nov 7 2010, 02:31) *
У Вас есть ссылочка на математику? smile.gif Спасибо!

Так она школьная, только с квадрантами нужно быть аккуратным.
Если нужен угол > -180 и <=+180 то
if(cos==0 && sin>=0) f=90; *(sin==0 && cos==0 - не бывает)
if(cos==0 && sin<0) f=-90;
if(cos>0) f=atan(sin/cos);
if(cos<0 && sin>=0) f=atan(sin/cos)+180;
if(cos<0 && sin<0) f=-180-atan(sin/cos);

Бывает честная atan2, которая сразу и квадрант учитывает, но это нужно библиотеки смотреть.
Если нужен угол 0...360-, то выражения несколько иные, но принцип тот же.

Что-то в таком духе, рисовал из головы, мог слегка наврать.
Go to the top of the page
 
+Quote Post
Hmm
сообщение Nov 7 2010, 12:31
Сообщение #37


Местный
***

Группа: Свой
Сообщений: 329
Регистрация: 22-06-04
Пользователь №: 124



А такой датчик для авиамодели или частного самолета предпологается использовать? Или так ... для души?


--------------------
Талант не пропить ...
Go to the top of the page
 
+Quote Post
Rostislav
сообщение Nov 9 2010, 13:43
Сообщение #38


Частый гость
**

Группа: Участник
Сообщений: 127
Регистрация: 6-07-08
Из: Москва
Пользователь №: 38 765



Цитата(rudy_b @ Nov 7 2010, 04:00) *
Если нужен угол > -180 и <=+180 то
if(cos==0 && sin>=0) f=90; *(sin==0 && cos==0 - не бывает)
if(cos==0 && sin<0) f=-90;
if(cos>0) f=atan(sin/cos);
if(cos<0 && sin>=0) f=atan(sin/cos)+180;
if(cos<0 && sin<0) f=-180-atan(sin/cos);


Как я могу это применить у себя? У меня три сектора. А напряжение возбуждения подается на одну общую подвижную обкладку.

В своем варианте я стремился ограничится только чистой арифметикой. В принципе это получилось. А тут мощная тригонометрия, а обработка у меня происходит в PIC. При таких вычислениях, я не смогу 10 раз в секунду получать результат. Потом, это уже иная конструкция, а переделывать не хочется.

Цитата(Hmm @ Nov 7 2010, 15:31) *
А такой датчик для авиамодели или частного самолета предпологается использовать? Или так ... для души?

Для самодельного частного самолета. rolleyes.gif Есть у меня такая мечта. Комплект авионики должен получится крутым, как на боинге. 2-а больших цветных ЖКИ дисплея, 2-е БЭВМ и все это будет работать с электронными датчиками.

Сообщение отредактировал Rostislav - Nov 9 2010, 13:45
Go to the top of the page
 
+Quote Post
MrYuran
сообщение Nov 9 2010, 13:48
Сообщение #39


Беспросветный оптимист
******

Группа: Свой
Сообщений: 4 640
Регистрация: 26-12-07
Из: Н.Новгород
Пользователь №: 33 646



Цитата(Rostislav @ Nov 9 2010, 16:43) *
Комплект авионики должен получится крутым, как на боинге. 2-а больших цветных ЖКИ дисплея, 2-е БЭВМ и все это будет работать с электронными датчиками.

Главное, чтобы парашют не подвёл...
Это так, чёрный юмор...


--------------------
Программирование делится на системное и бессистемное. ©Моё :)
— а для кого-то БГ — это Bill Gilbert =)
Go to the top of the page
 
+Quote Post
Rostislav
сообщение Nov 9 2010, 15:02
Сообщение #40


Частый гость
**

Группа: Участник
Сообщений: 127
Регистрация: 6-07-08
Из: Москва
Пользователь №: 38 765



Цитата(MrYuran @ Nov 9 2010, 16:48) *
Главное, чтобы парашют не подвёл...


Не парашют, а балистическая спассистема! Обязательно поставлю!

По-поводу датчика.
Есть идея взять сумму напряжений на крайних секторах. Например, так: U`a = Ua + Ub, U`b = Ub + Uc, U`c = Uc + Ua. И рассчитать угол по этим значениям.
Go to the top of the page
 
+Quote Post
rudy_b
сообщение Nov 13 2010, 16:10
Сообщение #41


Знающий
****

Группа: Свой
Сообщений: 888
Регистрация: 25-09-08
Из: Питер
Пользователь №: 40 458



Цитата(Rostislav @ Nov 9 2010, 17:43) *
Как я могу это применить у себя? У меня три сектора. А напряжение возбуждения подается на одну общую подвижную обкладку.

Так переделайте, делов-то. Особенно если
Цитата
Комплект авионики должен получится крутым, как на боинге. 2-а больших цветных ЖКИ дисплея, 2-е БЭВМ и все это будет работать с электронными датчиками.


А насчет
Цитата
В своем варианте я стремился ограничится только чистой арифметикой. В принципе это получилось. А тут мощная тригонометрия, а обработка у меня происходит в PIC. При таких вычислениях, я не смогу 10 раз в секунду получать результат.

то PIC с этим справится элементарно, даже если считать напрямую. Но никто не мешает использовать табличные значения.

А по поводу одного излучателя и трех приемников - почти гарантированно будет куча некомпенсируемых геометрических искажений. В моем варианте искажения минимальны (например перекос оси будет компенсироваться автоматически) и амплитуда сигнала (одного, а не трех!) значительно более постоянна, что облегчает ее измерение и обработку. Но генерировать приходится два сигнала (два получаются инверсией), что не представляет особой проблемы, хоть таймером с процессора. Можно вообще использовать прямоугольник, а фильтрацию верхних гармоник сделать прямо в проце для одного входного сигнала.
Go to the top of the page
 
+Quote Post

3 страниц V  < 1 2 3
Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 19th July 2025 - 10:40
Рейтинг@Mail.ru


Страница сгенерированна за 0.01473 секунд с 7
ELECTRONIX ©2004-2016