Мелкие вопросы по теории

Здесь принимаются все самые невообразимые вопросы... Главное - не стесняйтесь. Поверьте, у нас поначалу вопросы были еще глупее :)
Аватара пользователя
КРАМ
Друг Кота
Сообщения: 25219
Зарегистрирован: Чт янв 10, 2008 22:01:02
Откуда: Московская область, Фрязино

Re: Мелкие вопросы по теории

Сообщение КРАМ »

Чтобы получить эффект бегущей строки, нужно пересчитывать указатель массива изображения на указатель отображаемого столбца с постоянным покадровым инкрементом (или декрементом).
Вообще, движение изображения - это работа с указателями.
Для лучшего понимания процесса нарисуйте на листе бумаге пронумерованное по столбцам пиксельное изображение. Возьмите еще один лист и вырежьте на нем окно на, например, треть нарисованного изображения в длину и пронумеруйте над окном виртуальные столбцы в окне. Теперь положите окно на изображение так, чтобы видеть начало изображения. Потом сдвиньте на столбец, потом еще на столбец. Каждый сдвиг должен сопровождать вывод ПОЛНОГО изображения В ОКНЕ на дисплей. Посмотрите как меняются соотношения адресов столбцов изображения и окна. Адрес изображения - исходный массив, адрес окна - дисплей.
И не путайте процесс регенерации (сканирования) изображения для матрицы с движением самого изображения. Это разные процессы. Икремент указателя движения и инкремент указателя регенерации - совершенно разные истории.
Реклама
Serhio
Прорезались зубы
Сообщения: 249
Зарегистрирован: Вс авг 15, 2010 20:42:44
Откуда: Тюмень
Контактная информация:

Re: Мелкие вопросы по теории

Сообщение Serhio »

Помогите пожалуйста разобраться для начала со статическим выводом на матрицу. Могли бы Вы мне в общих чертах подсказать следующее:
как я понимаю мы сначала должны выдать нули и единички в самую верхнюю строку (то есть установить посредством сдвиговых регистров определенные уровни в столбцах, а потом подсветить всю верхнюю строку) потом во вторую, третью... (хочу осуществить построчную динамическую индикацию). Не понимаю как мне вычислить эту самую первую строчку (верхнюю строку всей матрицы, какие там нули и единицы), то есть я сам то понимаю, но как заставить мк посчитать :dont_know: . Не должен же я каждый раз вручную вводить нули и единицы, что бы защелкнуть их в регистры сдвига? Можно конечно, если надпись будет неподвижна и неизменяемая во времени. Я хочу написать в программном коде слово или фразу, которую после прошивки мк выведет на матрицу.
Реклама
Aleksofk1911
Нашел транзистор. Понюхал.
Сообщения: 196
Зарегистрирован: Ср сен 24, 2014 16:48:51

Re: Мелкие вопросы по теории

Сообщение Aleksofk1911 »

Здравствуйте.
Пытаюсь собрать грозозащиту UTP для IP видеокамеры.
Возник вопрос на каком кольце нужно делать гальваническую развязку.
магазинов у нас нет. Маленькие кольца есть от энергосбереегаек.
вопрос сколько витков примерно нужно.
если подымалась тема защиты UTP ткните носом.
Аватара пользователя
les1982
Собутыльник Кота
Сообщения: 2981
Зарегистрирован: Ср сен 28, 2011 22:18:14
Откуда: Москва

Re: Мелкие вопросы по теории

Сообщение les1982 »

Люди могут жить без мозгов.
Реклама
Эиком - электронные компоненты и радиодетали
Aleksofk1911
Нашел транзистор. Понюхал.
Сообщения: 196
Зарегистрирован: Ср сен 24, 2014 16:48:51

Re: Мелкие вопросы по теории

Сообщение Aleksofk1911 »

спасибо. а диоды какие лучше ?
Вложения
rg5_shema.gif
(3.4 КБ) 257 скачиваний
Реклама
Имбирь
Первый раз сказал Мяу!
Сообщения: 35
Зарегистрирован: Ср янв 09, 2013 18:04:49

Re: Мелкие вопросы по теории

Сообщение Имбирь »

Здравствуйте, форумчане.
Делаю источник напряжения на трансформаторе, на lm336, на микроконтроллере.
Будет стрелочный вольтметр, амперметр, вольтметр на светодиодном индикаторе.
Прошивка процессора написана примерно на 50%. Так бы и дальше делал, но решил посоветоваться с умными людьми. Ближе к делу.
Безусловно нужна защита от КЗ, стабилизаторы lm 336 горят от замыкания за секунды.
Мое решение:
Вешаем на МК задачу следить за напряжением на шунте амперметра. При превышении напряжения - вырубаем ключевой MOSFET, который стоит после всей схемотехники, на выходе.
Если сопротивление шунта 0.1 Ом, то пусть отключение нагрузки происходит при регистрации АЦП напряжения равного 0.3 Вольт (то есть при токе в 3А).
К сожалению я не бородатый электронщик и думаю в таком алгоритме есть изъяны. Те что мне явные:
1) Сработает ли вообще алгоритм?
2) Что делать с ложными срабатываниями? Усиливать напряжение с шунта мне бы не хотелось (дополнительное усложнение в схеме), а 0.3 вольт довольно небольшое напряжение. Возможно стоит делать выдержку.
3) Какое предельное время безопасного отключения замкнутой цепи? Я склоняюсь к до 10мс.

Аналоговую защиту принципиально не хочу использовать. Пусть за этим следит микроконтроллер.
АЦП работает со шикарной, как мне кажется, скоростью в 4 кГц. То есть, процессор будет уведомлен о КЗ за меньше чем мс. А дальше см. 4

4) Время закрытия MOSFET. Управляющее напряжение равно 12 вольт - это сильно упростит стыковку транзистора с МК. С моей колокольни главное условие - моментальное снятие заряда с затвора. MOSFET будет работать только как ключ, естественного никакого ШИМ и нагрева. Я думаю, что даже использование радиатора будет лишней тратой.
Жду вашего мнения.
Реклама
Аватара пользователя
Gisteresis
Друг Кота
Сообщения: 4732
Зарегистрирован: Ср сен 18, 2013 10:08:26
Откуда: Санкт-Петербург

Re: Мелкие вопросы по теории

Сообщение Gisteresis »

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

Имхо этим можно попробовать заморочиться если у вас МК типа STM который на 100МГц работает.
А так считаю правильным принципом задание параметров с МК а исполнение их только внешними цепями, которые реагируют гораздо быстрее.
Последний раз редактировалось Gisteresis Пт сен 04, 2015 08:22:26, всего редактировалось 1 раз.
Аватара пользователя
КРАМ
Друг Кота
Сообщения: 25219
Зарегистрирован: Чт янв 10, 2008 22:01:02
Откуда: Московская область, Фрязино

Re: Мелкие вопросы по теории

Сообщение КРАМ »

В значительной части ШИМ модулей МК есть специальный аппаратный вход Fault, который с аппаратной скоростью блокирует ШИМ, закрывая оба ключа.
Аватара пользователя
hybroid
Друг Кота
Сообщения: 8007
Зарегистрирован: Вс ноя 14, 2010 19:24:26
Откуда: Лукалэнд

Re: Мелкие вопросы по теории

Сообщение hybroid »

IMHO, значительная часть обсуждаемых МК на нашем уютненьком - какие-нить атмеги, у которых нету похожего :) Есть у атмела серия PWM, но что-то мне подсказывает, что тут речь не о такой штуке :)

Я за внешний компаратор. Но надо мыслить логически.. Какой ток ограничен источником этого источника? Судя по времени сгорания ЛМки - горит она на не таком уж и большом токе, т.е. его что-то ограничивает и есть куча времени до теплового пробоя ЛМки. Но даже так я бы ставил компаратор - и надёжнее, и МК освободится от молочения ещё одного канала АЦП.
Аватара пользователя
КРАМ
Друг Кота
Сообщения: 25219
Зарегистрирован: Чт янв 10, 2008 22:01:02
Откуда: Московская область, Фрязино

Re: Мелкие вопросы по теории

Сообщение КРАМ »

hybroid писал(а):IMHO, значительная часть обсуждаемых МК на нашем уютненьком - какие-нить атмеги, у которых нету похожего :)
И какие нибудь ПИКи у которых при наличии модуля ECCP (а это есть почти у всех) и компаратора (тоже почти у всех), выход компаратора конфигурируется на вход авто-шутдаун ШИМа.
Имбирь
Первый раз сказал Мяу!
Сообщения: 35
Зарегистрирован: Ср янв 09, 2013 18:04:49

Re: Мелкие вопросы по теории

Сообщение Имбирь »

Gisteresis, спасибо за ответ.
Так а какое приемлемое время отключения короткозамкнутой цепи? В ИБП время переключения на резервный источник равно 6мс. Я склоняюсь к до 10мс. Время реакции процессора на превышение тока меньше мс. Я вешал светодиод на порт. При вызове АЦП менял логические уровни порта контроллера. Осцилл показал частоту 2кГц. То есть в самом худшем варианте (АЦП оцифровало напряжение на шунте амперметра и в эту же мс случилось КЗ) процессор будет уведомлен о КЗ через 0.25мс. Разве 250 микросекунд - это слишком большое время? 2кГц частота смены лог. уровней. Значит АЦП оцифровывает сигнал с шунта с частотой 4кГц - это 0.25мс.
При возникновении КЗ процессор немедля снимает лог. уровень с mosfet. Дальше аналоговая часть работает. По-моему процессор среагирует моментально. Меня волнует только всплески токов, которые проц примет за КЗ. Возможно придется делать выдержку.
Эти данные были получены на практике при частоте проца 8мГц.
Вдобавок (семь пятниц на неделе) я хочу полностью нафаршировать контроллер, чтобы пользователь мог настраивать скважность и частоту выходного сигнала. Скважность будет кратна 10, ну и потолок частоты не особо высокий.
Делаю на AVR, atmega8, ассемблер. Если планирую управлять параметрами выходного сигнала, то будет стоять кварц на 20мГц, что еще в 2 раза уменьшит время реакции процессора. Я пишу на самодельной операционной системе (если можно так сказать), могу настроить частоты опроса как выходного напряжения, как напряжения на шунте амперметра, так и частоту обновления сегментов на led дисплее, короче все. Просто нужно знать к чему равняться, закручивать все по min не вариант.
Аватара пользователя
КРАМ
Друг Кота
Сообщения: 25219
Зарегистрирован: Чт янв 10, 2008 22:01:02
Откуда: Московская область, Фрязино

Re: Мелкие вопросы по теории

Сообщение КРАМ »

Имбирь писал(а): При возникновении КЗ процессор немедля снимает лог. уровень с mosfet.
Немедля МК ничго снять не может. Это тактируемое устройство и, к тому же, имеющее вполне конечную латентность исполнения любых прерываний. К тому же во время прихода события МК уже может исполнять некое прерывание и не факт, что у Вас будет организована приоритетная система вложенных прерываний. Далеко не все архитектуры позволяют это легко или вообще сделать.
Что касается безопасного времени для ключа, то его легко узнать из даташита на ключ. Там всегда приведены пиковые значения токов с указанием ВРЕМЕНИ И СКВАЖНОСТИ этого параметра...
Имбирь
Первый раз сказал Мяу!
Сообщения: 35
Зарегистрирован: Ср янв 09, 2013 18:04:49

Re: Мелкие вопросы по теории

Сообщение Имбирь »

КРАМ, вам не понравилось слово немедля? Совершенно очевидно, что так ничего не происходит, будь это реальная жизнь и планковское время или тактирование МК и период кварца. Тем не менее это слово существует и не только в русском языке.
Объясняю что я имел в виду. Хотя это не поможет получить ответ на вопрос о времени отключения при КЗ.
Во всем проекте используется только 1 таймер.
В проекте базовые функции разбиты на так называемые процессы (по аналогии с "обычной" ОС)
У каждого процесса есть как минимум 3 "функции":
1) Увеличить внутреннее время процесса
2) Сравнить внутренне время процесса с эталонным (при котором происходит вызов процесса)
3) Выполнить процесс.
1 и 2 пункты выполняются в прерывании в таймере0.
3 выполняется в основной части программы. Процессор попеременно проверяет флаги вызовов процессов. Если флаг поднят, то предоставляет ему процессорное время.
Каждая сущность (процесс) - атомарна. Она либо выполнится, либо нет, каждая сущность запрещает прерывания при выполнении.
Таким образом в проекте есть несколько файлов. Нечто вроде:
Измерить напряжение, отобразить напряжение, пропищать о перегрузке, измерить напряжение на шунте.
Образуется пул процессов с которым и работает МК. Такая архитектура значительно упрощает понимание программы среди сотрудников. Особенно в ассемблерах, когда программу в 1000 строк не разберет даже самый доморощенный хакер. И естественно между этими процессами может быть связь как и в любой другой "обычной" ОС.
Так вот. Под словом немедля я имел в виду, что отключение мосфета произойдет в процессе измерения напряжения шунта амперметра, где прерывания запрещены.
И естественно при такой архитектуре невозможно предугадать точное время вызовов процессов. Если нужна точность то решение наверное только одно - прерывание для события. А так черт его знает когда в след. раз произойдет проверка на КЗ. Через 0.25 или 0.2 мс или 0.3 мс. Но эти значения примерно равны. Такого быстродействия достаточно? Или нет? Мне ответили, что нет, без аргументов.
Зачем я пишу об архитектуре проекта? Я не знаю. Да и кстати. При чем тут ключ? Жизнь и здоровье одного мосфета меня мало интересует, когда под ударом находится вся силовая часть питания и нагрузка.
Так разве на радиофоруме никто не может сказать какое приемлемое время отключения короткозамкнутой цепи? И сработает ли вообще такой контроль?
arkhnchul
Друг Кота
Сообщения: 3092
Зарегистрирован: Пн апр 06, 2015 11:01:53
Откуда: москва, уфа

Re: Мелкие вопросы по теории

Сообщение arkhnchul »

Имбирь писал(а):Так разве на радиофоруме никто не может сказать какое приемлемое время отключения короткозамкнутой цепи? И сработает ли вообще такой контроль?
ну я скажу - секунды хватит, имея в голове какойнить флайбек, которому за это время от кз на выходе поплохеет, но не фатально. А вы потом спалите свой девайс и будете возмущаться.
имхо, не страдайте непосредственной активацией защиты с контроллера. Соорудите аналоговую защитную цепь с операционником, а если хотите управлять лимитами - задавайте опорное напряжение ЦАП-ом контроллера.
Аватара пользователя
КРАМ
Друг Кота
Сообщения: 25219
Зарегистрирован: Чт янв 10, 2008 22:01:02
Откуда: Московская область, Фрязино

Re: Мелкие вопросы по теории

Сообщение КРАМ »

Имбирь писал(а):КРАМ, вам не понравилось слово немедля? Совершенно очевидно, что.....
Я Вам дал вполне конкретный совет КУДА и ЧТО смотреть.
Понятия не имею об энергиях запасенных в Ваших устройствах, поэтому гадать на кофейной гуще без схемы и режимов не буду. Впрочем и со схемой не буду. Потому что Вы можете это сделать сами.
Из алгоритма Вы легко найдете максимальную латентность реакции на перегрузку и легко определите из режима схемы пиковый ток. Если время пикового импульса перегрузки удовлетворит режимам ОБР используемой элементной базы - значит Вы на правильном пути, а если нет - то делайте выводы.
Какой еще ответ Вы ожидали получить? Расчет сделанный за Вас? Это вряд ли....
Имбирь
Первый раз сказал Мяу!
Сообщения: 35
Зарегистрирован: Ср янв 09, 2013 18:04:49

Re: Мелкие вопросы по теории

Сообщение Имбирь »

arkhnchul, ну если возмущаться, то только на себя и на свои руки. Не буду нести свое возмущение в сеть, если оно не из разряда проверки силы тока в розетке.
Ладно, делаю дальше как и планировал. Не знаю поймете или нет, но контроль принципиально хочу возложить на МК. Во-первых он уже там есть, а во-вторых не хочу усложнять схему, добавлять новые элементы, которые могут не оказаться в ящиках.
Спасибо.
КРАМ, теперь понял вас. Спасибо.
Аватара пользователя
FireProoF
Мучитель микросхем
Сообщения: 424
Зарегистрирован: Чт май 14, 2015 15:11:39
Откуда: Саратов

Re: Мелкие вопросы по теории

Сообщение FireProoF »

Всем привет. Помогите выбрать какой режим более экономичнее.
Ситуация такая. Есть Модуль1, состоящий из МК и nRF24L01+, и Модуль2 такой же. Смысл в том, что надо получать данные от Модуля1 на Модуль2 раз в минуту, но это требуется не всегда. Я вот думаю повесить питание nRF на ногу МК. Сам МК включать раз в минуту для чтения эфира.
Или же держать постоянно nRF включенным, с его ноги прерываний будить МК, чтоб тот поработал. Затем МК засыпает.
Может что получше придумаете?
МК: stm8s
Аватара пользователя
hybroid
Друг Кота
Сообщения: 8007
Зарегистрирован: Вс ноя 14, 2010 19:24:26
Откуда: Лукалэнд

Re: Мелкие вопросы по теории

Сообщение hybroid »

КРАМ правильно всё говорит. Максимальное время тут простое - пока что-то не сгорит. У тебя сгорает от теплового пробоя, как я понял, по этому и вычисляй это время. Дальше увидишь, хватит ли тебе быстродействия твоей системы.
Всегда есть другой момент: выполнение программы может зависнуть, пойти не так и т.д. Особенно во время отладки. Поэтому предлагалось использовать защиту аппаратную, а не программную.

Тут вспоминалось про флайбек, которому от КЗ плохеет. Херовый флайбек, если ему плохеет от КЗ. Эта топология должна стойко переносить такие трудности, т.к. это практически один из штатных режимов этого преобразователя.

FireProoF: сравнение потребления этих двух вариантов будет ответом. Мысль: ели это два раздельных устройства, то когда одно передаёт, как второе об этом узнает со спящим радиомодулем?
Аватара пользователя
FireProoF
Мучитель микросхем
Сообщения: 424
Зарегистрирован: Чт май 14, 2015 15:11:39
Откуда: Саратов

Re: Мелкие вопросы по теории

Сообщение FireProoF »

Я поэтому и спрашивал, т.к. до конца не понял их систему переходов состояний в nRF. Нашел [url=blog.sci-smart.ru/2014/02/nrf24l01.html?m=1]такую статью[/url], где все оазжеванно до мелочей.
Аватара пользователя
GarryBig
Родился
Сообщения: 19
Зарегистрирован: Пн июл 26, 2010 09:04:36

Re: Мелкие вопросы по теории

Сообщение GarryBig »

Добрый день, теоретики!

Изучая свойства LiFePo4 аккумуляторов, наткнулся на такую статью http://komar.bitcheese.net/ru/%D0%BE-%D ... D0%B2-A123. Вообще много где говорится, что LiFePo4 аккумуляторы работают дольше если заряд и разряд происходит ближе к 40% емкости аккумулятора и не достигает крайних показателей. На графике из этой статьи показано что что при режиме разряда/заряда от 30 до 50% аккумулятор проработает 12000+ циклов. Правильно ли я понял, что если аккумулятор емкостью 10 000 мАч будет работать как аккумулятор 2 000 мАч (от 30 до 50%), то тогда он проработает эти самые 12000 циклов? Или здесь имеется в виду суммарная емкость отданной энергии эквивалентная полноценному циклу разряда заряда?
Получим суммарную емкость за все время работы:
Другими словами - в полноценном режиме он проработает 2000 циклов, это 10 Ач * на 2000 циклов = 20 000 Ач. А в щадящем 12 000 циклов * 2 Ач = 24 000 Ач. Получается в щадящем режиме он смог отдать на 4000 Ач больше за все время своей работы.
Или нужно считать по другому. В щадящем режиме 12 000 циклов (полной емкости данного аккумулятора) * 10 Ач = 120 000 Ач. Тогда он просто вечный?
Ответить

Вернуться в «Теория»