Arduino перезагружается или зависает

bkmz
Offline
Зарегистрирован: 11.07.2015

Arduino UNO перезагружается или зависает как исправить срочно надо!!!!!!!!!!!!!!!!!!!!!!!!!

bkmz
Offline
Зарегистрирован: 11.07.2015

Arduino UNO перезагружается или зависает как от внешнего питания так и от USB.

Radjah
Offline
Зарегистрирован: 06.08.2014

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

Andrey_Y_Ostanovsky
Offline
Зарегистрирован: 03.12.2012

Radjah пишет:
что там у тебя сломалось.

Что там может сломаться - это же раздел "программирование"! Надо код смотреть...

Radjah
Offline
Зарегистрирован: 06.08.2014

Andrey_Y_Ostanovsky пишет:

Radjah пишет:
что там у тебя сломалось.

Что там может сломаться - это же раздел "программирование"! Надо код смотреть...

Байты погнулись, биты рассыпались. Стэк затопило. :)

JollyBiber
JollyBiber аватар
Offline
Зарегистрирован: 08.05.2012

Злой модератор режет мои посты? Айяйяй!

Клапауций 999
Offline
Зарегистрирован: 06.06.2015

JollyBiber пишет:

Злой модератор режет мои посты? Айяйяй!

модератор-русофоб

Radjah
Offline
Зарегистрирован: 06.08.2014

А куда ОП подевался? Народ требует крови подробностей.

JollyBiber
JollyBiber аватар
Offline
Зарегистрирован: 08.05.2012

ОП? Что за зверь?

Radjah
Offline
Зарегистрирован: 06.08.2014

JollyBiber пишет:

ОП? Что за зверь?

Аффтар темы.

JollyBiber
JollyBiber аватар
Offline
Зарегистрирован: 08.05.2012

Открыватель Пересуда?

 

bkmz
Offline
Зарегистрирован: 11.07.2015

Тут такая вешь: Я делаю радуоуправление машиной и подключил регулятор скорости к arduino и когда я газую ардуина перезагружается и машина движется рывками. Я замерил напряжение на выходах регулятора и оказалось там скочки напряжения , сначало 5 вольт, потом я газую и резко падает до 1, потом опять 5 и получается машина движется рывками(или может у меня мультиметр глюкнул не знаю) в любом случаи как исправить???  Регулятор 

HPI SC-3SWP

JollyBiber
JollyBiber аватар
Offline
Зарегистрирован: 08.05.2012

Подать отдельное питание на ардуино?

Andrey_Y_Ostanovsky
Offline
Зарегистрирован: 03.12.2012

bkmz пишет:
сначало 5 вольт, потом я газую и резко падает до 1, потом опять 5 и получается машина движется рывками(или может у меня мультиметр глюкнул не знаю) в любом случаи как исправить???

Софтово - никак. Надо переходить в раздел "Аппаратные проблемы". А там где-нибудь найдете тему про UBEC или просто способы разделения питания ардуины и мощной нагрузки..

bkmz
Offline
Зарегистрирован: 11.07.2015

Важно что-бы от 1 аккумулятора питалось!

JollyBiber
JollyBiber аватар
Offline
Зарегистрирован: 08.05.2012

Значит нужен большой аккумулятор. Возьмите автомобильный - должно хватить.

bkmz
Offline
Зарегистрирован: 11.07.2015

Смешно(килограм ~ 20, 12 V и бог знает сколько ампер, такого ни одно устройство в ру машине не выдержет)!

JollyBiber
JollyBiber аватар
Offline
Зарегистрирован: 08.05.2012

Вам зачем какое-то устройство и чего оно не выдержит? Вам ардуину только питать.

У меня несколько штук от розетки обычной запитаны и ничего, живут.

Откуда нам знать что и как Вы собираете?

 

bkmz
Offline
Зарегистрирован: 11.07.2015

Радиоуправляемая машина!! Там регулятор скорости столько не выдержит , я хочу запитать всё от 1 lipo 3s аккумулятора , ток от аккумулятора  идёт на серву, мотор и ардуино.

Radjah
Offline
Зарегистрирован: 06.08.2014

Поставь еще один для ардины и соедини GND.

bkmz
Offline
Зарегистрирован: 11.07.2015

Говорю надо что-бы от 1 аккумулятора питалось.

trembo
trembo аватар
Offline
Зарегистрирован: 08.04.2011

StepUp ы для вашего случая специально придумали.
http://www.ebay.com/itm/0-9V-5V-to-5V-DC-DC-Booster-Module-USB-Mobile-St...

bkmz
Offline
Зарегистрирован: 11.07.2015

А если не чего покупая(с деньгами сейчас проблема)? У меня есть 

Понижающий DC-DC Преобразователь LM2596 для Arduino

http://iarduino.ru/shop/Istochniki-pitanija/ponizhayuschiy-dc-dc-preobra...

можно из этого что-то сделать(повышающия преобразователь)?

trembo
trembo аватар
Offline
Зарегистрирован: 08.04.2011

Можно.
На 555 таймере. С умножителем ( удвоителем) напряжения. Со стабилизатором. Но не стоит.
Дешевле купить.

andriano
andriano аватар
Offline
Зарегистрирован: 20.06.2015

bkmz пишет:

Говорю надо что-бы от 1 аккумулятора питалось.

Не верь тем, кто говорит, что аппаратно проблема не решается.

Решается.

Нужно просто программно ограничитть ток, идущий в силовую нагрузку.

bkmz
Offline
Зарегистрирован: 11.07.2015

Как?

andriano
andriano аватар
Offline
Зарегистрирован: 20.06.2015

Например, ШИМ'ом.

bkmz
Offline
Зарегистрирован: 11.07.2015

Как?

andriano
andriano аватар
Offline
Зарегистрирован: 20.06.2015

analogWrite(MotorPin, NecessaryValue);

bkmz
Offline
Зарегистрирован: 11.07.2015

Ты вообще имеешь представление что такое регулятор (хода) скорости?

andriano
andriano аватар
Offline
Зарегистрирован: 20.06.2015

Это Вы о чем?

Собственно, именно диапазон регулировки этого регулятора Вам и нужно ограничить сверху.

bkmz
Offline
Зарегистрирован: 11.07.2015

Пробовал уменьшать ШИМ пока не перестало перезагружаться, дошло до того что машина едет не 50 км/ч , а 5 км/ч. Так что этот вариант отподает.

trembo
trembo аватар
Offline
Зарегистрирован: 08.04.2011

Большим средним напряжением ( от ШИМа) вы создаёте в нагрузке такой ток что блок питания не справляется с этой нагрузкой.
И естественно срабатывает БОДЭН.
Варианты лечения:
1. Ставьте отдельный блок питания Ардуины.
2. Развяжитесь по питанию с помощью DC-DC.
3. 2000.0 х 10 Вольт на питание. Если питаетесь не от 5-ти Вольт - тогда через диод.
4. Исправьте BODEN  на более низкое напряжение ( работать будет, но это для пробы и неправильно).
5. Главное гляньте где текут токи нагрузки.
6. Тут недавно партию Ардуин с сухими кондёрами забраковали....

Gres
Gres аватар
Offline
Зарегистрирован: 26.03.2013

Запитываете Дуню через диод, то-есть в разрыв плюсового провода ставите диод, катодом к Дуне, после него, параллельно питанию электролитический конденсатор, примерно на 3300-4700 мкФ, в момент подачи питания, конденсатор зарядится через диод, при резком старте двигателя напряжение на акб на мгновение просядет, в этот момент Дуня будет питаться от конденсатора, диод не даст разряжается конденсатору на двигатель, а Дуне его хватит за уши.

andriano
andriano аватар
Offline
Зарегистрирован: 20.06.2015

bkmz пишет:

Пробовал уменьшать ШИМ пока не перестало перезагружаться, дошло до того что машина едет не 50 км/ч , а 5 км/ч. Так что этот вариант отподает.

Либо миритесь с 5 км/ч либо меняйте аккумулятор на более мощный.

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

1. Поставить более мощный источник (заменить аккумулятор).

2. Умерить аппетиты регулятора скороости (те самы 5 км/ч).

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

3. Питать Ардуину от независимого источника питания.

Получается, Вас ни один из трех вариантов не устраивает.

Ну, тогда остается только четвертый:

4. Поставить на машину вечный двигатель, чтобы он крутил динамомашину и от нее запитывались как электромоторы, так и Ардуино.

Теперь уже точно других вариантов нет.

Только не говорите, что и 4-й Вам не подходит.

andriano
andriano аватар
Offline
Зарегистрирован: 20.06.2015

Gres пишет:
Запитываете Дуню через диод, то-есть в разрыв плюсового провода ставите диод, катодом к Дуне, после него, параллельно питанию электролитический конденсатор, примерно на 3300-4700 мкФ, в момент подачи питания, конденсатор зарядится через диод, при резком старте двигателя напряжение на акб на мгновение просядет, в этот момент Дуня будет питаться от конденсатора, диод не даст разряжается конденсатору на двигатель, а Дуне его хватит за уши.

Подтвердить данный тезис расчетами можете?

Gres
Gres аватар
Offline
Зарегистрирован: 26.03.2013

andriano пишет:

Gres пишет:
Запитываете Дуню через диод, то-есть в разрыв плюсового провода ставите диод, катодом к Дуне, после него, параллельно питанию электролитический конденсатор, примерно на 3300-4700 мкФ, в момент подачи питания, конденсатор зарядится через диод, при резком старте двигателя напряжение на акб на мгновение просядет, в этот момент Дуня будет питаться от конденсатора, диод не даст разряжается конденсатору на двигатель, а Дуне его хватит за уши.

Подтвердить данный тезис расчетами можете?


А самому это сделать религия не позволяет?
Нужно чтоб дядька не только бумажку дал, но и попку подтер?

andriano
andriano аватар
Offline
Зарегистрирован: 20.06.2015

Gres пишет:
andriano пишет:

Подтвердить данный тезис расчетами можете?

А самому это сделать религия не позволяет? Нужно чтоб дядька не только бумажку дал, но и попку подтер?

А я это сделать в принципе не могу. В смысле - подтвердить.

Могу только опровергнуть.

Но, вообще-то, бремя доказывания лежит на заявителе, т.к. опровергать все бредовые идеи, какие можно встретить на форуме, не хватит ни времени, ни терпения.

Gres
Gres аватар
Offline
Зарегистрирован: 26.03.2013

А Вы не сливайтесь, сказали А, скажите и Б! Оспорьте в цифрах данное схемотехническое решение, а там посмотрим, кто из нас прав!

dimax
dimax аватар
Offline
Зарегистрирован: 25.12.2013

Ребята, давайте общаться культурнее. Gres, в принципе то сомнение, под которое поставил вашу идею andriano имеет под собой некоторые основания. У нас не так много исходных данных, что бы рассчитать, но есть за что зацепиться. Опустим всякую несущественную мелочь типа падения напряжения на диоде, или ЭПП и скорость зарядки конденсатора. При питании 5 вольт конденсатор до запуска двигателя накопит в себе 5*0.0047F = 0,0235 кулона заряда. Или же из другой формулы следует что ток 0,0235 ампер он сможет отдавать 1 секунду.  Дуняшка кушает примерно 50мА, значит на запасах конденсатора плата проработает без шотдауна всего лишь 0,5 секунды. Этого хватит лишь для очень кратковременной "прогазовки". 

Gres
Gres аватар
Offline
Зарегистрирован: 26.03.2013

Все верно, только проблемы происходят при старте двигателя. Модельный аккумулятор способен одномоментно отдавать ток порядка 20 емкостей своих, разные, по разному. Движки модельные кушают в номинале по 40 ампер, тоже разные есть. Проблема в пусковом токе, он в 2-8 раз превышает номинальный и именно в момент старта происходит посадка, вот на это мгновение и нужно поддержать микроконтроллер. Способов в принципе масса, я предложил самый простой.
Я правда прикрывал на максимальное потребление 328 меги в 200mA.

andriano
andriano аватар
Offline
Зарегистрирован: 20.06.2015

Gres пишет:
А Вы не сливайтесь, сказали А, скажите и Б! Оспорьте в цифрах данное схемотехническое решение, а там посмотрим, кто из нас прав!

Легко.

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

Как только это появится, обещаю найти в Ваших материалах ошибки и указать Вам на них.

Если к тому времени не уеду в отпуск. А если уеду, то обязательно сделаю это сразу по возвращении.

andriano
andriano аватар
Offline
Зарегистрирован: 20.06.2015

dimax пишет:

...При питании 5 вольт конденсатор до запуска двигателя накопит в себе 5*0.0047F = 0,0235 кулона заряда. Или же из другой формулы следует что ток 0,0235 ампер он сможет отдавать 1 секунду.  Дуняшка кушает примерно 50мА, значит на запасах конденсатора плата проработает без шотдауна всего лишь 0,5 секунды. Этого хватит лишь для очень кратковременной "прогазовки". 

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

Я сильно подозреваю, что это не так.

Насколько я помню, допустимый диапазон отклонения напряжения питания цифровых схем от номинала составляет 5%. Это не точно, но для оценок приемлемо. Для 5В это составит 0.25В. Т.е. нам нужно всего лишь посчитать, в течение какого времени конденсатор емкостью 0.0047F способен отдавать по 0.05А, пока напряжение на нем не упадет на 0.25В. Если я не ошибся в подсчетах, искомое время составит 25 мс, что даже при стабильном питании для двигателя явно маловато. А при просадке напряжения время разгона сильно возрастает.

В общем, требуемую емкость для такого решения я бы оценил в 0.1-0.5F.

Gres
Gres аватар
Offline
Зарегистрирован: 26.03.2013

andriano пишет:

Насколько я помню, допустимый диапазон отклонения напряжения питания цифровых схем от номинала составляет 5%. Это не точно, но для оценок приемлемо. Для 5В это составит 0.25В. Т.е. нам нужно всего лишь посчитать, в течение какого времени конденсатор емкостью 0.0047F способен отдавать по 0.05А, пока напряжение на нем не упадет на 0.25В. Если я не ошибся в подсчетах, искомое время составит 25 мс, что даже при стабильном питании для двигателя явно маловато.

Вы бы для начала хоть даташыты изучили, а то программируете, сами не знаете что.

Вот ссылка на даташит 328 меги: http://pdf1.alldatasheet.com/datasheet-pdf/view/241077/ATMEL/ATMEGA328P.html

А вот выдержка с первой страницы датшита:

Speed Grade:
–  ATmega328P: 0 - 4 MHz @ 1.8 - 5.5V, 0 - 10 MHz @ 2.7 - 5.5V, 0 - 20 MHz @ 4.5 - 5.5V

Научитесь сначала изучать материалы, а уж потом вступать в спор...

trembo
trembo аватар
Offline
Зарегистрирован: 08.04.2011

Цифровые микросхемы( в отличии от аналоговых) как раз были созданы для того
чтобы всякие внешние условия как:
1. Напряжение питания.
2. Подаваемые на вход сигналы
не сильно влияли на их работу.
Поэтому надо знать эти условия и просто выполнять

Radjah
Offline
Зарегистрирован: 06.08.2014

> ATmega328P: 0 - 4 MHz @ 1.8 - 5.5V, 0 - 10 MHz @ 2.7 - 5.5V, 0 - 20 MHz @ 4.5 - 5.5V

И что? Даже если задать 4MHz, то всё равно падение будет до 1,8 вольта до вырубания.

andriano
andriano аватар
Offline
Зарегистрирован: 20.06.2015

Gres пишет:

А вот выдержка с первой страницы датшита:

Speed Grade:
–  ATmega328P: 0 - 4 MHz @ 1.8 - 5.5V, 0 - 10 MHz @ 2.7 - 5.5V, 0 - 20 MHz @ 4.5 - 5.5V

Научитесь сначала изучать материалы, а уж потом вступать в спор...

Изучать - мало, нужно еще уметь делать выводы.

Первый вывод, нижняя граница в 4.5 В - это больше, чем 5.0 В минус падение напряжения на одном кремниевом диоде. Конечно, на 16 МГц, вероятно, она будет работать и при 4.3 В (хотя, по приведенным Вами данным - не обязана), но запаса на просаживание напряжения более чем на 0.25 В все равно нет.

Что касается снижения частоты работы кристалла. Одно дело стабильное питание, скажем, 3.3 В и совсем другое - просаживание питания с 5 до 3.3.И если даже для самого кристалла это не приведет к сбоям, вполне вероятно, что при обмене данными с периферией где-то "0" будет прочитан как "1" или наоборот. Со всеми вытекающими последствиями, минимум - с неверным управляющим воздействием на периферию.

В общем, вывод остается прежним: предложенная Вами схема может оказаться работоспособной (а может - и нет) лишь при увеличении емкости конденсаторов более чем на порядок.

andriano
andriano аватар
Offline
Зарегистрирован: 20.06.2015

trembo пишет:

Цифровые микросхемы( в отличии от аналоговых) как раз были созданы для того
чтобы всякие внешние условия как:
1. Напряжение питания.
2. Подаваемые на вход сигналы
не сильно влияли на их работу.
Поэтому надо знать эти условия и просто выполнять

"не сильно влияли на работу" - это какая-то очень расплывчатая формулировка.

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

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

Gres
Gres аватар
Offline
Зарегистрирован: 26.03.2013

Тяжёлый случай...