Кто то доставал до дна производительности STM32F1 ?

Кто любит RISC в жизни, заходим, не стесняемся.
Ответить
Потрогал лапой паяльник
Аватара пользователя
Сообщения: 342
Зарегистрирован: Пн ноя 23, 2009 17:35:38
Откуда: всё в этом мире относительно, как сказал старик Альберт...

Сообщение KBH-I »

Однажды делал БП на 2 кВт с частотой 100 кГц, соответственно с ПИ-регуляторами выходного напряжения и тока. Следовательно, позарез нужно было уложить оба ПИ-регулятора в 10 мкс. Без асма уложил их в 4 мкс, на целочисленной арифметике. Выполнял их в прерывании таймера. Всё остальное - в главном цикле, не торопясь и со вкусом...
)
"В стране искателей истины не существует человеческих авторитетов. Над тем, кто попытается изображать здесь начальство, посмеются боги."
(с) старик Альберт.
Реклама
Опытный кот
Аватара пользователя
Сообщения: 757
Зарегистрирован: Пт мар 30, 2007 12:11:23

Сообщение kotovasiya »

Дно у меня начиначалось с камерой OV7670 или с выводом на ТФТ дисплей кучу информации. Тут понимаешь что 103 не хватает.
Реклама
Сверлит текстолит когтями
Аватара пользователя
Сообщения: 1269
Зарегистрирован: Пт июл 21, 2006 15:05:19
Откуда: плод воображения

Сообщение KT315B »

[uquote="KBH-I",url="/forum/viewtopic.php?p=3660620#p3660620"]Однажды делал БП на 2 кВт с частотой 100 кГц, соответственно с ПИ-регуляторами выходного напряжения и тока. Следовательно, позарез нужно было уложить оба ПИ-регулятора в 10 мкс. Без асма уложил их в 4 мкс, на целочисленной арифметике. Выполнял их в прерывании таймера. Всё остальное - в главном цикле, не торопясь и со вкусом...
)[/uquote]

Была аналогичная ситуация. Делал на 103 PID-регулятор для PMSM моторколеса. Стоял энкодер AS5600, определял положение колеса. Моя задача была сделать что-то типа сервомашинки. Дык вот на целочисленной арифметике тоже где-то в 3 мс укладывался один регулятор, пытался делать на float-ах все сразу валилось и колесо сходило с ума ))

[uquote="kotovasiya",url="/forum/viewtopic.php?p=3664830#p3664830"]Дно у меня начиначалось с камерой OV7670 или с выводом на ТФТ дисплей кучу информации. Тут понимаешь что 103 не хватает.[/uquote]

И а каким образом у вас осуществлялся обмен с камерой? Ногодрыгом? Я эту камеру на ПЛИС мучал - ну там понятно... А вот интересно, как 103 будет успевать ее обрабатывать. Буфер был во внутреннем ОЗУ, или было прикручено внешнее?
R2AIV 73!
Контактная информация:
Мудрый кот
Сообщения: 1752
Зарегистрирован: Вт авг 15, 2017 10:51:13

Сообщение jcxz »

[uquote="KT315B",url="/forum/viewtopic.php?p=3710825#p3710825"]Была аналогичная ситуация. Делал на 103 PID-регулятор для PMSM моторколеса. Стоял энкодер AS5600, определял положение колеса. Моя задача была сделать что-то типа сервомашинки. Дык вот на целочисленной арифметике тоже где-то в 3 мс укладывался один регулятор[/uquote]Чушь несёте. Для одного ПИДа на фиксированной точке даже 1мкс - нереально много. Реальный ПИД выполняется быстрее.
Реклама
Эиком - электронные компоненты и радиодетали
Сверлит текстолит когтями
Аватара пользователя
Сообщения: 1269
Зарегистрирован: Пт июл 21, 2006 15:05:19
Откуда: плод воображения

Сообщение KT315B »

Чушь несёте. Для одного ПИДа на фиксированной точке даже 1мкс - нереально много. Реальный ПИД выполняется быстрее.
А поподробнее?
R2AIV 73!
Контактная информация:
Реклама
Мудрый кот
Сообщения: 1752
Зарегистрирован: Вт авг 15, 2017 10:51:13

Сообщение jcxz »

[uquote="KT315B",url="/forum/viewtopic.php?p=3710919#p3710919"]А поподробнее?[/uquote]
Что, подробнее?
Реклама
Сверлит текстолит когтями
Аватара пользователя
Сообщения: 1269
Зарегистрирован: Пт июл 21, 2006 15:05:19
Откуда: плод воображения

Сообщение KT315B »

Каким образом пид успевает за 1мкс
R2AIV 73!
Контактная информация:
Собутыльник Кота
Аватара пользователя
Сообщения: 2516
Зарегистрирован: Пт июл 12, 2019 22:52:01

Сообщение Eddy_Em »

А чего бы ему не успевать, если он — аналоговый? Можно даже на одном операционнике собрать (правда, настраивать замучишься).
Linux rules! Windows must die. Здравомыслящий человек добровольно будет пользоваться мастдаем лишь в двух случаях: под дулом автомата или под влиянием анального зонда.
Я на гитхабе, в ЖЖ
Контактная информация:
Сверлит текстолит когтями
Аватара пользователя
Сообщения: 1269
Зарегистрирован: Пт июл 21, 2006 15:05:19
Откуда: плод воображения

Сообщение KT315B »

Речь то о цифровом идёт, на 103м МК.
R2AIV 73!
Контактная информация:
Друг Кота
Аватара пользователя
Сообщения: 3385
Зарегистрирован: Пн окт 11, 2010 19:00:08

Сообщение Мурик »

jcxz писал(а):Для одного ПИДа на фиксированной точке даже 1мкс - нереально много.
При тактовой частоте 1 МГц? :))) :)))
Собутыльник Кота
Аватара пользователя
Сообщения: 2516
Зарегистрирован: Пт июл 12, 2019 22:52:01

Сообщение Eddy_Em »

Кому может взбрести в голову лепить цифровой ПИД, если частота регулирования больше килогерца-другого? Для этого аналог есть...
Linux rules! Windows must die. Здравомыслящий человек добровольно будет пользоваться мастдаем лишь в двух случаях: под дулом автомата или под влиянием анального зонда.
Я на гитхабе, в ЖЖ
Контактная информация:
Сверлит текстолит когтями
Аватара пользователя
Сообщения: 1269
Зарегистрирован: Пт июл 21, 2006 15:05:19
Откуда: плод воображения

Сообщение KT315B »

[uquote="Eddy_Em",url="/forum/viewtopic.php?p=3711016#p3711016"]Кому может взбрести в голову лепить цифровой ПИД, если частота регулирования больше килогерца-другого? Для этого аналог есть...[/uquote]

Руководству )
R2AIV 73!
Контактная информация:
Собутыльник Кота
Аватара пользователя
Сообщения: 2516
Зарегистрирован: Пт июл 12, 2019 22:52:01

Сообщение Eddy_Em »

Ну так приляпать рядом с микроконтроллером ОУ. Без палева ☺
Linux rules! Windows must die. Здравомыслящий человек добровольно будет пользоваться мастдаем лишь в двух случаях: под дулом автомата или под влиянием анального зонда.
Я на гитхабе, в ЖЖ
Контактная информация:
Мудрый кот
Сообщения: 1752
Зарегистрирован: Вт авг 15, 2017 10:51:13

Сообщение jcxz »

[uquote="KT315B",url="/forum/viewtopic.php?p=3710935#p3710935"]Каким образом пид успевает за 1мкс[/uquote]А каким образом ему не успевать если для него нужно выполнить всего несколько ассемблерных команд?

Добавлено after 1 minute 17 seconds:
[uquote="Мурик",url="/forum/viewtopic.php?p=3710969#p3710969"]При тактовой частоте 1 МГц? :))) :)))[/uquote]Раз автор не указал тактовую, то предполагаем её максимальной.

Добавлено after 4 minutes 23 seconds:
[uquote="Eddy_Em",url="/forum/viewtopic.php?p=3711016#p3711016"]Кому может взбрести в голову лепить цифровой ПИД, если частота регулирования больше килогерца-другого? Для этого аналог есть...[/uquote]А в чём проблема с цифровым ПИД?
Имею пачку программных ПИ-регуляторов, работает всё на 10кГц и не занимает сколько-нибудь существенного времени.
Друг Кота
Аватара пользователя
Сообщения: 3385
Зарегистрирован: Пн окт 11, 2010 19:00:08

Сообщение Мурик »

jcxz писал(а):то предполагаем её максимальной.
Ну ОК, я уже догадался что речь шла о тактовой 9999999999999999999999999999999999999999999999999 Иоттагерц. :))) :)))
Собутыльник Кота
Аватара пользователя
Сообщения: 2516
Зарегистрирован: Пт июл 12, 2019 22:52:01

Сообщение Eddy_Em »

jcxz писал(а):А каким образом ему не успевать если для него нужно выполнить всего несколько ассемблерных команд?
Для ПИДа-то? Несколько команд? Угу-угу... Даже если производную считать как конечную разность всего по двум точкам, интеграл надо брать по несколько большему количеству. Т.е. циклически крутить данные в массиве, скажем, из 10 значений. Только на это запросто уйдет тактов 100!
Linux rules! Windows must die. Здравомыслящий человек добровольно будет пользоваться мастдаем лишь в двух случаях: под дулом автомата или под влиянием анального зонда.
Я на гитхабе, в ЖЖ
Контактная информация:
Сверлит текстолит когтями
Аватара пользователя
Сообщения: 1269
Зарегистрирован: Пт июл 21, 2006 15:05:19
Откуда: плод воображения

Сообщение KT315B »

[uquote="Eddy_Em",url="/forum/viewtopic.php?p=3711084#p3711084"]
jcxz писал(а):А каким образом ему не успевать если для него нужно выполнить всего несколько ассемблерных команд?
Для ПИДа-то? Несколько команд? Угу-угу... Даже если производную считать как конечную разность всего по двум точкам, интеграл надо брать по несколько большему количеству. Т.е. циклически крутить данные в массиве, скажем, из 10 значений. Только на это запросто уйдет тактов 100![/uquote]

Угу, там кольцевой буфер на 64 выборки и крутился )
R2AIV 73!
Контактная информация:
Мудрый кот
Сообщения: 1752
Зарегистрирован: Вт авг 15, 2017 10:51:13

Сообщение jcxz »

[uquote="Eddy_Em",url="/forum/viewtopic.php?p=3711084#p3711084"]Т.е. циклически крутить данные в массиве, скажем, из 10 значений. Только на это запросто уйдет тактов 100![/uquote]Не знаю что такое "крутить" там что-то в массиве. Но для нахождения суммы N-значений, при том что на каждом шаге добавляется новое значение, нужно всего 2-3 операции. Вне зависимости от размера какого-то буфера.
Хотя - если нет головы или стоит задача "потратить как можно больше тактов", можно и миллион тактов чего-то там "крутить".

Добавлено after 2 minutes 44 seconds:
[uquote="KT315B",url="/forum/viewtopic.php?p=3711091#p3711091"]Угу, там кольцевой буфер на 64 выборки и крутился )[/uquote]Зачем для ПИД-а какие-то буфера? :dont_know:
Сверлит текстолит когтями
Аватара пользователя
Сообщения: 1269
Зарегистрирован: Пт июл 21, 2006 15:05:19
Откуда: плод воображения

Сообщение KT315B »

Зачем для ПИД-а какие-то буфера?
Тот самый массив для суммирования.
R2AIV 73!
Контактная информация:
Мудрый кот
Сообщения: 1752
Зарегистрирован: Вт авг 15, 2017 10:51:13

Сообщение jcxz »

[uquote="KT315B",url="/forum/viewtopic.php?p=3711176#p3711176"]Тот самый массив для суммирования.[/uquote]Можете привести код? Не понимаю - зачем массив нужен для ПИД?
Написал много ПИ-регуляторов, ни в одном мне массив не потребовался....
Да в общем-то и ПИД не потребовался никогда для управления PMSM-моторами. Достаточно ПИ-регулятора.

PS: Тема напоминает анекдот:
"Функцию, суммирующую A+B, сможешь на 10 тактов написать?"
"Смогу"
"А на 100 тактов?"
"Тоже смогу, но подумать немного надо."
"А на 1000 тактов?"
"Один не справлюсь - помощник нужен."
:)))
Ответить

Вернуться в «ARM»