Pull to refresh

Автоматизация температурных измерений при помощи платы АЦП

Reading time 4 min
Views 2.4K
Lumber room
термопарыВсе мы хоть раз в жизни измеряли температуру. Будь то хоть собственное тело, хоть воздух за окном или процессор в материнской плате. В большинстве случаев в быту речь идёт об диапазоне -50… 100 ºС, и для таких измерений подойдёт простой спиртовой термометр. В случае с процессором используется полупроводниковый датчик, но и он ограничен этим же диапазоном измеряемых температур.
В промышленности же за частую приходится иметь дело с температурами в разы большими чем 100 ºС. Для их измерения чаше всего используются термопары. Например вольфрамрений (5%) — вольфрамрениевая (20%) термопара способна выдерживать кратковременный нагрев до 2500 ºС.
Читать дальше →
Total votes 26: ↑25 and ↓1 +24
Comments 19

Определение сопротивления контроллером без АЦП

Reading time 3 min
Views 13K
DIY
Собственно стала такая вот задача — несколько раз в секунду снимать показания потенциометра. Целевой приемник информации — контроллер ATmega32. Имеет встроенный АЦП, но выдаваемый им результат имел разрешение 2-3 бита, а остальные биты несли в себе мусор.

Первое что пришло на ум — купить внешний АЦП и прикрутить к контроллеру. Но не было ни времени ни желания разбираться с еще одним устройством. Решил попробовать другой метод, в работоспособности которого не был уверен, но тем не менее схема оказалось вполне рабочей и дала точность порядка 8 бит (может и больше, не проверял).
Читать дальше →
Total votes 33: ↑28 and ↓5 +23
Comments 23

Трёхканальный UART АЦП на ATtiny13

Reading time 4 min
Views 52K
DIY


Привет хабр. Я уже давно вынашивал сделать UART Аналогового-Цифрового Преобразователя на ATtiny13, зачем делать именно на ATtiny13 ведь есть, к примеру, ATmega8 имеет аж 6 (для DIP корпуса) портов на которых, при помощи мультиплексора, можно проводить измерение АЦП?
Причин несколько:

— ATtiny13 стоит дешевле;
— В ATtiny13 более оптимально используются ресурсы микроконтроллера;
— Размеры;
— Энергопотребление;
— Просто мне так захотелось.

Конечно на мои аргументы можно найти множество контраргументов, например ATmega8 при использовании V-USB может превратится в плату ввода/вывода которой не нужен переходник с UART на USB, правда кроме последнего, и с этим пожалуй не поспоришь.

Поставил себе за цель получить опыт работы с программный UART'ом именно на ATtiny13, а опыт как говорится, бесценный. По-любому пригодится для будущих проектов.
Ну ладно, не буду тянуть и покажу, как работает в железе:



Пару слов по схеме, кстати, вот она:
Хотя бы схему посмотрю
Total votes 28: ↑22 and ↓6 +16
Comments 14

Подключение АЦП к ПЛИС. Особенности, сложности, реализация

Reading time 18 min
Views 59K
Open source *Development of communication systems *FPGA *Programming microcontrollers *

Всем привет! В данной статье речь пойдет о подключении микросхем АЦП к кристаллам ПЛИС. Будут рассмотрены основные особенности соединения узлов схем, представлены современные АЦП и их характеристики. В статье будут даны практические советы по быстрому и правильному подключению АЦП к ПЛИС с минимальными временными затратами. Кроме того, речь пойдет о принципах подключения тех или иных АЦП, будет рассмотрен входной буфер ПЛИС и его базовые компоненты – триггеры, узлы задержки IODELAY, сериализаторы ISERDES и т.д. Более детально с примерами программного кода на языке VHDL будет проведен обзор основных элементов, требуемых для качественного приёма данных от АЦП. Это входной буфер, узел упаковки данных для одноканальных и многоканальных систем, модуль синхронизации и передачи данных на базе FIFO, узел программирования АЦП по интерфейсу SPI, узел синтеза частоты данных – MMCM/PLL. Также в статье будет представлен обзор законченных устройств (в стандарте FMC) от ведущих зарубежных и отечественных производителей аналоговых и цифровых схем. В конце статьи вы найдете ссылку на исходные коды универсального узла приёмника данных от многоканальных схем АЦП. Код простой и гибкий в конфигурировании, он представлен на языке VHDL и заточен на микросхемы ПЛИС Xilinx 7 серии и выше, но может быть применен и в других кристаллах ПЛИС.
Читать дальше →
Total votes 27: ↑27 and ↓0 +27
Comments 19

Бюджетный вариант измерения TrueRMS

Reading time 5 min
Views 33K
Programming *Development for IOT *
Tutorial
Вступление

Измерение trueRMS переменного напряжения — задача не совсем простая, не такая, какой она кажется с первого взгляда. Прежде всего потому, что чаще всего приходится измерять не чисто синусоидальное напряжение, а нечто более сложное, усложнённое наличием гармоник шумов.

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

Профессиональные вольтметры ср. кв. значения — это достаточно сложные устройства как по схемотехнике, так и по алгоритмам [1,2]. В большинстве измерителей, которые носят вспомогательный характер и служат для контроля функционирования, такие сложности и точности не требуются.

Также требуется, чтобы измеритель мог быть собран на самом простом 8-битном микроконтроллере.
Читать дальше →
Total votes 26: ↑18 and ↓8 +10
Comments 66

Начинаем работать в STM32CubeMX. Часть 3

Reading time 8 min
Views 54K
Programming microcontrollers *
Tutorial
Продолжаем цикл про основы работы STM32MXCube и программированию микроконтроллеров STM32.

Часть 1
Часть 2

В прошлых частях мы освоили базовые настройки микроконтроллера, работу с GPIO, таймером, DMA и DAC. В этой части мы познакомимся с ADC и USB.
Читать дальше →
Total votes 25: ↑25 and ↓0 +25
Comments 14

Революция в радиотехнике? RF-ARM-FPGA SoC

Reading time 5 min
Views 43K
Global Positioning Systems *Development of communication systems *FPGA *Robotics development *

Компания Xilinx тихо и без лишней помпы анонсировала продукт, который может полностью изменить облик и процесс разработки современных радиоприемников и передатчиков. Это маленькая микросхема, которая объединяет 90% вопросов обработки и формирования радиосигналов:

  • программируемая логика (FPGA),
  • процессоры для обработки сигналов и пользовательских приложений (два ARM’а),
  • до восьми 12-разрядных АЦП с частотой дискретизации до 4 ГГц (!),
  • до восьми 14-разрядных ЦАП с верхней частотой до 6.4 ГГц (!).

Кажется мы входим в эпоху, когда архитектура трансивера становится такой же универсальной, как архитектура современного ПК. Make SW, not HW!
Читать дальше →
Total votes 81: ↑79 and ↓2 +77
Comments 105

Сказ про резисторы и неонки

Reading time 11 min
Views 15K
Abnormal programming *Entertaining tasks C++ *Mathematics *Programming microcontrollers *
Tutorial

Расчёт цепей постоянного тока на пальцах, или давайте считать ЦАП для троичной логики


Но для начала неонки, какой же русский их не любит?


Итак, снова я со своими троичными железками, но в этой статье они выступают фоном, сегодня статья про резисторы. Запаял я было несколько платок, в которые можно воткнуть газоразрядные лампы типа ИН-12 или ИН-15, но часы делать не захотел :)


Total votes 28: ↑27 and ↓1 +26
Comments 58

Автопилот на AT91SAM7

Reading time 13 min
Views 12K
Open source *Programming *C++ *Interfaces *Programming microcontrollers *

1. Вступление


Радиоуправляемыми самолетами я увлекся еще в 2002 году, живя в Праге. Первый самолет был с размахом крыла 1.2 м, двигатель 2-х тактный ДВС. Вот фрагмент видеозаписи тех времен. Однажды в 2008 году мне в руки попал акселерометр ADXL202E. Имея опыт разработки устройств на контроллере семейства MCS-51(это был Рубидиевый стандарт частоты и система сбора данных), я решил сделать автопилот для радиоуправляемой модели Mentor. Первым делом я подключил акселерометр к контроллеру. Для простоты я выбрал отладочную плату с контроллером AT91SAM7, за удобство и простоту работы с ней. Надо заметить, что я решил не изучать ничего про автопилоты в интернете, а делать все самостоятельно с "0", чтобы было интересней.



Итак, волей случая в 2008 году мне довелось полетать на самолете и иметь возможность использовать на борту ноутбук и свою платку с акселерометром. Сегодня любой владелец
планшета или смартфона может такой эксперимент провести самостоятельно, поскольку
акселерометры имеются почти во всех устройствах. Вот тут-то я и сделал для себя первое "открытие"

Читать дальше →
Total votes 31: ↑24 and ↓7 +17
Comments 12

Внутренности SDR чипа AD9361 — когда микроэлектроника выгоднее наркоторговли

Reading time 5 min
Views 48K
Zeptobars corporate blog Reverse engineering *Development of communication systems *Circuit design *Manufacture and development of electronics *
Когда в 2013 году Analog Devices выпустила SDR трансивер AD9361 — случилась настоящая революция в цифровой радиосвязи. SDR были и раньше, но теперь в одном чипе можно было получить все: 2 канала на прием и 2 на передачу (с набортными 12-бит ЦАП и АЦП) с шириной канала до 56МГц, локальные генераторы и радиотракт — для работы в диапазоне от 70 (на передачу от 47) до 6000Мгц. На AD9361 «из коробки» можно реализовать почти любой цифровой приемопередатчик, за исключением наверное только UWB и начинающего набирать популярность диапазона 60ГГц (но там без аппаратной многоэлементной ФАР все равно делать почти нечего). Остается лишь добавить источник/приемник данных (пока это обычно FPGA), внешние фильтры и LNA/PA, если задача того требует.

Мне наконец удалось посмотреть, что у него внутри, и — попробовать взглянуть на финансовую сторону производства действительно инновационной микроэлектроники с высокой добавленной стоимостью.

Читать дальше →
Total votes 77: ↑77 and ↓0 +77
Comments 48

Плата расширения для моделирования на Raspberry Pi

Reading time 7 min
Views 16K
DIY
Уже давно микрокомпьютер Raspberry Pi вошел в жизнь гиков, системных администраторов, программистов и электронщиков. Недорогой и относительно мощный для своего класса, со встроенными портами ввода/вывода, он может справиться с различными задачами и удовлетворить потребности пользователя. Купив Raspberry Pi мне захотелось что-нибудь по включать, измерить, по управлять внешними устройствами. На данный момент продается большое количество плат расширения например как здесь, можно использовать Breadboard с проводами для быстрого прототипирования, но я предпочитаю делать устройства самостоятельно, для конкретных задач. Для первого раза я не стал использовать двухрядную гребенку под все вывода, а ограничился несколькими портами ввода/вывода, шиной SPI, I2C и UART. Соединял Raspberry Pi с таргетом проводами для макетирования «мама-мама».

image

В связи с этим был разработан ряд из трех плат прототипирования, об одной из них, самой простой я расскажу в этой статье.
Total votes 20: ↑18 and ↓2 +16
Comments 14

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

Reading time 3 min
Views 39K
Smartphones Energy and batteries Wearable electronics Cellular communication


Инженеры из Вашингтонского университета (США) разработали сотовый телефон, который работает без встроенного источника энергии (то есть без батареи). Он получает необходимые 3,48 микроватта (максимум) по радио со вспомогательной радиостанции, которая находится на расстоянии до 9,4 м. Если же присутствует источник света, то дополнительную энергию дают фотоэлементы, за счёт чего можно удалиться от базовой станции на 15,2 м.

Исследователи считают, что их работа станет первым шагом к созданию полноценного мобильного телефона без батарей, который сможет работать даже в отсутствие вспомогательной радиостанции. В конце концов, в городском пространстве и так очень много излучений, которые можно превращать в электричество.
Читать дальше →
Total votes 31: ↑27 and ↓4 +23
Comments 60

Как «поделить» АЦП правильно

Reading time 3 min
Views 14K
Circuit design *Developing for Arduino *Manufacture and development of electronics *Electronics for beginners
Sandbox

Введение


Довольно часто в устройствах применяются активные датчики (терморезисторы, тензорезисторы, фоторезисторы, времярезисторы, счастьерезисторы и прочее).


Чтобы измерять соответствующую величину, датчик включают в цепь делителя в одно из его плеч.
Так рекомендуют поступать практически везде, особенно там, где точность не так важна как стоимость. В интернете множество уроков для ардуинщиков о считывании температуры именно при помощи терморезистора. Так поступают и в более серьезных приложениях.
Для примера ниже я представил часть схемы из драйвера VESC 4.2, который измеряет температуру ключей.

Читать дальше →
Total votes 30: ↑28 and ↓2 +26
Comments 18

Применение MATLAB/Simulink с аппаратурой производства АО «ИнСис»

Reading time 6 min
Views 9.2K
FPGA *Matlab *
Важной практической задачей является использование Matlab/Simulink с реальной аппаратурой которая позволит принять сигнал из реального мира. Это очень полезно для отладки алгоритмов. В данной работе представлена технология подключения к Simulink устройств АЦП производства АО «ИнСис». Для подключения используется DLL, которая видна в Simulink как компонент sm_adc. Для работы с аппаратурой используется отдельная консольная программа. Связь с DLL производится через разделяемую память. По данной технологии могут быть подключены любые АЦП на любых несущих модулях АО «ИнСис». В работе представлена система из генератора A7_DAC и модуля сбора FMC128E/FM412x500M.

Данная работа демонстрировалась на конференции «Технологии разработки и отладки сложных технических систем» 27-28 марта 2018 года.



Читать дальше →
Total votes 26: ↑26 and ↓0 +26
Comments 15

Ввод данных в STM32F4xx с параллельного АЦП через DCMI

Reading time 8 min
Views 12K
Programming microcontrollers *
Sandbox

Известно, что семейство микроконтроллеров STM32F4xx, имея на борту достаточно производительные ядра, вполне подходящие для «не мясорубочных» задач ЦОС не имеют полноценного интерфейса ввода данных с простейшей параллельной шины в режиме «pipe-line» (clk-data). «Покурив» «dm00037051.pdf», нашел не специфичный, но на первый взгляд подходящий вариант – интерфейс DCMI (Digital camera interface).

Конечно, использование для нагруженной классической ЦОС (КИХ, БИХ, FFT) микроконтроллеров STM32, не совсем является оптимальным вариантом, но если вдруг так легли карты и все-таки возможностей данного микроконтроллера вполне достаточно, плюс нужно достаточное количество низкоскоростных интерфейсов. Об этом под катом.



Читать дальше
Total votes 17: ↑17 and ↓0 +17
Comments 4

Разнообразие аналогово-цифровых преобразователей вырождается?

Reading time 4 min
Views 8.5K
Development of communication systems *Robotics development *Circuit design *Manufacture and development of electronics *

Окружающий нас мир с нашей точки зрения является аналоговым, то есть большинство измеряемых нами величин является множеством вещественных чисел в определенном диапазоне значений. В то же время методы обработки таких величин при помощи аналоговых операций оказывается сильно ограничен по функциональности и сложности, а разработанная цифровая обработка сигналов оказывается на много порядков функциональнее, надежнее, компактнее, но оперирует только с цифровыми данными, то есть с данными, дискретными по времени и по мгновенным значениям сигнала. Для преобразования из непрерывного аналогового сигнала в дискретный цифровой используется аналогово-цифровой преобразователь (АЦП).
Читать дальше →
Total votes 22: ↑19 and ↓3 +16
Comments 19

Power-line communication. Часть 1 — Основы передачи данных по линиям электропередач

Reading time 9 min
Views 27K
Directum corporate blog Development of communication systems *Programming microcontrollers *
Не так давно передо мной встала нетривиальная задачка — собрать устройство, которое могло бы по линиям электропередач (0,4 кВ), в сетях обычных бытовых потребителей, передавать некоторую информацию, а точнее — показания электросчетчиков.



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

Дальнейший материал — это выжимка из профессионального опыта в том виде, в котором я бы хотел это рассказать самому себе из прошлого. Многие факты сильно упрощены для лучшей читаемости.
Читать дальше →
Total votes 48: ↑47 and ↓1 +46
Comments 50

Раскладываем по полочкам параметры АЦП

Reading time 10 min
Views 55K
Миландр corporate blog Circuit design *Electronics for beginners Systems engineering *
Привет, Хабр! Многие разработчики систем довольно часто сталкиваются с обработкой аналоговых сигналов. Не все манипуляции с сигналами можно осуществить в аналоговой форме, поэтому требуется переводить аналог в цифровой мир для дальнейшей постобработки. Возникает вопрос: на какие параметры стоит обратить внимание при выборе микроконтроллера или дискретного АЦП? Что все эти параметры означают? В этой статье постараемся детально рассмотреть основные характеристики АЦП и разобраться на что стоит обратить внимание при выборе преобразователя.

image

Читать дальше →
Total votes 54: ↑54 and ↓0 +54
Comments 38

Скоростной АЦП с нуля. 16 бит за 10 лет

Reading time 12 min
Views 30K
Миландр corporate blog Language localisation *FPGA *Circuit design *Manufacture and development of electronics *
Чего стоит разработать быстродействующий аналого-цифровой преобразователь, почти не имея опыта? Насколько сильно наше отставание в этой области? Есть ли в этой нише шанс найти коммерческое применение своей продукции и отщипнуть хоть кусочек рынка у гигантов мира сего? Выпуская в свет новый 16-битный 80 МГц АЦП, хотим порассуждать на эти темы и рассказать о самой микросхеме и опыте её создания.

image

Читать дальше →
Total votes 113: ↑113 and ↓0 +113
Comments 88

Power-line communication. Часть 2 — Основные блоки устройства

Reading time 12 min
Views 7.4K
Directum corporate blog Development of communication systems *Programming microcontrollers *

В первой части статьи мы кратко ознакомились с основными понятиями при передаче данных по линиям электропередач. Узнали, что такое “полезный сигнал”, как с его помощью можно кодировать передаваемую информацию. Но ни слова не было о том, как это устройство должно быть выполнено физически, как оно будет генерировать сигнал, и каким образом его вообще подключить к сети 220 В.

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

Читать далее
Total votes 10: ↑8 and ↓2 +6
Comments 26
1