Помогите победить АЦП

Ответить
Berserker
Рядовой
Сообщения: 58
Зарегистрирован: 17 май 2018, 16:13
Имя: Александр

Помогите победить АЦП

Сообщение Berserker »

Есть аналоговый датчик давления выдает значение в рамках 0-5в его надо считать преобразовать, выдать в виде аналогового напряжения. Использую arduino pro mini 5v 16mHz, ЦАП MCP4725 и конвертер rs485 сам проэкт
map_analog_rs485.flp
. Питание контроллера 5.001в на входах стоят две RC цепи, с ЦАП чтение идет на прямую на аналоговый вход МК. Проблема возникает в точности чтения показания меняются даже с фильтрами на 0,05 вольта и это в лабораторных условиях. Как можно победить сей недуг?
По осциллографу криминала на входах и питании нет.
У вас нет необходимых прав для просмотра вложений в этом сообщении.
Ingwar
Полковник
Сообщения: 1928
Зарегистрирован: 28 окт 2015, 22:47
Откуда: Ленобласть
Имя: Игорь
Поблагодарили: 2 раза

Помогите победить АЦП

Сообщение Ingwar »

Berserker писал(а): 01 июн 2020, 07:38 Проблема возникает в точности чтения показания меняются даже с фильтрами на 0,05 вольта
Не совсем понятен вопрос.
Где у Вас меняются показания - в модбас, дисплей или на ЦАП?
Люди в своем большинстве живо интересуются всем на свете, за исключением того, что действительно стоит знать.
Berserker
Рядовой
Сообщения: 58
Зарегистрирован: 17 май 2018, 16:13
Имя: Александр

Помогите победить АЦП

Сообщение Berserker »

Модбас просто передает данные для записи на флешку, дисплей подключается для проверки в основном он выключен, так как снята перемычка. Дисплей просто для визуального контроля, но и на нем не стабильные показатели АЦП, ЦАП в точности повторяет что приходит на А0 ток в масштабе. Я пробовал на ЦАП просто подавать константу, но при чтении происходит разброс, на цешке все чинно благородно.
Ingwar
Полковник
Сообщения: 1928
Зарегистрирован: 28 окт 2015, 22:47
Откуда: Ленобласть
Имя: Игорь
Поблагодарили: 2 раза

Помогите победить АЦП

Сообщение Ingwar »

Berserker писал(а): 01 июн 2020, 08:38 Я пробовал на ЦАП просто подавать константу, но при чтении происходит разброс
Вы сами читаете, что пишите?
Berserker писал(а): 01 июн 2020, 08:38 на цешке все чинно благородно.
Я задал конкретный вопрос - в каком месте у Вас разброс 0,05в? В разных местах контроля будет разный шаг измерения.
Люди в своем большинстве живо интересуются всем на свете, за исключением того, что действительно стоит знать.
Berserker
Рядовой
Сообщения: 58
Зарегистрирован: 17 май 2018, 16:13
Имя: Александр

Помогите победить АЦП

Сообщение Berserker »

С какого перепугу в разных местах при стабильном сигнале будут разные значения? АЦП принял значение например 500 и у меня где-то это значение будет не 500? даже при конвертации этого значения, оно не поменяется, и при передаче по модбасу будет тоже значение, пока на АЦП не изменится. Так проблема что на АЦП значение не стабильно при поданном стабильном напряжении(сигнале) хоть с датчика с модуля ЦАП, и не помогает фильтрация, дальше грубить не получится потеряю полезный сигнал.
У меня выход ЦАП завязан на аналоговый вход ардуинки A1. Поэтому и говорю что читаю показания ЦАП.
Мне проще оперировать напряжением чем целыми числами. Для этого на отображение я просто значения АЦП преобразую в напряжение.
Ingwar
Полковник
Сообщения: 1928
Зарегистрирован: 28 окт 2015, 22:47
Откуда: Ленобласть
Имя: Игорь
Поблагодарили: 2 раза

Помогите победить АЦП

Сообщение Ingwar »

Жесть... Я не знаю, что является причиной невнимательности - молодость или черта характера...
Ingwar писал(а): 01 июн 2020, 08:42 В разных местах контроля будет разный шаг измерения.
Berserker писал(а): 01 июн 2020, 09:10 С какого перепугу в разных местах при стабильном сигнале будут разные значения?
Не буду дальше спорить :smile390:
Порекомендую только сделать тест - подать с питания ардуино на аналоговый вход через делитель из 2ух постоянных резисторов (не важно какое соотношение) и отсылать данный в порт для проверки. Все провода должны быть пропаяны. Так можно проверить ацп атмеги.
Аналоговые входа лучше шунтировать (чтобы датчик работал на нагрузку, рекомендованную производителем).
Люди в своем большинстве живо интересуются всем на свете, за исключением того, что действительно стоит знать.
Berserker
Рядовой
Сообщения: 58
Зарегистрирован: 17 май 2018, 16:13
Имя: Александр

Помогите победить АЦП

Сообщение Berserker »

Ingwar писал(а): 01 июн 2020, 09:37 Жесть... Я не знаю, что является причиной невнимательности - молодость или черта характера...
Ingwar писал(а): 01 июн 2020, 08:42 В разных местах контроля будет разный шаг измерения.
Шаг измерений вы про то что не ЦАП 4096 а на АЦП 1023? это то да, но я меряю только ацп значит 0-0в 1023-5в.
Делитель делал тоже значения пляшут, менял на нано, с нано интереснее если подать на ножку Vin 5в то при измерении имею стабильные показания, если теже 5 в питания подать на ногу 5в контроллера опять происходит чехарда с показаниями на АЦП. Отличия только в питании контроллера получается в первом случае я подаю 5 в на стабилизатор и получаю на питании МК уже не 5в а 4.7в, но везде пишут питание МК 5в и получается что мне надо занижать питание МК чтоб получить более четкие данные с АЦП?
и еще при тесте с питанием от юсб 3.1 таже чехарда с показаниями.
Ingwar
Полковник
Сообщения: 1928
Зарегистрирован: 28 окт 2015, 22:47
Откуда: Ленобласть
Имя: Игорь
Поблагодарили: 2 раза

Помогите победить АЦП

Сообщение Ingwar »

Berserker писал(а): 01 июн 2020, 09:55 если подать на ножку Vin 5в то при измерении имею стабильные показания, если теже 5 в питания подать на ногу 5в контроллера опять происходит чехарда с показаниями на АЦП
Это "классическая" картина при использовании импульсного блока питания.
Berserker писал(а): 01 июн 2020, 09:55 Делитель делал тоже значения пляшут
Причины "плясания" как правило банальны - (если провода все провода припаяны) это схемотехника. Ключевое здесь - разводка земли.
Поверьте, довольно плотно занимался АЦП при использовании тензодатчиков, поэтому пишу не то, что прочитал, а то, с чем столкнулся сам.
Для исключения (проверки) проблем со схемотехникой, запитайте ардуино +5В от 3ех пальчиковых батареек.
Кстати, опорное вроде подается на Uref и в настройках Flprog это можно указать.
Люди в своем большинстве живо интересуются всем на свете, за исключением того, что действительно стоит знать.
Berserker
Рядовой
Сообщения: 58
Зарегистрирован: 17 май 2018, 16:13
Имя: Александр

Помогите победить АЦП

Сообщение Berserker »

Я уже всю плату даже в железную коробку поместил. тогда вопрос если не импульсником то чем тогда питать? ЛМкой блин грется будет как утюг.
Ingwar
Полковник
Сообщения: 1928
Зарегистрирован: 28 окт 2015, 22:47
Откуда: Ленобласть
Имя: Игорь
Поблагодарили: 2 раза

Помогите победить АЦП

Сообщение Ingwar »

Berserker писал(а): 01 июн 2020, 11:29 Я уже всю плату даже в железную коробку поместил.
Это вообще не решает от внутренних проблем, тем более когда "радости приходят" через провода))) Можно попробовать ферритовые колечки...
Люди в своем большинстве живо интересуются всем на свете, за исключением того, что действительно стоит знать.
Berserker
Рядовой
Сообщения: 58
Зарегистрирован: 17 май 2018, 16:13
Имя: Александр

Помогите победить АЦП

Сообщение Berserker »

Феррит конечно хорошо, но от ЦАП до А1 всего 5мм и больше ничего не подцеплено и на входах нет пока проводов все на столе лежит
KSP
Лейтенант
Сообщения: 305
Зарегистрирован: 18 сен 2015, 14:00
Откуда: Саратов
Имя: Сергей
Поблагодарили: 1 раз

Помогите победить АЦП

Сообщение KSP »

Вот тут есть про измерения:
https://arduinoplus.ru/arduino-aref-pin/
прочтите может поможет
S
Berserker
Рядовой
Сообщения: 58
Зарегистрирован: 17 май 2018, 16:13
Имя: Александр

Помогите победить АЦП

Сообщение Berserker »

KSP писал(а): 01 июн 2020, 14:07 Вот тут есть про измерения:
https://arduinoplus.ru/arduino-aref-pin/
прочтите может поможет
Читал в основном поднимают точность за счет этого, мне точно хватает, мне не хватает стабильности показаний.
KSP
Лейтенант
Сообщения: 305
Зарегистрирован: 18 сен 2015, 14:00
Откуда: Саратов
Имя: Сергей
Поблагодарили: 1 раз

Помогите победить АЦП

Сообщение KSP »

При использовании Modbus я никогда не использую шину I2C , то слейв зависает то еще какая беда попробуйте без шины I2C, и генераторов на 20 мсек у Вас много я их объединил
У вас нет необходимых прав для просмотра вложений в этом сообщении.
S
Berserker
Рядовой
Сообщения: 58
Зарегистрирован: 17 май 2018, 16:13
Имя: Александр

Помогите победить АЦП

Сообщение Berserker »

KSP писал(а): 02 июн 2020, 09:19 При использовании Modbus я никогда не использую шину I2C , то слейв зависает то еще какая беда попробуйте без шины I2C, и генераторов на 20 мсек у Вас много я их объединил
Спасибо насчет генератора, но в Вашей схеме генератор перестает работать если перестает работать 1 плата, но это не так важно. Я разобрался с плванием показаний АЦП!. Оказывается если питание МК сделать через диод на него будет подаваться не 5в а уже меньше! Вмоем случает получилось 4,36в и все проблема исчезла даже ели убрать цифровые фильтры. Но значение 1023 это уже 4.36в и если поставить простой делитель то измерения становятся очень точными. Проверил на стабильном источнике питания если питание больше или равно 4.8в - показания не стабильны от 4.1в до 4.7в все чинно благородно. Нигде не нашел почему.
Вывод питание МК должно быть в диапазоне от 4.1в до 4.7в, остальное масштабируем делителем! Если использовать водные RC фильтры то перед ногой МК нужно ставить конденсатор 10пф иначе электролиты на мегоомном сопротивлении набирают емкость и просто завышают показания.
Проверил схему в машине не заметил криминала.
KSP
Лейтенант
Сообщения: 305
Зарегистрирован: 18 сен 2015, 14:00
Откуда: Саратов
Имя: Сергей
Поблагодарили: 1 раз

Помогите победить АЦП

Сообщение KSP »

Про выполнение плат по условию просмотрел каюсь. А вот про Modbus все успевает отрабатывать или еще не пробовали?
S
Аватара пользователя
Sancho
Полковник
Сообщения: 4066
Зарегистрирован: 25 дек 2015, 17:32
Откуда: Ярославль.
Имя: Александр
Поблагодарили: 5 раз
Контактная информация:

Помогите победить АЦП

Сообщение Sancho »

Berserker писал(а): 02 июн 2020, 16:11 Если использовать водные RC фильтры то перед ногой МК нужно ставить конденсатор 10пф иначе электролиты на мегоомном сопротивлении набирают емкость и просто завышают показания.
Конденсатор не завышает показания, он просто разряжается при понижении входного. Есть такое понятие время интегрирования RC цепочки. Почитайте и поймёте, что 10пф - это ничего... Хотя, возможно, Вы хотели написать 10нф.

Отправлено спустя 21 минуту 16 секунд:
Проверьте высокоомным вольтметром напряжение на Vref и Vcc.
мой ник в нете и почте omelchuk890, если что. запомните на всякий. многие знают номер тлф.
Berserker
Рядовой
Сообщения: 58
Зарегистрирован: 17 май 2018, 16:13
Имя: Александр

Помогите победить АЦП

Сообщение Berserker »

KSP писал(а): 02 июн 2020, 16:28 Про выполнение плат по условию просмотрел каюсь. А вот про Modbus все успевает отрабатывать или еще не пробовали?
по модбасу могу сказать следующее, да все приходит на сд карту пишется по отзывчивости субъективно нажал педальку тут же побежали изменения. Единственный момент не понимаю почему при запуске 1 платы у меня переменная отвечающая за запуски плат сразу становится 1 и первая плата не отрабатывает, если проверять отдельно плату то все правильно отрабатывает.

Отправлено спустя 10 минут 54 секунды:
Sancho писал(а): 02 июн 2020, 21:52
Конденсатор не завышает показания, он просто разряжается при понижении входного. Есть такое понятие время интегрирования RC цепочки. Почитайте и поймёте, что 10пф - это ничего... Хотя, возможно, Вы хотели написать 10нф.

Отправлено спустя 21 минуту 16 секунд:
Проверьте высокоомным вольтметром напряжение на Vref и Vcc.
Да извиняюсь 10нф. Незнаю высокоомный у меня вольтметр или нет китаёзы не пишут, но вроде как тру рмс. Сейчас на питании проца 4,3578в а вот как оказалось Vref не выведен на этой плате.
Andrejka
Рядовой
Сообщения: 40
Зарегистрирован: 13 дек 2018, 19:40
Имя: Андрей

Помогите победить АЦП

Сообщение Andrejka »

Berserker писал(а): 01 июн 2020, 07:38 Есть аналоговый датчик давления выдает значение в рамках 0-5в его надо считать преобразовать, выдать в виде аналогового напряжения. Использую arduino pro mini 5v 16mHz, ЦАП MCP4725 и конвертер rs485 сам проэктmap_analog_rs485.flp. Питание контроллера 5.001в на входах стоят две RC цепи, с ЦАП чтение идет на прямую на аналоговый вход МК. Проблема возникает в точности чтения показания меняются даже с фильтрами на 0,05 вольта и это в лабораторных условиях. Как можно победить сей недуг?
По осциллографу криминала на входах и питании нет.
Добрый день, Вы используете для АЦП в качестве опорного напряжения напряжение питания 5 вольт, это не хорошо, необходимо переключиться на высокостабильный источник опорного напряжения внутри самого Ардуино, 1,1 вольта, и вести пересчет относительно его, или подключиться к внешней высокостабильный опоре.
Аватара пользователя
Sancho
Полковник
Сообщения: 4066
Зарегистрирован: 25 дек 2015, 17:32
Откуда: Ярославль.
Имя: Александр
Поблагодарили: 5 раз
Контактная информация:

Помогите победить АЦП

Сообщение Sancho »

Berserker писал(а): 03 июн 2020, 05:40 Сейчас на питании проца 4,3578в а вот как оказалось Vref не выведен на этой плате.
Подайте на пин Vin напряжение от 7 вольт, на Vcc, проце, должно появиться 5.
мой ник в нете и почте omelchuk890, если что. запомните на всякий. многие знают номер тлф.
Ответить

Вернуться в «Помогите, а то я "нимагу"»

Кто сейчас на конференции

Сейчас этот форум просматривают: olegggg1 и 1 гость