Jump to content
Guest Сергей

АЦП ADS1115 не работает корректно

Recommended Posts

Guest Сергей

Здравствуйте.

Купил АЦП для ардуино ADS1115 by Adafruit. И столкнулся с такой проблемой АЦП нормально работает с сигналом 110 Гц ниже данного выдает какую-то мешанину.

Спасибо. 

Share this post


Link to post
Share on other sites
Guest Сергей

ну выдает вот нечто подобное вместо синусоиды

1.PNG

1.PNG

Share this post


Link to post
Share on other sites

Конденсаторы Panasonic. Часть 4. Полимеры – номенклатура

В заключительной, четвертой статье из цикла «Конденсаторы Panasonic» рассматриваются основные достоинства и особенности использования конденсаторов этого японского производителя на основе полимерной технологии. Главной конструктивной особенностью таких конденсаторов является полимерный материал, используемый в качестве проводящего слоя. Полимер обеспечивает конденсаторам высокую электрическую проводимость и пониженное эквивалентное сопротивление (ESR). Номинальная емкость и ESR отличается в данном случае высокой стабильностью во всем рабочем диапазоне температур. А повышенная емкость при низком ESR идеальна для решения задач шумоподавления и ограничения токовых паразитных импульсов в широком частотном диапазоне.

Читать статью

                     

STM32G0 - средства противодействия угрозам безопасности

Результатом выполнения требований безопасности всегда является усложнение разрабатываемой системы. Особенно чувствительными эти расходы стали теперь, в процессе массового внедрения IoT. Обладая мощным набором инструментов информационной безопасности, микроконтроллеры STM32G0 производства STMicroelectronics, объединив в себе невысокую цену, энергоэффективность и расширенный арсенал встроенных аппаратных инструментов, способны обеспечить полную безопасность разрабатываемого устройства.

Подробнее...

24 минуты назад, BARS_ сказал:

А если частоту опроса менять?

не помогает. Для примера:

850 выборок в секунду:

850.PNG.92632b2eaec1963294e0bad621207748.PNG

250 выборок в секунду:

250.PNG.97ea969c1924e9dece6d0fe6594028da.PNG

180выборок в секунду:

180.PNG.194a7081e52621c7f347e157a7bdd9d8.PNG

Share this post


Link to post
Share on other sites
33 минуты назад, Vascom сказал:

Это какая частота на входе?

50 гЦ

Только что, navarto123 сказал:

50 гЦ

Причем на 110 Гц получается вполне нормальная картинка

Подобная такой:

2.PNG.8ac15e2c3dfea36aec28cdc69a68d12e.PNG

Share this post


Link to post
Share on other sites

И какая частота опроса АЦП?

То есть внутрення частота понятна. Важно с какой частотой данные из АЦП поступают во внешний микроконтроллер.

Edited by Vascom

Share this post


Link to post
Share on other sites

Кстати, картинка при 110Гц тоже не правильная, ведь это явно не синусоида.

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

Edited by Vascom

Share this post


Link to post
Share on other sites
15 минут назад, Vascom сказал:

И какая частота опроса АЦП?

То есть внутрення частота понятна. Важно с какой частотой данные из АЦП поступают во внешний микроконтроллер.

я установил частоту дискретизации в 860 Гц

 

Share this post


Link to post
Share on other sites

Это частота дискретизации внутри АЦП. А с какой частотой эти отсчёты выдаются наружу?

Share this post


Link to post
Share on other sites
11 минуту назад, Vascom сказал:

Это частота дискретизации внутри АЦП. А с какой частотой эти отсчёты выдаются наружу?

Так, осцилографом измерил частоту сигнала с вывода SDA она составила 1,6 кГц

Share this post


Link to post
Share on other sites

Это ни о чём не говорит.

В общем вердикт такой: частота опроса АЦП меньше частоты дискретизации. В результате пропадает часть отсчётов.

Share this post


Link to post
Share on other sites
2 минуты назад, Vascom сказал:

Это ни о чём не говорит.

В общем вердикт такой: частота опроса АЦП меньше частоты дискретизации. В результате пропадает часть отсчётов.

получается это никак не должно зависеть от частоты входного сигнала?

Share this post


Link to post
Share on other sites

Будет зависеть от частоты входного сигнала из-за строб-эффекта.

Share this post


Link to post
Share on other sites

Это уже другой вопрос. Могу лишь направить, что частота опроса будет примерно равна частоте работы I2C (клок это SCL), делённой на число передаваемых бит (данные + адрес + другие_служебные_биты).

Но лучше создай отдельную тему в соответствующем разделе или прочитай документацию на МК.

Edited by Vascom

Share this post


Link to post
Share on other sites

Join the conversation

You are posting as a guest. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Loading...

  • Similar Content

    • By Spyro1313
      Помогите убогому, пожалуйста!
      Проблема: Собрана и проверена схема сигнализации (компилируется и загружается).При введении в схему сигнализации модуля ИК с пультом дистанционного управления, не проходит компиляция. Схема ИК модуля отдельно без изменений из проекта сигнализации - компилируется и загружается (как отдельный проект ) на ура!!!
      При проверки проекта сигнализации с модулем ИК Arduino IDE ВЫДАЕТ ОШИБКУ:
      Arduino: 1.8.9 (Windows 10), Плата:"Arduino/Genuino Uno"
      Tone.cpp.o (symbol from plugin): In function `timer0_pin_port':
      (.text+0x0): multiple definition of `__vector_7'
      libraries\IRremote\IRremote.cpp.o (symbol from plugin):(.text+0x0): first defined here
      collect2.exe: error: ld returned 1 exit status
      Несколько библиотек найдено для "IRremote.h"
      Используется: c:\Program Files (x86)\FLProg\ideV3\portable\sketchbook\libraries\IRremote
      Не используется: c:\Program Files (x86)\FLProg\ideV3\libraries\IRremote
      exit status 1
      Ошибка компиляции для платы Arduino/Genuino Uno.
      Этот отчёт будет иметь больше информации с
      включенной опцией Файл -> Настройки ->
      "Показать подробный вывод во время компиляции"
      ==================================================================
      Явно проблема с библиотеками.Не могу разобраться.Что делать?Подскажите...
    • By artos5
      Приветствую всех на этом форуме!
      Есть необходимость измерять сигнал при помощи данного АЦП. С помощью этого АЦП можно измерять 4 аналоговых не дифференциальных сигнала . Схема следующая:
      Schematic_Temp_opto_sens_V2_20190817124112.pdf
      Картинками с более низким разрешением:
      библиотеку за основу взял эту:
      https://github.com/nsaspook/nidaq700/blob/master/supermoon/example/ADS1220.c
      Путем незначительного допиливания, получилась такая библиотека:
       
      Поправил только эти функции:
      void ADS1220SendByte(unsigned char Byte) { unsigned char Result = 0x01, i=0, flg=0; MOSI_LO; Delay_us(1); for(i=0;i<8;i++) { SCK_LO; //ADC_CLK=0 Delay_us(4); if (flg) MOSI_LO; Delay_us(1); SCK_HI; //ADC_CLK=1 Delay_us(1); if (Byte&Result){ MOSI_HI; flg=1; } else MOSI_LO; Delay_us(4); Result<<=1; } SCK_LO; //ADC_CLK=0 } unsigned char ADS1220ReceiveByte(void) { unsigned char Result = 0, i=0; for(i=0;i<8;i++) { Result<<=1; SCK_LO; //ADC_CLK=0 Delay_us(5); //Delay_us(5); SCK_HI; //ADC_CLK=1 Delay_us(3); if (MISO) Result++; Delay_us(2); } SCK_LO; //ADC_CLK=0 return Result; } И добавил эту функцию:
      void ADS1220Config_MUX_GAIN(uint8_t mux, uint8_t gain) { unsigned Temp; ADS1220ReadRegister(ADS1220_0_REGISTER, 0x01, &Temp); // clear prev value; Temp &= 0x0f; Temp |= gain; Temp |= mux; // write the register value containing the new value back to the ADS ADS1220WriteRegister(ADS1220_0_REGISTER, 0x01, &Temp); ADS1220ReadRegister(ADS1220_1_REGISTER, 0x01, &Temp); // clear prev DataRate code; Temp &= 0x1f; Temp |= (ADS1220_DR_600 + ADS1220_CC); // Set default start mode to 600sps and continuous conversions // write the register value containing the new value back to the ADS ADS1220WriteRegister(ADS1220_1_REGISTER, 0x01, &Temp); } ADS1220.h :
      в результате получаю такую осциллограмму :

      То есть , постоянно считывается 0.
      А вот регистры конфигурации:
      Задаю номер входа MUX и усиление :
       

       
      Читаю данные так:
      ADS1220Config_MUX_GAIN(ADS1220_MUX_0_G, ADS1220_GAIN_1); HAL_Delay(10); temp_[0] = ADS1220ReadData(); Это для 0 канала. 
      Пробовал и так:
      ADS1220SetChannel(ADS1220_MUX_0_G); ADS1220SetGain(ADS1220_GAIN_1); temp_[0] = ADS1220ReadData(); Результат аналогичный. Кто что подскажет? Может кто заметит какой косяк в коде? Уже голова дымит ..
    • By Macca
      Напривозил много оригинальной электроники
      Имеется большой каталог с микроконтроллерами и расширителями для них.
      Москва. Возможно доставка в другие города. Сергей, физ. лицо, 89776100987
      Можно обращаться в WhatsApp и Telegram по всем вопросам

       
      Малинка:
      Raspberry Pi 3 B+ - 2400руб
      Raspberry Pi 3 А+ - 1700руб
      Sparkfun Набор Raspberry Pi 3 А+, адаптер питания, корпус, microSD 16Гб - 2400руб
      Sparkfun Набор Raspberry Pi zero W, microSD 16 ГБ, HDMI кабель,USB OTG-кабель, адаптер питания - 2500руб
      Vilros Набор Raspberry Pi 3 B+, корпус, адаптер питания, HDMI кабель, microSD 32Гб, картридер, радиаторы - 4200руб
      Sparkfun Набор Raspberry Pi 3 B+, Pi Wedge, FTDI Basic Breakout 3,3 В, Макет Полноразмерный (голый), черный Pi Tin, MicroSD 16 ГБ, картридер, Разноцветные пуговицы (4 шт), Ассорти из светодиодов (20 шт), Резистор 330 Ом 1/6 Вт PTH (20 шт.), Raspberry Pi GPIO Ленточный кабель 40-контактный, USB Mini-B Кабель, адаптер питания, Соединительные провода (10 пакетов), cтандартные проволочные перемычки (30 шт.) - 5200руб
      OddWires Набор Raspberry Pi 3 B+,16 ГБ microSD-карта класса 10, адаптер питания, CP102 USB для последовательного адаптера, Raspberry Pi прозрачный чехол, HDMI кабель, GPIO кабель и коммутационная плата,MCP3008 Микрочип 8-канальный 10-битный АЦП, модуль джойстика, ИК пульт дистанционного управления с батареей, макеты, провода, перемычки, ассорти светодиоды,RGB LED,Пьезо Зуммер Пассивный и Активный, переключатели, резисторы - 5000руб
      Raspberry Pi Infrared Camera Module – 1300руб
      Raspberry Pi Camera module v2 - 1500руб
      Raspberry Pi Touchscreen – 4000руб
      Raspberry Pi UPS Hat - 1100руб
      ReSpeaker 4-микрофонный массив для Raspberry Pi - 1800руб
       
      Ардуино:
      Pro Micro ATmega32U4 3.3В/8МГЦ - 1300руб
      Pro Micro ATmega32U4 5В/16МГЦ - 1300руб
      Arduino Pro Mini 328 3.3В/8МГЦ - 650руб
      Arduino Pro Mini 328 5В/16МГЦ - 650руб
      Arduino Mega 2560 R3 - 2400руб
      Arduino Due - 2700руб
      Arduino Uno Rev3 – 1300руб
      LilyPad Arduino USB - ATmega32U4 Board - 1600руб
      LilyPad Arduino 328 Main Board - 1000руб
      Arduino Fio - 1800руб
      Arduino Mkr1000 - 2300руб
      Arduino Mkr Vidor 4000 - 5000руб
       
      Teensy 3.6 - 2000руб
      Teensy 3.2 - 1300руб
      Teensy 2.0 – 1000pуб
       
      BeagleBone Black rev C – 3200руб
      BeagleBone Black – 2500руб
      BeagleBone Blue – 4500руб
      BeagleBone Pocket – 1600руб
       
      Искусственный интеллект:
      NVIDIA Jetson Nano Developer Kit - 7500руб
      Google Coral Development Board - 9500руб
      NVIDIA Jetson AGX Xavier Module - 45500руб
      NVIDIA Jetson Xavier - 65000руб
      Coral environmental sensor board v 1.0 – 1600руб
      Intel Neural Compute Stick 2 – 7000руб
      Coral Camera CA1 -1600руб
       
      Прочие платы:
      STEMTera (Black) - 2800руб
      Mbed v014.1 - 4000руб
      Mbed v005.1 - 3600руб
      Стартовый набор SparkFun Qwiic для Onion Omega - 9000руб
      LattePanda Alpha 864 – 20000р
      Automic Pi – 2500руб
      Pine H64 “Model B” 3Gb – 2800руб
      Rock64-1G – 1600руб
      Odroid XU4Q – 3000руб
      Adafruit Metro 328 Starter Pack - 2800руб
      Adafruit Trinket M0, for use with CircuitPython & Arduino IDE - 600руб
      Adafruit GEMMA M0, Miniature wearable electronic platform - 650руб
      SparkFun gator:bit v2.0, micro:bit Carrier Board - 1200py6
      micro:bit Board - 900руб
      HackRF One - 19500руб
      LimeSDR Mini - 12500руб
      LimeSDR - 22500руб
      bladeRF 2.0 micro xA4 - 31000руб
      SparkFun PicoBoard - 3000руб
      SparkFun Stepoko - 10000руб

      Лидары и камеры:
      Raspberry Pi Camera module v2 - 1500руб
      Pixy2 CMUcam5 - 3600руб
      CMOS Camera Module - 2000руб
      OpenMV m7 - 4500руб
      IR Array Breakout, 55 Degree FOV, MLX90640 (Qwiic) - 4500руб
       
      Набор FLIR Радиометрический Lepton Dev - 13000руб
      +PureThermal 2 интеллектуальная плата ввода / вывода FLIR Lepton Smart - 6000руб
       
      RPLidar A2M8 360градусов Laser Range Scanner – 20000руб
      RPLidar A3M1 360градусов Laser Range Scanner – 38000руб
      TFMini – Micro Lidar Module – 2500руб

       
      Расширители:
      Thing Plus ESP32 WROOM - 1400руб
      ESP8266 Thing Dev Board - 1100руб
      WiFi Module ESP8266 - 450руб
      Adafruit Feather HUZZAH with ESP8266 Loose Headers - 1100руб
       
      SparkFun GPS Logger Shield – 3300руб
      GPS Mouse GP-808G (72 Channel) – 2500руб
      SparkFun Venus GPS with SMA Connector – 3300руб
      SparkFun GPS-RTK Board, NEO-M8P-2 (Qwiic) - 13000руб
      Adafruit Ultimate GPS Breakout - 66 channel w/10 Hz updates Version 3 - 2600руб      
       
      CAN-BUS Shield – 1700руб
      Bus Pirate v3.6 1700руб, с кабелем – 2000руб
      Wireless Motor Driver Shield - 1800руб
      microSD Shield - 1000руб
      Vernier Interface Shield - 1600руб
      MP3 Player Shield - 1800руб
      Weather Shield - 2600руб
      Monster Moto Shield - 4700руб
      EasyVR Shield 3.0 Для распознавания голоса – 3300руб
      XBee Shield — 1000руб
      OpenLog - 1000руб
      Sound Detector (с ножками) — 750руб
      EasyDriver - Stepper Motor Driver – 1000руб
      Big Easy Driver — 1300руб
      URM37 V5.0 Ультразвуковой датчик для Arduino/RaspberryPi - 950руб
      URM04 Ультразвуковой датчик (RS485) - 1700руб
      2x1A моторный щит постоянного тока для Arduino 650руб
      Винтовой щит для Arduino - 500руб
      Набор беспроводных джойстиков  - 2500руб
      Усилитель тензодатчика SparkFun HX711 - 650руб
      SparkFun Simultaneous RFID Reader, M6E Nano  - 13000p
      SparkFun RS232 Shifter SMD - 1000руб
      Pro nRF52840 Mini, Bluetooth Development Board - 2000руб
      THAT 1646 OutSmarts Breakout - 1000руб
      RedBoard Turbo, SAMD21 Development Board - 1650руб
      SparkFun Barometric Pressure Sensor Breakout, MPL115A1  - 900руб
      Little Soundie Audio Player - 1000руб
      XBee Explorer Serial - 1300руб
      Music Instrument Shield - 2100руб
      SparkFun Environmental Combo Breakout, CCS811/BME280 (Qwiic) - 2300руб
      PN532 NFC/RFID controller breakout board v1.6 - 2400руб
      Adafruit Motor/Stepper/Servo Shield for Arduino v2 Kit – v2.3 - 1300руб
      Adafruit 9-DOF Absolute Orientation IMU Fusion Breakout, BNO055 - 2300руб




    • By STmaster23
      Добрый день, дорогие читатели.

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

      Устройство может измерять температуру и влажность, имеет 2 независимых реле которые коммутируют сеть 220 В на две независимых розетки (розетка влажности и розетка температуры).
      В ручном режиме, с помощью кнопок устанавливаются пределы включения и отключения реле, установленные пределы записываются в энергонезависимую память ARDUINO, и при перезапуске устройства, выставленные вами настройки восстанавливаются.

      При попытке поисков в интернете готовых устройств такого рода, я натыкался на огромные цены, из-за этого меня посетила мысль сделать такое устройство на базе Arduino.

      В основе устройства - Arduino NANO. Коммутация производится с помощью 2-х модулей реле для Ардуино с опторазвязкой. Управление выполняется с помощью самодельной клавиатуры на 5 кнопок. Для отображения информации с датчика и настроек используется LCD дисплей 16х2, подключенный по шине I2C к Ардуино. В качестве датчика температуры и влажности применен модуль SHT-31D.
      Все модули были заказаны на Aliexpress, из-за чего стоимость устройства значительно уменьшилась, чем если бы эти модули покупались в местных магазинах.

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

      И уже после окончательной сборки были ещё добавлены две индикаторные лампы на 220 В, для визуализации наличия напряжения в розетках.

      Основная часть времени создания устройства с нуля была потрачена на ожидание посылок из Китая и написание прошивки для Ардуино. В целом на создание ушло несколько месяцев. Несколько месяцев интернет серфинга в поисках информации по написанию скетчей для ардуино, пока ехали посылки, но и после этого штук 15 версий различных вариантов скетча и подбор наиболее подходящего.

      Датчик сделан выносной на проводе от какого то USB устройства, потому что датчик подключается по шине I2C, соответственно USB шнур с 4-мя провода пришелся как никогда кстати.

      Вот так выглядит устройство, уже в готовом виде...


    • By _qwerty
      Добрый день. Продам
      отладочные платы для STM32
      Отладочная плата на базе MCU STM32F429ZIT6 (ARM Cortex-M4) - 2600 р. В наличии 2 шт. Отладочная плата на базе MCU STM32F407VGT6 (ARM Cortex-M4) - 1600 р. В наличии 2 шт. Отладочная плата на базе MCU STM32F303VCT6 (ARM Cortex-M4) - 1200 р. В наличии 2 шт. Отладочная плата на базе MCU STM32F103RBT6 (ARM Cortex-M3) - 1000 р. В наличии 2 шт. образовательный набор Амперка Tetra для обучения детей прикладному программированию на основе визуального языка Scratch - 4500 р. В наличии 2 шт.
      электронный конструктор БХВ-Петербург Дерзай 36608 Стартовый набор Arduino - 1500 р. В наличии 2 шт.
      Все новое, не использовалось, возможна отправка почтой по России


















  • Сообщения

    • АЧХ моего щита ГИ снято в комнате,в реальных условиях комнаты.Результат измерений виден в программе Right Mark Audio Analyzer, на фото экрана телевизора "Sony". На фото показан микрофон на штативе... На улице не было смысла снимать,,ведь музыку я слушаю дома.Поэтому дома и снимал АЧХ.  Но,это действительно не главное.Вернее-это наверное главное для кого-то,но не для меня. Для меня главное,чтобы было ощущение настоящего концерта на дому.Я этого достиг на свой слух.Чего и всем желаю! Впереди изготовление,в чистовую,щитов ГИ в СТЕРЕО исполнении.(я об этом уже писал...) Выкладываю дополнительно скрины АЧХ щита,сохраненные на компьютере.,ведь эти замеры я  сделал для вас.    
    • В Москву дорого доставка обойдется. 
    • Ну это действительно леденит кровь, но я про, скажем так, потребительские стороны этого момента. Что плохого я, как потребитель, получу от катушки с повышенным разбалансом? (DesAlex сказал выше момент который меня слегка беспокоит - поэтому я запихнул катуху в Холодильник)
    • Все... действительнл можно больше нисего не писать. Описывается работа сотрудника девелоперсконо отдела торгового центра. Может быть руководителя отдела или даже директора. Но не владельца точно, ибо коньяк и все такое....
    • Есть у меня идея-фикс, думаю как реализовать ) Хочу сделать жетон на ремень. На жетоне соответственно будет рисунок, в жетон засунуть NFC модуль и светодиод для подсветки рисунка. При подносе жетона к устройству рисунок будет подсвечиваться. Если хотите, (чуть позже) для наглядности могу скинуть фотки прототипа. Как то так... Надеюсь меня не накажут за ссылку: https://ru.aliexpress.com/item/32951185580.html?spm=a2g0s.8937460.0.0.75bd2e0e6bLxHN
    • А взять нормальные модули, те же NRF, не судьба? Обязательно брать самое дешманское и самое хреновое, чтобы потом костыли городить?
  • Покупай!

×
×
  • Create New...