|
|
| ||||||||
|
|
|
|
315430
1248
32
10
|
|
Опции темы | Поиск в этой теме |
|
|
1041
|
|
Завсегдатай Фонарёвки
Регистрация: 20.07.2013 Последняя активность: 05.08.2015 05:25
Сообщений: 614
Сказал(а) спасибо: 87
Поблагодарили: 120 раз(а) в 77 сообщениях
|
Дык, я-ж и не отрицаю!
|
|
|
|
|
|
1042
|
|
Ветеран Фонарёвки
Регистрация: 16.10.2012 Последняя активность: 22.02.2022 02:51
Сообщений: 4358
Сказал(а) спасибо: 687
Поблагодарили: 2978 раз(а) в 1380 сообщениях
|
|
|
|
|
|
|
1043
|
|
Ветеран Фонарёвки
Регистрация: 06.03.2013 Последняя активность: 15.08.2024 23:42
Сообщений: 4776
Сказал(а) спасибо: 657
Поблагодарили: 1915 раз(а) в 1181 сообщениях
|
Да, со стабилизацией интересно выходит. Весь день экспериментировал.
Она работает, отлично работает, но на обычных режимах. На нижних АЦП практически бесполезен. Применил алгоритм простейшего цифрового фильтра - "скользящее среднее", опять же средние режимы отрабатываются отлично, плавно, а на нижних шум превращается в небольшую постоянную составляющую, которая почти не колышется в зависимости от тока. Попробую придумать какую-нибудь хитрость. |
|
|
|
|
|
1044
|
![]() |
|
|
|
|
|
|
1045
|
|
Ветеран Фонарёвки
Регистрация: 06.03.2013 Последняя активность: 15.08.2024 23:42
Сообщений: 4776
Сказал(а) спасибо: 657
Поблагодарили: 1915 раз(а) в 1181 сообщениях
|
Примерно от 100.
Я ещё не сделал интерфейс управления, поэтому все значения для экспериментов задаю в коде, полностью протестировать проблематично (шить каждый раз), но логика поведения ясна. Блин, с этой тиньки ещё никакой отладочной информации не вывести, у неё даже UART'а нет. Только светодиод
|
|
|
|
|
|
1046
|
|
Ветеран Фонарёвки
Регистрация: 06.03.2013 Последняя активность: 15.08.2024 23:42
Сообщений: 4776
Сказал(а) спасибо: 657
Поблагодарили: 1915 раз(а) в 1181 сообщениях
|
Вообще, при токе в 100мА напряжение на шунте будет 0.0025В. Это за гранью добра и зла
|
|
|
|
|
|
1047
|
![]() |
Это хорошо по двум причинам:
1. я своем драйвере уперся в ограничение АЦП, а не просто настолько туп, чтобы не настроить правильно ПИД регулятор ![]() 2. Примерно в этом диапазоне у светодиода наилучший КПД. Значит можно ШИМить со 100mA и не заморачиваться. Только вот, какой частоты ШИМ получится, чтобы замерять успевать... |
|
|
|
|
|
1048
|
![]() |
|
|
|
|
|
|
1049
|
|
|
Ветеран Фонарёвки
Регистрация: 06.03.2013 Последняя активность: 15.08.2024 23:42
Сообщений: 4776
Сказал(а) спасибо: 657
Поблагодарили: 1915 раз(а) в 1181 сообщениях
|
Цитата:
У меня идея привязаться к напряжению в этих режимах. |
|
|
|
|
|
|
1050
|
![]() |
|
|
|
|
|
|
1051
|
|
Ветеран Фонарёвки
Регистрация: 06.03.2013 Последняя активность: 15.08.2024 23:42
Сообщений: 4776
Сказал(а) спасибо: 657
Поблагодарили: 1915 раз(а) в 1181 сообщениях
|
Так я говорю - не нужен, основной справляется.
Или вы имеете ввиду, что он даст какие-то дополнительные плюшки, помимо слабых режимов? |
|
|
|
|
|
1052
|
![]() |
Светодиод будет работать в максимуме эффективности. Ставим скважность, соответствующую примерно 100-150mA этот ток замерить реально и более низкочастотным ШИМом его. Но низкочастотный он будет. Очень. Привязаться к напряжению можно... насколько это будет точно работать?
|
|
|
|
|
|
1053
|
![]() |
ploop,
На асме пишете? |
|
|
|
|
|
1054
|
|
|
Ветеран Фонарёвки
Регистрация: 06.03.2013 Последняя активность: 15.08.2024 23:42
Сообщений: 4776
Сказал(а) спасибо: 657
Поблагодарили: 1915 раз(а) в 1181 сообщениях
|
Цитата:
На Си. На асме там делать нечего, нет критичных участков. Да и поглядывая на асм-код, который генерит GCC, был удивлён, насколько он неплох. Думал там каша будет - нет, читается как будто сам писал. |
|
|
|
|
|
|
1055
|
![]() |
|
|
|
|
|
|
1056
|
|
Ветеран Фонарёвки
Регистрация: 06.03.2013 Последняя активность: 15.08.2024 23:42
Сообщений: 4776
Сказал(а) спасибо: 657
Поблагодарили: 1915 раз(а) в 1181 сообщениях
|
Если что - код на гитхабе (ну, то есть, заготовка пока) https://github.com/ploop/nd...
|
|
|
|
| Поблагодарили: 4 раз(а) |
|
|
1057
|
|
|
Увлеченный
Регистрация: 14.02.2011 Последняя активность: 19.09.2024 09:07
Сообщений: 87
Сказал(а) спасибо: 81
Поблагодарили: 15 раз(а) в 9 сообщениях
|
Цитата:
|
|
|
|
|
|
|
1058
|
![]() |
ploop,
Кажется на easyelectronics была статья про такой фильтр. Тоже пробовал его применять... но не замеру тока, а на паряжению (не помню, почему отказался от него по току...). У меня напряжение использовалось в расчетах значения тока для компенсации дрейфа опорного напряжения. |
|
|
|
|
|
1059
|
|
Ветеран Фонарёвки
Регистрация: 06.03.2013 Последняя активность: 15.08.2024 23:42
Сообщений: 4776
Сказал(а) спасибо: 657
Поблагодарили: 1915 раз(а) в 1181 сообщениях
|
Да, кажется оттуда фильтр. Работает как обычное среднее арифметическое, но только без задержек.
asterixtyumen, иначе через неделю сам забуду, что писал. (что-то там при просмотре форматирование уезжает, в IDE всё нормально...) |
|
|
|
|
|
1060
|
![]() |
ploop,
Мое сромное IMHO, здесь: Код:
void UpdatePWM(uint8_t mode_adc)
{
// Собственно стабилизация
// Если текущее значение АЦП меньше вычисленного
// (то есть ток меньше нужного), увеличиваем длительность импульсов
// Иначе наоборот, уменьшаем
if ((cur_adc<mode_adc)&&(pwm<255)) pwm++;
if ((cur_adc>mode_adc)&&(pwm>1)) pwm--;
}
|
|
|
|