|
17 / 17 / 5
Регистрация: 19.09.2012
Сообщений: 216
|
|
Как выбрать архитектуру и характеристики контроллера29.11.2015, 17:40. Показов 1690. Ответов 28
Метки нет (Все метки)
Всем доброго времени суток. Собственно вот в чем трабл. Как выбрать нужный контроллер и его частоты ? В интернете ничего не нашел, быть может тут подскажете ?
Суть проекта: обращение к платам ацп(пока ардуино) минимум 4000 раз в секунду, получение от нее измерений на минимум 10 байт, обработка полученных данных, упаковка их в специализированный протокол на 128 байт и отправка в сеть, требуемая задержка между измерением и отправкой в сеть должна быть не более 10 мкС... Понятно что по большей степени это оптимизация кода, но пока без этого фактора... Как выбрать подходящий мк и его частоту? или же это уже не мк, а полноценный мини ПК ? Помогите советом, что-то совсем не знаю как быть ![]() На данный момент проект написан на C++ и при запуске первой версии программы на ноутбуке с i5 2.27 GHz дает задержку при обработке 10-35 мкС и стабильно держит время между пакетами. Запуск того же кода на Raspberry Pi B+ показал что она вообще не годится... Обработка может занимать до 1 мС.... Может смотреть уже в сторону ПЛИС ? Подскажите советом
0
|
|
| 29.11.2015, 17:40 | |
|
Ответы с готовыми решениями:
28
Как выбрать архитектуру из 32x и 64x? Выбрать архитектуру приложения с БД
|
|
17 / 17 / 5
Регистрация: 19.09.2012
Сообщений: 216
|
|
| 29.11.2015, 18:27 [ТС] | |
|
magirus, нужно оцифровывать 4 тока и 4 напряжения промышленной частоты(50Гц) со скоростью 80 выборок за период... 1/50/80 = 0,00025 c. между опросами или же 4000 раз в секунду... все 8 значений 10 разрядного АЦП строкой отправляются на ПК...
Или я где-то косячу ?
0
|
|
|
Модератор
8979 / 6745 / 921
Регистрация: 14.02.2011
Сообщений: 23,859
|
||
| 29.11.2015, 19:01 | ||
|
http://www.compel.ru/lib/ne/20... aet-mnogoe http://catethysis.ru/stm32-adc/
1
|
||
|
17 / 17 / 5
Регистрация: 19.09.2012
Сообщений: 216
|
|
| 29.11.2015, 21:54 [ТС] | |
|
ValeryS, Должен или справится ? По каким принципам подбирать ? Встроенных АЦП не хватит, только в качестве поделки на вроде ардуины... точность нужна от 16 разрядов и выше
Сможет ли он дать требуемую задержку на обработку, сможет ли быстро собрать пакет 128 байтный и отправить в сеть... также нужно будет АЦП опрашивать 256 раз за период... Как определиться с контроллером ?
0
|
|
|
Модератор
8979 / 6745 / 921
Регистрация: 14.02.2011
Сообщений: 23,859
|
|||||||
| 29.11.2015, 22:09 | |||||||
|
время оцифровки 16мкс, что гораздо быстрее если мало возьми stm32F4 там скорость еще выше,памяти еще больше стоимость рублей 600 вот например http://www.promelec.ru/catalog... 00/#148200
1
|
|||||||
|
17 / 17 / 5
Регистрация: 19.09.2012
Сообщений: 216
|
|
| 29.11.2015, 22:24 [ТС] | |
|
ValeryS, Сразу извиняюсь за глупые и абсурдные вопросы, самоучка, с мк практически дел не имел, а сейчас приперло... 10 разрядов это в ардуине, с которой я играюсь сейчас, в реальном устройстве должно быть от 16 разрядов и выше; то что не хватит, имелась ввиду разрядность, я косяк))) 16 мкС ? У устройства заявлен класс точности 0.2S и если я опять ничего не перепутал, то время, от начала оцифровки, до отправки кадра в сеть должно быть не больше 9.6 мкС (фазовая погрешность), но вроде не перепутал... это вообще возможно ? >_< 0,00025c это время между пакетами...
0
|
|
|
Модератор
8979 / 6745 / 921
Регистрация: 14.02.2011
Сообщений: 23,859
|
|||
| 29.11.2015, 22:36 | |||
|
при частоте 14мГц(скорость шины АЦП) это одна микросекунда вот посмотри https://hubstub.ru/programming/66-stm32-acp.html
1
|
|||
|
75 / 75 / 8
Регистрация: 24.09.2015
Сообщений: 342
|
|
| 29.11.2015, 23:16 | |
|
Fobes, На формирование 128 байтного пакета я думаю лучше зарезервировать 320 тактов 32х разрядного процессора. В IDE для мк обычно есть моделирование или режим симуляции. Можно посмотреть сколько тактов уходит на алгоритм формирования пакета (с помощью точек останова).
Т.е. есть 5 мкс на измерение и 5 микросекунд на формирование, то получается 62.5 МГц тактовая. Если хочется внешний АЦП, что безусловно даст большую точность, в плане шумов, то скорее всего потребуется SPI на 5 мкс/16 бит = 3.125МГц Еще смущает сеть - не факт что удастся попадать в сеть с требуемой точность, линия может быть занята другим сообщением (что за сеть? - UART, CAN, USB, Ethernet). Кто принемает сообщение? Может ему просто линию LDVS бросить от последовательного АЦП Добавлено через 26 минут Если получатель ПК с ОС не реального времени, то он не обеспечит точность приема в 10МГц
2
|
|
|
17 / 17 / 5
Регистрация: 19.09.2012
Сообщений: 216
|
|
| 29.11.2015, 23:28 [ТС] | |
|
Papayaved, Сеть - Ethernet... получатели соответственно любые устройства в локальной сети(терминалы РЗиА, если это поможет)) + ко всему этому в дальнейшем подводка по протоколу PTPv2 планируется...
Нашел вот такую игрушку http://www.ebay.com/itm/Stm32f... SwBahVE9EC подойдет ли она для моих задач ? Реально ли на ней будет реализовать отправку самособранного пакет в ethernet? Или есть варианты проще ?
0
|
|
|
Модератор
8979 / 6745 / 921
Регистрация: 14.02.2011
Сообщений: 23,859
|
||
| 30.11.2015, 00:01 | ||
|
http://www.promelec.ru/catalog... 70/#147170 но к ней лучше еще прикупить вот такую, чтобы самому не заниматься пайкой http://www.promelec.ru/catalog... 91/#153991
1
|
||
|
17 / 17 / 5
Регистрация: 19.09.2012
Сообщений: 216
|
|
| 30.11.2015, 01:00 [ТС] | |
|
ValeryS, 1.1к на плату не жалко, но вот 3к на обвязку жаба душит отдать)) нет ли отдельно чисто ethernet модуля ? нашел у себя ENC28J60 от ардуинки, получится с ним сдружиться?)
п.с. а что за сайт ? доверять стоит ?) привык на ебее заказывать)
0
|
|
|
Модератор
8979 / 6745 / 921
Регистрация: 14.02.2011
Сообщений: 23,859
|
|||
| 30.11.2015, 06:40 | |||
![]() привожу его просто показать порядок цен, да и даташиты они обычно выкладывают Цены них конечно резко возросли,но можешь взять модель и поискать на том же ебее можно взять схемку и самому спаять
0
|
|||
|
1983 / 1276 / 131
Регистрация: 04.01.2010
Сообщений: 4,607
|
||||
| 30.11.2015, 10:09 | ||||
|
В этих модулях используют обычных FIFO, чтобы передавать данные в ПК. Тоже самое касается и внешних модулей, через USB2.0. ЗЫ: во времена погони за "мегасемплами" (лет 10 назад) мне встречались платки АЦП с 1GS/s и более. И на все з них были дрова под Windows (как минимум). Добавлено через 7 минут ... и да, поддерживаю идею с кортексом F4. На F1 есть примеры использования внутреннего АЦП на один канал с выборкой 1МГц. При этом данные выводятся на экран и могут писаться на флешку (китайцы делают такие "осциллографы"). Но... Для собственного написания нужен конечно запас по мощности, и опять же - внешний АЦП. Поток данных будет чуть больше. Посему, платка с F4 и дополнительным SRAM'ом - самое оно.
0
|
||||
|
75 / 75 / 8
Регистрация: 24.09.2015
Сообщений: 342
|
|
| 30.11.2015, 10:25 | |
|
Voland_,
1. Я просто заложил 10 тактов на формирование одного 32х разрядного поля пакета. 2. Надо смотреть мк с несколькими SPI, либо с SPI на 50 МГц. Новые АЦП имеют SPI 50 МГц. 3. Вы про пакетную скорость передачи данных, а я про скорость реакции - если надо с периодом 10 мкс производить регулирование. Прерывание ПК обрабатываются максимум с частотой 10кГц, чтобы не пропускать пакеты делают аппаратные буфера. Но быстрой реакции это все равно не поможет. Вход в прерывание и в обработку у ПК очень длинный, особенно если ОС не реального времени.
0
|
|
|
1983 / 1276 / 131
Регистрация: 04.01.2010
Сообщений: 4,607
|
|||
| 30.11.2015, 11:18 | |||
|
Добавлено через 3 минуты
1
|
|||
|
17 / 17 / 5
Регистрация: 19.09.2012
Сообщений: 216
|
|
| 30.11.2015, 12:37 [ТС] | |
|
Voland_, в общем распечатал кватанцию об оплате http://www.promelec.ru/catalog... 70/#147170 уже) Последнее уточнение >_< Мне хватит этого мк для моих задач ?) по даташиту это уже кортекс М4, DMA присутствует, частота до 168 МГц. Задача: опрос 8 каналов АЦП, упаковка этих данных в ethernet фрейм на 128 байт и отправка его в сеть. все это с частотой 4000 раз в секунду, время с начала оцифровки до отправки пакета в сеть должно быть не больше 10 мкС, помимо этого в дальнейшем должна быть реализована подводка часов по протоколу PTPv2 тоже через ethernet
0
|
|
|
1983 / 1276 / 131
Регистрация: 04.01.2010
Сообщений: 4,607
|
|
| 30.11.2015, 16:17 | |
|
Получается, SPI -> DMA -> RAM (2(4) x FIFO 128байт). По двум прерываниям отправка через UDP-пакеты. Без остальных прерываний. Пакет-то будет слаться через Ethernet, но куда вы его подключать будете? Вам же советовали уже использовать готовую платку со всеми необходимыми интерфейсами.
Добавлено через 2 минуты ...по-моему, в этих кортексах есть 2 АЦП, так что их можно заставить работать в синхронном режиме, чтобы получать данные без сдвига. Этот сдвиг будет на максимальной частоте <1мкс, но все же его можно убрать. Добавлено через 3 минуты ...либо использовать два и более АЦП по параллельным SPI-интерфейсам и работать с ними в параллель.
0
|
|
|
1280 / 1185 / 175
Регистрация: 02.12.2013
Сообщений: 4,883
|
||
| 30.11.2015, 16:45 | ||
|
0
|
||
| 30.11.2015, 16:45 | |
|
Помогаю со студенческими работами здесь
20
Какую архитектуру выбрать под простой аналог Ютуба на php? Как выполнить редирект с одного метода контроллера в другой, без пересоздания контроллера Как получить совмещенные графики передаточной характеристики и характеристики тока потребления для КМОП инвертора? Как передать из одного контроллера объект модели в строго типизированное представление другого контроллера Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
SDL3 для Web (WebAssembly): Обработчик клика мыши в браузере ПК и касания экрана в браузере на мобильном устройстве
8Observer8 02.02.2026
Содержание блога
Для начала пошагово создадим рабочий пример для подготовки к экспериментам в браузере ПК и в браузере мобильного устройства. Потом напишем обработчик клика мыши и обработчик. . .
|
Философия технологии
iceja 01.02.2026
На мой взгляд у человека в технических проектах остается роль генерального директора. Все остальное нейронки делают уже лучше человека. Они не могут нести предпринимательские риски, не могут. . .
|
SDL3 для Web (WebAssembly): Вывод текста со шрифтом TTF с помощью SDL3_ttf
8Observer8 01.02.2026
Содержание блога
В этой пошаговой инструкции создадим с нуля веб-приложение, которое выводит текст в окне браузера. Запустим на Android на локальном сервере. Загрузим Release на бесплатный. . .
|
SDL3 для Web (WebAssembly): Сборка C/C++ проекта из консоли
8Observer8 30.01.2026
Содержание блога
Если вы откроете примеры для начинающих на официальном репозитории SDL3 в папке: examples, то вы увидите, что все примеры используют следующие четыре обязательные функции, а. . .
|
|
SDL3 для Web (WebAssembly): Установка Emscripten SDK (emsdk) и CMake для сборки C и C++ приложений в Wasm
8Observer8 30.01.2026
Содержание блога
Для того чтобы скачать Emscripten SDK (emsdk) необходимо сначало скачать и уставить Git: Install for Windows. Следуйте стандартной процедуре установки Git через установщик. . . .
|
SDL3 для Android: Подключение Box2D v3, физика и отрисовка коллайдеров
8Observer8 29.01.2026
Содержание блога
Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами. Версия v3 была полностью переписана на Си, в. . .
|
Инструменты COM: Сохранение данный из VARIANT в файл и загрузка из файла в VARIANT
bedvit 28.01.2026
Сохранение базовых типов COM и массивов (одномерных или двухмерных) любой вложенности (деревья) в файл, с возможностью выбора алгоритмов сжатия и шифрования.
Часть библиотеки BedvitCOM
Использованы. . .
|
SDL3 для Android: Загрузка PNG с альфа-каналом с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 28.01.2026
Содержание блога
SDL3 имеет собственные средства для загрузки и отображения PNG-файлов с альфа-каналом и базовой работы с ними. В этой инструкции используется функция SDL_LoadPNG(), которая. . .
|