avatar_Slider

Контроллер света для электротранспорта "Геликон"

Автор Slider, 03 Авг. 2012 в 10:44

« назад - далее »

0 Пользователи и 1 гость просматривают эту тему.

acyd

Ваша платка -  уже классика, сделано четко, особенно индикация :wow:
Но для макса нужен линейный холл с зависимостью от от расстояния и силы магнита. А это взаимоисключающие системы. Хотя при желании запихнуть конечно можно.



zap

Я отвечал на фразу "с цифровым же датчиком надо играться расстоянием".
А чтобы убрать зависимость от чувствительности аналогового датчика, силы магнитов и расстояния до них надо поступать как в ручке газа - два магнита по разную сторону от датчика, в одном крайнем положении к датчику прижат один полюс, в другом крайнем положении прижат другой полюс. Тогда по мере движения магнитов показания будут боль-мень линейно изменяться (если магниты примерно одинаковой силы).
С уважением,
Андрей

Поражаю масштабностью некопмпетентность (ц) из лички

Kullx

[user]zap[/user], в максконтроллере все просто. Установил как попало, зашел в график, выставил мин\макс\инверсию - готово. Плавно регулируемый тормоз без проблем.
Куда уж меньше заморочек? Зачем ставить два магнита, если и с малым диапазоном все работает?

zap

Малый диапазон = малое разрешение.
Впрочем, для ручки газа небольшое количество ступеней некритично.
Всё что больше одного уже сильно отличается от традиционного электротормоза :)
С уважением,
Андрей

Поражаю масштабностью некопмпетентность (ц) из лички

acyd

Цитата: zap от 17 Янв. 2015 в 23:32
Я подумаю над исправлением прошивки. Просто до сих пор ADC никто не использовал для реалтаймовых задач.
Скорее всего, сделаю задержку фильтра 0 - "без фильтра".
Прошу прощения за панику  :kidding:
Попробовал на текущей прошивке sensor ADC0 0 2.5  -  все заработало четко без задержек. Видимо уже был реализован минимальный фильтр, но я не удосужился проверить 0  :fool: и начинал с 0.03с

Выявилась еще небольшая особенность работы, если погасить каналы плавно н-р:  ramp PWM0 0 0.5, то он может до нуля не погаснуть и будет тлеть на минимуме, тогда как set PWM0 0 - гасит четко в ноль.
Из-за этого иногда возникают "артефакты" ввиде ничтожно тлеющих или слегка подмаргивающих светиков. Это надо иметь ввиду, это не ошибка сценария, полтергейст или наводки.

zap

Это скорее всего погрешность при интерполяции.
Сделаю себе пометку для следующей версии.
С уважением,
Андрей

Поражаю масштабностью некопмпетентность (ц) из лички

clawham

Вопрос по реализации вирт машины - программы/сценарии грузятся пользователем в еепром? В рабочем режиме оно программы/сценарии куда-то копирует(в озу например) или так и остаётся в еепроме и с неё же и шагает/читает постоянно? Или это как с ардуиной? внутри только бутлодер а вирт сценарий компилится в кекс? И уже с кекса идёт работа как ни в чем не бывало.

Просто меня тут озадачили почему программа с него слетает при глюках по питанию а у меня такое было. я ваттметр делал на тиньке и не хватало памяти под текстовки - я текстовку в еепром прошивал. ну и когда что надо было напечатать - я гнал конвеером из еепрома. так вот. прикол атмег в том что встроенный контроллер еепрома запоминает последнее положение чтения/записи еепрома и при глюках с питанием портил последнюю букву :)) лечил я это программно - просто после чтения всего ряда/строки или вообще любого обращения в еепром я инкрементировал вконце первую ячейку с адресом ноль. ну и конечно завел прерывание и при пропадании питания снова инкремент нулевой ячейки еепрома и вешал проц чтоб вачдог его перегрузил. таким нехитрым способом и был побежден злой контролер еепрома в атмегах.
Я сейчас это же самое делаю и в своей бмс. первая ячейка инкрементируется в конце любой операции с еепромом. прецендентов с порчей данных небыло. А ну ещё конечно всегда есть в конце каждого блока данных в еепроме - CRC - при чтении блока настроек я читаю его в память , считаю crc и если не сошлось - ору алярму и работаю по второму блоку третему. если ничего не помогает - перешиваю на дефолт.
1)8FUN SWXK 250w24V@17A48V 13S4P LGD1, China kontr
3)MXUS 3000 @90A80V LiFePo 20Ah 25S, Nucular 12F
Telegram @clawham

zap

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

Поражаю масштабностью некопмпетентность (ц) из лички

acyd

Вырубало геликон у меня, Косяки питания, плавный пуск и скачки  оказалось не причем, а вот гробил мегу переделанный китайский драйвер.
https://electrotransport.ru/index.php?topic=13865.msg431171#msg431171
Это проявлялось тем что после нескольких (могло быть 20-30 нормальных) включений геликон зависал либо работал рандомным образом, н-р непроизвольно включался клаксон.
Помогала только перепрошивка через isp разъем.
Зло приходило с  драйвера по сигнальному выходу, ограничительный резистор, стабилитрон и прочее не помогали.
Проблема решилась таким образом, тут два варианта, я сделал с биполярником и фетом:
https://www.dropbox.com/s/j6y177nbxqv5kvc/pwm.gif?dl=0
огромное спасибо [user]clawham[/user]  :wow:

Kovboi

#387
Хочу подобное устройство сделать для детского электромобильчика дочери, чтоб вся световая индикация соответствовала реальному авто.

Штатный АКБ 12в,
Поворотники, стопы и фары - диоды 3в 0,5-1Вт каждый.

Что-то понятно, что-то не совсем:

За основу возьму схему из начала ветки.
1. Я так понимаю, чтоб не мучиться с SMD пайкой, можно ATmega48PA-AU /TQFP32/ заменить на ATmega48(буквенное обозначение важно?)  /DIP28/ ?
2. На схеме в середине ветки в KiCad указан контроллер ATmega88. Так всё же какой применять 48й или 88й?
3. Питание задается схемы задаётся DC-DC преобразователем, могу заменить с меньшим интервалом на основе схемы MC34063A с верхним пределом 40в;
4. Если светодиоды необходимо включать плавно или держать свечение в пол-силы  - подключаем их через MOSFET, рассчитанный на ток 0,33А*2=0,66А (для одного диода), на ножку PWM_любую ?
5. Если просто включить/выключить светодиод, то через обычный p-n-p транзистор по аналогичной схеме п.3, рассчитанный на ток 0,33А*2=0,66А (для одного диода), на ножку SW_любую?
6. В группе входных сигналов IN при подключение кнопки (при нажатии на неё) замыкаем ножку контроллера на землю?

Поправьте, если я что-то путаю.
Первый раз установил KiCad - разобрался легко! В полном восторге - отличная программка!

acyd

#388
1. Под  smd проще получится, номиналы 1-й схемы и реального геликона несколько отличаются.
2. 88 только, причем первый раз нужно прошиться с isp.
но прошивку для восстановления я брал со своего рабочего геликона, не знаю подойдет ли та что выложена для uart
3. если у вас питание 12в, атмегу легче всего запитать кренкой на 5в.
4. Где-то выше была работающая схема, для плавного гашения 12в светодиодной ленты и прочих 12в потребителей через фет соответсвующей мощности
6. Да.

zap

Прошивка, которая лежит, в принципе обычная и её можно было бы прошивать обычным ISP, но без загрузчика (который находится в старших адресах) не будет работать HeliProg.

Микроконтроллер - ATmega88PA. (возможно, будет работать и на обычной ATmega88). Датчик температуры в PA надо калибровать (в просто 88 его нет), но Вам он скорее всего и не нужен.

Поэтому держите загрузчик, сначала его шьёте а потом уже через heliprog заливаете прошивку.
С уважением,
Андрей

Поражаю масштабностью некопмпетентность (ц) из лички

Kovboi

#390
Цитата: zap от 16 Апр. 2015 в 00:00
Прошивка, которая лежит, в принципе обычная и её можно было бы прошивать обычным ISP, но без загрузчика (который находится в старших адресах) не будет работать HeliProg.
Можно немного подробнее про процедуру прошивки (загрузчика) и каким именно ISP есть удачный опыт?
Сам загрузчик скачал - спасибо.
Думаю данный вопрос будет интересен не только мне.
Первый раз установил KiCad - разобрался легко! В полном восторге - отличная программка!

zap

Да любым ISP программатором прошиваете какой есть под рукой. Разъём для программирования на схеме есть.
Я использую программу avrdude, но тут опять же можно пользоваться любой программой, которая понимает Intel HEX формат.
Прошивается загрузчик в самые старшие 256 байт флэш-памяти, в HEX файле все адреса уже есть, так что прошьётся всё правильно без дополнительных телодвижений.
После прошивки загрузчика прошивку заливают уже через UART, подключаем USB-UART адаптер, запускаем HeliProg, соединяемся с устройством, тыкаем кнопку "Загрузить прошивку", выбираем свежую прошивку и радуемся.
С уважением,
Андрей

Поражаю масштабностью некопмпетентность (ц) из лички

Kovboi

Есть несколько вопросов:
1. В окончательном варианте Геликона, судя по фотографиям на входах IN вместо резисторов 5.1KOm установлены диоды? Какие и зачем так сделано?
2. Накидал схемку применительно к детскому электормобильчику с 12в АКБ питанием, Геликон применяю в стандартном исполнение, программу откорректирую под себя.
В качестве питания силовой линии светодиодов применяю готовый DC-DC step-down (понижающий) LM2596 3-30В - 1.2-18В / до 3А, настаиваю напряжение на выходе 6,3v.
От старой материнской платы имеются полевики Niko P45N02LD и 2N7002, а также есть транзисторы КТ817Г.


Прошу совета по схемке:
-так будет работать?
если да, то дальше
- прошу помочь выбрать верно резисторы R1-R5?
- есть опасения, что при использование общего готового питания DC-DC, при включение всего освещения, при мигание поворотников будут притухать остальные диоды?
В идеале конечно на каждую цепь нужен свой драйвер с заданным значением тока и возможностью управления яркостью.

Т.к. потребители в моём случае маломощные, не подскажете простые схемы недорогих драйверов, применимых в моём варианте?
Первый раз установил KiCad - разобрался легко! В полном восторге - отличная программка!

i

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

zap

#394
1. Во второй версии Геликона диоды вместо резисторов обеспечивают защиту от напряжения по входам IN до 100В.
Геликон на входе интересует только замыкание входа с землёй, диод стоит катодом наружу и анодом к микроконтроллеру.
2. Светодиоды питаются не напряжением, а током. Соответственно, Ваша схема это гадкий паллиатив. Комментировать не хочется, купите лучше пачку копеечных китайских драйверов для светодиодных лампочек на 12В (которые на замену галогенок), в которых есть возможность управлять яркостью по ШИМ. Далее, на выходах PWM микроконтроллер может выдать всего десяток миллиампер, h21Э транзисторов КТ817 очень маленький (как и большинства мощных транзисторов), порядка 20-30 если мне не изменяет память. 350 миллиампер, нужных для хотя бы 1-ваттного диода, скорее всего не получите. Полевики заместо КТ817 должны работать, подтяжка на землю не очень нужна, можно поставить килоом 100.

Для стопов и поворотников светодиоды рекомендую купить именно жёлтые и красные. Белый светодиод через красный светофильтр теряет две трети яркости, и смотрится всё равно отвратно. Это из спектра лампы накаливания с пиком в тёплой области можно вычленить красную или жёлтую составляющую, в спектре же синюшных китайских светодиодов красного и жёлтого - крайне мало. Лучше взять специализированные одноваттные цветные светодиоды, им светофильтр и не нужен вовсе, можно ставить прозрачный.
С уважением,
Андрей

Поражаю масштабностью некопмпетентность (ц) из лички

Kovboi

#395
Вчера прикупил на пробу драйвер на основе PT4115, это то что купил:


вот нарисовал схемку - полностью соответствует типовой (за исключением некоторых номиналов)

Так выглядит схемка на сайте
продавца - небольшие отличия есть.

Заявлено:
Входное напряжение: 6-30 вольт.
Выходное напряжение: 3-28 вольт (меньше входного).
Выходной ток: 300 ма.

Судя по datasheet PT4115 у меня схемка в корпусе SOT89-5. Ножка №3 - DIM вход регулировки тока по ШИМ сигналу.
Как раз- эта нога не задействована.
Два крупных элемента слева имеют маркировку SS24 - диод шоттки.

Приветствую любые предложения и мысли по адаптации, а пока сам буду разбираться

PS: На HV9910 - у нас в продаже ничего нет, да и схемок отдельно тоже.
Первый раз установил KiCad - разобрался легко! В полном восторге - отличная программка!