Микроконтроллеры, АЦП, память и т.д Темы касающиеся микроконтроллеров разных производителей, памяти, АЦП/ЦАП, периферийных модулей... |
13.10.2006, 18:49
|
|
Гражданин KAZUS.RU
Регистрация: 21.02.2005
Сообщений: 685
Сказал спасибо: 14
Сказали Спасибо 84 раз(а) в 44 сообщении(ях)
|
Скажу сразу это геморой величеной с кулак.
Както столкнулся с подобной проблемой, пол месяца програмиррова и сделал что удивительно на ПИК16Ф84.
Мерил до 5 КГц. Как удалось сам не знаю.
Если с возведением в квадрат не все так печально (хотя пришлось для быстрой работы использовать табличную конвертацию и двоичное умножение со сдвигом)то вот с корнем дела обстаят печальнее. Я использовал разложение в ряд. Контроллер был загружен на все 100.
|
|
|
|
13.10.2006, 18:55
|
|
Вид на жительство
Регистрация: 23.04.2006
Сообщений: 308
Сказал спасибо: 14
Сказали Спасибо 13 раз(а) в 12 сообщении(ях)
|
Цитата:
|
..он может помереть...
|
Уже умер ![Ну ты даешь](images/smilies/icon_wink2.gif) ) Мир его праху...
Так всё же, форма имульса какая? Если можно считать простой - синус, прямоугольник, то и математика будет попроще.
А ведь алгоритм по смыслу несложный - считаешь площадь импульса, суммируешь за некоторое время и делишь суммарную площадь на это время. Получаешь величину тока, усреднённую за упомянутый промежуток времени. Это ты и сам знаешь. Так в чём проблема?
|
|
|
|
13.10.2006, 18:57
|
|
Гражданин KAZUS.RU
Регистрация: 21.02.2005
Сообщений: 685
Сказал спасибо: 14
Сказали Спасибо 84 раз(а) в 44 сообщении(ях)
|
Выше говорится о СРЕДНЕМ а не о ДЕЙСТВУЮЩКМ значении.
Мой совет. Если форма импульса известна (хоть примерно) то легче расчитать коэфицеент и затем умножать на него максимальное значение.
https://kazus.ru/forum/topic_5208-0-asc-0.html
К примеру расчетный кофицеент дла синуса - крень из двух.
И еще говоря о фльтрах почему не кто не берет в расчет цифровую фильтрацию? В ней нет тех проблем что указаны выше.
|
|
|
|
13.10.2006, 19:26
|
|
Гражданин KAZUS.RU
Регистрация: 21.02.2005
Сообщений: 685
Сказал спасибо: 14
Сказали Спасибо 84 раз(а) в 44 сообщении(ях)
|
Ты можеш записать данный импульс в формате WAV (диктофоном или крмпом)? Ты бы его мне выслал, я бы коэфицеентик тебе расчитал. А затем только максимум бы мерил и умножал на это коэффицеент.
|
|
|
|
14.10.2006, 08:06
|
|
Временная регистрация
Регистрация: 06.05.2005
Сообщений: 93
Сказал спасибо: 0
Сказали Спасибо 1 раз в 1 сообщении
|
если импульс от импульса отличается только амплитудой, то вовсе необязательно АЦПить много раз за импульс, посчитали напряжение на суммирующем конденсаторе небольшой емкости (пиковый детектор), умножили на поправочный коэффициент и успокоились, цифровые фильтры с импульсами 65 мксек на АВР - сложно, сил маловато
|
|
|
|
14.10.2006, 10:07
|
|
Гражданин KAZUS.RU
Регистрация: 21.02.2005
Сообщений: 685
Сказал спасибо: 14
Сказали Спасибо 84 раз(а) в 44 сообщении(ях)
|
На прекресном форуме расматривался данный девайс
http://www.linear.com/pc/productDeta...54,C1086,P7526
мерит действующее значение.
Но если точность особая не нужна можно не извращатся и сделать как товарищ с верху посоветовал.
И еще если частота следования импульсов не постоянна (случайна) но и случаен периуд. А следовательно замерить среднее и действующее значение не возможно по определению. (Это уже стат. радиотехника.)
|
|
|
|
16.10.2006, 07:01
|
|
Частый гость
Регистрация: 01.10.2006
Сообщений: 32
Сказал спасибо: 0
Сказали Спасибо 0 раз(а) в 0 сообщении(ях)
|
Спасибо Всем.Но хочу для ясности пояснить откуда берется импульс. Взят тиристорный регулятор тока, преобразователь ток-напряжение, изменяя угол открытия тиристора получаем импульсы на выходе преобразователя. На рисунке я показал минимальный по длительности импульс, а максимальный будет соответственно 10 мсек.У меня проблема именно с программной обработкай этих вычислений, так как я не силен впрограммировании. Подскажите, желательно наглядно, как все это можно посчитать и подготовить к выводу на индикатор.
|
|
|
|
16.10.2006, 07:48
|
|
Гражданин KAZUS.RU
Регистрация: 27.07.2006
Сообщений: 659
Сказал спасибо: 0
Сказали Спасибо 4 раз(а) в 4 сообщении(ях)
|
Самое простое использовать интегратор,как предлагалось ранее.Напряжение на выходе интегратора будет пропорционально действующему значению.Если не нравится ставте внешний высокоскоростной АЦП,но возни будет много а результат по габаритам и цене весьма поганым.
|
|
|
|
16.10.2006, 09:23
|
|
Гражданин KAZUS.RU
Регистрация: 21.02.2005
Сообщений: 685
Сказал спасибо: 14
Сказали Спасибо 84 раз(а) в 44 сообщении(ях)
|
В том то и проблема что интегратор вычисляет среднее а не действующее значение. Но если это не важно можно сделать так.
В течении 20 милиСек. С АЦП снимаем пооказания мгновенных напряжений. Сделать 256 выборок (между ними 78.125мкСек Используй прерывания) И одновременнои всех их складываем в 2х байтовой переменной. После чего результат надо разделить на 256. Фокус в том что 256 это 2 в 8 степени. Значит для деления нужно сдвинуть запятую у числа на 8 бит (байт) в лево. Проше говоря выкидывай младшый байт и в старшем получиш результат среднего значения за периуд. (Естественно ипользуется АЦП встроенный в МК.)
|
|
|
|
16.10.2006, 09:26
|
|
Гражданин KAZUS.RU
Регистрация: 21.02.2005
Сообщений: 685
Сказал спасибо: 14
Сказали Спасибо 84 раз(а) в 44 сообщении(ях)
|
И еще если у тебя отрицательные и положительные полуволны симетричны. То нет смысла изврашатся. Ставь диод на входе и будеш мерить только положительную полуволну а потом результат умножай на 2 (сдвиг запятой в право на 1 байт).
|
|
|
|
Ваши права в разделе
|
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения
HTML код Выкл.
|
|
|
Часовой пояс GMT +4, время: 08:04.
|
|