Регулировка оборотов двигателя 220в ардуино

Регулировка оборотов двигателя 220в ардуино

Регулировка оборотов двигателя 220в ардуино

Текущее время: Сб дек 11, 2021 00:56:35

Часовой пояс: UTC + 3 часа

Цифровой измеритель оборотов двигателя на ардуино

Страница 1 из 3[ Сообщений: 51 ]На страницу 1 , 2 , 3 След.

Представляю вниманию цифровой измеритель оборотов двигателя на ардуино нано 328
Измеряет обороты от 50 до 9999 об/мин и выводит значение каждую секунду на индикатор.
Для работы необходимо наклеить кусочек алюминиевой фольги на темный ротор или черной изоленты на светлый.
После включения прибор проверяет уровень отраженного сигнала в течение минуты. и дает значение от 0 до 1024 — пороги настроены на более 800 и менее 200.
По ощущениям погрешность в пределах 0,5%.
Схема:

Фотоэлементы:
L-34F3C ик диод 20мВт
L-3DP3C фототранзистор
Фото прототипа (неказисто, конечно, но работает):

Показывает уровень темного:

Кому как, а кота заинтересовало:

Ну и прошивочка:

JLCPCB, всего $2 за прототип печатной платы! Цвет — любой!

Зарегистрируйтесь и получите два купона по 5$ каждый:https://jlcpcb.com/cwc

Последний раз редактировалось profradio Чт апр 19, 2018 16:57:31, всего редактировалось 1 раз.

Сборка печатных плат от $30 + БЕСПЛАТНАЯ доставка по всему миру + трафарет

_________________
Мудрость(Опыт и выдержка) приходит с годами.
Все Ваши беды и проблемы, от недостатка знаний.
Умный и у дурака научится, а дураку и ..
Алберт Ейнштейн не поможет и ВВП не спасет. и МЧС опаздает
и таки теперь Дураки и Толерасты умирают по пятницам!

Построение источников бесперебойного питания с двойным преобразованием, широко используемых в современных хранилищах данных, на базе карбид-кремниевых MOSFETs производства Wolfspeed позволяет уменьшить мощность потерь в них до 40%, а также значительно снизить занимаемый ими объем и стоимость комплектующих.

Компэл объявляет о значительном расширении складского ассортимента продукции Connfly. Универсальные коммутирующие компоненты, соединители и держатели Connfly сочетают соответствие стандарту ISO9001:2008, высокую доступность и простоту использования. На текущий момент на складе Компэл – более 300 востребованных на рынке товарных наименований с гибкой ценовой политикой.

_________________
Мудрость(Опыт и выдержка) приходит с годами.
Все Ваши беды и проблемы, от недостатка знаний.
Умный и у дурака научится, а дураку и ..
Алберт Ейнштейн не поможет и ВВП не спасет. и МЧС опаздает
и таки теперь Дураки и Толерасты умирают по пятницам!

_________________
Мудрость(Опыт и выдержка) приходит с годами.
Все Ваши беды и проблемы, от недостатка знаний.
Умный и у дурака научится, а дураку и ..
Алберт Ейнштейн не поможет и ВВП не спасет. и МЧС опаздает
и таки теперь Дураки и Толерасты умирают по пятницам!

А, недопонял:) — просто датчик у меня — это фотодиод и фототранзистор которые параллельно стоят и смотрят в одну сторону и разделены металлической стенкой. Если на некотором расстоянии от датчика поднести светоотражающий предмет — бумагу или фольгу или металл — то свет от ик-светодиода отражается и попадает на фототранзистор.
Вот схематично — завтра сфоткаю покрупнее:

На мой взгляд такой датчик проще пристроить.

ну да на отражение оптодатчик выходит проше но он очень чуствителен к засветке внешними источниками надо защитный кожух делать

Добавлено after 2 minutes:
для мотора иногда проше приделать Тахо геенерпатор из магнита на валу и головки старого магнитофона(или датчиха хола)

_________________
Мудрость(Опыт и выдержка) приходит с годами.
Все Ваши беды и проблемы, от недостатка знаний.
Умный и у дурака научится, а дураку и ..
Алберт Ейнштейн не поможет и ВВП не спасет. и МЧС опаздает
и таки теперь Дураки и Толерасты умирают по пятницам!

Последний раз редактировалось profradio Пт апр 20, 2018 10:46:59, всего редактировалось 1 раз.

_________________
Мудрость(Опыт и выдержка) приходит с годами.
Все Ваши беды и проблемы, от недостатка знаний.
Умный и у дурака научится, а дураку и ..
Алберт Ейнштейн не поможет и ВВП не спасет. и МЧС опаздает
и таки теперь Дураки и Толерасты умирают по пятницам!

Последний раз редактировалось musor Пт апр 20, 2018 11:01:06, всего редактировалось 1 раз.

меня вообще приводит в бешенство само слово ардуино

датчик лучше не по отражателю, а на просвет. поставить крыльчатку и просверлить пару дурок. тем более сверлильный станок есть))

я не критикую и не могу предлогать свое потому как «велосипед» давно изобретен, ваш труд заслуживает похвалы и уважения
дело в том что ваше решение с атмегой328 как ювелиру предложить делать шедевры отбойным молотком
полистайте для примера схемы хоть любительских хоть заводских автотестеров с тахометром, вся схема решается одним транзистором и стрелочником (при должном подходе стрелочник можно заменить цыфровым вольтметром) либо погуглите мне в свое время попадались схемы с похожими как у вас данными тахометров на аттини2313
а на атмегу328 возложить более мощные функции

насчет ардуин
лично мне они не нравятся не изза того что код открытый а изза того что контролер превращается в оператора библиотеками с невероятно раздутым кодом, там где часто достаточно атмега8 ардуина требует уже атмегу328 и скоро по всем подвижкам станут тулить в замен простейших схем СТМ32
ардуина вариант по моему мнению для «ленивых» програмистов, сразу вспоминаются 90ые и ZX спектрум где в килобайтах умещались весьма мощные игрухи

Однофазный частотный преобразователь на Arduino

В статье речь пойдет о создании простого однофазного маломощного частотного преобразователя на базе Arduino.

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

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

Вкратце об общих принципах

За основу была взята плата Arduino (nano), как самый простой вариант для начала, до этого программированием каких-либо МК я не занимался. Задача ее формировать два шим сигнала, нарезающих синус, для положительной и отрицательной полуволн поочередно (Униполярная модуляция, если не ошибаюсь). Выглядеть это должно примерно так:

Силовая часть – это полный мост на четырех транзисторах, управляемых двумя драйверами IR2110, выход с которых фильтруется LC фильтром, также есть защита по току, реализованная на датчике тока и компараторе (ОУ tl072cp, был под рукой), порог срабатывания настраивается. Блок питания логики и драйверов изобретать не стал, просто оставил место на плате для отдельной платы бп, например такой:

(в рабочем варианте поставил плату от сетевого адаптера на 13в т.к. когда собирал китайцы БП еще не прислали). Выходное напряжение блока питания в идеале 13-15в, можно и 12, если ключи не особо мощные. Для питания ардуинки и дисплея на плате есть стабилизатор на 5 вольт (lm7805).

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

Для начала с помощью библиотеки формируется ШИМ сигнал (частота около 8кГц) на 9 и 10 ногах, для положительной и отрицательной полуволны соответственно. Далее для создания синусоиды используется массив из 100 значений в диапазоне от 0 до 2000 (диапазон скважности для данного варианта ШИМа).

В основном цикле программы по значениям из этого массива меняется скважность поочередно для положительной и отрицательной полуволны (сначала для 9 потом для 10 пина). Частота синуса устанавливается через период для каждого значения из таблицы, например, для 50 гц расчет будет следующий: частота 50гц, соответственно, период одного полного колебания 0,02с или 20000 микросекунд (именно в них задается интервал), за это время должно получиться две полуволны, т.е. 200 значений скважности (сначала 100 для 9го пина потом еще раз для 10го), отсюда время на одно значение скважности будет рассчитываться как 20000мкс/200=100мкс, для 25гц соответственно 40000/200=200мкс. У меня диапазон регулируется от 81мкс до 178мкс на одно значение из массива, что соответствует значениям частоты от 53 до 26 герц примерно. Что соответствует регулировке скорости от 106% до 26%. Быстрей эти движки крутиться не способны, а медленней для вентилятора не нужно, да и к тому же это уже чрезмерное насилие, не рассчитаны они на такое.

Итак, частота регулируется, но в частотнике также пропорционально частоте понижается и напряжение (скалярное управление, о векторном я даже не думал, и трудно, и не нужно). Это реализовано следующим образом: (скважность/32)*коэффициент (PotMapSkvaz) , который принимает значения от 30 до 16 в итоге результирующее значение скважности получается в диапазоне от 94% до 50% от того, которое было считано из таблицы, соответственно, и напряжение понижается на столько же (забегая немного вперед: ровного синуса не получилось за счет чего напряжение на выходе немного завышено, поэтому максимальная скважность не 100% а 94%).

В общем, цикл выглядит так: обнуляем оба значения скважности (от греха, но больше от сквозняков), рисуем первую полуволну синуса, проходя по массиву на каждом значении, задерживаясь в течение установленного времени, опять обнуляем значения скважностей и повторяем все для второй полуволны (отрицательного полупериода). По сути, ШИМ на обоих пинах работает постоянно, меняется только скважность, но, когда она равна нулю, фактически на пине нет никаких импульсов.

Далее про управление и индикацию: с энкодером проблем не было, он работает на прерываниях и много ресурсов не тратит, при повороте он уменьшает и увеличивает, соответственно, частоту до установленных пределов (53-25Гц), при нажатии на кнопку устанавливает частоту в дефолт (

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

По софту все, далее про железо. Схема:

Как было сказано выше, основа схемы – это мост из 4 транзисторов (FQPF6N90C), управляемых двумя драйверами IR2110. Вход верхнего плеча одного драйвера соединен со входом нижнего плеча второго и наоборот. Питание схемы осуществляется отдельным импульсным БП на 13 вольт, ардуинка и дисплей питаются от 5 вольт через стабилизатор LM7805.

Энкодер в виде стандартного модуля для ардуино был немного переделан, изначально в нем стояли подтягивающие резисторы на 10к, что оказалось слишком много: наблюдались самопроизвольные срабатывания от наведенных помех, поэтому резисторы были заменены на 2к и добавлены конденсаторы по 0.47 мкФ, после этого ложных срабатываний больше не наблюдалось.

Также в схеме присутствует защита по току, реализованная на компараторе, на операционном усилителе tl072cp (из тех, что были под рукой) и датчике тока (R21 10 ом). В среднем положении подстроечного резистора R20 защита срабатывает примерно при токе в пол ампера, что соответствует нагрузке около 100 ватт (мощность стандартного канального вентилятора около 15-25 ватт), мощность моего по паспорту 16ватт. При превышении установленного тока и срабатывании компаратора высокий уровень сигнала подается на 11 ноги обоих драйверов (вход SD), что, соответственно, приводит к исчезновению сигналов на выходе и остановке генерации.

Далее про выходную часть. После транзисторов идет LC фильтр, состоящий из индуктивности, в моем случае – 2,78 мГн и конденсатора в 0,47 мкФ. Об индуктивности стоит сказать отдельно: катушка намотана на сердечнике из материала МП-140, типоразмера П19х11х6.7, из двух половинок, витки не считал, мотал около трех метров эмалированным проводом d0.4мм.

Ну и по итогу о результатах. Печатная плата:

Финальная реализация готового устройства:

(Все фото кроме последнего сделаны с RC фильтром, который в итоге был заменен на LC, остальное без изменений)

Платы были заказаны у китайцев, после сборки и экспериментов на тестовой:

Форма выходного сигнала:

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

Как видно по фото, транзисторы установлены на радиатор (из алюминиевого уголка 40*40*3), также имеется принудительная вентиляция. Так вот, при первоначальных тестах в качестве фильтра был вариант RC пары (Резистор 100 Ом и конденсатор 0.47 мкФ), при таком варианте грелся достаточно неплохо резистор и немного радиатор с ключами, поэтому вентилятор и был прикручен. Однако с дросселем ситуация изменилась в корне: нагрев транзисторов фактически отсутствует, дроссель, может, на пару тройку градусов теплее температуры окружающего воздуха, но вентилятор убирать уже не стал, просто притормозил его резистором, чтоб не шумел, так он вроде никому не мешает.

На этом все. С удовольствием отвечу на вопросы, надеюсь, кому то мой опыт будет полезен.

P.S.: Про существование платы EGS002 я в курсе, к сожалению, про нее я узнал только ближе к концу моего приключения, и останавливаться было уже поздно)). Может, позже попробую что-нибудь и на ней собрать, но это будет уже совсем другая история.

Мастеровым от мастерового.

На этих страницах вы узнаете о моих работах, изделиях и идеях. Я постараюсь дополнять свои видео текстом и изображениями, а так-же тем, что пропустил или вырезал из роликов. С уважением Шенрок Александр.

Ярлыки

  • Работа с деревом
  • регулятор оборотов
  • асинхронный двигатель
  • станки
  • ремонт электроинструмента
  • Обзор инструмента.
  • токарный по дереву
  • Лазерный гравёр из Китая
  • Кирпичное барбекю

Сборка регулятора оборотов на ардуино.

213 комментариев:

Дополните в статью подробнее про датчик холла.

Датчик Холла — магнитоэлектрическое устройство, получившее своё название от фамилии физика Холла, открывшего принцип, на основе которого впоследствии и был создан этот датчик. Попросту говоря — это датчик магнитного поля. Сейчас различают аналоговые и цифровые датчики Холла.

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

Цифровые датчики Холла так же разделены на: биполярные и униполярные.
Униполярные – срабатывают при наличии поля определённой полярности и отключаются при снижении индукции поля.
Биполярные – реагируют на смену полярности поля, то есть одна полярность – включает датчик, другая – выключает.

Аналоговые датчики Холла – преобразуют индукцию поля в напряжение, величина показанная датчиком зависит от полярности поля и его силы. Но опять же, нужно учитывать расстояние, на котором установлен датчик.

Регулятор оборотов ДВС на Arduino Mega. Система запуска и прогрева ДВС

Делюсь своей разработкой. На двигателе еще не испытавал. Но думаю все заработает сразу.

1. Что это такое.

1.1 Регулятор оборотов (круиз-контроль, если тахометр будет считать обороты колеса).
Поддерживает постоянные обороты вне зависимости от нагрузки. Не нужна педаль «газа». Обороты выставляются потенциометром. Привод дроссельной заслонки от мощной серво-машинки. По сути, это PID-регулятор. Используется метод Зиглера-Никольса. Реагирование на внешние события. Например, поднятая навеска и КПП на нейтрали — перевод двигателя на ХХ.

1.2 Система запуска и прогрева ДВС. (Не нужна для инжекторных и дизельных двигателей)
1.2.1 «Автоподсос».Управление воздушной заслонкой в зависимости от температуры двигателя. Привод воздушной заслонки от мощной серво-машинки. Температура берется с цифрового датчика.
1.2.2 Обогащение топливной смеси. Эмуляция нескольких нажатий на педаль «газа» при запуске холодного двигателя.

1.3 Счетчик моточасов.

1.4 ШИМ-регулятор оборотов вентиллятора охлаждения.
Плавное управление вентиллятором. Растет температура — растут обороты вентиллятора.

2. Область применения.

2.1 Самодельные трактора, вездеходы, стационарные генераторы электроэнергии, мотопомпы и т.п.
2.2 Водный транспорт, в частности если органы управления находятся на значительном удалении от силовой установки.
2.3 Радиоуправляемые модели с ДВС.

3. Готовность кода проекта.

3.1 Регулятор оборотов ДВС 95% (остался датчик нейтрали)
3.2 Система запуска и прогрева ДВС 100%
3.3 Счетчик моточасов 0%
3.4 ШИМ-регулятор оборотов вентиллятора 0%

4. Испытания на ДВС.

4.1 Регулятор оборотов ДВС 0%
4.2 Система запуска и прогрева ДВС 0%
4.3 Счетчик моточасов 0%
4.4 ШИМ-регулятор оборотов вентиллятора 0%

5.1 Директория libraries Библиотеки Arduino необходимые для компиляции проекта.
5.2 Директория throttle-control Директория проекта
5.2.1 Файл throttle-control.ino Код программы для Arduino (Mega).
5.2.2 Файл pitches.h Заголовочный файл для воспроизведения мелодии при старте Arduino.
5.2.3 Файл throttle-control.fzz Макетная плата проекта для программы Fritzing. (fritzing.org/download/)
5.2.4 Файл my_parts.fzbz Файл электронных компонентов для программы Fritzing, которые отсутствуют в Базе Элементов программы.
5.2.5 Файл readme.txt Файл описания проекта

6. Список компонентов.

6.1 Предохранитель в корпусе, 10А 1 шт.
6.2 БП DC/DC 12В —> 5В 10-12А 1 шт. ali.onl/O0r
6.3 Arduino Mega 2560 1 шт.
6.4 Плата расширения для Mega 2560 R3 (Шилд) 1 шт. ali.onl/O0q
6.5 Потенциометр-слайдер (можно крутилку) 1 шт. ali.onl/O0p
6.6 ИК датчик препятствий для тахометра и датчик нейтрали 2 шт. ali.onl/O0o
6.7 Датчик температуры DS18B20 1 шт. (для карбовых ДВС) ali.onl/NZE
6.8 Сервопривод MG996R 2 шт. (для ижекторов и дизелей — 1шт.) ali.onl/NZC
6.9 Дисплей LCD1602 + I2C ЖК 1 шт. ali.onl/NZA
6.10 Зуммер на 5В. ЗП-5, например. 1 шт.
6.11 2-х позиционный переключатель 2 шт.
6.12 Концевой переключатель для навески трактора 2 шт.
6.13 Провода для макетирования 1 набор ali.onl/NZv
6.14 Светодиоды. Красный, желтый, зеленый 3 шт.
6.15 Резистор 200-240 Ом для светодиодов 3 шт.
6.16 Резистор 4.7 кОм для датчика темперетуры 1 шт.

7. Управление и индикация.

7.1 Тумблер выбора режима.
7.1.1 Режим регулирования оборотов.
7.1.2 Режим принудительного ХХ/прогрева ДВС (зависит от температуры).
7.2 Кнопка обогащения (без фиксации). При нажатии, если двигатель холодный и включен режим прогрева, сработает сервопривод дросселя и 4 раза «нажмет на педаль газа».
7.3 Потенциометр. Можно задать рабочие обороты ДВС, которые будут поддерживаться постоянными. В пределах от ХХ до 3000 (переменная RPMmax).
7.4 Тумблер включения автоматического перехода на ХХ при поднятой навеске (концевик) и (или) положении КПП в нейтрали (концевик или датчик). Либо любые другие события.
7.5 Красный светодиод. Горит, если выбран режим ХХ/прогрева.
7.6 Желтый светодиод. Горит, если выбран режим ХХ/прогрева и температура ниже 40 градусов. Мигает 4 раза, если нажали кнопку обогащения.
7.7 Зеленый светодиод. Горит, если выбран режим регулирования оборотов.
7.8 Дисплей. Показывает обороты ДВС (RPM), температуру ДВС (T), начальную температуру ДВС ™, угол открытия дроссельной заслонки (Out).

8. Алгоритм работы системы.

Включаем зажигание. Подается питание на контроллер и сервоприводы. Контроллер готов к работе. Звучит мелодия. Производится замер начальной температуры ДВС. Перед запуском холодного двигателя нужно выбрать режим ХХ/прогрева. Если температура ниже 40гр (TempMax), включается режим прогрева ДВС (желтый светодиод). Возможно нажать кнопку обогащения смеси (только если ДВС не вращается) для уверенного пуска. Заводим двигатель. С первыми оборотами закрывается воздушная заслонка. Далее, по мере пррогрева, она приоткрывается. Желтый светодиод погас, красный горит — ДВС работает на ХХ. Переключаем тумблер в режим регулирования. Обороты устанавливаются согласно положению потенциометра. По необходимости, вторым тумблером включаем автоматический переход на ХХ. Например, если остановились и включили «нейтраль», ДВС сам перешел на ХХ.

Читайте также  Как увеличить расход топлива на газели с 405 двигателем ...
Рейтинг
( Пока оценок нет )
Понравилась статья? Поделиться с друзьями:
Добавить комментарий

;-) :| :x :twisted: :smile: :shock: :sad: :roll: :razz: :oops: :o :mrgreen: :lol: :idea: :grin: :evil: :cry: :cool: :arrow: :???: :?: :!:

Adblock
detector