Не удается прочитать сигнал ШИМ из 2-контактного разъема вентилятора
Я пытаюсь получить значения ШИМ от 2-контактного разъема вентилятора на плате DuetWifi (это плата контроллера 3D-принтера). Вот некоторая информация о подключении вентилятора на этой плате.
Из их форума я узнал, что выход вентилятора с открытым стоком и может работать с частотой до 65535 Гц (частота для каждого вентилятора настраивается).
Прежде всего я подключил Duet FAN- к Arduino D7 и попробовал этот код:
int pin = 7;
unsigned long duration;
void setup() {
Serial.begin(9600);
pinMode(pin, INPUT_PULLUP);
}
void loop() {
duration = pulseIn(pin, HIGH);
Serial.println(duration);
}
Но он показывает постоянные показания между 6-7 в Serial Monitor:
7
6
7
7
7
7
7
6
6
7
Кроме того, любая регулировка скорости вращения вентилятора в интерфейсе Duet также не влияет на эти показания.
После этого я перепробовал множество различных библиотек и подходов к программированию с форума Arduino, чтобы получить подходящие показания ШИМ от FAN-pin, но безуспешно.
@uk25, 👍0
Обсуждение1 ответ
Лучший ответ:
Ваше изображение показывает, что вы подключили только одну линию к Arduino. У вас нет точки соприкосновения между Arduino и контроллером вентилятора. Вам нужно соединить основания вместе.
Напряжение похоже на высоту, для его измерения требуется две точки. Если я укажу на холм и скажу: «Насколько высок этот холм?» сначала кажется, что на этот вопрос довольно легко ответить. Но быстро становится двусмысленным. Хотим ли мы сказать, насколько он высок по сравнению с землей вокруг него? Или как высоко над уровнем моря? Или как высоко от того места, где мы стоим? Вы просто не можете сказать, насколько высок холм, если не договоритесь о том, откуда следует измерять.
То же самое и с напряжением. Вы не можете измерить напряжение, если у вас нет потенциала, который вы можете считать точкой 0 для измерения. Эта точка 0 является заземляющим проводом. И поскольку вы нарисовали схему, две платы не согласны с тем, где они будут считать 0 вольт.
Спасибо за такое подробное объяснение., @uk25
- Как прочитать значение PIN PWM-выхода?
- Управление несколькими вентиляторами с помощью Arduino Uno
- Невозможно установить рабочий цикл на 0% с помощью пользовательского PWM
- Плохие показания сигнала тахометра вентилятора 12 В pwm
- Вывод 400 мВ с помощью штыря Arduino Nano PWM
- ШИМ-сигнал с рабочим циклом 50 % и рассчитанной частотой
- Как получить 2 ШИМ-вывода с обратным битовым диапазоном при 25 кГц на Nano?
- Входные PWM-контакты не получают значения от работающего приемника?
Пожалуйста, покажите нам, как вы подключили Arduino к вентилятору., @VE7JRO