Невозможно отключить вентилятор с помощью PWM и analogWrite(x, 0)
Я пытаюсь сделать генератор ШИМ-сигналов с помощью Arduino Uno. Пытаюсь управлять вентилятором двухконтурного котла 230В 50Гц "NRG118". Вентилятор питается от переменного тока и имеет 3 контакта для управления ШИМ. "vcc,gnd,pwm" Подключили их к контактам arduino "5v, GND, 11".
Я могу управлять картой на arduino "0to100% с помощью простого кода ниже, но я не могу ее выключить. Я попробовал digitalWrite, но ничего не изменилось. Пробовал разные контакты 5-6-9-11, ничего не менялось. Попробовал подключить gnd+vcc к аутсорсингу powersuply, но ничего не изменилось.
Также у меня есть простой ШИМ-генератор "HW-723 XY-LPWM PWM Signal Generator Module". "HW-753" может управлять вентилятором без какого-либо другого компонента, но он может иметь встроенный специальный компонент, такой как NPN, но я не уверен в этом.
В описании я нашел это и возможно это требование но я понятия не имею об электронных компонентах: - Выходной вывод ШИМ на микроконтроллере управляет транзистором типа NPN MMBT3904, который, в свою очередь, управляет выходным выводом ШИМ модуля. Транзистор имеет последовательный резистор 1K, привязанный к VIN+, поэтому ШИМ-сигнал будет колебаться между землей и напряжением питания модуля на выводе VIN+."
С ГВ-753; при запуске вентилятор не работает, но когда я провод к моему Arduino начинается с 100% питания, и когда я установил "analogWrite(х, 0)" dutycycle уменьшаются, а вентилятор по-прежнему работает на 1 скорости, и я прочитал 0.07 вольт мультиметром на "ШИМ - +GND" на контакты.
Большинство людей не могут бежать, я не могу остановиться.... Это убивает меня, люди...
Что я делаю не так?
void setup() {
pinMode(6, OUTPUT);
}
void loop() {
//digitalWrite(6, LOW);
analogWrite(6, 0);
delay(5000);
}
@Morphinz, 👍-1
Обсуждение1 ответ
Если вы работаете с двигателем переменного тока, то он, вероятно, работает, даже если ШИМ-кабель не подключен. В этом случае нет причин использовать "analogWrite(PIN, 0)". Это не сработает.
"Внешний резисторный делитель, подключенный к входу VMIN, устанавливает минимальную скорость вращения вентилятора, фиксируя минимальный рабочий цикл ШИМ (от 1,25 В до 2,65 В = от 0% до 100%, как правило). Это зависит от производителя платы контроллера. проверьте данные"
Если вы не можете найти что-то вроде меня, проверьте, как это делают другие. Ниже приведена схема "Модуля генератора сигналов HW-753". Как вы можете видеть, между VIN+ и PWM имеется резистор 1k, и оба подключены к NPN, а также средняя часть NPN, проходящая через резистор 1k, при переходе к ШИМ для защиты карты. Также 3-я нога подключена к gnd. Так что это не то же самое, что я делал раньше. Если вы работаете с AC, то вы всегда должны учитывать это и просто забывать, что говорят люди. Не тони, как я. Я надеюсь, что это кому-нибудь поможет.
Я что-то упускаю, двигатели переменного тока обычно управляются с помощью управления фазой, а не ШИМ. Просто ХАБАР, так как схема части переменного тока не размещена. Обычно при переменном токе двигатель приводится в действие симистором или SCR. Время для стрельбы-от нулевого креста, один раз за каждые 1/2 цикла., @Gil
- Установите частоту ШИМ на 25 кГц.
- Какова частота PWM-выхода на Arduino
- Управление скоростью вентилятора с помощью библиотеки Arduino PID
- Как устранить шум от вентилятора 12 В с ШИМ-управлением на низкой скорости
- Генерация частоты ШИМ выше 125 кГц с помощью Arduino Uno
- Увеличить разрядность PWM
- Как вывести истинное аналоговое напряжение на выходной контакт
- PWM-вывод Arduino Nano не функционирует
Можете ли вы смотреть на ШИМ-сигнал с прицелом, когда он управляется HW-753 и когда он управляется Arduino? Что происходит, когда вы проводите ШИМ и GND вместе?, @Edgar Bonet
Я не могу. Я просто разработчик, который ничего не знает об электронике. У меня есть только мультиметр.:) Я не проводил ШИМ и GND вместе. Какая логика стоит за этим?, @Morphinz
Если вы сокращаете PWM и GND (удалите PWM с любого контакта Arduino!), Вы убедитесь, что у вас есть наименьшее возможное значение. Теперь проверьте, как работает ваш вентилятор., @the busybee
Спасибо, я попробую. Также я выяснил, что если ШИМ-вывод не используется, это означает 0 вольт, но вентилятор работает с самой высокой скоростью. Поэтому ШИМ-вывод не должен быть 0 вольт. Может быть, мне нужно дать специальное напряжение, чтобы остановить его? На этой схеме он выглядит 0,8-2 вольта. https://www.allaboutcircuits.com/uploads/articles/voltage-tolerance-of-ttl-gate-inputs.jpg, @Morphinz
Поэтому, чтобы остановить двигатель, мне нужно дать специальное ШИМ-напряжение. Я думаю, что analogWrite(6, X); X должен быть между 50-100. Как я могу узнать, какой ШИМ-выход требуется для выключения вентилятора?, @Morphinz
Глядя на некоторые спецификации, я думаю, что все, что меньше 20% рабочего цикла, означает выключение. Который будет X < 50 (and X>0)., @Gerben
Учитывая общий 4-контактный вентилятор ПК (я знаю, что это не то, что у вас есть), его невозможно отключить. Все мои 4-штыревые вентиляторы работают на ficed rpm, когда PWM ниже ~20%. Чтобы это остановить, мне нужно вырезать Vcc. , @Sim Son
Если я подключу 5 В к карте контроллера вентилятора, вентилятор PWM+GND может остановить вентилятор. Но если я напрямую подключу вентилятор "5V, GND" к адаптеру, то ШИМ никак не повлияет на arduino. Если я подключу "5V, GND" к arduino, то ШИМ может управлять вентилятором между %10-70 DutyCycle с помощью "analogWrite(PWM_PIN, 0-255);", но не может остановить вентилятор. Что мне делать?, @Morphinz